Skip to content

Why is completion never called when reporting new incoming call on ios? #159

Closed
@rcidt

Description

@rcidt

I am getting reports from some iOS users that incoming calls stop coming in after a few days.

I am thinking this is because iOS is blocking the VoIP notifications because for some reason the incoming calls are not being reported to the system.

I think it might have to do with the fact that CallKeep never calls the completion handler when reporting the new incoming call to ios here:

    [sharedProvider reportNewIncomingCallWithUUID:uuid update:callUpdate completion:^(NSError * _Nullable error) {
        RNCallKeep *callKeep = [RNCallKeep allocWithZone: nil];
        [callKeep sendEventWithName:RNCallKeepDidDisplayIncomingCall body:@{ @"error": error ? error.localizedDescription : @"", @"callUUID": uuidString, @"handle": handle, @"localizedCallerName": localizedCallerName, @"hasVideo": hasVideo ? @"1" : @"0", @"fromPushKit": fromPushKit ? @"1" : @"0" }];
        if (error == nil) {
            // Workaround per https://forums.developer.apple.com/message/169511
            if ([callKeep lessThanIos10_2]) {
                [callKeep configureAudioSession];
            }
        }
    }];

Is there a reason we don't call completion(error) at the end of the block?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions