Проблема вызова Twilio Voice в iOS - PullRequest
       5

Проблема вызова Twilio Voice в iOS

0 голосов
/ 10 сентября 2018

Я работаю над Twilio Voip Call. Я следовал документации twilio и в соответствии с документами я скачал там проект и следовал там инструкции и изменить базовый URL в соответствии с моим, который в php. Теперь я получаю токен. Я передаю этот токен методу делегатов, но вызов не может соединиться. Я включил аудио звонок из возможностей также. Но все равно это не работает. Это мой код для голосового вызова twilio,

func callFetchVoiceTokenAPI() {

    let param = [
        "token" : LoginToken!,
        "identity" : myPhoneNumber!
    ] as [String : Any]

    ServerCall.makeCallWitoutFile(fetchVoiceTokenUrl, params: param, type: Method.POST, currentView: self.view) { (response) in

        print(response ?? JSON.null)

        if let json = response {
            if !json.isEmpty {

                let token = json["token"].stringValue
                print(token)
                let success = json["success"].boolValue
                print(success)
                self.placeCall()
               UserDefaults.standard.set(token, forKey: "voiceToken")
               UserDefaults.standard.synchronize()
            }
        }
    }
}
func placeCall(){

    if (self.call != nil && self.call?.state == .connected) {
        self.call?.disconnect()
       // self.toggleUIState(isEnabled: false, showCallControl: false)
    } else {
        let uuid = UUID()
        let handle = "Hello Hamza"
        print(uuid)
        performStartCallAction(uuid: uuid, handle: handle)
    }

}
 // MARK: Call Kit Actions
func performStartCallAction(uuid: UUID, handle: String) {
    let callHandle = CXHandle(type: .generic, value: handle)
    let startCallAction = CXStartCallAction(call: uuid, handle: callHandle)
    let transaction = CXTransaction(action: startCallAction)
    print(callHandle,startCallAction,transaction)
    callKitCallController.request(transaction)  { error in
        if let error = error {
            NSLog("StartCallAction transaction request failed: \(error.localizedDescription)")
            return
        }

        NSLog("StartCallAction transaction request successful")

        let callUpdate = CXCallUpdate()
        callUpdate.remoteHandle = callHandle
        callUpdate.supportsDTMF = true
        callUpdate.supportsHolding = true
        callUpdate.supportsGrouping = false
        callUpdate.supportsUngrouping = false
        callUpdate.hasVideo = false

        self.callKitProvider.reportCall(with: uuid, updated: callUpdate)
    }
}
func performVoiceCall(uuid: UUID, client: String?, completionHandler: @escaping (Bool) -> Swift.Void) {
    let accessToken = UserDefaults.standard.string(forKey: "voiceToken")
    if accessToken != nil  {
        print(accessToken!)
    }else {
        completionHandler(false)
        return
    }

    call = TwilioVoice.call(accessToken!, params: [twimlParamTo : twimlParamTo], uuid:uuid, delegate: self)
    print(call!)
    self.callKitCompletionCallback = completionHandler
}

Это то, что происходит, когда весь код выполняется, enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...