1

尝试使用 RingCentral Platform RingOut API 资源进行调用时,API 以 200 响应并且消息显示“进行中”,但调用从未真正发生。在尝试确保这不是我的代码时,我测试了使用 RingCentral 软电话拨打 RingOut 电话,并遇到了同样的问题。

  • 我已经激活了我的帐户并设置了我的用户密码
  • 这是一个美国号码
  • 我已经在Developer PortalRingOut中创建了我的应用程序,并分别在应用程序的 API 权限中授予了权限
  • 我可以成功地access_token从 Sandbox API https://platform.devtest.ringcentral.com获得一个
  • 我收到的令牌是有效的,并且RingOut包含在scope

这是我发送到 Sandbox RingOut API 的 API 请求:

POST /restapi/v1.0/account/~/extension/~/ringout HTTP/1.1
Host: platform.devtest.ringcentral.com
Authorization: Bearer {{MY_ACCESS_TOKEN}}
Content-Type: application/json
Accept: application/json
Cache-Control: no-cache

{
    "from": {
        "phoneNumber":"{{MY_MAIN_COMPANY_NUMBER}}"
    },
    "to": {
            "phoneNumber":"{{MY_MOBILE_NUMBER}}"
    }
}

这在RingCentral API Explorer中也失败了,所以我知道这不是我的代码。我做错了什么?

4

1 回答 1

1

确保将 RingCentral 软电话配置为使用沙盒 API 运行。阅读入门指南中的配置开发环境,了解如何设置您的软电话以使用沙盒 API。

一旦您知道为正确的环境(沙盒或生产)配置了软电话,发生这种情况的最常见原因是您进行身份验证的 RingCentral 用户没有配置直接号码数字线路

解决此阻止程序的第一步取决于您的 RingCentral 帐户类型...

对于已付费的 RingCentral 客户账户

请联系您的 RingCentral 帐户管理员,并要求他们将数字线路添加到在获取您的access_token. 您还可以将凭据切换到已在其帐户上配置了直接号码数字线路的沙盒帐户用户。

-或者-

您可以使用以下步骤(如果您在 RingCentral 中为您的用户分配了管理员角色)。

免费 RingCentral 开发者账户

A. 登录到您的Sandbox RingCentral 帐户,然后在您的用户上添加数字线路

注意:数字线路只是添加一个设置为“桌面软电话”的电话。

-或者

B. 如果您有权管理您的Sandbox RingCentral 帐户,然后在您的用户上添加一个直接号码

解决此阻止程序的第二步取决于您尝试如何使用 API 或使用软电话进行 RingOut。

使用软电话

将用户修改为拥有数字线路后,重新对 RingCentral 软电话进行身份验证,您应该可以立即拨打电话。

使用RingOut API

将 POST 请求中的正文修改为RingOut API 以进行呼叫,并将 设置from.phoneNumber为等于您收到的新数字线路电话号码。然后您应该能够通过 API 使用 RingOut 进行呼叫(前提是您没有收到任何其他错误)。

POST /restapi/v1.0/account/~/extension/~/ringout HTTP/1.1
Authorization: Bearer {{YOUR_VALID_ACCESS_TOKEN_WITH_RINGOUT_SCOPE}}
Content-Type: application/json
Accept: application/json

{
    "from": {"phoneNumber": "{{REPLACE_WITH_YOUR_NEW_DIGITAL_LINE_PHONE_NUMBER}}"},
    "to": {"phoneNumber": "{{CONTACT_PHONE_NUMBER}}"}
}
于 2017-02-01T18:53:52.263 回答