我最近遇到了 TwiML<Hangup>动词的问题。我有一个简单的设置,其工作方式如下:
我有一个 Twilio 号码设置来接收来电,并配置为使用如下的 TwiML bin:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Record timeout="5" transcribe="false" trim="trim-silence" maxLength="10"/>
<Hangup/>
</Response>
Run Code Online (Sandbox Code Playgroud)
目标是让号码接听来电,从中最多录制 10 秒的音频,修剪静音,然后挂断。它正确地完成了所有这些,除了挂断。
此时,不是挂断,而是在录音结束时达到maxLength10 秒后开始新的录音。这会一直持续到通话结束,并且通常会导致每次通话 2-5 次录音。就好像<Hangup>动词被完全忽略了一样。这是我的意思的一个例子:
Twilio Call Details Screen
我想知道之前是否有人遇到过这种情况(以及您做了什么来解决它),或者我可以做些什么来在录音后正确挂断电话。我目前的解决方案是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<!-- This is a hacky solution. I found by accident that passing an invalid action argument causes the call to forcibly hangup (after the recording is completed) - hence the action "breakcall" below. = -->
<Record timeout="5" transcribe="false" trim="trim-silence"
action="breakcall" …Run Code Online (Sandbox Code Playgroud)