我有一個場景,每天早上在上午5點說,我有一個服務器端腳本/批處理作業醒來,從基於算法的列表中選擇一個電話號碼,撥打該電話號碼並使用文字轉語音來發送定製的消息。我有2個問題,用於通過語音流進行呼出呼叫的Twilio API
哪個Twilio API可以用來實現這個?請記住,沒有應用程序用戶界面,所有代碼都將位於後端。考慮NodeRED流或在給定時間運行的Python腳本。
而不是指定TwiML中的文本,我可以通過說Watson的文本到語音的音頻流到相應的Twilio API嗎?
我有一個場景,每天早上在上午5點說,我有一個服務器端腳本/批處理作業醒來,從基於算法的列表中選擇一個電話號碼,撥打該電話號碼並使用文字轉語音來發送定製的消息。我有2個問題,用於通過語音流進行呼出呼叫的Twilio API
哪個Twilio API可以用來實現這個?請記住,沒有應用程序用戶界面,所有代碼都將位於後端。考慮NodeRED流或在給定時間運行的Python腳本。
而不是指定TwiML中的文本,我可以通過說Watson的文本到語音的音頻流到相應的Twilio API嗎?
要做到這一點,您需要使用Twilio提供的可編程語音API。這使您可以播放音頻文件,文本到語音,製作和操作電話等。我從來沒有使用過Watson Text-to-Speech,但是,如果它可以輸出音頻文件,則可以使用Twilio TwiML播放。
下面是Node中的一個例子。
npm install twilio
//require the Twilio module and create a REST client
var client = require('twilio')('ACCOUNT_SID', 'AUTH_TOKEN');
client.makeCall({
to:'+16515556677', // Any number Twilio can call
from: '+14506667788', // A number you bought from Twilio
url: 'url/to/twiml/which/may/have/WatsonURL' // A URL that produces TwiML
}, function(err, responseData) {
//executed when the call has been initiated.
console.log(responseData.from); // outputs "+14506667788"
});
的TwiML看起來是這樣的:
<Response>
<Play loop="1">https://api.twilio.com/cowbell.mp3</Play>
</Response>
這將從Twilio API播放聲音鈴鐺。只是一個默認聲音。如果你可以得到一個URL,就可以很容易地生成這個Watson聲音文件。
如果您不想手動構建XML,則可以在Node中執行相同的操作。
var resp = new twilio.TwimlResponse();
resp.say('Welcome to Twilio!')
.pause({ length:3 })
.say('Please let us know if we can help during your development.', {
voice:'woman',
language:'en-us'
})
.play('http://www.example.com/some_sound.mp3');
如果你拿這個的toString()將輸出格式化XML(TwiML):
console.log(resp.toString());
此輸出:
<Response>
<Say>Welcome to Twilio!</Say>
<Pause length="3"></Pause>
<Say voice="woman" language="en-us">Please let us know if we can help during your development.</Say>
<Play>http://www.example.com/some_sound.mp3</Play>
</Response>
希望這清除它適合你。
Scott
感謝您提供這樣一個詳細的答覆斯科特!我們能寄給你一件T恤嗎?詳情請電郵[email protected]。 –
謝謝梅根。我給你發了封郵件。 –