gpt4 book ai didi

javascript - 如何使用 RingCentral 设置来电显示与区号匹配?

转载 作者:行者123 更新时间:2023-11-28 18:29:22 24 4
gpt4 key购买 nike

使用 RingCentral 调用外线电话时,是否可以进行本地状态或设置来电显示 (CLID)?我的公司有一组 1000 多个电话号码,其中包含各种区号,我希望在拨出时能够将其用作来电显示。我还有许多不同的客服人员在调用电话,因此我需要多个客服人员才能同时使用相同的来电显示。

我正在使用RingCentral WebRTC JavaScript SDK并且没有看到来电显示选项。我看到一个为 RingOut 设置主叫方 ID 的选项,但没有看到“本地状态”选项。

最佳答案

经过询问和尝试后,我想出了以下可以通过 WebRTC 或 RingOut 完成的方法。

(1) 分配主叫 ID (CLID) 电话号码

要将多个 CLID 电话号码加载到 RingCentral 帐户中,请将它们添加为公司号码,这可以在 Online Account Portal 中完成。对于管理员帐户:

主页 > 电话系统 > 公司号码和信息 > 添加号码

我将所有这些分配给了自动接待员

这些号码作为公司号码加载后,用户就可以将其用作 CLID。要验证这一点,请在用户授权应用程序后通过调用以下 REST API 端点来检索用户可用的 CLID 号码列表:

/restapi/v1.0/account/~/extension/~/phone-number

返回的可用于来电显示的号码将 CallerId 作为 features 属性中的元素之一。

(2)根据目的地号码选择合适的CLID

在您的应用中,获得要调用的号码后,找到最接近的匹配区号。最好是与您的区号完全匹配。之后,找到地理位置最接近的那个。

为了确定要使用的最佳号码,可以使用具有最近邻匹配的区域代码到纬度/经度映射。我无法找到纬度/经度映射的直接代码,但可以执行以下操作之一:

  1. 地区码转纬度/经度:您可以使用直接地区码转纬度/经度数据库,如下所示:https://github.com/grokify/gotilla/blob/master/strconv/phonenumber/us-area-code-geo.csv
  2. 地区代码到带有纬度/经度的邮政编码:您可以使用带有地区代码和纬度/经度数据的邮政编码数据集,如 Benjamin Dean 中提到的。邮政编码很有用,因为更密集的区域有更多的邮政编码,确保人口稠密的区域得到更多代表。
  3. 带纬度/经度的区域代码到 LOCODE:UN LOCODES 也具有纬度/经度信息并且可以使用。理想情况下,每个 LOCODE 都将映射到总体以进行加权。

为了快速解决问题,我获取了区号并将每个区号映射到 UN LOCODE数据集在这里:

一旦获得联合国定位码,就可以使用定位码数据集中的纬度/经度并计算距离。值得注意的是,一些城市没有纬度/经度数据,最好将其提交给联合国定位代码项目。目前,每个区号只有一个主要城市,但可以增强为拥有多个城市。在理想情况下,美国和加拿大所有具有联合国位置代码的城市都将映射到区号(和邮政编码)。

(3) 通过 CLID 调用电话

使用 RingCentral,可以将您的来电显示设置为授权号码,包括用户自己的号码和公司号码。这可以通过 WebRTC 和 RingOut 来完成,如下所述。

(3.1) 通过WebRTC使用CLID调用电话

用户应使用自己的分机登录,以便用户调用不会相互冲突。然后应用程序可以使用 RingCentral WebRTC SDK 设置首选 CLID使用 fromNumber 参数,如下所示:

var session = webPhone.userAgent.invite('PHONE_NUMBER', {
media: {
render: {
remote: document.getElementById('remoteVideo'),
local: document.getElementById('localVideo')
}
},
fromNumber: 'CALLERID_NUMBER', // Optional, Company Number will be used as default
homeCountryId: '1' // Optional, the value of
}).then(...);

(3.2) 通过 RingOut 与 CLID 进行调用

为了完整起见,还可以使用以下方法通过 RingOut 设置主叫方 ID:

POST /restapi/v1.0/account/~/extension/~/ring-out

{
"from": {"phoneNumber": "+12125550101"},
"to": {"phoneNumber": "+16175550101"},
"callerId": {"phoneNumber": "+16505550101"},
"playPrompt": true
}

https://developer.ringcentral.com/api-reference#RingOut-makeRingOutCall

关于javascript - 如何使用 RingCentral 设置来电显示与区号匹配?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38402831/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com