我正在android SIP(android.net.sip)用来VOIP打电话.试图发送DTMF.在SipAudioCall类的android中已经给出了两种方法
void sendDtmf(int code, Message result)
Sends a DTMF code.
void sendDtmf(int code)
Sends a DTMF code.
Run Code Online (Sandbox Code Playgroud)
我想用sendDtmf(int code)方法发送DMTF.但我不知道如何改变它是否实际发送.执行此操作后,我在收件人/发件人方面没有任何语气.打电话给我没有效果(因为它的后台处理不可见).任何人都可以让我知道我怎样才能改变它?另请解释我使用第二种方法sendDtmf(int code, Message result).
通过sip发送DTMF主要有以下三种方法:
它很可能使用带内 RTP 有效负载数据包。尽管我知道的大多数 sip 堆栈都有某种选项来选择要发送的 DTMF 类型。
抱歉,我对内置 Android SIP 堆栈一无所知,因此我无法直接回答有关其实现的问题。
为了检查 DTMF 是否正确发送,我会使用WireShark之类的工具来捕获 RTP 音频流。然后,您可以使用wiresharks voip 呼叫图分析选项,它将在RTP 中显示DTMF 事件!
