, используя приведенный ниже код из другого ответа, чтобы определить состояние телефонного звонка, и это сработало, но теперь мне нужно создать функцию, в которой через 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")
}
}