0

呼叫功能工作正常,但 SendDTMF 不工作。这是我的最小代码,可以帮助理解这种情况。

class AnswerCallViewController: UIViewController {
var call: Call!
var proxy_cfg: ProxyConfig!
    
let coreManager1 = LinphoneCoreManager()
var lc: Core?
let coreManager2 = LinphoneCoreManager2()
var mIterateTimer: Timer?
var cPtr: OpaquePointer?

 @IBAction func btnsAppend(_ sender: UIButton) {
            
    let digit1 = sender.currentTitle!
    print("digit1", digit1)

    let cchar = (sender.currentTitle!.cString(using: String.Encoding.utf8)?[0])!

    do {
       try call?.sendDtmf(dtmf: cchar)
    } catch {
        print("DTMF failed because \(error)")
    }
}

它应该可以工作,但它总是返回错误。错误日志是 -

liblinphone-warning-linphone_call_send_dtmf(): invalid call, canceling DTMF
sendDtmf and Returns: -1 on error. 

其他信息 -

Linphone SDK - Version 5 (compiled  with g729 codec.)

Xcode - Version 12.4 (12D4e)

任何帮助将不胜感激。

4

1 回答 1

0

Please ensure that you call is defined and call.state == .StreamsRunning

于 2021-10-22T16:06:33.317 回答