您在使用语音服务API或SDK时,如果遇到疑问后可以参考以下常见问题及处理建议。
语音服务SDK是否支持Android终端?
当前语音服务SDK不支持Android和iOS终端编译。
语音服务VoiceReport接口返回后会再次推送吗?
一个通话结束推送后,只要您有一台服务器接收到消息,就不会再次推送。
dyvmsapi.aliyuncs.com连接失败怎么办?
dyvmsapi.aliyuncs.com为语音服务接口地址,属于公网域名,请您检查网络设置。如果确认基本网络配置无误但仍连接失败,请按以下步骤逐一排查:
检查本地 DNS 解析:执行
nslookup dyvmsapi.aliyuncs.com,若返回地址为fe80::100,表明本地 DNS 解析异常。使用公共 DNS 测试:执行
nslookup dyvmsapi.aliyuncs.com 223.5.5.5,确认通过公共 DNS 能否正常解析该域名。清除本地 DNS 缓存:Windows 系统执行
ipconfig /flushdns清除 DNS 缓存后重试。临时禁用 IPv6 或切换 DNS:将本地 DNS 服务器切换为 223.5.5.5,或临时禁用 IPv6 后重试。
检查防火墙及网络代理:确认防火墙或安全组未拦截出站请求,并排查是否存在网络代理或运营商访问限制。
语音服务呼叫回了408处理超时是什么原因?
错误码408一般为被叫侧长时间未接起导致的或者被叫服务器问题。
语音服务外呼拨号返回487是什么情况?
请您登录语音服务控制台,在页面查看失败原因。如果无结果请提供对应的主被叫及时间,转人工服务进行核实。
语音发送模板接口返回成功但是呼叫记录显示占线?
接口返回成功仅代表接口调用结果,不代表通话结果。通话详情可以登录语音服务控制台,在页面查询。
调用API报错isv.BLACK_KEY_CONTROL_LIMIT提示模板变量中存在黑名单关键字?
isv.BLACK_KEY_CONTROL_LIMIT提示模板变量中存在黑名单关键字,您的入参有异常, 请确认模板是否存在非法内容。 更多信息请参见语音模板规范,API错误码请参见API错误码。
调用语音服务 API 报错“订单额度已使用完毕”是什么原因?
若调用语音服务接口报错“订单额度已使用完毕”,但账号余额充足且测试环境正常,该报错通常并非阿里云侧问题,建议咨询第三方服务商;同时可参考API 错误码文档,确认该错误码是否为阿里云官方定义的错误码。
语音服务公网接入域名策略是否为双向放开?
公网域名接入是双向放开,公网接入点请参见服务接入点。
语音服务接口接入只能通过公网域名接入,不能通过IP访问。
语音服务控制台查看话单详情,显示错误码200005?
运营商回执错误码200005是被叫用户无法接通,因运营商问题或者被叫拒接等导致的被叫无法接通。更多回执错误码请参见运营商回执错误码。
语音通知接口如何设置重播次数?
SingleCallByVoice和SingleCallByTts接口,您可以入参时PlayTimes设置播放次数。如果正常接通,就会多次播放;如果未接通,就不会有多次播放。具体详情请参见发送语音通知、发送语音验证码。
如果语音通知呼叫失败,则无自动重播功能。
可以直接调用API接口,查看语音模板或者创建语音模板吗?
语音服务的文本转语音模板目前仅支持在语音服务控制台创建,暂不支持API接口创建模板。如果您需要创建模板或者查看您申请过的模板,请登录语音服务控制台,在控制台中操作。
调用QueryCallDetailByCallId接口为什么Data中state等于200没有对应的运营商侧错误码?
调用QueryCallDetailByCallId接口中Data中state等于200说明接口已调用成功,由于刚呼叫完成的错误码合成有时候会产生延迟,所以会出现您查询state=200,而不是对应运营商回执错误码的情况,建议您在呼叫结束3~5分钟后再查询。
QueryCallDetailByCallId 接口的调用地址(Endpoint)为公网域名 dyvmsapi.aliyuncs.com,完整访问地址为 https://dyvmsapi.aliyuncs.com/。
如果接口返回参数不完整(仅返回 code、message 或 requestId 字段),通常是因为传入的 queryDate 参数时间戳不正确,或不支持跨天查询。请确保 queryDate 时间戳与调用记录日期一致(例如将昨天的时间戳改为当天日期的正确时间戳)后重试。
语音服务如何将多个IP设置为回调地址?
同一个阿里云账号同一种类型的回执消息只支持配置一个回调地址。如果您有多个IP地址需要接收回执消息,建议您申请多个阿里云账号,配置不同的IP地址。 回执消息配置详情,请参见回执消息简介与配置流程。
语音服务VoiceReport设置回调地址报错?
您需要解析阿里服务器发送的测试内容:{"json":"test-content"},这个测试内容是JSON格式,不是Json Array格式。在设置回调地址进行测试的时候,需要您本地按照JSON格式进行校验;测试完成后,实际接收回执消息的时候,需要按照Json Array格式进行校验。
ClickToDial 双呼 API 下线后是否有替代接口?
ClickToDial 双呼接口已下线,语音服务目前暂无可替代该接口的 API,且无具体替代方案。如需了解当前可用的语音服务接口,建议查阅 API 接口概览,确认其他可用功能。
使用新 AccessKey 拨打语音电话,通话结果是否会进入当前配置的 MQ 队列?
是。通话回执消息的推送目标由账号级配置决定,与调用 API 时使用的 AccessKey 无关。只要属于同一阿里云账号,无论使用哪个 AccessKey,通话结果均会推送至当前已配置的同一 MQ 队列,无需重新创建或启动新的 MQ 队列。
语音服务 SDK 返回状态码与运营商实际返回消息不一致是什么原因?
SDK 返回的状态码及描述(例如"未接通-原因运营商未返回")是平台根据运营商信令转换后的标准化结果,运营商返回的具体信令消息(例如 SIP 603 Decline)仅供参考,两者存在差异属于正常现象。
出现不一致或描述模糊时,通常是因为被叫侧终端安全软件或被叫运营商网关拦截了呼叫,导致呼叫未能真正建立连接。平台侧仅能核实通话已送达被叫侧,但因被叫侧原因失败,无法提供更细粒度的分类原因。
如需进一步排查,建议提供主被叫号码及通话时间,联系人工服务核实。
调用语音服务 API 报错 SignatureDoesNotMatch,或使用官方 SDK 时是否需要手动计算签名?
关于 SignatureDoesNotMatch 错误
该错误表示请求签名不正确,请按以下步骤排查:
确认 AccessKey ID 和 AccessKey Secret 是否正确,检查是否含有前后空格。
如果使用了代理服务器,确认代理未自动添加额外的请求头,以免影响签名验证。
如果使用自行实现的签名逻辑,请确保按规范计算签名,可参考官方签名文档。
关于使用官方 SDK 时的签名
使用阿里云官方 SDK 调用语音服务时,SDK 会自动完成签名计算,无需手动计算。请确保:
正确配置 AccessKey ID 和 AccessKey Secret。
未通过代理或其他方式篡改请求头,以免干扰 SDK 自动生成的签名。
关于多 SDK 共存报错
若同时引入 dyvmsapi 与 cloudauth 等多个 SDK 时出现报错,通常并非 SDK 依赖冲突导致,而是 AccessKey 凭证缺失。请检查并确保 accessKeyId 和 accessKeySecret 已通过环境变量(如 VMS_AK_ENV/VMS_SK_ENV)正确注入,或在初始化 Client 时显式赋值且非空。
TTS 服务(SingleCallByTts)调用无响应或卡住如何排查?
如果调用 SingleCallByTts 接口后长时间未收到响应,请按以下步骤排查:
确认账户余额:确认账户未欠费,可登录费用中心查看账户余额和使用情况。
了解 TTS 合成机制:TTS 音频生成需等待整段文本合成完毕后才能收到接口响应,文本内容越长等待时间越久,属于正常现象。
注意超时时间:服务端超时时间为 298 秒,接口不会一直卡住。建议耐心等待至超时返回,或优化文本内容长度以减少合成耗时。
语音服务 MNS 队列默认拉取频率限制是多少?
MNS 队列模式下的拉取频率由用户侧自行控制,没有系统默认限制;仅 HTTP 推送模式有时效限制。
阿里云语音服务是否支持 OpenAI 格式的 API 接口?
不支持 OpenAI 格式的 API 接口,仅支持标准 HTTP 接口和 SDK 对接方式。
调用语音服务接口是否要求网站域名已完成 ICP 备案?
调用 API 本身不强制要求域名完成 ICP 备案,只要能公网访问对应接口即可。
语音服务 IVR 呼转回调接口的公网出口 IP 地址是什么?
IVR 呼转回调接口的公网出口 IP 段如下:
203.119.128.0/17
59.82.0.0/16
140.205.0.0/16
106.11.0.0/16
您也可以使用域名 dyvmsapi.aliyuncs.com 配置白名单。