Skip to content
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

Calls always income as missed ones without ringing #7603

Closed
4 tasks done
szotsaki opened this issue Apr 3, 2018 · 16 comments
Closed
4 tasks done

Calls always income as missed ones without ringing #7603

szotsaki opened this issue Apr 3, 2018 · 16 comments

Comments

@szotsaki
Copy link

szotsaki commented Apr 3, 2018


Bug description

Users are welcome to re-submit bug reports

When Signal is opened in front of me on my phone and via Hangouts PC I hear the other party while his Signal is actually ringing me. My Signal shows no sign that I'm being called. At the end of ringing, when the network automatically disconnects, I immediately receive a "You have a missed call" notification in the chat.

Reproduced on three different WiFi networks with the same person.

The time difference between the two phones is approximately 5 seconds. Both phones are set to synch to carrier time.

Steps to reproduce

  • Make phone A call phone B in Signal
  • Observe that phone B gets no notification about the incoming call just the missed one.

Actual result: Call arrives as missed one.
Expected result: Phone B rings.

Screenshots

Device info

Device: Sony F5121
Android version: 7.1.1
Signal version: 4.14.10

Link to debug log

Callee debug log: https://gist.github.com/anonymous/9984ab543d85a181b06b02954564c060
Caller debug log: https://gist.github.com/anonymous/5eae662fee114e5e07a72dbd02c0e92d

Original report: #7314

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

Original report: #7314

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@michaelschefczyk

This does match my experience also. The issue does seem to be around for about a year: WhisperSystems#6244
Unfortunately, similar problems seem to be commonplace with other messengers like Riot as well.

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@maedoredyti

I can confirm missing calls.
Clocks in all phones of my family are synchronized because we have another app which requires clock difference not higher than +/- 15 seconds.

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.
It happens on phones with or without play services. I have many users of Signal and it happens to them.
I used to kill Signal every time I wake up my phone, maybe 5 sometimes, 10 times a day and I can receive calls. This behavior is not time dependent of how long the phone was unused with black screen in a deep sleep. Sometimes after reboot I can't receive calls and can't receive messages and I need to kill the app and run it again.

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.
After I leave my WiFi and I drive nobody can call me on Signal 50% of the time. I get missing calls so on the next traffic lights I kill the Signal, start it again and all is back to normal.
This is not poor RF signal issue because I have 5 bars on LTE, LTE+. It happens when I come back and I have very strong WiFi signal.

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.

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@rjhnz

I have a similar problem to the one described.

Calling from a Samsung Note5 to a Samsung s7, the S7 does not ring but immediately shows a missed call on cancellation from the Note5. Stock roms on all phones.
Android 7.

Calling from the S7 to the Note5 results in a ring tone as expected.

Locking to one network and restarting both phones does not affect the result. This does not appear to be related to network swapping.

Call initiated by a second S7 does not result in a ringtone at the Note5, but does result in an immediate missed call notification.

Multiple attempts at configuration changes (ring volume, override privacy settings etc) have not resulted in a change in behaviour.

Connection established via multiple networks with no change in behaviour. Multiple options tried with routers, no changes in behaviour.

Once connection is established video is stable and high quality suggesting network issues are not involved.

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@DaleCulpin

Same problem for me (HTC U11, Android 7) and my girlfriend (HTC M9, Android 6)

No visible or aural indication that a call is being received. We just get a missed call notification.

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@nribeka

I can replicate this with phone and emulator with time different of over 2 minutes (the threshold to say a call request is expired). Maybe, if possible, validate that the two devices are synced with a time server? It could be the case where both devices are not synced with any time server and both devices are 5s apart only?

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@rjhnz

Here's a debug log from the time a call was initiated to a phone which i can never connect to. My phone never gets pasty the "dialing" stage, and the other phone never rings, but a missed call shows up on the other phone at the moment my phone stops trying to make the call.

Hope this helps.

https://gist.github.com/999836cf1a4316fdaa7204212abe5b3c

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@rjhnz

I've discovered that the receiving phone gets a missed call notification as soon as the call is made, even thought the calling phone continues to show that it is dialing for the next two minutes. Here is the link to the log of the receiving phone.

https://gist.github.com/1395776538508e0742536964e803a0e3

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@maedoredyti

Just after I got Missing call info...
https://gist.github.com/7858241c5213dc36b436284522bdf8b6

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

@md3kung

I'am still having this bug when trying to call my friend in the U.A.E . I must precise that i'm not sure if this is related to any censorship mesures because audio calls do work sometimes.

@moxie0
Copy link
Contributor

moxie0 commented Apr 3, 2018

According to the logs in the issue, the devices are not able to find a valid ICE candidate. That would suggest the network is blocking class, and comments from folks in places like the UAE confirm that.

@moxie0 moxie0 closed this as completed Apr 3, 2018
@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

Can you please then add an indication that there is a network error. From the caller side there is no sign that the phone isn't ringing on the other side.

Please, reopen until it is done. Thank you.

@szotsaki
Copy link
Author

szotsaki commented Apr 3, 2018

Please, also re-subscribe people from the other bug report, #7314, as mentioned in #7598.

@moxie0
Copy link
Contributor

moxie0 commented Apr 3, 2018

The caller side knows that the phone isn't ringing on the other side because the caller's phone never plays the "ring" sound. There is no way to know that it's a network error.

@thrdroom
Copy link

thrdroom commented Apr 3, 2018

@moxie0 #7603 (comment) would be the least you can do, after rejecting every user who tries to help with what they can provide with their skillset. Please educate people and guide/support them enough, dont piss them off and make them feel grumpy.

@szotsaki
Copy link
Author

@moxie0 Right after my very first try with Signal this issue happened. You are the first one in this bug report to tell me that there is a ringing sound in the application. No, the caller side doesn't know that something is not placed right.

There is no way to know that it's a network error.

According to the logs in the issue, the devices are not able to find a valid ICE candidate.

So there is a way to tell there is an error happening during the call.

Please, reopen this bug report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

3 participants