-
-
Notifications
You must be signed in to change notification settings - Fork 6.2k
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
Cannot receive calls on Android anymore #10787
Comments
This is a duplicated ticket: |
It could be the old known issue that the app failed to retrieve the turn servers list, but this time has gotten worse. Seems that in v5.2.2 a new feature flag was introduced to prevent okhttp from retrying network requests. This affects negatively the call service when it retrieves the TURN servers from Signal. It happens because there is no retry policy, like tasks run via JobManager. If the websocket connection to the Signal server is stale and it has not yet restarted, the function "retrieveTurnServers" will instantly fail with "java.io.IOException: unexpected end of stream" raised by "getServiceConnection" and the call will show the network-failed popup. |
Isn't there a great developer fixing this problem?! Since installing the application a week ago and until now, I have not been able to receive any calls at all |
The So after closing the app, if an incoming call is received
|
The signal http server supports http keep alive, but closes idle connections after 1 minute. The default OkHttp connection pool will keep idle connections in the pool for 5 minutes and doesn't notice it when the server closes connections. As currently the automatic okhttp retries are disabled, reusing such a stale connection will be fatal. Issue is especially severe for incoming calls, which fail because the request to retrieve the turn servers fails and isn't retried: signalapp#10787
The signal http server supports http keep alive, but closes idle connections after 1 minute. The default OkHttp connection pool will keep idle connections in the pool for 5 minutes and doesn't notice it when the server closes connections. As currently the automatic okhttp retries are disabled, reusing such a stale connection will be fatal. Issue is especially severe for incoming calls, which fail because the request to retrieve the turn servers fails and isn't retried: #10787
* Feature flag OkHttp automatic network retry. * Make outage banner color less aggressive. * Put receipts in the recipient's queue. * Revert "Remove reset session button." This reverts commit f24020e. * Bump signal-client-java version to 0.1.5 * Updated language translations. * Bump version to 5.2.2 * Fix NPE in RecipientDatabase. * Bump version to 5.2.3 * Create a new manage profile screen. * Update to RingRTC v2.8.10 * Include an English filter line in the support email body. * Prevent stripping of leading zeros in national numbers. * Only schedule one job per constraint set. * Create FUNDING.yml This will add a 'sponsor' button at the top of the repository which links to Signals donate page https://signal.org/donate/ * Add the ability to forward content to multiple chats at once. * Prevent screen rotation during voice record. Fixes signalapp#8276 * Fix API19 drawable. * Remove ~200 unused English strings. * Initial wallpaper settings screens. * Add support for persisting wallpaper selection. * Improve wallpaper settings screen, conversation rendering. Co-authored-by: Greyson Parrelli <greyson@signal.org> * Wallpaper image selection and cropping. * Finalize wallpaper UX. Co-authored-by: Greyson Parrelli <greyson@signal.org> Co-authored-by: Alan Evans <alan@signal.org> * Upgrade libphonenumber to v8.12.16 * Fix several issues with local expandable pip. * Add support for an 'About' field on your profile. * Bump libsignal-client to 0.2.2 * Wallpaper preview size respects device aspect ratio. * Fix issue where forwarded link previews weren't marked uploaded. * Install a new animated sticker pack. * Fix camera crash when mic permission is granted. Fixes signalapp#10642 * Allow clicking on typer avatar to bring up their bottom sheet details. * Center the terms link on the welcome fragment for long translations. * Add ripple to review storage button. * Update incognito keyboard copy. * Refine incognito keyboard setting string. * Updated language translations. * Bump version to 5.3.0 * Fix possible NPE on wallpaper change. * Fix possible NPE in group list item. * Updated language translations. * Bump version to 5.3.1 * Skip native LibSignal tests on unsupported and non-unix OS. * Fix sticker support in multishare. * Enable 'dim in dark theme' by default. * Distinguish clear copy between global and single recipient wallpapers. * Update copy for reset all wallpapers dialog. * Add Odia ଓଡ଼ିଆ language support. * Add Taqbaylit language support. * Auto-open keyboard on About screen. * Add the ability to clear about and emoji. * Add About presets. * Various improvements to About UI/UX. * Increase max About glyphs to 140. * Made setting profile name and About synchronous operations. * Do not bump group threads on leave. * Made setting a profile photo a synchronous operation. * Prevent NPE in PhoneNumberFormatter. * Reduce the font size of all update messages. * Fix spacing bug when About is set to only text or only emoji. * Center-align About text in recipient settings. * Fix bug where dates weren't rendered properly after wallpaper change. * Various wallpaper UX fixes. * Fix highlighted bounds of conversation items. * Improve responsiveness of conversation update rendering. * Add bubbles around additional elements in wallpaper mode. * Updated language translations. * Bump version to 5.3.2 * Fix wallpaper sizing issues in landscape. * Fix issue where empty about could be rendered in contact list. * Fixed tinting of wallpaper bubble previews. * Make ManageProfileActivity work with screen lock. * Disable forwarding of pending media. * Collapse adjacent conversation updates. * Update styling of last seen divider. * Make voice note play button visible in wallpaper mode. * Disallow link previews in multi-forward when sending to SMS. * Fix text color of recent conversations in share activity. * Restrict SMS in multishare. * Apply contact list SMS filter to 'recents' section. * Disable 'loading' update message. * Fix issue with rendering of group update timestamps. TIL SimpleDateFormat is not thread safe. Across instances. God forgive them, for they know not what they did. * Move cursor to end of text field after select About preset. * Updated language translations. * Bump version to 5.3.3 * Fix inset issues in landscape. * Fix crash when sharing stickers you don't have installed. * Update padding and margins on conversation updates. * Do not allow saving pending media. * Switch dark theme bubbles with wallpaper to grey_95 instead of black. * Updated language translations. * Bump version to 5.3.4 * Disable mass APNG animation on low-memory devices. * Fix author title on remote deleted group messages. * Revert "Bump libsignal-client to 0.2.2" This reverts commit ce156c3. * Updated language translations. * Bump version to 5.3.5 * Fix initial LiveData value for recipients. * Fix rotation locked after voice record cancel and allow rotation when recording locked. * Restore group update message "Loading" text. * Prevent duplicate member UUIDs in groups. Fixes signalapp#10702 * Update logic on deciding whether to bulk animate stickers. * Updated language translations. * Bump version to 5.3.6 * Fix navigation bar theming issue. Fixes signalapp#10772 * Added some additional logging around About. * Ensure passphrases are disabled for all but the oldest users. * Updated language translations. * Bump version to 5.3.7 * Enable dither on the gradient painter. * Only cluster updates of the same type together. * Lint to prevent glide log usage. * Possible fix to getting thrown to the bottom while reading unreads. Shoutout to @fumiakiy for the excellent research here! Sometimes we get thrown to the bottom of the list (or other list locations) when reading content in the middle of the list. Most often, this happens when you have a lot of unread messages and you open the conversation. FixedSizePagingController#onDataNeededAroundIndex() can be called very fast in rapid succession, and we use the DataStatus class for bookkeeping to know which requests are in-flight. We then make those requests in LIFO order in order to make sure that the data visible on screen now gets the highest priority. ...But in practice, that LIFO ordering can make things a little screwy. Imagine we called onDataNeedAroundIndex() 50 times in rapid succession (1, 2..., 50). Each time it's called, we generate a range and mark that range as being fetched in DataStatus. That could mean that the latest request for index 50 might only have, like, 1 item in it, because a previously-enqueued fetch already got assigned most of it's data. BUT we execute the nearly-empty request for index 50 first because of the LIFO ordering. We give that data to RecyclerView first, and it doesn't like that at all, and it jumps to weird places because we gave it mostly null values, which are rendered as placeholder values (which are smaller than real cells). So then, when we give it the real data right after, its position is all off. I switched to a serial executor. That prevents us from giving back weird lists. The consequence is that if you scroll super fast, you run the risk of the executor getting 'backed up' fetching data that's offscreen. However, in practice, I couldn't trigger this. We'll see how it goes. I think the true solution is a smarter way of fetching and ordering requests, but that gets to be really tricky from a threading perspective, and I'd rather keep things simple. * Update to RingRTC v2.9.0 Co-authored-by: Alex Hart <alex@signal.org> * UUID is now returned always. * Restore pinned chats on archive undo. * Show name of message sender for groups in conversation list. * Prevent warnings about multiple substitutions in non-positional format. * Move reaction overlay UI into a stub. * Replace Firebase ML vision with built in face detection. * Move backoff calculation into jobs. * Fix potential Base64 < 4 characters crash on group invite. * Allow block of any recipient except MMS groups still. * Fix wallpaper preview layout for longer text. * Fix registration issue where pin box is left disabled. * Ensure NonSuccessfulReponseCodeException knows the response code. * Have a much longer backoff maximum for 5xx errors. * Delete duplicated internal preference. * Updated language translations. * Bump version to 5.3.8 * Fix wallpaper in landscape mode with notched devices. * Fix bad navigation for icon in ConversationActivity toolbar. * Fix crash when READ_PHONE_STATE is denied. * Do a normal message fetch in FcmReceiveService#onDeleteMessages() * Use stable ids on conversation list. Fixes signalapp#10853 * Updated language translations. * Bump version to 5.3.9 * Update libphonenumber to v8.12.17 * Revert "Fix wallpaper in landscape mode with notched devices." This reverts commit 0b62bb8. * Updated language translations. * Bump version to 5.3.10 * Force custom emojis for about views. * Fix issue where reaction shade is offset in chat bubbles. Fixes signalapp#10843 * Fix unnecessary zeros padding. * Allow contact support from registration lock and screen lock screens. * Add additional logging for conflict resolution. * Fix storage sync issue related to duplicate remote contacts. The theory is that if multiple remote keys map to the *same* local entry, then when we go to update the local contact the second time, we won't find the entry by StorageID, because we changed it during the *first* update, which will then lead to a crash. This change makes it so dupes are considered invalid, so we'll delete them and upload our own local copy. * Clean up unnecessary GCM stuff, improve FCM logging. * Add support for configuring a signal proxy. * Fix migration of null titled group. * Skip automigration of nameless groups. * Fix empty conversation update item text. For some reason, if an EmojiTextView has a wrap content width and some other set of conditions occur, the view will not request a relayout when text changes. This change inelegantly calls request layout more often to prevent that from happening. * Add UI support for configuring a proxy. * Allow using a proxy during registration. * Remove conversation update min width. * Configure keep alive duration for okhttp connection pool to 1 minute. The signal http server supports http keep alive, but closes idle connections after 1 minute. The default OkHttp connection pool will keep idle connections in the pool for 5 minutes and doesn't notice it when the server closes connections. As currently the automatic okhttp retries are disabled, reusing such a stale connection will be fatal. Issue is especially severe for incoming calls, which fail because the request to retrieve the turn servers fails and isn't retried: signalapp#10787 * Updated language translations. * Bump version to 5.3.11 * Do not linkify message body if recipient is not message request accepted. Co-authored-by: Greyson Parrelli <greyson@signal.org> * Add additional debug info for internal users. * Clean up several UX interactions with proxy entry. * Add support for sgnl:// proxy deep links. * Allow proxy deep links during registration. * Use a simple check to verify proxies during registration. * Use matching color for read conversation sender names. * Improve proxy link parsing. * Change migration prompt from 'update' to 'upgrade'. * Add some description to the proxy settings screen. * Increase thread string length to 5 in logs. * Updated language translations. * Bump version to 5.3.12 * Apply proper rotation to buttons and video in landscape. * Prevent narrow race condition when resetting network components. * Fix success dialog in proxy edit screen. * Include git hash in debuglog. * Bump libsignal-client to 0.2.3 * Dismiss reactions when read on linked devices. Also sends out read receipts for read reactions. At present, only iPad is sending these -- desktop still needs to add send support. * Add transparency to the compose bar when wallpaper is present. * Fix text overlapping on edit proxy screen. * Adapt maxInstancesForQueue to only consider instances of the same job. Currently the maxInstancesForQueue limit checks the count of all jobs in a given queue. If there are already too many jobs, the new job is discarded. However this is not the expected behavior for the two jobs where it's used: GroupCallPeekWorkerJob and AutomaticSessionResetJob For both the expected behavior is that there aren't too many jobs of them started, but that there will be at least one instance of them started. Both of them use the same queue as the PushProcessMessageJob and the MarkerJob. Those two jobs are often in the queue at the same time, effectively preventing the GroupCallPeekWorkerJob and AutomaticSessionResetJob from being enqueued. * Fix crash when changing contact color without contacts permission. On mulit-device app, after the contact color is changed, a multi-device contact update job is triggered, which tries to access the system avatar. This causes a crash if the user has revoked the contacts permission. * Fix crash from incoming call without contacts permission. When the device is in Do Not Disturb mode and a call comes in from a system contact, the app crashes if the user has revoked the contacts permission. The crash occurs because in Do Not Disturb mode Signal tries to check if the contact is starred. * Adds some breathing space in the button caption. Fix to a bug reported in the [beta forum](https://community.signalusers.org/t/beta-feedback-for-the-upcoming-android-5-3-release/25088/353) * Add a system to improve app foreground observation. There was previously a crash that occurred when multiple threads tried to use ProcessLifecycleOwner, and this will hopefully resolve that. * Updated image compression parameters. * Switch to a standard toolbar color. * Switch to a standard toolbar color. * T r a n s p a r e n c y * Add back a toolbar shadow. * Some more theming * Also fix verify identity screen. * Hide shadow on empty conversations. * Slightly less transparent. * Disable conversation shortcuts when screen lock is enabled. * Fix missing UUID crash, get group recipients direct from V2 group record. * Fix issue where group sent transcripts were not put in proper processing queue. * Check if the content uri already exists and rename the file until it's valid to insert. Fixes signalapp#10159 * Fix timestamp and size for attachment saves. * Fail an enqueued job if its dependencies already failed. This was a bug that was most notable during the attachment pre-upload process: if an attachment failed to upload, the subsequently-enqueued PushMediaSendJob would still send. This is because the attachment jobs were enqueued first and failed *before* we enqueued the PushMediaSendJob as a dependency. This will use the JobTracker to determine if a dependency already failed at the time of enqueueing a job like this. This isn't perfect, because the JobTracker is memory-only and has a limited buffer (currently 1000), but in practice this should be sufficient for our use cases. I imagine it'd only fall apart if we somehow enqueued a dependent job *much* later, or somehow enqueued it based on a job ID that we persisted on disk through an app restart. We don't do any of these things, currently, and probably never should. Also took the opportunity to patch a case where we weren't failing dependent jobs when canceling a job, since I was giving the failure stuff a look-over. * Ensure we only have one IncomingMessageObserver. We saw a worrisome log that implied there may be a situation where there's two IncomingMessageObservers. I can't see how that would happen, but this is a failsafe to prevent that from happening. * Remove unused signaling key code. * Periodic alarm to check for messages. * Updated language translations. * Bump version to 5.4.0 * Fix banner position issues. * Lighten and unify toolbar shadows. * Fix NPE in AppForegroundObserver. * Updated language translations. * Bump version to 5.4.1 * Fix landscape boundaries of conversation activity. * Fix boundaries of conversation banners in landscape. * Fix crash when running shortcut update job on older APIs. * Shorten message processor foreground service delay to resolve ANR. * Do not use View.getLayoutDirection(). This value doesn't populate until after the first layout pass. Instead, it appears to be safer to just read it from the Configuration. * Archive sessions on 409/410 instead of deleting them. * Update long message activity toolbar color. * Ensure a job has a context before we fail it. * Fix RTL padding issue for conversation items. * Update chat wallpaper preview toolbar colors. * Bump Lottie version to 3.6.0 Should hopefully fix an NPE we're seeing. * Move BlobProvider storage out of cache and into internal storage. * Improve network reliability. * Make max image dimensions a round number. * Updated language translations. * Bump version to 5.4.2 * Fix conversation banner layout issues. * Increase maximum zoom level for small images. * Ensure MessageProcessReceiver pending result finished is called timely. * Do not show message notifications if disabled in settings. * Improve experience of populating migration dialog. * Fix reaction overlay not showing on first try in RTL mode. Moved the code that does some layouts according to the view's layout direction to the place where we can safely use the value from getLayoutDirection(). This fixes the issue reported in [the beta 5.3 forum](https://community.signalusers.org/t/beta-feedback-for-the-upcoming-android-5-3-release/25088/315). * Fix status bar color on Android 5.x. * Revert "Bump libsignal-client to 0.2.3" This reverts commit 8b7506e. * Force disabling of foreground notification vibration. * Updated language translations. * Bump version to 5.4.3 * Upgrade notification channels earlier. * Bump version to 5.4.4 * Fix conversation search bar tint. * Improve accuracy of decryption drained constraint. * Revert "Fix reaction overlay not showing on first try in RTL mode." This reverts commit 424979d. * Perform additional URI validation in ShareRepository. * Target the middle of the screen when jumping to a message. * Fix possible crash during NotificationChannels initialization. * Log both current and original priority for FCM messages. * Updated language translations. * Bump version to 5.4.5 * Do not show GV1 manual migration if you don't have the capability. * Do not show recipient tooltip for the share flow. * Fix crash when receiving call with no corresponding identity key. * Do not compress stickers. * Attempt to calculate orientation without magnetic field sensor data when it's missing. * Revert "Perform additional URI validation in ShareRepository." This reverts commit 04b7cb1. * Perform additional URI validation in ShareRepository. Thanks to Shivasurya <s5sankar@uwaterloo.ca> for reporting this issue! * Updated language translations. * Bump version to 5.4.6 Co-authored-by: Greyson Parrelli <greyson@signal.org> Co-authored-by: Jim Gustafson <jim@signal.org> Co-authored-by: Alan Evans <alan@signal.org> Co-authored-by: Sicco van Sas <siccovansas@users.noreply.github.com> Co-authored-by: Alex Hart <alex@signal.org> Co-authored-by: PockelHockel <pockelhockel1@gmail.com> Co-authored-by: Martin d'Allens <martin.dallens@liberty-rider.com> Co-authored-by: Jack Lloyd <jack@signal.org> Co-authored-by: ascendingSun <68401411+ascendingSun@users.noreply.github.com> Co-authored-by: Thore Goebel <hello@thore.io> Co-authored-by: Michael Crenshaw <michael@crenshaw.dev> Co-authored-by: Cody Henthorne <cody@signal.org> Co-authored-by: Moxie Marlinspike <moxie@thoughtcrime.org> Co-authored-by: AsamK <asamk@gmx.de> Co-authored-by: Fumiaki Yoshimatsu <fumiakiy@gmail.com>
This is most probably a duplicate of #7733. May I ask to close this issue (to avoid having duplicates) and continue the conversation in the linked ticket? |
Bug description
Since the downtime last week, I am unable to reliably receive calls on my Android phone. When someone calls me, I instantly get the "missed call" notification on my phone, even while Signal-desktop is still ringing. This problem does not seem to be restricted to Android, as I have friends and family who are on iPhone and are experiencing the same issue.
Things I've tried:
Screenshots
Link to debug log
This debug log is from the phone that is being called.
https://debuglogs.org/ccef93ca0b3dbfe8dc6f2e4cb5e182c58ef193631d54e405df2f85bff58f5d5a
The text was updated successfully, but these errors were encountered: