BelledonneCommunications / linphone-desktop

Linphone is a free VoIP and video softphone based on the SIP protocol. Mirror of git://git.linphone.org/linphone-desktop.git
https://linphone.org/
GNU General Public License v3.0
391 stars 200 forks source link

[Bug]: Regression in 5.2.0 opening sip-URLs #805

Closed AlBundy33 closed 2 months ago

AlBundy33 commented 5 months ago

General information

Expected behaviour

I use sip-URLs to start calls which is working as expected up to 5.1.2 But since 5.2.0 this doesn't work reliable.

To Reproduce

I've tried this with google chrome and this scriptlet:

javascript:window.open('sip:123@ansitel.example.com?method=call', '_blank')

(you have to change url and number of course)

This is the generated log from 5.1.2

2024-01-09 10:55:15:644 [/qt] MESSAGE QT: "Delete notification:" NotificationNewVersionAvailable_QMLTYPE_599(0x23312a98770, name = "__internalWrapper")
2024-01-09 10:55:18:271 [/belle-sip] MESSAGE Changing [server] [NOTIFY] transaction [000002333268C360], from state [COMPLETED] to [TERMINATED]
2024-01-09 10:55:18:271 [/belle-sip] MESSAGE Server NOTIFY transaction [000002333268C360] terminated
2024-01-09 10:55:18:272 [/liblinphone] MESSAGE Unhandled transaction terminated [000002333268C360]
2024-01-09 10:55:18:272 [/belle-sip] MESSAGE Transaction [000002333268C360] deleted
2024-01-09 10:55:23:422 [/qt] MESSAGE QT: "Starting Linphone (bin: linphone)"
2024-01-09 10:55:23:422 [/qt] MESSAGE QT: "Use locale: de_DE with language: German"
2024-01-09 10:55:23:423 [/qt] MESSAGE QT: "Running secondary app success. Kill it now."
2024-01-09 10:55:23:423 [/qt] MESSAGE QT: "Destroying app..."
2024-01-09 10:55:23:423 [/qt] MESSAGE QT: "Received command from other application: `sip:129@ansitel.example.com?method=call`."
2024-01-09 10:55:23:423 [/qt] WARNING QT: "This command doesn't exist: `sip`."
2024-01-09 10:55:23:423 [/qt] MESSAGE QT: "Detecting URI command: `sip:129@ansitel.example.com?method=call`..."
2024-01-09 10:55:23:423 [/qt] MESSAGE QT: "Execute command:" QHash(("sip-address", "<sip:129@ansitel.example.com?method=call>"))

and this is the log from 5.2.0

2024-01-09 10:50:52:939 [/belle-sip] MESSAGE channel [000001EFCB5ABF80]: keep alive sent to [UDP://sip.linphone.org:5060]
2024-01-09 10:50:52:939 [/belle-sip] MESSAGE channel [000001EFD2671A60]: keep alive sent to [UDP://ansitel.example.com:5060]
2024-01-09 10:50:53:341 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:315: "Starting Linphone (bin: linphone)"
2024-01-09 10:50:53:341 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:316: "Use locale: de_DE with language: German"
2024-01-09 10:50:53:342 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:317: "System timezone: code=82 / country=Deutschland / Offset=3600 / ID=Europe/Berlin"
2024-01-09 10:50:53:362 [/qt] MESSAGE QT: :0: "Running secondary app success. Kill it now."
2024-01-09 10:50:53:362 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:331: "Destroying app..."

So it seems that the running instance of linephone does not receive the command. -> If I close Linephone (really exit the application, not only minimizing) and open the scriptlet, then Linephone starts and calls the number.

For now I have to go back to 5.1.2

Additional context

No response

SDK logs URL

No response

julonexus commented 5 months ago

Please try to use only 5.2 and not mixing with 5.1

AlBundy33 commented 5 months ago

I don't mix them - I always uninstall the versions that I don't use

julonexus commented 5 months ago

So, what is your log from 5.2.0 on the main instance?

codiflow commented 5 months ago

I can confirm that.

Linphone crashes on clicking the phone number in the contact section of this page: grafik

So clicking on tel:+498002153153 Linphone crashes, clicking on tel:0800 2 153 153 nothing happens.

This is the error message: grafik

OS: Manjaro Linux 6.1.69-1 Browser: Firefox 121.0 (64-Bit) Linphone (AppImage): Desktop 5.2.0 - Qt5.15.2, Core 5.3.1

Log entry: [AppRun.wrapped/qt] FATAL QT: /opt/Qt/5.15.2/gcc_64/include/QtCore/qstring.h:1335: ASSERT: "i >= 0" in file /opt/Qt/5.15.2/gcc_64/include/QtCore/qstring.h, line 1335

julonexus commented 5 months ago

@codiflow the issue is about "sip:123@ansitel.example.com?method=call" not "tel:656565" that is related to https://github.com/BelledonneCommunications/linphone-desktop/issues/809

codiflow commented 5 months ago

Thanks for clarifying that and sorry for mixing the two issues up 😅

AlBundy33 commented 5 months ago

Please try to use only 5.2 and not mixing with 5.1

I've used 5.1.2 and as 5.2 was released, I've downloaded 5.2 and started the update (where 5.1 gets uninstalled at first.

Then I wantet to use the links as usual which did not work. Then I've checked the logs and copoed the relevant part. To check wheather this is a local issue (e.g. due to Windows or Chrome updates) I've uninstalled 5.2 and installed 5.1.2 again and tried to use the links that didn't work with 5.2 with 5.1.2 all was working again.

therefore I've posted the outputs of 5.1.2 and 5.2

julonexus commented 5 months ago

Ok but the request is still not answered. "What is your log from 5.2.0 on the main instance?"

AlBundy33 commented 5 months ago

the log from 5.2.0 is in my initial post. 🤔

2024-01-09 10:50:52:939 [/belle-sip] MESSAGE channel [000001EFCB5ABF80]: keep alive sent to [UDP://sip.linphone.org:5060]
2024-01-09 10:50:52:939 [/belle-sip] MESSAGE channel [000001EFD2671A60]: keep alive sent to [UDP://ansitel.example.com:5060]
2024-01-09 10:50:53:341 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:315: "Starting Linphone (bin: linphone)"
2024-01-09 10:50:53:341 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:316: "Use locale: de_DE with language: German"
2024-01-09 10:50:53:342 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:317: "System timezone: code=82 / country=Deutschland / Offset=3600 / ID=Europe/Berlin"
2024-01-09 10:50:53:362 [/qt] MESSAGE QT: :0: "Running secondary app success. Kill it now."
2024-01-09 10:50:53:362 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\0\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:331: "Destroying app..."

There is no output after "Destroying app" that a command was received

[edit] just to be clear: linphone does not start the call after open the sip-URL and according to the log this is because the running linphone instance does not receive the command. -> just in case if you meant the server with "main instance". ;-) [/edit]

julonexus commented 5 months ago

"2024-01-09 10:50:53:362 [/qt] MESSAGE QT: :0: "Running secondary app success. Kill it now."" This log comes from the second instance (ran by the URI handler) and you filtered out all other data so there are no info about the main instance (the running Linphone).

Useful data are needed from the start of the application. So I"m waiting for your whole file log from the start of the application.

AlBundy33 commented 5 months ago

Of course I filtered out some data because I don't want to spread servers and phone-numbers on github 🙂

What I did now:

The Logfolder still contains only linphone1.log with this content

2024-02-02 07:40:28:540 [/belle-sip] MESSAGE channel [000001F29E4329C0]: keep alive sent to [UDP://sip.linphone.org:5060]
2024-02-02 07:40:28:540 [/belle-sip] MESSAGE channel [000001F2A610CEC0]: keep alive sent to [UDP://ansitel.example.com:5060]
2024-02-02 07:40:35:501 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:315: "Starting Linphone (bin: linphone)"
2024-02-02 07:40:35:502 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:316: "Use locale: de_DE with language: German"
2024-02-02 07:40:35:504 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:317: "System timezone: code=82 / country=Deutschland / Offset=3600 / ID=Europe/Berlin"
2024-02-02 07:40:35:536 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:324: "Received command from other application: `sip:001234567890@ansitel.example.com?method=call`."
2024-02-02 07:40:35:536 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\App.cpp:331: "Destroying app..."
2024-02-02 07:40:35:538 [/qt] WARNING QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\cli\Cli.cpp:622: "This command doesn't exist: `sip`."
2024-02-02 07:40:35:544 [/qt] MESSAGE QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\cli\Cli.cpp:540: "Detecting URI command: `sip:001234567890@ansitel.example.com?method=call`..."
2024-02-02 07:40:35:545 [/qt] WARNING QT: C:\GitLab-Runner\builds\hexP7jis\2\BC\public\linphone-desktop\linphone-app\src\app\cli\Cli.cpp:331: "Missing argument for command: `call (sip-address)`."
2024-02-02 07:40:39:259 [/belle-sip] MESSAGE channel [000001F2A610CEC0]: received [558] new bytes from [UDP://ansitel.example.com:5060]:
OPTIONS sip:SomeAccount@1.2.3.4;transport=udp SIP/2.0

Via: SIP/2.0/UDP 4.3.2.1:5060;branch=z9hG4bK174a708e;rport

Max-Forwards: 70

From: "asterisk" <sip:asterisk@4.3.2.1>;tag=as2f737327

To: <sip:SomeAccount@1.2.3.4;transport=udp>

Contact: <sip:asterisk@4.3.2.1:5060>

Call-ID: 556e9ec6678e0e36220ca42041a73035@4.3.2.1:5060

CSeq: 102 OPTIONS

User-Agent: ansitel_PBX

Date: Fri, 02 Feb 2024 07:40:39 GMT

Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH, MESSAGE

Supported: replaces, timer

Content-Length: 0

2024-02-02 07:40:39:263 [/belle-sip] MESSAGE channel [000001F2A610CEC0] [558] bytes parsed
2024-02-02 07:40:39:263 [/belle-sip] MESSAGE channel [000001F2A610CEC0]: message sent to [UDP://ansitel.example.com:5060], size: [269] bytes
SIP/2.0 200 Ok

Via: SIP/2.0/UDP 4.3.2.1:5060;branch=z9hG4bK174a708e;rport

From: "asterisk" <sip:asterisk@4.3.2.1>;tag=as2f737327

To: <sip:SomeAccount@1.2.3.4;transport=udp>;tag=yqqgE

Call-ID: 556e9ec6678e0e36220ca42041a73035@4.3.2.1:5060

CSeq: 102 OPTIONS

2024-02-02 07:40:58:554 [/belle-sip] MESSAGE channel [000001F29E4329C0]: keep alive sent to [UDP://sip.linphone.org:5060]
2024-02-02 07:40:58:554 [/belle-sip] MESSAGE channel [000001F2A610CEC0]: keep alive sent to [UDP://ansitel.example.com:5060]

this is the complete content (anonymized of course / replaced IPs, numbers and Logins)

AlBundy33 commented 2 months ago

Today I've installed 5.2.3 and it seems that the sip-URLs are working again. Not sure if #829 is/was related to this issue.

julonexus commented 2 months ago

Hi, I'm closing the issue then. I think the OP try to make a call without having an account. So it may be not related.