-
-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WebRTC Audio/Video calls arrive as missed calls #6244
Comments
What's the other device? You should always give both device's info when reporting calling bugs. |
Thanks @peter-sc it doesn't look like there's much activity in this log, did you capture it immediately after the call failed to establish? |
The device2 were 2x iPhone7 with latest iOS 10.x. I had the same results of calls not establishing with Xperia SP with CM 14.1 (7.1.1). Here is another test, call made from Xperia SP with CM 14.1 (7.1.1). The screen on device1 (LG) did not show incoming call nor did it ring, it made just short "click" notification for missed call. Logcat from begging of call till the end is here: https://gist.github.com/peter-sc/0acf85934295bad4b4ca2a00374c223d I can include more logs if needed, just let me know which parts of the logcat are relevant. |
I confirm that I am experiencing the same issue as well.. This especially happens when both parties are attempting to call each other at the same time, neither phone would receive anything other than a late missed call notification. |
I have experienced similar bug. When I am calling the other party or when the other party is calling me (not at the same time!), Signal does not ring. However, on a screen you can see incoming call. I have Nexus 5 with CyanogenMod 13. The other person has Nexus 4 with up to date non-rooted Android. |
It seems there is ringing, but in earphones. I have reports from several users about this issue. |
I have the same issue between Galaxy S5 SMG900F Marshmallow (Phone 1) with another Galaxy S5 SMG900F Marshmallow (Phone 2). Also between Phone 1 and One Plus One LiOS 14.1 (Phone 3). So far I'v been able to call / receive only twice between Phone 1 and 3 and none between Phone 1 and 2. Phone 1 has systemless root. |
User 1 User 2 |
Hi, I have tested this problem with four phones all using the same WiFi being inch away from one another. Looks like problem is related to phone A. Phone A: Samsung Galaxy J1; Android 4.4.4; Signal 4.10.12 Note: Phone A and C are exactly the same type of phones. Interesting phone C without a problem, phone A getting "Missing calls" errors. Signal text is working without a problem between all of above four phones. Problem is only related to Signal voice calling (Signal text works fine on all phones) and it looks like problem is related to phone A. I have performed several tests. TESTS:
When problem appears it is every time like this: Phone A is now unfortunately lets call it "in state not able to receive a Signal call". But luckily notification of "Missing call" is received and she can establish Signal voice call to B, C and D after it gets "Missing call" error. It is quite an annoyance, because B/C/D has to first cancel orphan call (they do not know the error already appeared on phone A), so there is always some waiting involved. Above problem was already present in Signal 4.9.9, but I saw new version was coming soon, so waited patiently to get Signal 4.10.12 update on all of the four phones (took some days). Interesting calling between all of this four phones was previously (like a month ago) working without a problem and then something happened (don't know what) that triggered the problem. In order to solve the problem by myself I did additional actions on Phone A and B. Final test I did at 18:37 time on phone A was displayed and 18:35 time was displayed on phone B (today is date: 2017-09-29). I did a phone call from phone B to phone A and on phone A immediately got "Missed call" error. Immediately after the error was displayed on phone A I pressed red button to cancel call on phone B and submitted the log: https://gist.github.com/c7f97340e9c72a7232e1268efd561291 Few seconds after I submitted the log on phone A: https://gist.github.com/9897e1f05cbef14e9f9e6461a94f1464 Hope this detailed info and logs helps to ping pong the problem. If any additional info is required I am more then glad to help solve this problem. |
@igor2x Are the clocks on phone A and B synchronized? Like do they display the exact same date and time? |
@moxie0, thats it. Problem solved. Phone B and D were time-synced (in Android Settings), but both phone A and C have had time sync disabled in Android | Settings | Date & Time. Phone C was less out of time comparing to phone A, that is probably the reason phone C was previously able to establish phone call with A (and also with B and D). I turned on time-sync on both A and C phones - so all phones now have time-sync enabled - and did several Signal call tests between all the phones. Signal calls now work flawlessly. Thanks a lot for your help. Really appreciate it. |
@igor2x That's the problem then. I think 1min of skew is probably the limit, otherwise the client assumes it is receiving an old call invite (missed call). We'll have to implement some other form of liveness detection in order to support devices with inaccurate clocks. |
The issue does persist even among fully time synced sets of devices, I think. This does happen at least among devices running LineageOS 14.1 without Google apps. |
I can confirm missing calls. I discovered there is a problem with the signal's background task. When I kill Signal and the Signal is killed in memory, after running it again all messages I have not received come to me immediately and I can receive calls. Everything is back to normal. Signal is excluded from the battery optimization, I am android developer, clocks are synchronized +/- 1 second in all phones. There is a problem with the background task itself. This hang of the process is somehow related to switching between WiFi/LTE/H+/3G when I walk/drive and my phone needs to change from H+ to LTE, LTE+ and when I come in range of my WiFi. It looks like Signal can't negotiate new IP address with the server and it's background process is stuck in any state machine. This is definitely the flaw in the Signal's background behavior. |
For example after the reboot / cold start a phone catches one network and changes to another. I have roaming permanently enabled because I am in EU and in my country we have also domestic roaming for better cover of the network. I don't pay extra so I have it always enabled because it helps a lot and in my plan I have unlimited internet something like 100GB, impossible to be consumed. During the Signal call the voice call is mostly interrupted forever and half of the time I need to kill the Signal to make it operational again. |
Some words to the story... |
GitHub Issue Cleanup: |
I have:
Bug description
Both devices have Voice calling beta enabled. Device 1 is in idle state, screen is off. Device 2 initiates call, and this does not reach device 1. Then call is canceled and 10-30s later a missed call notification arrives on device 1.
If the beta calling is disabled, then the call is sucesfull (device 1 again in idle state)
Steps to reproduce
Actual result:
Expected result:
Device info
Device: LG G4
Android version: 6.0.0, Security patch: 2016-11-01
Signal version: 3.29.6
Link to debug log
https://gist.github.com/e71029ad6a5f8011d1cd7aaeaccc246d
The text was updated successfully, but these errors were encountered: