Signal-iOS/Signal/src
Michael Kirk 814aec6cdd Recover CallKit state when remote client fails to hangup
Distinguish between localHangup, remoteHangup, and call failure.

This allows us to put CallKit in the proper state, ready to receive new
calls without having a backlog of phantom calls which haven't been
properly removed.

Note the "call error" occurs at the point ICE fails, which takes a
while. Anecdotally, like 10 seconds, which feels like a long to be
talking into the ether.

I briefly considered failing at 'disconnected', which happens much
sooner, but that's actually a recoverable state. E.g. if you toggle
airplane mode you can see that you bounce into `disconnected` and then
back to `connected`, so I don't think we'd want to fail the call as long
as WebRTC considers it "recoverable".

// FREEBIE
2017-01-26 13:18:06 -05:00
..
audio WIP: WebRTC calling 2017-01-12 09:56:05 -05:00
call Recover CallKit state when remote client fails to hangup 2017-01-26 13:18:06 -05:00
contact Fix font lookup on iOS before 8.2. 2017-01-12 10:14:35 -05:00
crypto Return immutable data from generateSecureRandomData:length and use OSStatus to check the status of SecRandomCopyBytes. (#1306) 2016-08-17 16:09:57 -04:00
environment Merge remote-tracking branch 'origin/master' into feature/webrtc 2017-01-25 09:54:33 -05:00
Jobs delete unused code 2016-12-21 14:11:09 -06:00
Models Add WebRTC setting. 2017-01-17 10:20:04 -05:00
network Fix "Answer" from iOS9 notification doesn't init audio 2017-01-25 12:32:36 -05:00
Observers Read receipts remove lockscreen notifications 2016-09-17 13:51:33 -04:00
phone Fix registration flow / Keep push tokens in sync 2016-11-03 16:13:49 -04:00
profiling TextSecureKit Refactoring 2015-12-22 23:41:10 +01:00
Storyboard Add WebRTC setting. 2017-01-17 10:20:04 -05:00
Storyboards Warn user about re-registering existing signal number 2016-12-16 11:48:33 -06:00
UserInterface Wip smashign providerdelgate into UIAdaptee 2017-01-12 09:56:08 -05:00
util Fix retain cycle 2017-01-24 14:13:29 -05:00
view controllers Recover CallKit state when remote client fails to hangup 2017-01-26 13:18:06 -05:00
views WIP: WebRTC calling 2017-01-12 09:56:05 -05:00
AppDelegate.h Fix registration flow / Keep push tokens in sync 2016-11-03 16:13:49 -04:00
AppDelegate.m Merge remote-tracking branch 'origin/master' into feature/webrtc 2017-01-25 12:13:37 -05:00
NotificationTracker.h TextSecureKit Refactoring 2015-12-22 23:41:10 +01:00
NotificationTracker.m TextSecureKit Refactoring 2015-12-22 23:41:10 +01:00
Signal-Bridging-Header.h Respect silent-switch pre-CallKit 2017-01-24 12:57:02 -05:00
UIColor+OWS.h Move colors into style class 2016-07-14 23:15:06 -07:00
UIColor+OWS.m Move colors into style class 2016-07-14 23:15:06 -07:00
UIView+OWS.h Rework new call view. 2017-01-12 15:55:14 -05:00
UIView+OWS.m Rework new call view. 2017-01-12 15:55:14 -05:00