RTCDTMFSender:toneBuffer 属性
该 RTCDTMFSender
接口的 toneBuffer 属性返回一个字符串,其中包含当前排队发送到远程对等方的列表 DTMF 音调超过 RTCPeerConnection
. 要将音调放入缓冲区,请调用 insertDTMF()
.
音调在播放时会从字符串中删除,因此只列出即将播放的音调。
值
列出要播放的音调的字符串。如果字符串为空,则没有待处理的音调。
异常
InvalidCharacterError
DOMException
-
如果字符不是 DTMF 音调字符(
0-9
、A-D
、#
或,
),则抛出此异常。
音调缓冲区格式
音调缓冲区是一个字符串,可以包含 DTMF 标准允许的任何字符组合。
DTMF 音调字符
- 数字 0-9
-
这些字符代表电话键盘上的数字键。
- 字母 A-D
-
这些字符代表 DTMF 标准中的“A”到“D”键,但大多数电话上没有这些键。这些 *不* 被解释为数字。小写“a”到“d”会自动转换为大写。
- 磅/井号(“#”)和星号(“*”)
-
这些对应于通常位于电话键盘底部的类似标记的键。
- 逗号(“,”)
-
此字符指示拨号过程在发送缓冲区中的下一个字符之前暂停两秒钟。
注意:所有其他字符都是无法识别的,会导致 insertDTMF()
抛出 InvalidCharacterError
DOMException
.
使用音调缓冲区字符串
例如,如果您正在编写代码以通过发送 DTMF 代码来控制语音邮件系统,您可能会使用诸如 "*,1,5555"
之类的字符串。在这个例子中,我们会发送 "*"
来请求访问 VM 系统,然后,在暂停之后,发送一个“1”来开始播放语音邮件消息,然后,在暂停之后,拨打“5555”作为 PIN 码来打开消息。
将音调缓冲区设置为一个空字符串 (""
) 会取消任何待处理的 DTMF 代码。
示例
待定
规范
规范 |
---|
WebRTC:浏览器中的实时通信 # dom-RTCDTMFSender-tonebuffer |
浏览器兼容性
BCD 表只在浏览器中加载