我如何让Twilio发出只发送数字,而不是通过mp3/wav语音的无声呼叫?
问题描述:
我正在写一个小程序来检查我的语音信箱,并按设定的时间间隔向我发送录音。这里的呼叫部分Python代码,至少到测试基本呼叫& AUDIX选项树导航一旦呼叫连接:我如何让Twilio发出只发送数字,而不是通过mp3/wav语音的无声呼叫?
from twilio.rest import TwilioRestClient
# put your own credentials here
ACCOUNT_SID = ""
AUTH_TOKEN = ""
client = TwilioRestClient(ACCOUNT_SID, AUTH_TOKEN)
ext = ""
ext_passwd = ""
digs = "wwwwww#ww" + ext + "wwww" + ext_passwd + "#wwwwww2"
call = client.calls.create(
to="+",
from_="+",
url="",
send_digits=digs,
record="true"
)
print call.sid
的url
参数是必需的,而且似乎目标必须被包含TwiML参考将在通话连接时播放的音频文件。至少从这一点起,我需要一个无声呼叫,只需发送必要的数字来导航我的语音邮件。
我想我错过了什么?或者我真的需要托管一个TwiML文件,并参考一个“空”的MP3,其中有一两个沉默?
答
尝试取出send_digits和记录参数,而是使用其描述TwiML相似的流程的URL。
在URL返回的XML中,您可以使用<Play>
标记的digits属性发送拨号盘数字和<Record>
标记以捕获随后的呼叫音频。您甚至可以通过这种方式将语音邮件transcribe文字化。
这里是位于url的TwiML可能看起来像一个例子:
<?xml version="1.0" encoding="UTF-8"?> <Response> <Play digits="wwwwww#ww1234wwww4321#wwwwww2"></Play> <Record timeout="10" transcribe="true" transcribeCallback="/handle_transcribe" /> </Response>
这是现在的工作。奇怪的是,直到所有的“数字”完成后,录制才开始,即使修剪设置为“不修剪”。我将不得不四处看看可以做些什么,否则我将无法遍历消息。如果有必要,这将是一个新问题。 – Promethean 2014-11-26 18:29:38