代码之家  ›  专栏  ›  技术社区  ›  nattfodd

Twilio WebRTC客户端接收传入呼叫

  •  0
  • nattfodd  · 技术社区  · 6 年前

    问题是:是否可以直接使用客户端ID启动对浏览器的传入呼叫 POST/Accounts/[AccountSid]/Calls API(或除下述方式外的任何其他方式)?

    文件上说是的,但当我提供 clientId 就像这样: { "to": "the_user_id" } ,我得到了一个非常混乱和奇怪的错误:

    {
    "code": 21215,
    "message": "Account not authorized to call +843873743. Perhaps you need to enable some international permissions: https://www.twilio.com/console/voice/calls/geo-permissions/low-risk"
    }
    

    我不知道那是什么 +843873743

    如果我提供真实的电话号码(如 +1821... { "to": "+1821..." } . 它按预期进行调用,它遵循我提供的WebHook url下的说明。

    如果我在TwiML中提供以下XML,那么我也可以工作:

    <?xml version="1.0" encoding="UTF-8"?>
    <Response>
        <Say>Calling WebRTC client</Say>
        <Dial callerId="+38312312312312">
            <Client>the_user_id</Client>
        </Dial>
        <Say>Bye</Say>
    </Response>
    

    但是上面的解决方案要求我必须先打一部真正的电话,然后在对话中添加一个WebRTC客户端。我想先调用WebRTC客户端,然后像往常一样使用TwiML添加任何其他人。

    我所做的就是和你玩 twilio quickstart js example .

    1 回复  |  直到 6 年前
        1
  •  1
  •   nattfodd    6 年前

    我错过了文档的重要部分,可以找到 here

    我基本上错过的是,当您调用WebRTC客户端时,应该在clientID前面加上前缀 client: -因此,正确的要求是:

    {
      "from": "+1-202-555-0112",
      "to": "client:the_user_id",
      "url": "https://your-server.com/twilio_ml/webhook.xml"
    }
    

    所以它就像一个符咒。