1

我正在开发一个应用程序,当在主线或任何可用的分机上收到呼叫时,我需要得到通知。应该订阅哪个事件来获得通知?

此外,RingCentral 是否支持 Webhook 通知?在某个地方,我遇到了说 RingCentral 只支持 PubNub 的东西,但我看到有一种方法可以将 TransportType 提供为 PubNub 或 Webhook。

4

1 回答 1

2

应该订阅哪个事件以获取在我的主线或任何可用分机上收到呼叫的通知?

您可能希望订阅 Presence 事件,确保将detailedTelephonyStatus查询参数设置为true.

以下是创建在线事件订阅的文档中的一个示例:

POST /restapi/v1.0/subscription HTTP/1.1
Authorization: Bearer U0pDMDFQMDFQQVMwMnxBQUJFU3VOMlp2bjZFR0gxNFhfTUNONhaU1SVHc
Content-Type: application/json
Content-Length: 235


{
    "eventFilters": [
        "/restapi/v1.0/account/~/extension/~/presence?detailedTelephonyState=true&aggregated=true"
    ],
    "deliveryMode": {
        "transportType": "PubNub",
        "encryption": "true"
    }
}

在该eventFilters属性中,您可能希望为您希望监控的帐户中的每个扩展添加一个数组元素。

我在 Node.js 中创建了一个示例应用程序,用于在此处创建对 RingCentral 沙箱帐户中所有扩展的订阅:https ://github.com/bdeanindy/ringcentral-subscription-basics 。

RingCentral 是否支持 Webhook 通知?

是的,阅读有关创建订阅的文档 https://developers.ringcentral.com/api-docs/latest/index.html#!#RefCreateSubscription,您将看到两者PubNubWebhook支持transportType

以下是如何创建使用Webhook transportType的订阅的示例:

POST /restapi/v1.0/subscription HTTP/1.1
Accept: application/json
Authorization: Bearer U0pDMDFQMDFQQVMwMXxBQURIZjAzWFFySGpMen
Content-Type: application/json
Content-Length: 269

{
  "eventFilters": [
     "/restapi/v1.0/account/~/extension/~/presence",
     "/restapi/v1.0/account/~/extension/~/message-store"
  ],
  "deliveryMode": {
        "transportType": "WebHook",
        "address": "https://consumer-host.example.com/consumer/path"
  }
}

您需要确保将deliveryMode.address值更改为指向您管理接收事件的服务器。此服务器需要有一个有效的证书链,支持端口 443 上的连接。

这是有关使用 RingCentral Webhooks 的快速入门教程

于 2016-09-12T19:06:47.057 回答