它非常直接地记录和转录用户的呼叫,或者在提示他们录音后从用户的键盘收集输入。然而,我不清楚我应该采取什么步骤来记录用户对问题的“描述”(在这种情况下)并收集用户输入,这将帮助我在同一个调用中路由他们的“请求”,以便 TwiML 可以在一个请求中发布此数据。
有没有人遇到过这种情况,如果有的话,你能指出我正确的方向吗?谢谢。
它非常直接地记录和转录用户的呼叫,或者在提示他们录音后从用户的键盘收集输入。然而,我不清楚我应该采取什么步骤来记录用户对问题的“描述”(在这种情况下)并收集用户输入,这将帮助我在同一个调用中路由他们的“请求”,以便 TwiML 可以在一个请求中发布此数据。
有没有人遇到过这种情况,如果有的话,你能指出我正确的方向吗?谢谢。
我正在回答我自己的问题,以防将来有人需要帮助。
在我的特定场景中,我需要提示用户按下一个键以路由正在放置的“请求”。我还需要包含描述的请求,因此还需要记录用户的声音。
这并不像听起来那么复杂(我现在知道了),您需要的是在收集按键时响应 TwiML 操作,并使用另一个处理语音记录的 XML 文档。理论上,这个 XML 将使用从 TwiML 接收到的“数字”在第二个 XML(路由)中构造一个新的动作 src。
第一个 XML 看起来像这样来收集用户输入:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Gather action="hxxp://example.com/pick_dish" timeout="10" finishOnKey="*">
<Say>Please press 1 for tacos, 2 for pancakes, 3 for pizza, etc.</Say>
</Gather>
</Response>
然后,当我们在 hxxp://example.com/pick_dish 收到 $_REQUEST (PHP) 时,我们将使用发送的 Digits 参数来替换响应 XML 中的“dish_id”,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say>
Please describe the dish you selected after the beep.
Press the star key when finished.
</Say>
<Record
action="hxxp://example.com/save_dish/<dish_id>/description"
method="GET"
maxLength="20"
transcribe="true"
finishOnKey="*"
/>
<Say>I did not receive a recording</Say>
然后 /Description 路径将保存提供的 disc_id 的描述。