号码保护AXB功能!(精华)

不是 广告!不要限流!!

准备工作:

可直接下拉最后查看实例。

开通阿里服务:

条件:您已经完成注册阿里云账号,并完成企业实名认证,具体操作请参见阿里云账号注册流程企业实名认证

https://account.console.aliyun.com/?spm=a2c4g.11186623.2.3.2e5c748af0dEZN#/auth/home

  • 隐私保护产品包括AXN隐私号、AXB中间号、AXN分机号、95AXN隐私号和AXG隐私号五种应用。
  • 进入控制台开通:
  • 注意:购买完号码之后用户可以在“号码管理”里面查看购买号码是否成功。
  •  

SDK 环境搭建(如果使用>https 调用不需要 SDK)

阿里文档:https://help.aliyun.com/document_detail/113040.html?spm=a2c4g.11186623.6.621.6a85697a9iff2Y

项目地址:https://github.com/aliyun/openapi-sdk-php-client?spm=a2c4g.11186623.2.9.d9c324efbadSja

推荐:获得并注册相关的服务后采用直接在 后端 直接Ajax 请求

例如:PHP 后端请求,不建议采用js>Ajax 会直接暴露  你的秘钥等保密信息

HTTPS方式具体如下:

请求结构

号码隐私保护支持基于URL发送HTTP/HTTPS请求。请求参数需要包含在URL中,请求及返回结果都使用 UTF-8 字符集编码。

请求结构示例

以下为一条SendSms未编码的URL请求示例:

https://dyplsapi.aliyuncs.com/?Action=BindAxb&<公共请求参数>
  • https 指定了请求通信协议。
  • dyplsapi.aliyuncs.com 指定了号码隐私保护的服务接入地址(Endpoint)。
  • Action=BindAxb 指定了要调用的API。
  • <公共请求参数> 是系统规定的其他公共参数。

请求协议

请求中使用的协议包括

  • 支持HTTP或HTTPS协议请求通信。为了获得更高的安全性,推荐您使用HTTPS协议发送请求。
  • 绑定API采用Rest协议,其中签名算法使用了阿里云的POP协议。
  • 发生通话行为后的话单消息回执采用的是阿里云消息服务MNS实现。

 以下SDK 补充详细,(可直接下拉查看,AXB实例 一看就懂)

服务地址

号码隐私保护统一使用服务地址dyplsapi.aliyuncs.com

公共请求头和公共响应头

API接口中使用了公共请求头(Common Request Headers)和公共响应头(Common Response Headers),这些内容可以被所有的号码隐私保护请求使用。

详细说明请参考公共请求参数公共响应参数

公共请求参数?--下载SDK 可以生成,请求签名也是,或者利用阿里工具生成(实例:)

号码隐私保护支持通过URL发起HTTP请求。API接口中使用了公共请求头(Common Request Headers),这些公共请求头可以被所有的号码隐私保护请求使用。

创建AccessKey?---

阿里网址:https://help.aliyun.com/document_detail/53045.htm?spm=a2c4g.11186623.2.6.34f724efiDFrwz

请求示例

GET /?Signature=zJDF%2BLrzhj%2FThnlvIToysFRq6t4%3D
&AccessKeyId=testId
&Action=BindAxb
&Format=XML
&OutId=123
&PhoneNumbers=15300000001
&RegionId=cn-hangzhou
&SignName=%E9%98%BF%E9%87%8C%E4%BA%91%E7%9F%AD%E4%BF%A1%E6%B5%8B%E8%AF%95%E4%B8%93%E7%94%A8
&SignatureMethod=HMAC-SHA1
&SignatureNonce=45e25e9b-0a6f-4070-8c85-2956eda1b466
&SignatureVersion=1.0
&PoolKey=FC123456
&PhoneNoA=170000000
&PhoneNoB=171000000
&ExpireDate=2017-07-12T02%3A42%3A19Z
&Timestamp=2017-07-12T02%3A42%3A19Z
&Version=2017-05-25

请求参数

 
名称类型是否必填说明
SignatureString请求签名,即最终生成的签名结果值。

如何生成请求签名,请查看请求签名

AccessKeyIdString访问密钥 ID。AccessKey 用于调用 API。
ActionStringAPI 的名称。
FormatString返回参数的语言类型。取值范围:json | xml。默认值:json。
RegionIdStringAPI支持的RegionID,如号码隐私保护API的值为:cn-hangzhou。
SignatureMethodString签名方式。取值范围:HMAC-SHA1。
SignatureNonceString签名唯一随机数。用于防止网络重放攻击,建议您每一次请求都使用不同的随机数。

JAVA语言建议用:java.util.UUID.randomUUID()生成。

SignatureVersionString签名算法版本。取值范围:1.0。
TimestampString请求的时间戳。按照ISO8601 标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。示例:2018-01-01T12:00:00Z 表示北京时间 2018 年 01 月 01 日 20 点 00 分 00 秒。
VersionStringAPI 的版本号,格式为 YYYY-MM-DD。取值范围:2017-05-25。

公共响应参数

号码隐私保护支持通过URL发起HTTP请求。API接口中使用了公共响应头(Common Response Headers),这些公共响应头可以被所有的号码隐私保护请求使用。

返回示例

除业务参数之外,号码隐私保护还会返回公共参数,返回示例如下。

  • JSON格式:
    {
      "RequestId":"2184201F-BFB3-446B-B1F2-C746B7BF0657"
    }
  • XML格式:
    <?xml version='1.0' encoding='UTF-8'?>
    <BindAxbResponse>
    	<RequestId>E8534574-7381-4810-8F70-65B37BBA8970</RequesetNo>
    </BindAxbResponse>

 API错误码

错误码(Code)错误信息(Message)
OKOK
isp.RAM_PERMISSION_DENYRAM权限DENY
isv.OUT_OF_SERVICE业务停机
isv.PRODUCT_UN_SUBSCRIPT未开通云通信产品的阿里云客户
isv.ACCOUNT_NOT_EXISTS账户不存在
isv.ACCOUNT_ABNORMAL账户异常
isp.SYSTEM_ERRORisp.SYSTEM_ERROR
isp.UNKNOWN_ERR_CODE运营商未知错误
isv.PARTNER_NOT_EXIST未知合作伙伴
isv.NO_NOT_EXIST号码不存在
isv.ILLEGAL_ARGUMENT参数非法
isp.DAO_EXCEPTION数据库异常
isv.NO_AVAILABLE_NUMBER无可用号码
isp.VENDOR_UNAVAILABLE运营商降级
isv.FLOW_LIMIT业务流控
isv.PARTNER_IS_CLOSEDpartner被关停
isv.FORBIDDEN_ACTION无权操作
isv.NO_USED_BY_OTHERS号码被其他业务方占用
isv.VENDOR_BIND_FAILED运营商绑定失败
isv.EXPIRE_DATE_ILLEGAL过期时间非法
isv.MOBILE_NUMBER_ILLEGAL号码格式非法
isv.BIND_CONFLICT绑定冲突

AXB绑定: 

绑定AXB号码前,请先明确您的业务场景中AXB三元组的A角色和B角色。例如,在打车应用场景中,A可以是乘客角色,B是司机角色;

示例

请求示例

http(s)://[Endpoint]/?PhoneNoA=15000000000&Expiration=2019-09-05 12:00:00&PhoneNoB=15000000001&PoolKey=FC123456&<公共请求参数>

正常返回示例

XML 格式

<BindAxbResponse>      <Message>OK</Message>      <RequestId>9297B722-A016-43FB-B51A-E54050D9369D</RequestId>      <Code>OK</Code>      <SecretBindDTO>            <Extension>130</Extension>            <SecretNo>17100000000</SecretNo>            <SubsId>1000000768393849</SubsId>      </SecretBindDTO></BindAxbResponse>

JSON 格式

{    “Message”:”OK”,    “RequestId”:”9297B722-A016-43FB-B51A-E54050D9369D”,    “Code”:”OK”,    “S

 

请求参数

 
名称类型是否必选示例值描述
ExpirationString2019-09-05 12:00:00

绑定关系的过期时间。必须晚于当前时间1分钟以上。

PhoneNoAString15000000000

AXB中的A号码。

A号码可设置为手机号码或固定电话,固定电话需要加区号,区号和号码中间不需要加连字符,例如057188992688。

PhoneNoBString15000000001

AXB中的B号码,A号码拨打X号码时会转接到B号码,可通过接口UpdateSubscription更新B号码。

B号码可设置为手机号码或固定电话,固定电话需要加区号,区号和号码中间不需要加连字符,例如057188992688。

PoolKeyStringFC123456

号码池Key。请登录号码隐私保护控制台,在号码池管理中查看号码池Key。

AccessKeyIdStringLTAIP00vvvvvvvvv

主账号AccessKey的ID。

ActionStringBindAxb

系统规定参数。取值:BindAxb

CallDisplayTypeInteger1

重置绑定关系中的号码显示逻辑,1:主被叫显示中间号码X;2:B/N侧号码呼叫时,给A侧号码显示B/N的真实号码;3:A侧号码呼叫时,给B/N侧号码显示真实号码。

ExpectCityString北京

指定城市进行X号码的选号。

如果当前号池中没有该城市的可用号码,或未指定此参数,将从当前号码池中随机分配一个其他城市的号码作为X号码。

如果配置了严格模式,则不存在符合条件的号码时会提示分配错误。

IsRecordingEnabledBooleantrue

是否需要针对该绑定关系产生的所有通话录制通话录音。

OutIdStringabcdef

外部业务扩展字段,通话记录回执消息中会回传此参数。

OutOrderIdStringabcdef

外部业务ID。

PhoneNoXString17000000000

AXB中的X号码。未指定X号码时,将根据参数ExpectCity从指定号码池中随机指定一个号码作为X号码。

X号码是您绑定号码前在控制台或通过接口BuySecretNo购买的电话号码,用于转接电话。

RingConfigString{“AXBRing_B”:”100000001”,”AXBRing_A”:”100000001”}

设置AXB绑定级别企业彩铃放音,支持针对该绑定关系中设置,内容包括如下:

  • AXB中,A号码打X的铃音设置:AXBRing_A
  • AXB中,B号码打X的铃音设置:AXBRing_B
  • 企业彩铃编码:企业彩铃编码可以在管理控制台中查询,具体通过【控制台-号码池管理-企业彩铃管理】入口进行查看、管理,支持上传、删除等操作。

特殊说明:企业彩铃优先使用绑定级别设置的彩铃,如果未设置或设置未生效,则会使用号码池级别的彩铃音。

AXN绑定 

AXN隐私号是为A号码分配一个专属的隐私号,任何号码N通过拨打X号码都可以转接到A。

示例

请求示例


http(s)://[Endpoint]/?Expiration=2019-09-05 12:00:00
&PhoneNoA=15000000000
&PoolKey=FC123456
&<公共请求参数>

正常返回示例

XML 格式

<BindAxnResponse>
	  <Message>OK</Message>
	  <RequestId>F655A8D5-B967-440B-8683-DAD6FF8DE990</RequestId>
	  <Code>OK</Code>
	  <SecretBindDTO>
		    <Extension>13100000000</Extension>
		    <SecretNo>17000000000</SecretNo>
		    <SubsId>1000000768798832</SubsId>
	  </SecretBindDTO>
</BindAxnResponse>

JSON 格式

{
	"Message":"OK",
	"RequestId":"F655A8D5-B967-440B-8683-DAD6FF8DE990",
	"Code":"OK",
	"SecretBindDTO":{
		"Extension":"13100000000",
		"SecretNo":"17000000000",
		"SubsId":"1000000768798832"
	}
}

 

请求参数

 
名称类型是否必选示例值描述
ExpirationString2019-09-05 12:00:00

绑定关系的过期时间。必须晚于当前时间1分钟以上。

PhoneNoAString15000000000

AXN中的A号码。

A号码可设置为手机号码或固定电话,固定电话需要加区号,区号和号码中间不需要加连字符,例如057188992688。

PoolKeyStringFC123456

号码池Key。请登录号码隐私保护控制台,在号码池管理中查看号码池Key。

AccessKeyIdStringLTAIP00vvvvvvvvv

主账号AccessKey的ID。

ActionStringBindAxn

系统规定参数。取值:BindAxn

CallDisplayTypeInteger1

重置绑定关系中的号码显示逻辑,1:主被叫显示中间号码X;2:B/N侧号码呼叫时,给A侧号码显示B/N的真实号码;3:A侧号码呼叫时,给B/N侧号码显示真实号码。

ExpectCityString上海

指定城市进行X号码的选号。

如果当前号池中没有该城市的可用号码,或未指定此参数,将从当前号码池中随机分配一个其他城市的号码作为X号码。

如果配置了严格模式,则不存在符合条件的号码时会提示分配错误。

IsRecordingEnabledBooleantrue

是否需要针对该绑定关系产生的所有通话录制通话录音。

NoTypeStringAXB_170

号码类型。

说明 适用于原阿里大于客户,阿里云用户可忽略。

OutIdStringabcdef

外部业务扩展字段,通话记录回执消息中会回传此参数。

OutOrderIdStringabcdef

外部业务ID。

PhoneNoBString13100000000

AXN中的B号码,A号码拨打X号码时会转接到B号码,可通过接口UpdateSubscription更新B号码。

B号码可设置为手机号码或固定电话,固定电话需要加区号,区号和号码中间不需要加连字符,例如057188992688。

PhoneNoXString17000000000

AXN中的X号码。未指定X号码时,将根据参数ExpectCity从指定号码池中随机指定一个号码作为X号码。

X号码是您绑定号码前在控制台或通过接口BuySecretNo购买的电话号码,用于转接电话。

RingConfigString{"AXNRing_N":"100000001","AXNRing_A":"100000001"}

设置AXN绑定级别企业彩铃放音,支持针对该绑定关系中设置,内容包括如下:

  • AXN中,A号码打X的铃音设置(有回拨号码):AXNRing_AB
  • AXN中,A号码打X的铃音设置(无回拨号码):AXNRing_A
  • AXN中,N侧号码打X的铃音设置:AXNRing_N
  • 企业彩铃编码:企业彩铃编码可以在管理控制台中查询,具体通过【控制台-号码池管理-企业彩铃管理】入口进行查看、管理,支持上传、删除等操作。

特殊说明:企业彩铃优先使用绑定级别设置的彩铃,如果未设置或设置未生效,则会使用号码池级别的彩铃音。

  • 1
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

加金开发

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值