Android / iOS上的Twilio可编程语音-拨打电话时传递自定义信息

时间:2018-08-18 10:15:35

标签: mobile parameters sdk twilio voice

使用Android / iOS上的twilio移动SDK进行语音呼叫以支持后端的操作员(纯voip,两端均无电话。支持操作员将使用使用twilio api / twiml的后端Web应用程序接听电话并排队)

我们有一个非常重要的要求-能够在拨打电话时将用户ID从移动应用传递到后端。后端Web应用程序必须具备此功能,才能自动为接听浏览器内呼叫的支持操作员提取用户信息。

移动SDK是否可以通过任何方法实现?任何见识将不胜感激

编辑:拨号时是否可以将此用户ID用作callerid参数,并在Web应用程序端读取它?

1 个答案:

答案 0 :(得分:0)

使用Twilio函数一天后,我想到了以下解决方案。

  1. 移动应用获取访问令牌,命中Twilio语音端点,被路由到队列,等待音乐播放等。

  2. 操作员(Web应用程序)获取访问令牌,命中Twilio语音端点,并自动从队列中将第一个呼叫者出队(即已连接到他们)

  3. 在用于操作员出队的TwiML中,有一个参数url是一个TwiML URL,它将在呼叫者连接到操作员之前在排队的呼叫者端获取并执行。 Twilio向此URL传递了很多参数,包括呼叫者身份和话务员的呼叫sid

  4. 我们将在后端托管此URL,并存储{呼叫者身份,话务员呼叫sid}的映射。

  5. 一旦操作员拨号,操作员Web应用程序将轮询后端,直到返回与当前操作员呼叫sid对应的呼叫者身份。或者后端可以将某种推送通知发送到操作员Web应用程序。这取决于实现(我们将使用websockets)

有关更多信息,请参见https://www.twilio.com/docs/voice/twiml/queue

编辑-Twilio javascript API 1.5支持访问令牌而不是功能令牌,因此将它们用于移动应用程序和Web应用程序更加简单。

编辑2-今天测试了此流程,效果很好:-)