Как мы можем вызвать делегат portsip, если приложение завершено или принудительно

Я использую Portsip SDK (пробная версия) в моем приложении для вызова VOIP. Call работает нормально как на переднем, так и на заднем плане. Я использую Call Kit Framework для входящего / исходящего вызова на стороне клиента. Когда я удалил приложение из фона или принудительно отключил приложение, в том случае, когда я пытаюсь позвонить с другого устройства, поступает вызов, я получил VOIP push, но порт sip входящий делегат не вызывает, тогда как, если я позвоню снова (2 раза в том же состоянии приложения) порт sip входящий вызов делегата. поэтому до тех пор, пока входящий делегат не позвонит, мы не сможем принять. отклонить входящий вызов.**

Поэтому, пожалуйста, помогите мне, как мы можем вызвать sip-делегат порта, если приложение завершено или принудительно завершено.

1 ответ

У меня была похожая проблема на моей стороне, но я не использую portsip, Так что, если это связано с portsip, мой ответ может быть неправильным, однако я следовал некоторым шагам на примере Apple. Когда я добавил configureAudioSession() Метод все работало нормально для меня. Например:

func provider(_ provider: CXProvider, perform action: CXStartCallAction) {
    // Create & configure an instance of SpeakerboxCall, the app's 
    configureAudioSession()
    self.provider.reportOutgoingCall(with: call.uuid!, connectedAt: Date())
    action.fulfill()
}
func provider(_ provider: CXProvider, perform action: CXAnswerCallAction) {
    // Retrieve the SpeakerboxCall instance corresponding to the action's call UUID
    guard callManager.callWithUUID(uuid: action.callUUID) != nil else {
        action.fail()
        return
    }

    configureAudioSession()

    // Signal to the system that the action has been successfully performed.
    action.fulfill()
}

Надеюсь, поможет.

Другие вопросы по тегам