首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用RingCentral设置与区号匹配的来电者ID?

如何使用RingCentral设置与区号匹配的来电者ID?
EN

Stack Overflow用户
提问于 2016-07-15 18:24:04
回答 2查看 929关注 0票数 0

当使用RingCentral进行出站呼叫时,本地是否可能存在或设置Caller (CLID)?我有一套1000+电话号码与我的公司的各种区号,我想能够使用的来电ID时,拨号。我也有很多不同的代理在打电话,所以我需要多个代理才能同时使用相同的呼叫者ID。

我使用的是RingCentral WebRTC JavaScript SDK,没有看到呼叫者ID选项。我看到一个设置RingOut呼叫者ID的选项,但没有本地存在选项。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-07 06:25:57

在询问和尝试了一些事情之后,我想出了以下方法,可以通过WebRTC或RingOut完成。

(1)分配来电号码(CLID)

若要将多个CLID电话号码加载到RingCentral帐户中,请将它们添加为公司编号,这些号码可在管理帐户的在线帐户门户中执行:

Home > Phone System > Company Numbers and Info > Add Number

我把所有这些都分配给了Auto-Receptionist

将这些数字作为公司编号加载后,用户应该可以使用它们作为CLID使用。要验证这一点,在用户授权应用程序之后,通过调用以下REST端点来检索用户可用的CLID号码列表:

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

返回的可用于调用方ID的数字将CallerId作为features属性中的元素之一。

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

在你的应用程序中,一旦你有了要拨打的号码,找到最接近匹配的区号。最好的情况是你的区号是否完全匹配。在此之后,找出地理位置最接近的那个。

要确定要使用的最佳数字,可以使用区域编码与最近邻匹配的lat/lon映射。我无法找到用于lat/lon映射的直接代码,但可以执行以下操作之一:

  1. areacode到lat/lon:您可以使用lat/lon数据库的直接areacode,如此处的一个:https://github.com/grokify/gotilla/blob/master/strconv/phonenumber/us-area-code-geo.csv
  2. areacode和lat/lon:如本杰明·迪恩所述,您可以使用带有areacode和lat/lon数据的zipcode数据集。邮政编码是有用的,因为更密集的地区有更多的邮政编码,确保人口稠密地区的代表更多。
  3. lat/lon的LOCODE区域: used也有lat/lon信息,可以使用。理想的情况下,每个LOCODE将映射到一个人口,以加权的目的。

为了快速解决这个问题,我将区域映射到联合国LOCODE数据集,如下所示:

一旦有了联合国LOCODE,就可以使用LOCODE数据集中的lat/lon,并计算出距离。值得注意的是,有些城市没有lat/lon数据,最好将其提交给联合国LOCODE项目。现在,每个区域只有一个主要城市,但可以增强为多个城市。在理想的情况下,所有在美国和加拿大拥有联合国LOCODES的城市都将被绘制成区域(和邮政编码)。

(3)使用CLID进行调用

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

(3.1)通过WebRTC使用CLID进行调用

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

代码语言:javascript
复制
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:

代码语言:javascript
复制
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

票数 2
EN

Stack Overflow用户

发布于 2016-08-09 15:53:05

首先,我将阅读这篇KB文章,其中解释了如何使用RingCentral联机帐户门户(文章/出站-来电-ID-概述)设置:

  • 公司来电者ID (显示的名称)
  • 按特征分列的默认呼叫者ID号

与RingCentral一起使用的RingOut调用者ID验证规则应该适用于WebRTC,并定义在应用程序/集成中设置CLID的限制。

RingCentral呼叫者ID验证规则(至少其中一条必须适用):

  • callerId值与当前通过身份验证的用户的分机号相同
  • 获取与邮箱相关的所有电话号码。默认为电话,callerId与此号码相同
  • 为用户获取所有转发电话号码的列表,callerId与本地或免费电话号码相同。
  • 使用API获取所有扩展电话号码的列表,而任何指示为可用于呼叫者ID的号码都在分配为"fromNumber“时有效。

最后一个API选项就是上面的@grokify示例。

在RingCentral API资源管理器中获取扩展电话号码: https://developers.ringcentral.com/api-explorer/latest/index.html#/!/Extension/listExtensionPhoneNumbers

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38402831

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档