Twilio SIP 中继和 Sip 域
Twilio SIP Trunking and Sip Domain
我目前正在使用 Twilio 作为我的云通信平台。我们的一位客户希望使用 headers 将 SIP 转给我们,这样我们就可以使用 Twiml 在我们这一端继续通话。
我已经尝试设置 SIP 域,如果我使用软 phone 作为端点,它会起作用,但这不是我想要完成的。我还尝试设置一个 SIP 弹性中继并让该中继连接到我们的 SIP 域,该域在 return 中调用 SIP 域上的语音 URL。
我目前已经设置了一个简单的应用程序来测试这个过程。我有一个调用 webhook 的 Twilio 号码,在 webhook(我的应用程序)中我将 sip 调用到 Twilio SIP 中继,但它失败了。我期待呼叫 SIP 域和语音 URL。我不断收到 您尝试拨打当前未在相应 SIP 域中注册的 SIP 端点的错误。请检查您的 TwiML 或 REST API.(参考:TWilio Error Documentation.
有人可以帮我解决这个问题吗?我目前正在使用 PHP.
的 Twiml
--更新--
我也在认真阅读这份文档。我的 Twilio 帐户中有一个 SIP 域设置,但它需要端点上的注册用户。在本文档中,它说当 sip 调用进入 sip 域时,它将调用 webhook,但它并没有这样做。 Twilio SIP Domains
一般来说,如果您尝试通过 SIP server/proxy 呼叫 SIP 端点,则 SIP server/proxy 需要知道如何到达该端点(路由)。从错误文本中我得出目前这是不可能的。此外,有时 SIP 服务器仅允许来自已注册端点的出站呼叫。
您可以做很多事情:
- 绕过SIP服务器直接调用端点(可能不是你想要的)
- 在 SIP 服务器中配置到端点的静态路径
- 让端点在 SIP 服务器上注册,以便 SIP 服务器知道谁呼叫以及如何到达目标。
您是否尝试过 Error documentation 中可能的解决方案?
- 确保用户名(在 Request-URI 中)与用于使用 SIP 域验证 SIP 端点的凭据列表中的用户名相匹配
- 拨号前,您可以验证您的 SIP 端点是否已在 SIP 域页面上的控制台 "Registered SIP Endpoints" 选项卡中成功注册。
此处为 Twilio 开发人员布道师。
我相信你对 SIP domain documentation. But the error message clears it up when it says 感到困惑是对的:
Make sure the username matches a username in the Credential List used to authenticate the SIP Endpoint with the SIP Domain.
因此您的用户名必须是现有用户名,SIP 域不能作为通配符捕获所有 SIP 地址。
我会努力确保文档更加清晰。
鉴于您已经收到来自来电的 Webhook,为什么要尝试从 SIP 请求中获取第二个 Webhook?您不能使用第一个 webhook 以您需要的方式定向调用吗?
我目前正在使用 Twilio 作为我的云通信平台。我们的一位客户希望使用 headers 将 SIP 转给我们,这样我们就可以使用 Twiml 在我们这一端继续通话。
我已经尝试设置 SIP 域,如果我使用软 phone 作为端点,它会起作用,但这不是我想要完成的。我还尝试设置一个 SIP 弹性中继并让该中继连接到我们的 SIP 域,该域在 return 中调用 SIP 域上的语音 URL。
我目前已经设置了一个简单的应用程序来测试这个过程。我有一个调用 webhook 的 Twilio 号码,在 webhook(我的应用程序)中我将 sip 调用到 Twilio SIP 中继,但它失败了。我期待呼叫 SIP 域和语音 URL。我不断收到 您尝试拨打当前未在相应 SIP 域中注册的 SIP 端点的错误。请检查您的 TwiML 或 REST API.(参考:TWilio Error Documentation.
有人可以帮我解决这个问题吗?我目前正在使用 PHP.
的 Twiml--更新--
我也在认真阅读这份文档。我的 Twilio 帐户中有一个 SIP 域设置,但它需要端点上的注册用户。在本文档中,它说当 sip 调用进入 sip 域时,它将调用 webhook,但它并没有这样做。 Twilio SIP Domains
一般来说,如果您尝试通过 SIP server/proxy 呼叫 SIP 端点,则 SIP server/proxy 需要知道如何到达该端点(路由)。从错误文本中我得出目前这是不可能的。此外,有时 SIP 服务器仅允许来自已注册端点的出站呼叫。
您可以做很多事情:
- 绕过SIP服务器直接调用端点(可能不是你想要的)
- 在 SIP 服务器中配置到端点的静态路径
- 让端点在 SIP 服务器上注册,以便 SIP 服务器知道谁呼叫以及如何到达目标。
您是否尝试过 Error documentation 中可能的解决方案?
- 确保用户名(在 Request-URI 中)与用于使用 SIP 域验证 SIP 端点的凭据列表中的用户名相匹配
- 拨号前,您可以验证您的 SIP 端点是否已在 SIP 域页面上的控制台 "Registered SIP Endpoints" 选项卡中成功注册。
此处为 Twilio 开发人员布道师。
我相信你对 SIP domain documentation. But the error message clears it up when it says 感到困惑是对的:
Make sure the username matches a username in the Credential List used to authenticate the SIP Endpoint with the SIP Domain.
因此您的用户名必须是现有用户名,SIP 域不能作为通配符捕获所有 SIP 地址。
我会努力确保文档更加清晰。
鉴于您已经收到来自来电的 Webhook,为什么要尝试从 SIP 请求中获取第二个 Webhook?您不能使用第一个 webhook 以您需要的方式定向调用吗?