华为云用户手册

  • 号码相关问题 隐私号码支持什么格式?支持固话吗?支持挑选或自定义吗?有靓号吗? 一个A号码可以同时绑定几个隐私号码?一个隐私号码可绑定几个A号码? 隐私保护通话有海外号码吗?能拨打国外号码吗? 号码审核需多久(订单显示处理中)? 为什么进入号码订购的时候我的企业显示为空? 隐私号码是否支持国际漫游?能否绑定或拨打中国香港、中国澳门、中国台湾及海外号码? XX城市是否能申请号码(如何查看本地号码资源)? 绑定关系中的A和B(主/被叫号码)可以是什么号码,可以是座机号码吗? 如何查看应用下是否还有可用号码? 隐私保护通话平台推送的X号码状态有哪些? 隐私保护通话怎么进行号码标记(显示公司名称和logo)? AXE模式的分机号是给谁设置的,怎么设置? 为什么运营商会把关联的主叫号给封了? 新购买的隐私号码被标记为别的公司怎么办? 企业审核不通过,提示“企业经营异常”怎么办? 一个账号可以申请多少个隐私号码? 隐私保护通话如何获取订购号码列表? 只能申请虚拟运营商的号码,请问能申请运营商的号码吗? 订购号码审核驳回原因 订购号码订单可以自行取消吗? 绑定固话号码时的号码格式是什么样的?要去掉区号里的0吗? 哪些类型的号码可以设置成AX模式的临时被叫? AXB模式,同一个A号码是否能绑定多个B号码? 隐私号码可以跨区域(城市)使用吗? 已提交的隐私号码订单可以修改吗? 申请号码填写的业务联系人是用来干什么的? 隐私号码释放后是否可以找回? 订购号码时提示“新增订购申请出现错误”是什么原因?如何处理? 小程序未上线,还在测试阶段,可以申请隐私号码吗? AXE模式拨号时可以自动输入分机号吗? 下载号码列表时一直转圈圈,提示加载中,如何处理? 隐私号码可以用来注册微信或其他社交平台吗? 一个X号码可以绑定多少应用(模式)? 隐私号码在被叫端显示号码归属地是哪里?归属地可以选择或修改吗? 如何修改AXE模式的分机号位数? 如何查询X号码还能绑定多少次? 隐私号码区号/areaCode(城市码)在哪里查看? 在“订购申请”页面选择应用后,“立即购买”按钮变灰色是什么原因? 隐私保护通话有没有95或400号码? 运营商号码(实号)和虚拟运营商号码(虚号)有什么区别? 新购买的隐私号码能否换成其他城市的? 隐私号码的归属地必须与企业归属地相同吗? 退订隐私号码后,如何确认号码退订成功了?
  • 账号相关问题 个人用户和个体用户能否使用隐私保护通话服务? BP账户能使用隐私保护通话服务吗? IAM用户能使用隐私保护通话服务吗? 购买隐私保护通话业务是否需要进行企业认证?账号经过企业认证了X号码还是无法购买? 开通隐私保护通话时“立即申请”是灰色或页面一直显示“loading...”怎么办? 隐私保护通话控制台打不开,一直显示空白页面怎么办? 为什么订购的号码都没有了/号码状态是“退回”? 非中国大陆IP能调用隐私保护通话接口吗? 不再使用隐私保护通话业务了,是否需要退订?如何退订? 在控制台执行操作时提示“您没有该页面的访问权限”,如何处理? 添加完企业之后应该如何使用?添加企业的审核进度在哪里通知?企业审核被驳回怎么办? 隐私保护通话相关审批和流程 如果修改华为云账号的实名认证信息,是否影响隐私保护通话的业务? 隐私保护通话不做二次开发可以使用么?如何进行二次开发/对接?
  • 调用AXB模式接口时遇到“1012007:The record does not exist”如何处理? 调用“AXB模式绑定/解绑接口”时出现该错误码,请按以下步骤排查问题: 调用接口时参数格式填写错误。请对照接口文档查看参数格式填写是否正确:例如参数取值中是否携带了多余的空格、填写的号码格式是否正确。 指定的X号码不存在,请检查relationNum参数的填写是否正确。 指定的X号码已被释放,请检查您的华为云账户是否欠费或账号状态是否正常。 找不到绑定记录。请检查接口携带的subscriptionId、用户号码、隐私号码等参数是否和该app_key有绑定关系(需要解除的绑定关系是否属于该应用)。 父主题: 典型调测问题
  • 开通隐私保护通话时“立即申请”是灰色或页面一直显示“loading...”怎么办? 开通隐私保护通话时“立即申请”是灰色或页面一直显示“loading...”,请按以下步骤排查问题: 查看是否完成企业认证,隐私保护通话服务只向通过认证的企业用户提供隐私保护通话功能。如未完成认证,请完成企业认证后再次尝试。 前往“账号中心”查看是否已绑定邮箱。若未绑定邮箱,请绑定邮箱后再次尝试。 清除浏览器缓存或换别的浏览器再次尝试。 父主题: 账号相关问题
  • 购买隐私保护通话业务是否需要进行企业认证?账号经过企业认证了X号码还是无法购买? 企业认证后才能开通隐私保护通话服务,但在购买X号码前还需添加企业,企业资质审核通过后才能购买X号码。 企业认证和企业资质认证是两个不同的审核流程: 企业认证是华为云为了保证您的账户及资源的安全,要求您在开通隐私保护通话服务前就需完成的操作:点击查看企业认证审核时长 企业资质审核是开通隐私保护通话后,为了核实您所进行的业务场景,在订购号码前需要进行的操作:点击查看如何添加企业 注:隐私保护通话使用流程请参考隐私保护通话使用全流程。 父主题: 账号相关问题
  • 为什么订购的号码都没有了/号码状态是“退回”? 订购的号码都没有了,可能的原因有以下两种: 账号欠费。若未及时充值,存储在云服务中的数据将被删除、云服务资源将被释放。请查看您在华为云预留的手机号码是否收到华为云欠费通知。 业务被关停,资源被释放了。基于运营商的管理要求和安全管控目的,要求您的号码月投诉率低于0.05%,如投诉率超标,华为有权关停您的业务。请查看您的华为云注册邮箱内是否有因投诉关停业务的通知。 被释放的隐私号码无法找回,需要重新申请隐私号码。 父主题: 账号相关问题
  • 不再使用隐私保护通话业务了,是否需要退订?如何退订? 隐私保护通话所有的费用项:月租、通话、短信都需要号码才会产生,如需退订隐私保护通话业务,将账户下订购的隐私号码退订即可。 已购买套餐包不支持退订。 若不再使用隐私保护通话业务,请及时退订号码,避免产生月租费用。 每月25号及之前提交退订的隐私号当天失效,从下个月开始不收费。 每月25号之后提交退订的隐私号当天失效,下个月依然会收费,从第二个月开始不收费。 父主题: 账号相关问题
  • 短信发送失败/发送的短信对方说没收到,是什么原因? 如果出现上述问题,请您先通过发送方、接收方号码或X号码查看隐私保护通话平台推送的短信发送结果(“sendResult”参数携带),并参考短信通知接口分析短信发送失败原因。 如果没有填写接收短信通知的地址(点击查看如何填写),请排查是否是以下原因导致发送失败: 查看您的华为云账号是否处于欠费状态。欠费会导致短信发送不成功,请保持账户余额充足。 短信的发送方或接收方不是手机号码。应运营商管控要求,隐私保护通话不支持隐私号短信的发送方或接收方是短信通道号。 您使用的模式不支持短信功能。隐私保护通话AX,X和AXB模式支持短信功能,AXE和AXYB模式暂不支持短信功能。 绑定关系不存在或绑定关系设置不正确。请调用接口或前往控制台查看绑定关系设置是否正确(如何查询绑定关系)。 绑定关系保持时长(duration参数)设置太短。导致短信还未发送成功,绑定关系就自动解绑了。请根据使用场景合理设置绑定关系保持时长。 未开通短信功能: 转发短信的隐私号码所属应用未开通短信功能。登录“控制台--应用管理”查看转发短信的隐私号码所属应用的详情(点击应用左侧三角箭头查看),查看该应用是否开通了短信功能。若未开通,可点击“操作-修改”,将“是否开通短信”修改为“是”。 转发短信的隐私号码未开通短信功能。在控制台点击“号码管理”,输入转发短信的隐私号码查询该号码是否开通了短信功能。若未开通,可通过“批量修改短信能力”开通隐私号码的短信功能。 设置的绑定关系不支持短信功能。请调用接口或前往控制台开启绑定关系的短信功能。 调用接口设置隐私号码绑定关系时不携带“privateSms”或设置“privateSms”为“true”。 如果是在控制台设置隐私号码绑定关系,需在设置绑定关系时勾选“支持短信”。如果设置绑定关系时未勾选,可在控制台先解除该号码的绑定关系,重新绑定时勾选。 发送/接收号码问题: 如果应用是AX模式,还可能是A发送的短信内容未携带“@号码B”或携带的分隔符或号码格式错误。A发送短信给X时,需在短信内容最后携带“@号码B”,如“@138****0021”(@必须是英文半角字符,号码B为接收短信用户的真实号码)。 接收短信的用户号码写错、已停机或者是空号。 请确认发送短信方号码状态和手机终端是否正常,如有异常建议更换A号码或手机终端重试。 短信被拦截: 短信被手机软件拦截,请查看短信是否在手机的“骚扰拦截”信箱里。 短信被运营商拦截,请联系运营商查看短信是否被运营商拦截。 短信被隐私保护通话平台拦截,因短信内容涉及违法、违规词汇,或未包含与您协商一致的白名单关键词,导致短信被平台拦截。 X号码转发短信给企业服务器后,企业服务器未指示转发或指示不转发,导致短信未被转发至接收方号码。 若以上原因都不符合,请拨打400电话联系华为云客服排查问题。 父主题: 短信问题
  • 个人用户和个体用户能否使用隐私保护通话服务? 抱歉,个人用户和个体用户不能使用隐私保护通话服务。开通华为云隐私保护通话服务需要进行企业实名认证。应运营商要求,使用业务需要提供企业营业执照、法人身份证正反面、经办人身份证正反面和经办人手持身份证照片。 认证方法请参考企业用户如何完成实名认证,认证过程中遇到的问题请联系华为云客服咨询。 隐私保护通话可开展业务请参考隐私保护通话使用规范。 父主题: 账号相关问题
  • 添加完企业之后应该如何使用?添加企业的审核进度在哪里通知?企业审核被驳回怎么办? 添加完企业之后,请等待审核结果。审核将在1~2个工作日内完成,可在隐私保护通话控制台--“企业管理”界面查询审核进度。 审核通过后,请点击左侧导航栏“号码订购”申请隐私号码。 企业审核常见驳回原因和处理建议如下表所示: 问题原因 驳回话术 处理建议 客户企业经营状况异常。 贵司经营状态异常,暂无法申请号码。 出现该提示一般是运营人员在国家企业信息公示系统网站查询您的企业经营状况时,该网站反馈的结果为“企业经营异常”。请确认出现该结果的原因,待您的企业经营状况在该网站显示正常时再次订购号码。 客户企业在运营商黑名单中。 贵司在运营商黑名单,暂无法申请号码 由于您的企业在运营商黑名单中,无法为您开通隐私保护通话业务,请谅解。 上传的手持身份证照片不清晰。 无手持身份证照片,请重新上传,谢谢 请重新上传清晰手持身份证照片后,重新提交订单。 父主题: 账号相关问题
  • 隐私保护通话添加不了应用怎么回事? 当您尝试使用隐私保护通话功能但无法创建应用时,可能有几个原因导致了这个问题。下面是一些可能的原因及相应的解决方法: 1、数量限制:隐私保护通话最多只能创建5个应用,当前应用数量已达上限。 2、网络问题:如果您的设备连接的网络不稳定或信号较弱,可能会导致无法创建应用。请尝试切换到其他网络环境,例如使用Wi-Fi或移动数据网络,并检查网络连接是否稳定。 3、账户问题:如果您的账户存在问题,例如欠费或被禁用,则无法创建应用。 如果以上方法都无法解决问题,建议您联系隐私保护通话应用的技术支持团队,向他们反馈您遇到的问题,并寻求进一步的帮助和解决方案。 父主题: 应用和模式相关
  • 语音通话使用全流程 任务 操作步骤 备注 入驻华为云 注册华为账号并开通华为云:点击注册页面 企业实名认证:点击进行实名认证 实名认证信息最长3个工作日内审核完成,请耐心等待审核结果,审核成功,即可完成认证。 开通服务 如何开通服务,点击查看开通服务。 开通语音通话服务前,请认真阅读《语音通话服务使用声明》。 业务开通申请将在1~2个工作日审核完成,请耐心等待审核结果。 添加应用 如何添加应用,点击查看添加应用。 不支持接入涉及安全事故的语音通知业务。 添加企业 如何添加企业,点击查看添加企业。 企业名称必须填写全称且和营业执照保持一致。 企业注册资金不得低于50W。 企业审核一般需要2个工作日。 订购号码 如何订购号码,点击查看订购号码。 申请固话号码,资源下发需要10个工作日。 添加放音文件/语音模板 如何添加放音文件,点击查看添加放音文件。 如何添加语音模板,点击查看添加语音模板。 根据应用类型添加放音文件或语音模板。 业务测试 如何业务测试,点击查看业务测试。 - 业务商用 如何业务商用,点击查看商业发布。 -
  • 响应参数 客户服务器接收到隐私保护通话平台的短信事件通知后,根据不同的模式返回不同响应消息。 Notify模式 返回无消息体的200响应。 Block模式 响应必须参照表7携带消息体,返回对短信事件的处理操作。 表7 响应消息参数说明 参数名称 是否必选 参数类型 说明 actions 是 SMSActionType[] 短信操作指示。 表8 SMSActionType定义 参数名称 是否必选 参数类型 说明 operation 是 String(1-32) 操作类型: vNumberRoute:转发短信。 DiscardMessage:丢弃短信。 message 否 MessageInfo 短信操作信息。 仅当operation取值为“vNumberRoute”时有效。 extParas 否 JsonArray 预留参数,当前版本无需关注。 userData 否 String(1-256) 用户自定义数据。 不允许携带以下字符:“{”,“}”(即大括号)。 不允许包含中文字符,如果包含中文字符请采用Base64编码。 说明: 使用该参数的场景请联系华为云客服获取。 表9 MessageInfo定义 参数名称 是否必选 参数类型 说明 called 否 String(1-64) 真实接收方号码。 号码仅支持全局号码格式(包含国家码),比如+86138****7022。 calling 否 String(1-64) 真实发送方号码。 和请求参数中的calling参数的取值保持一致。 号码仅支持全局号码格式(包含国家码),比如+86138****7021。
  • 接口示例 接口示例仅供参考,请以实际消息为准。 notify模式 请求示例 POST /notify HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey" x-wsse: UsernameToken Username="************",PasswordDigest="*************",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2018-05-26T00:35:30Z" content-length:xx { "appKey":"****", "smsEvent":{"smsIdentifier":"********", "notificationMode":"Notify", "calling":"+86138****0001", "virtualNumber":"+86138****0000", "event":"TextSMS", "timeStamp":"2020-12-23T09:06:16.450Z", "extInfo":{"extParas":[{"key":"splitNum","value":"0"},{"key":"direction","value":"2"}]}, "sendResult":2 } } 响应示例 HTTP/1.1 200 OK Block模式 请求示例 POST /block HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey" x-wsse: UsernameToken Username="************",PasswordDigest="*************",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2018-05-26T00:35:30Z" content-length:xx { "appKey":"****", "smsEvent":{"smsIdentifier":"****", "notificationMode":"Block", "calling":"+86138****0001", "virtualNumber":"+86138****0000", "event":"TextSMS", "timeStamp":"2018-09-13T09:46:16.023Z", "extInfo":{"extParas":[{"key":"splitNum","value":"2"},{"key": "direction","value": "1"}]}, "sendResult":0 } } 响应示例 HTTP/1.1 200 OK Content-Type: application/JSON;charset=UTF-8 Content-Length: xx { "actions":[{ "operation":"vNumberRoute", "message":{"called":"+86138****0002", "calling":"+86138****0001" } }] }
  • 请求参数 表2 请求Headers参数说明 参数名称 是否必选 参数类型 说明 Content-Type 是 String 固定填写为application/json;charset=UTF-8。 Authorization 是 String 固定填写为WSSE realm="SDP",profile="UsernameToken",type="Appkey"。 X-WSSE 是 String 取值为UsernameToken Username="APP_Key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。 PasswordDigest:根据PasswordDigest = Base64 (SHA256 (Nonce + Created + Password))生成。其中,Password为APP_Secret的值。Nonce、Created、Password直接进行字符串拼接即可,无需包含+号和空格。 Nonce:客户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。 Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中将UTC时间戳转换为普通时间时使用的格式不同,部分语言可参考表3。 表3 不同编程语言的时间格式 编程语言 时间格式 Java yyyy-MM-dd'T'HH:mm:ss'Z' PHP Y-m-d\TH:i:s\Z Python %Y-%m-%dT%H:%M:%SZ C# yyyy-MM-ddTHH:mm:ssZ Node.js toISOString().replace(/.[0-9]+\Z/, 'Z') 注:Node.js中,使用toISOString()转换后的时间格式去除毫秒后即为本接口要求的时间格式。 表4 请求Body参数说明 参数名称 是否必选 参数类型 说明 appKey 是 String(1-32) 隐私保护通话应用的APP_Key。 smsEvent 是 SMSEventInfoType 短信状态事件。 表5 SMSEventInfoType定义 参数名称 是否必选 参数类型 说明 smsIdentifier 是 String(1-64) 短信唯一标识。 若用户发送的是长短信,隐私保护通话平台会将长短信的多个分片合并为一个通知上报。 notificationMode 是 String(1-8) 通知模式: Notify:通知模式。 Block:控制模式。 calling 否 String(1-32) 真实发送方号码。 号码为全局号码格式(包含国家码),比如+86138****7021。 called 否 String(1-32) 真实接收方号码。 仅在隐私保护通话平台转发短信成功后携带。 号码为全局号码格式(包含国家码),比如+86138****7022。 virtualNumber 否 String(1-32) X号码。 号码为全局号码格式(包含国家码),比如+86138****0001。 event 是 String(1-16) 短信状态事件。 TextSMS:文本短信 timeStamp 是 String(1-32) 短信事件发生的系统时间戳,UTC时间。 格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' 其中SSS是毫秒,“T”和“Z”为固定字符。 extInfo 是 ExtensionInfoType 拓展信息。 subscriptionId 否 String(1-64) 绑定ID。 smsContent 否 String(1-2000) 用户发送的短信内容。 请参考如何设置才能收到短信内容?开通该功能。 sendResult 是 Integer 发送结果。 0:成功 1:因用户账户冻结,发送失败。 2:因绑定关系不存在,发送失败。 3:因X号码被暂停,发送失败。 4:非商用APP,发送失败。 5:因系统内部错误,发送失败。 6:SP指示丢弃,发送失败。 7:等待SP审核超时丢弃,发送失败。 8:黑名单管控,发送失败。 9:部分发送成功。 10:全部发送失败。 11:X号码不支持短信能力。 12:短信内容不包含特征关键词。 13:短信内容包含禁止词汇。 areaCode 否 String(0-32) 隐私保护号码(X号码)的城市码。 说明: 使用该参数的场景请联系华为云客服获取。 userData 否 String(1-256) 用户附属信息。 说明: 使用该参数的场景请联系华为云客服获取。 表6 ExtensionInfoType定义 参数名称 是否必选 参数类型 说明 extParas 是 JsonArray 扩展信息(Key-Value)列表。 格式如下: "extParas": [{"key": "splitNum","value": "value1"},{"key": "direction","value": "value2"}] Key、Value取值分别不能超过32个字节。 “key”取值为“splitNum”时表示实际短信发送成功数量,即长短信拆分后的短信数量。value1表示“splitNum”的取值。 “key”取值为“direction”时表示短信发送方向。value2表示“direction”取值,含义如下: 0:其他用户发送短信给A。 1:A发送短信给其他用户。 2:异常场景无法获取发送方向。
  • 接口功能 隐私保护通话平台通过此接口向客户服务器推送隐私号短信通知。 通知模式分为Notify和Block模式: Notify:通知模式,Notify模式的短信通知会被推送到客户添加应用时填写的短信通知地址,客户收到通知后返回HTTP状态码为200的空消息即可。 Block:控制模式,Block模式的短信通知会被推送到客户添加应用时填写的短信控制地址,客户收到通知后需按照Block模式响应参数返回响应,指示隐私保护通话平台转发或丢弃短信。 AX模式发送隐私号短信的流程如下: A发送短信给X,短信内容最后携带“@号码B”,如“@138****0021”(@必须是英文半角字符,号码B根据实际情况替换成真实用户号码,下同),隐私保护通话平台删除短信内容中的“@号码B”后将短信转发给B(发送方号码是X),并推送Notify模式的隐私号短信通知给客户服务器; 若短信内容中未携带“@号码B”或携带的分隔符或号码格式错误,则隐私保护通话平台推送Block模式的隐私号短信通知给客户服务器,此时客户服务器必须返回响应参数对短信事件进行控制。隐私保护通话平台根据客户服务器返回的结果转发或丢弃隐私号短信;如果操作是转发,转发成功后推送Notify模式的隐私号短信通知给客户服务器。 B发送短信给X,隐私保护通话平台在短信最后添加“[From号码B]”后将短信转发给A(发送方号码是X),并推送Notify模式的隐私号短信通知给客户服务器。 注:AX模式,A发送短信给X时需携带“@号码B”,“@号码B”不能去除。
  • 响应参数 客户服务器接收到隐私保护通话平台的短信事件通知后,根据不同的模式返回不同响应消息。 Notify模式 返回无消息体的200响应。 Block模式 响应必须参照表7携带消息体,返回对短信事件的处理操作。 表7 响应消息参数说明 参数名称 是否必选 参数类型 说明 actions 是 SMSActionType[] 短信操作指示。 表8 SMSActionType定义 参数名称 是否必选 参数类型 说明 operation 是 String(1-32) 操作类型: vNumberRoute:转发短信。 DiscardMessage:丢弃短信。 message 否 MessageInfo 短信操作信息。 仅当operation取值为“vNumberRoute”时有效。 extParas 否 JsonArray 预留参数,当前版本无需关注。 表9 MessageInfo定义 参数名称 是否必选 参数类型 说明 called 否 String(1-64) 真实接收方号码。 号码仅支持全局号码格式(包含国家码),比如+86138****7022。 calling 否 String(1-64) 真实发送方号码。 和请求参数中的calling参数的取值保持一致。 号码仅支持全局号码格式(包含国家码),比如+86138****7021。
  • 接口示例 接口示例仅供参考,请以实际消息为准。 notify模式 请求示例 POST /notify HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey" x-wsse: UsernameToken Content-Type: application/json;charset=UTF-8 { "appKey":"****", "smsEvent":{"smsIdentifier":"********", "notificationMode":"Notify", "calling":"+86138****0001", "virtualNumber":"+86138****0000", "event":"TextSMS", "timeStamp":"2020-12-23T09:06:16.450Z", "extInfo":{"extParas":[{"key":"splitNum","value":"0"},{"key":"direction","value":"2"}]}, "sendResult":2 } } 响应示例 HTTP/1.1 200 OK Block模式 请求示例 POST /block HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey" x-wsse: UsernameToken Content-Type: application/json;charset=UTF-8 { "appKey":"****", "smsEvent":{"smsIdentifier":"****", "notificationMode":"Block", "calling":"+86138****0001", "virtualNumber":"+86138****0000", "event":"TextSMS", "timeStamp":"2018-09-13T09:46:16.023Z", "extInfo":{"extParas":[{"key":"splitNum","value":"2"},{"key": "direction","value": "1"}]}, "sendResult":0 } } 响应示例 HTTP/1.1 200 OK Content-Type: application/JSON;charset=UTF-8 Content-Length: xx { "actions":[{ "operation":"vNumberRoute", "message":{"called":"+86138****0002", "calling":"+86138****0001" } }] }
  • 接口功能 隐私保护通话平台通过此接口向客户服务器推送隐私号短信通知。 通知模式分为Notify和Block模式: Notify:通知模式,Notify模式的短信通知会被推送到客户添加应用时填写的短信通知地址,客户收到通知后返回HTTP状态码为200的空消息即可。 Block:控制模式,Block模式的短信通知会被推送到客户添加应用时填写的短信控制地址,客户收到通知后需按照Block模式响应参数返回响应,指示隐私保护通话平台转发或丢弃短信。 X模式发送隐私号短信的流程如下: A发送短信给X,隐私保护通话平台推送Block模式的隐私号短信通知给客户服务器,此时客户服务器必须返回响应参数对短信事件进行控制。隐私保护通话平台根据客户服务器返回的结果转发或丢弃隐私号短信;如果操作是转发,转发成功后推送Notify模式的隐私号短信通知给客户服务器。
  • 请求参数 表2 请求Headers参数说明 参数名称 是否必选 参数类型 说明 Content-Type 是 String 固定填写为application/json;charset=UTF-8。 Authorization 是 String 固定填写为WSSE realm="SDP",profile="UsernameToken",type="Appkey"。 X-WSSE 是 String 取值为UsernameToken Username="APP_Key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。 PasswordDigest:根据PasswordDigest = Base64 (SHA256 (Nonce + Created + Password))生成。其中,Password为APP_Secret的值。Nonce、Created、Password直接进行字符串拼接即可,无需包含+号和空格。 Nonce:客户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。 Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中将UTC时间戳转换为普通时间时使用的格式不同,部分语言可参考表3。 表3 不同编程语言的时间格式 编程语言 时间格式 Java yyyy-MM-dd'T'HH:mm:ss'Z' PHP Y-m-d\TH:i:s\Z Python %Y-%m-%dT%H:%M:%SZ C# yyyy-MM-ddTHH:mm:ssZ Node.js toISOString().replace(/.[0-9]+\Z/, 'Z') 注:Node.js中,使用toISOString()转换后的时间格式去除毫秒后即为本接口要求的时间格式。 表4 请求Body参数说明 参数名称 是否必选 参数类型 说明 appKey 是 String(1-32) 隐私保护通话应用的APP_Key。 smsEvent 是 SMSEventInfoType 短信状态事件。 表5 SMSEventInfoType定义 参数名称 是否必选 参数类型 说明 smsIdentifier 是 String(1-64) 短信唯一标识。 若用户发送的是长短信,隐私保护通话平台会将长短信的多个分片合并为一个通知上报。 notificationMode 是 String(1-8) 通知模式: Notify:通知模式。 Block:控制模式。 calling 否 String(1-32) 真实发送方号码。 号码为全局号码格式(包含国家码),比如+86138****7021。 called 否 String(1-32) 真实接收方号码。 仅在隐私保护通话平台转发短信成功后携带。 号码为全局号码格式(包含国家码),比如+86138****7022。 virtualNumber 否 String(1-32) X号码。 号码为全局号码格式(包含国家码),比如+86138****0001。 event 是 String(1-16) 短信状态事件。 TextSMS:文本短信 timeStamp 是 String(1-32) 短信事件发生的系统时间戳,UTC时间。 格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' 其中SSS是毫秒,“T”和“Z”为固定字符。 extInfo 是 ExtensionInfoType 拓展信息。 subscriptionId 否 String(1-64) 绑定ID。 smsContent 否 String(1-2000) 用户发送的短信内容。 请参考如何设置才能收到短信内容?开通该功能。 sendResult 是 Integer 发送结果。 0:成功 1:因用户账户冻结,发送失败。 2:因绑定关系不存在,发送失败。 3:因X号码被暂停,发送失败。 4:非商用APP,发送失败。 5:因系统内部错误,发送失败。 8:黑名单管控,发送失败。 9:部分发送成功。 10:全部发送失败。 11:X号码不支持短信能力。 12:短信内容不包含特征关键词。 13:短信内容包含禁止词汇。 areaCode 否 String(0-32) 隐私保护号码(X号码)的城市码。 说明: 使用该参数的场景请联系华为云客服获取。 userData 否 String(0-256) 用户附属信息。 此参数的值与Block模式响应参数中携带的“userData”参数值一致。 说明: 使用该参数的场景请联系华为云客服获取。 若使用该参数,该参数仅在“notificationMode”为“Notify”的时候携带。 表6 ExtensionInfoType定义 参数名称 是否必选 参数类型 说明 extParas 是 JsonArray 扩展信息(Key-Value)列表。 格式如下: "extParas": [{"key": "splitNum","value": "value1"},{"key": "direction","value": "value2"}] Key、Value取值分别不能超过32个字节。 “key”取值为“splitNum”时表示实际短信发送成功数量,即长短信拆分后的短信数量。value1表示“splitNum”的取值。 “key”取值为“direction”时表示短信发送方向。value2表示“direction”取值,固定取值为1。
  • 自定义策略样例 示例:单独给子账户授权一个或多个应用的权限。 实现此配置需创建两个自定义策略:IAM自定义策略和企业项目管理自定义策略。 登录华为云,在右上角单击“控制台”。 在控制台页面,鼠标移动至右上方的账号名,在下拉列表中选择“统一身份认证”。 在统一身认证服务,左侧导航窗格中,选择“权限”页签,单击右上方的“+创建自定义策略”。 输入“策略名称”。 选择“作用范围”,即自定义策略的生效范围,根据服务的部署区域选择,详情请参考:系统权限。由于通信云服务属于项目级服务,作用范围必须选择“项目级服务”。 全局级服务:系统权限中该服务的“所属区域”为“全局区域”,表示该服务为全局级服务。创建全局级服务的自定义策略时,作用范围选择“全局级服务”。给用户组授予该自定义策略时,需要在全局区域中进行。 项目级服务:系统权限中该服务的“所属区域”为“除全局区域外其他区域”,表示该服务为项目级服务。创建项目级服务的自定义策略时,作用范围选择“项目级服务”。给用户组授予该自定义策略时,需要在除全局区域外其他区域中进行。 “策略配置方式”选择“可视化视图”。 在“策略内容”下配置策略。 选择“允许”。 选择“云服务”。 此处只能选择一个云服务,如需配置多个云服务的自定义策略,请在完成此条配置后,单击“添加权限”,创建多个服务的授权语句。 选择“操作”,根据需求勾选产品权限,授权项列表请参考授权项列表。 IAM项目自定义策略勾选不支持企业项目的权限,如下图所示。 企业项目自定义策略勾选支持企业项目的权限,如下图所示。 输入“策略描述”(可选)。 单击“确定”,自定义策略创建完成。 将新创建的自定义策略授予用户组,使得用户组中的用户具备自定义策略中的权限。 在IAM中为用户组添加策略,具体操作请参考创建用户组并授权。 在企业管理中为用户组添加策略,具体操作请参考为企业项目添加用户组。
  • 接口示例 接口示例仅供参考,请以实际消息为准。 请求示例 POST /notify HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: WSSE realm="SDP",profile="UsernameToken",type="Appkey" x-wsse: UsernameToken Username="************",PasswordDigest="*************",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2018-05-26T00:35:30Z" content-length:xx { "appKey":"****", "smsEvent":{"smsIdentifier":"********", "notificationMode":"Notify", "calling":"+86138****0001", "virtualNumber":"+86138****0000", "event":"TextSMS", "timeStamp":"2020-12-23T09:06:16.450Z", "extInfo":{"extParas":[{"key":"splitNum","value":"0"},{"key":"direction","value":"2"}]}, "sendResult":2 } } 响应示例 请求为Notify模式时 HTTP/1.1 200 OK
  • 请求参数 表2 请求Headers参数说明 参数名称 是否必选 参数类型 说明 Content-Type 是 String 固定填写为application/json;charset=UTF-8。 Authorization 是 String 固定填写为WSSE realm="SDP",profile="UsernameToken",type="Appkey"。 X-WSSE 是 String 取值为UsernameToken Username="APP_Key的值", PasswordDigest="PasswordDigest的值", Nonce="随机数", Created="随机数生成时间"。 PasswordDigest:根据PasswordDigest = Base64 (SHA256 (Nonce + Created + Password))生成。其中,Password为APP_Secret的值。Nonce、Created、Password直接进行字符串拼接即可,无需包含+号和空格。 Nonce:客户发送请求时生成的一个随机数,长度为1~128位,可包含数字和大小写字母。例如:66C92B11FF8A425FB8D4CCFE0ED9ED1F。 Created:随机数生成时间。采用标准UTC格式,例如:2018-02-12T15:30:20Z。不同编程语言中将UTC时间戳转换为普通时间时使用的格式不同,部分语言可参考表3。 表3 不同编程语言的时间格式 编程语言 时间格式 Java yyyy-MM-dd'T'HH:mm:ss'Z' PHP Y-m-d\TH:i:s\Z Python %Y-%m-%dT%H:%M:%SZ C# yyyy-MM-ddTHH:mm:ssZ Node.js toISOString().replace(/.[0-9]+\Z/, 'Z') 注:Node.js中,使用toISOString()转换后的时间格式去除毫秒后即为本接口要求的时间格式。 表4 请求Body参数说明 参数名称 是否必选 参数类型 说明 appKey 是 String(1-32) 隐私保护通话应用的APP_Key。 smsEvent 是 SMSEventInfoType 短信状态事件。 表5 SMSEventInfoType定义 参数名称 是否必选 参数类型 说明 smsIdentifier 是 String(1-64) 短信唯一标识。 若用户发送的是长短信,隐私保护通话平台会将长短信的多个分片合并为一个通知上报。 notificationMode 是 String(1-8) 通知模式: Notify:通知模式。 calling 否 String(1-32) 真实发送方号码。 号码为全局号码格式(包含国家码),比如+86138****7021。 called 否 String(1-32) 真实接收方号码。 仅在隐私保护通话平台转发短信成功后携带。 号码为全局号码格式(包含国家码),比如+86138****7022。 virtualNumber 否 String(1-32) X号码。 号码为全局号码格式(包含国家码),比如+86138****0001。 event 是 String(1-16) 短信状态事件。 TextSMS:文本短信 timeStamp 是 String(1-32) 短信事件发生的系统时间戳,UTC时间。 格式:yyyy-MM-dd'T'HH:mm:ss.SSS'Z' 其中SSS是毫秒,“T”和“Z”为固定字符。 extInfo 是 ExtensionInfoType 拓展信息。 subscriptionId 否 String(1-64) 绑定ID。 smsContent 否 String(1-2000) 用户发送的短信内容。 请参考如何设置才能收到短信内容?开通该功能。 sendResult 是 Integer 发送结果。 0:成功 1:因用户账户冻结,发送失败。 2:因绑定关系不存在,发送失败。 3:因X号码被暂停,发送失败。 4:非商用APP,发送失败。 5:因系统内部错误,发送失败。 8:黑名单管控,发送失败。 9:部分发送成功。 10:全部发送失败。 11:X号码不支持短信能力。 12:短信内容不包含特征关键词。 13:短信内容包含禁止词汇。 areaCode 否 String(0-32) 隐私保护号码(X号码)的城市码。 说明: 使用该参数的场景请联系华为云客服获取。 userData 否 String(1-256) 用户附属信息。 说明: 使用该参数的场景请联系华为云客服获取。 表6 ExtensionInfoType定义 参数名称 是否必选 参数类型 说明 extParas 是 JsonArray 扩展信息(Key-Value)列表。 格式如下: "extParas": [{"key": "splitNum","value": "value1"},{"key": "direction","value": "value2"}] Key、Value取值分别不能超过32个字节。 “key”取值为“splitNum”时表示实际短信发送成功数量,即长短信拆分后的短信数量。value1表示“splitNum”的取值。 “key”取值为“direction”时表示短信发送方向。value2表示“direction”取值,含义如下: 0:B发送短信给A。 1:A发送短信给B。 2:异常场景无法获取发送方向。
  • 计费原则 计费项 计费规则 欠费说明 号码月租费 每月1号00:10对存量隐私号数量进行计费,当月新购买的隐私号则在号码下发当日收取当月月租费。 每月25号及之前提交退订的隐私号当天失效,从下个月开始不收费。 每月25号之后提交退订的隐私号当天失效,下个月依然会收费,从第二个月开始不收费。 说明: 若不再使用隐私保护通话业务,请及时退订号码。 请确保您的华为云账户中余额充足,因余额不足导致的扣费失败,欠费冻结会导致整体业务无法使用、账号下的所有号码会被释放,请及时充值。 通话服务费(含录音) 根据实际通话时长计费,不足一分钟按一分钟计算。 结算时以小时为周期扣费。 优先扣除已购买套餐包内的额度,超出部分按照非套餐包价格进行计费。 短信服务费 根据隐私保护通话平台推送给客户的话单,对发送成功的短信按数量计费。 结算时以小时为周期扣费。 虚拟运营商短信优先扣除已购买套餐包内的额度,超出部分按照非套餐包价格进行计费。 在一路通话过程中,主叫用户的通话或发送短信费用由运营商向其收取,华为云仅根据收费标准向购买了隐私保护通话服务的企业扣费。 以AX模式A作为主叫场景为例,一次成功的隐私号通话过程由两个步骤组成: 真实主叫方(A)呼叫隐私保护号码(X)。 隐私保护号码(X)转接呼叫给真实被叫方(B)。 隐私保护通话平台只针对步骤2进行收费。步骤1属于A发起的正常呼叫流程,由A号码所属运营商对用户A进行收费。
  • 套餐包计费详情 购买隐私保护通话套餐包,价格更优惠。隐私保护通话套餐包有效期为1年。 以下套餐不含号码月租费,号码月租费请参考非套餐包计费详情。 以下套餐所含短信条数仅包含使用虚拟运营商号码(隐私号码)转发短信产生的短信条数,不包含使用运营商号码(隐私号码)转发短信产生的短信条数。短信发送过程中的收费情况请参见隐私号短信如何收费。 隐私保护通话套餐包与账号绑定,不支持跨账号使用。查看如何购买套餐包。 套餐包计费:同一华为云账号下的所有号码一起计费,超出套餐包的使用量将按照非套餐包价格计费。 业务类型 有效期(月) 虚拟运营商号码/运营商号码通话(分钟) 虚拟运营商号码短信(条) 价格(元) 隐私保护通话套餐包(包年) 12个月 500 50 38 5,000 150 280 50,000 1,000 2,500 500,000 10,000 22,500 套餐包购买后不支持退订或变更,请根据实际业务量,选择合适的规格。
  • 非套餐包计费详情 隐私保护通话AXB、AX、AXE、X、AXYB模式均包含号码月租费,通话服务费(含录音)以及短信服务费(AXE和AXYB暂不支持短信),且收费标准相同。价格详情如下: 报价项 虚拟运营商号码价格 运营商号码价格 通话服务费(含录音) 0.06元/分钟 0.06元/分钟 号码月租费 5元/月/个 15元/月/个 短信服务费 0.28元/条 0.27元/条 短信发送过程中的收费情况请参见隐私号短信如何收费。
  • 计费概述 隐私保护通话服务按照使用量,即账号所有号码数量(月租)、通话(含录音)时长、短信发送条数进行计费。号码月租按月收费,通话和短信业务按使用量以小时为周期扣费,具体计费原则请参考计费原则。 隐私保护通话采用预付费模式,使用隐私保护通话服务前,需先在华为云账户中充值,可参考如何给账户充值。 隐私保护通话业务费用由华为云平台自动扣费,请保证您的账户余额充足。 录音不单独收费,已包含在通话费用中。 每月1号00:10对存量隐私号数量进行计费,当月新购买的隐私号则在号码下发当日收取当月月租费。所以月末最后一天下发的隐私号码,因当月月租扣费存在时间延迟,会出现次月1号当天收取2个月月租(上月和当月月租)的情况。
  • 计费示例 企业A本月已购买隐私保护通话套餐包(通话500分钟,虚拟运营商短信50条)。在9月1日00:10有10个存量隐私号(虚拟运营商号码),并在9月1日当天购买了5个新隐私号(运营商号码),9月2日退订了5个存量隐私号(虚拟运营商号码)。 9月1日实际通话时长(含录音)为600分钟,隐私保护通话平台推送给企业A的短信发送话单中短信数量为100条(虚拟运营商短信100条)。 计费说明: 隐私保护通话套餐包(通话500分钟,虚拟运营商短信50条),套餐价格38元; 企业A 9月1号共有10个虚拟运营商号码(月租5元/月),5个运营商号码(月租15元/月); 实际通话时长(含录音)为600分钟,先扣除隐私保护通话套餐包额度500分钟;剩余100分钟按非套餐包价格计费,即0.06元/分钟: 实际短信数量为100条(虚拟运营商短信100条),先扣除套餐包内虚拟运营商短信50条;剩余50条虚拟运营商短信按非套餐包价格计算,即0.28元/条。 实际费用: 38 + ( 10*5+5*15 ) + 100*0.06 + 50*0.28= 183元
  • 接口示例 请求示例 POST /rest/httpsessions/callVerify/v1.0 HTTP/1.1 content-type: application/json;charset=UTF-8 authorization: AKSK realm="SDP",profile="UsernameToken",type="Appkey" x-aksk: UsernameToken Username="ZRBRz4bAXoFgEH7o4Ew308eXc1RA",PasswordDigest="****",Nonce="ac1c911c4792492687f8f6b2264a491e",Created="2018-05-26T00:35:30Z" content-length:xx { "displayNbr":"+8675528****88", "calleeNbr":"+86189****0007", "languageType":2, "preTone":"welcome.wav", "verifyCode":"12345678", "times":3, "userData":"cwgtest" } 响应示例 HTTP/1.1 200 OK Content-Type: application/json;charset=UTF-8 { "resultcode":"0", "resultdesc":"Success", "sessionId":"1200_366_0_20161228102743@callenabler.home1.com" }
  • 结果码 请根据以下结果码进行调测,如果有疑问,可联系管理员进行确认。 表6 结果码说明 响应码 结果码 英文描述 中文描述 处理方法 200 0 Success. 成功。 无需处理。 400 1023006 Authorization not contained in the HTTP header. 鉴权失败,请检查鉴权请求正确性。 请检查消息头中是否携带了Authorization,PasswordDigest字段填写是否正确,携带的app_key填写是否正确,且生成随机数的时间与发送请求时的本地时间不能相差太大。 1023007 realm not contained in Authorization. Authorization字段中未找到realm属性。 请检查Authorization字段中的是否携带了realm属性。 1023008 profile not contained in Authorization. Authorization字段中未找到profile属性。 请检查Authorization字段中的是否携带了profile属性。 1023009 The value of realm in Authorization must be SDP. Authorization中realm属性值应该为“SDP”。 请检查Authorization字段中的realm属性值是否为“SDP”。 1023010 The value of profile in Authorization must be UsernameToken. Authorization中profile属性值应该为“UsernameToken”。 请检查Authorization字段中的profile属性值是否为“UsernameToken”。 1023011 The value of type in Authorization must be app_key. Authorization中type属性值应该为“Appkey”。 请检查Authorization字段中的type属性值是否为“Appkey”。 1023012 type not contained in Authorization. Authorization字段中未找到type属性。 请检查Authorization字段中是否携带了type属性。 1023033 HTTP header not found X-AKSK field. HTTP头未找到X-AKSK字段。 请检查HTTP消息头中是否携带了X-AKSK字段。 1023034 UserName not contained in X-AKSK. X-AKSK字段中未找到UserName属性。 请检查X-AKSK字段中的是否携带了Username属性。 1023035 Nonce not contained in X-AKSK. X-AKSK字段中未找到Nonce属性。 请检查X-AKSK字段中的是否携带了Nonce属性。 1023036 Created not contained in X-AKSK. X-AKSK字段中未找到Created属性。 请检查X-AKSK字段中的是否携带了Created属性。 1023037 PasswordDigest not contained in X-AKSK. X-AKSK字段中未找到PasswordDigest属性。 请检查X-AKSK字段中的是否携带了PasswordDigest属性。 1023038 UsernameToken not contained in X-AKSK. X-AKSK中没有携带UsernameToken。 请检查X-AKSK字段中的是否携带了UsernameToken属性。 401 1010010 Invalid digest. PasswordDigest校验失败。 请检查PasswordDigest字段填写是否正确。 1010013 Time out limit. 时间超出限制。 请确认X-AKSK鉴权时,生成随机数的时间与发送请求时的本地时间不能相差太大(具体差值请与管理员确认) 403 1010002 Invalid request. 非法请求。 检查请求携带的参数格式是否都合法。 1010003 Invalid app_key. 无效的app_key。 检查请求携带的app_key是否填写正确,app_key从应用管理页面获取,若填写正确,请在应用管理页面检查请求携带的app_key所属应用状态是否正常。 1010006 Invalid Rest API. 无效的Rest API。 检查请求方法填写是否正确。 1010008 The status of the app_key is unavailable. app_key被暂停使用。 请在应用管理页面检查请求携带的app_key所属应用状态是否正常。 1010009 No more APIs can be invoked. API达到调用上限。 请稍等一分钟后再试,并联系管理员申请更高的应用使用配额。 1010010 The flow control upper limit is reached on the platform. 平台达到系统流控上限。 请稍等一分钟后再试。 1010011 The app is not allowed to access a commercial address. APP没有访问商用地址的权限。 请在应用管理页面检查请求携带的app_key所属应用状态是否正常。 1010021 Application unavailable. 应用不可用。 请在应用管理页面检查请求携带的app_key所属应用状态是否正常。 1010023 Invalid display number. 号显号码不合法。 检查displayNbr和displayCalleeNbr参数的填写是否合法,与号码管理页面的“固话号码”保持一致。若合法,请确认该号码是否已申请并下发。申请号码在号码订购页面申请,号码下发后可在号码管理页面查看。 1010024 Invalid caller number. 主叫号码不合法。 检查callerNbr参数的填写是否合法。 1010040 The app_key is not allowed to invoke the API. app_key没有调用本API的权限。 请联系管理员确认该app_key对应的应用是否具语音验证码能力。 1012001 Resource of number is not to be applied. 资源未申请。 app_key和业务号码未绑定。 1012006 The service number is not applied. 业务号码未申请。 请确认是否申请业务号码。 1012012 Application does not open recording function. 应用未开启录音功能。 请在应用管理页面确认请求携带的app_key是否开启了录音功能。 1013001 Calls exceed the SP limit. 请求次数超过SP配置上限。 请和管理员确认开发者呼叫数量限制。 1013002 Calls exceed the APP limit. 请求次数超过应用配置上限。 请和管理员确认应用呼叫数量限制。 1013003 Calls exceed the display number limit. SP的主显号码受限。 请和管理员确认显示号码呼叫数量限制。 1013004 Callee in blacklist. 被叫用户是黑名单。 被叫号码在运营商黑名单库。 1013010 Caller in blacklist. 主叫用户是黑名单。 主叫号码在运营商黑名单库。 1013011 Callee is not on the whitelist. 被叫用户不在白名单中。 请和管理员确认被叫号码白名单限制。 1013100 Common error code . 未知错误。 请和管理员确认安全管控限制。 1013101 Abnormal call restricted . 呼叫行为异常。 请和管理员确认安全管控限制。 1013111 International callin is forbidden. 国际呼入限制。 请检查请求的号码格式是否为国际号码格式。 1013112 International callout is forbidden. 国际呼出限制。 请检查请求的号码格式是否为国际号码格式。 1013113 Abnormal call duration restricted. 通话时间异常。 请检查请求的号码是否通话时间异常。 1013115 Abnormal call completion rate restricted. 呼叫接通率异常。 请检查请求的号码是否呼叫接通率异常。 1013116 Caller call frequency restricted. 主叫呼叫频次限制。 请检查主叫号码是否有呼叫频次限制。 1013117 Callee call frequency restricted. 被叫呼叫频次限制。 请检查被叫号码是否有呼叫频次限制。 1013118 Service number call frequency restricted. 业务号码呼叫频次限制。 请检查业务号码是否有呼叫频次限制。 1013119 Service number suspend. 业务号码被暂停。 请和管理员确认号码状态。 1013120 Ip address is null. IPv4地址未携带。 请客户接口携带请求发送方IPv4地址。 1013121 Call black time forbidden. 呼叫时段限制。 呼叫时段为休息时段,请工作时段再呼叫。 1013122 Sub enterprise is suspended. 子企业已被暂停。 查看是否因投诉被下线,可查看订购号码时填写的邮箱是否有业务下线通知邮件。 1020165 The number of app_key voice call ports exceeds the upper limit. 超出语音呼叫端口数限制。 请稍等一分钟后再试。建议联系管理员为该应用申请更多的端口配额。 1020166 The app client ip is not in ip white list. 请求发送方app IP不在白名单列表中。 运营商IP地域管控,此地区无法呼通。 1020168 The call is rejected because the login IP of the peer app is blacklisted . 请求发送方app登录IP是黑名单。 运营商IP地域管控,此地区无法呼通。 1020171 The call is rejected because the login IP of the peer app is blacklisted area. 请求发送方app登录IP在受限地域。 运营商IP地域管控,此地区无法呼通。 1020176 Authentication failed, try again later 鉴权失败,稍后重试。 IP因鉴权失败次数过多导致被拉黑,请30分钟后重试,或联系管理员放通该IP。 500 1010001 Internal system error. 系统错误。 请联系管理员处理。 1020001 Parameter error. 参数错误。 检查请求携带的参数格式是否都合法。 1020002 Internal error. 内部错误。 请联系管理员处理。 1020150 The app_key is invalid. app_key无效。 检查请求携带的app_key是否填写正确,app_key从应用管理页面获取,若填写正确,请在应用管理页面检查请求携带的app_key所属应用状态是否正常。 1020151 The bindNum is invalid. 业务号码无效。 业务号码无效,请联系管理员处理。 1020154 Insufficient voice ports. 语音端口不足。 请稍等一分钟后再试,并联系管理员申请扩容语音端口。 1023001 Internal error. 内部错误。 请联系管理员处理。 1023002 Response timeout. 响应超时。 重新发送一次请求。
共100000条