我一直在尝试使用RingCentral API发送传真,但没有办法指定发送传真的From
传真电话号码。它仅使用公司传真号码发送传真。我找不到使用传真号码的选项。我使用以下端点发送传真:
https://platform.ringcentral.com/restapi/v1.0/account/:accountId/extension/:extensionId/fax
在 RingCentral 系统中,From
(或发送(传真号码是传真呼叫者 ID 值。可以更新此值,以便扩展用于传真,但该值在发送传真 API 本身中不可用。若要在每次发送的基础上更改此设置,可以在每个传真请求之前更新呼叫方 ID 值。
您可以使用两种方法更新传真呼叫者 ID:
- 通过 API 或
- 使用在线帐户门户 (https://service.ringcentral.com(,下面将介绍这两种方法。
下面将介绍这两种情况。让我知道这是否适合您。
1( 更新传真来电显示
若要更新传真呼叫方 ID,请呼叫PUT extension/caller-id
终结点,并使用您有兴趣使用的号码的电话号码 ID 更新FaxNumber
功能的callerId
。您可以通过调用下一节中显示的extension/phone-number
来获取此列表。
PUT /restapi/v1.0/account/{accountId}/extension/{extensionId}/caller-id
Authorization: Bearer {accessToken}
Content-Type: application/json
{
"byFeature": [
{
"feature": "FaxNumber",
"callerId": {
"phoneInfo": {
"id": 33333333
}
}
}
]
}
有关详细信息,请参阅 API 参考:https://developer.ringcentral.com/api-docs/latest/index.html#!#RefUpdateCallerId
1.1( 列出可用的来电显示号码
若要获取可以使用的数字列表的列表,请调用 GET extension/phone-number
终结点:
GET /restapi/v1.0/account/{accountId}/extension/{extensionId}/phone-number
Authorization: Bearer {accessToken}
在 JSON 响应中,records
属性中将有一个电话号码列表。可以使用的数字将具有以下属性值:
-
features
属性将具有CallerId
值 -
type
属性将设置为VoiceFax
或FaxOnly
以下是显示一个数字的 JSON 响应的摘录。您应该有更多的数字和一个paging
对象。
{
"uri":"https://platform.devtest.ringcentral.com/restapi/v1.0/account/11111111/extension/22222222/phone-number?page=1&perPage=100",
"records":[
{
"id":33333333,
"phoneNumber":"+16505550100",
"paymentType":"Local",
"location":"Belmont, CA",
"type":"VoiceFax",
"usageType":"DirectNumber",
"status":"Normal",
"country":{
"uri":"https://platform.devtest.ringcentral.com/restapi/v1.0/dictionary/country/1",
"id":"1",
"name":"United States"
},
"features":[
"SmsSender",
"CallerId",
"MmsSender"
]
}
]
}
有关详细信息,请参阅 API 参考:https://developer.ringcentral.com/api-docs/latest/index.html#!#RefUserPhoneNumbers.html
1.2( 读取传真来电显示值
RingCentral 支持多个来电显示值。若要读取扩展的值,请对extension/caller-id
终结点进行以下 API 调用:
GET /restapi/v1.0/account/{accountId}/extension/{extensionId}/caller-id
Authorization: Bearer {accessToken}
您将收到如下所示的响应,其中包含 byFeature
属性中的调用方 ID 值数组。查找feature
属性设置为 FaxNumber
的功能。我在下面只显示FaxNumber
功能调用方 ID,但数组包括以下功能:CallFlip
、FaxNumber
、RingMe
、RingOut
、MobileApp
、Alternate
。
{
"uri":"https://platform.devtest.ringcentral.com/restapi/v1.0/account/11111111/extension/22222222/caller-id",
"byFeature":[
{
"feature":"FaxNumber",
"callerId":{
"type":"PhoneNumber",
"phoneInfo":{
"uri":"https://platform.devtest.ringcentral.com/restapi/v1.0/account/11111111/phone-number/33333333",
"id":"33333333",
"phoneNumber":"+16505550100"
}
}
}
]
}
有关详细信息,请参阅 API 参考:https://developer.ringcentral.com/api-docs/latest/index.html#!#RefGetCallerId
2( 使用在线帐户门户
您还可以在以下位置更改在线帐户门户中的来电显示值:
Settings
> Outbound Calls
> Caller ID
> By Feature
> Fax Number
此知识库文章中提供了更多信息:
https://success.ringcentral.com/articles/RC_Knowledge_Article/3614
这在使用RingCentral Java SDK时对我有用。
- 获取可用于传真/呼叫的发件人/呼叫者号码列表
RestClient rc = new RestClient(RINGCENTRAL_CLIENTID, RINGCENTRAL_CLIENTSECRET, RINGCENTRAL_SERVER);
rc.authorize(RINGCENTRAL_USERNAME, RINGCENTRAL_EXTENSION, RINGCENTRAL_PASSWORD);
GetExtensionPhoneNumbersResponse numbers = rc.restapi().account().extension().phonenumber().get();
- 更新发件人/呼叫者号码
RestClient rc = new RestClient(RINGCENTRAL_CLIENTID, RINGCENTRAL_CLIENTSECRET, RINGCENTRAL_SERVER);
rc.authorize(RINGCENTRAL_USERNAME, RINGCENTRAL_EXTENSION, RINGCENTRAL_PASSWORD);
ExtensionCallerIdInfo resp = rc.restapi().account().extension().callerid().get();
for (CallerIdByFeature e : resp.byFeature) {
if (e.callerId.phoneInfo != null) {
e.callerId.phoneInfo.phoneNumber("**********");
}
}
resp = rc.restapi().account().extension().callerid().put(resp);