如何解决Twilio TwiML 说然后在来电中播放
我需要我的应用能够首先对来电说些什么,然后循环播放录音。
这段 ruby 代码曾经可以做我想做的事,但现在似乎不再起作用了。
return 200,Twilio::TwiML::VoiceResponse.new do |r|
r.say(voice: 'alice',message: 'Hello World')
r.play(
loop: 0,url: 'https://my-domain/beep'
)
end.to_s
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say voice="Alice">Hello World</Say>
<Play loop="0">https://my-domain/beep</Play>
</Response>
Alice 说了她应该说的话,但没有播放循环测试哔声。我已验证我的服务器为 Content-Type: audio/x-wav
提供了正确的 beep
文件。
如果您有任何关于如何实现我正在尝试做的事情的指示,我将不胜感激。
解决方法
响应 Ruby
中的来电
# Get twilio-ruby from twilio.com/docs/ruby/install
require 'sinatra'
require 'twilio-ruby'
post '/voice' do
city = params['FromCity']
# Start our TwiML response
Twilio::TwiML::VoiceResponse.new do |r|
# Use <Say> to give the caller some instructions
r.say("Never gonna give you up #{city}.",voice: 'alice')
r.play(url: 'https://demo.twilio.com/docs/classic.mp3')
end.to_s
end
,
为了将来参考,这是由 Twilio 缓存旧的 wav 文件(碰巧故意保持沉默)引起的。刷新缓存后,Twilio 现在可以播放正确的声音文件。
我希望这对某人有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。