swift 4.2 Как программно выйти из телефонного звонка? - PullRequest
0 голосов
/ 21 ноября 2018

, используя приведенный ниже код из другого ответа, чтобы определить состояние телефонного звонка, и это сработало, но теперь мне нужно создать функцию, в которой через 10 секунд вызов будет завершен программно, или ввести кнопку, чтобы пользователь мог закрытьЭто.Или даже обнаружить нажатие красной кнопки от пользователя.

код

//        CXCallController.request(transaction) { error in

примечание действительно больше

тестирование сейчас:

func endCall(call: UUID) {

        let endCallAction = CXEndCallAction(call: call)
        let transaction = CXTransaction(action: endCallAction)
        let cxcontrolelr = CXCallController()
//        CXCallController.request(transaction) { error in
//            if let error = error {
//                print("EndCallAction transaction request failed: \(error.localizedDescription).")
//                self.cxCallProvider.reportCall(with: call, endedAt: Date(), reason: .remoteEnded)
//                return
//            }

        CXCallController.requestTransaction(cxcontrolelr)
            print("EndCallAction transaction request successful")

        }

    }


func closeTheCAll() {

        //            let myUuid = UIDevice.current.identifierForVendor?.uuidString
        let myUuid = UUID().uuidString
        print(myUuid)
        endCall(call: myUuid)

    }



 //MARK: Monitoring call status section //this is working with no issue
    func callObserver(_ callObserver: CXCallObserver, callChanged call: CXCall) {
        if call.hasEnded == true {
            print("Disconnected")

        }
        if call.isOutgoing == true && call.hasConnected == false {
            print("Dialing")
        }
        if call.isOutgoing == false && call.hasConnected == false && call.hasEnded == false {
            print("Incoming")
        }
        if call.hasConnected == true && call.hasEnded == false {
            print("Connected")

        }
    }
...