连接Azure认知服务与通信服务报错,如何解决并实现PSTN呼入IVR?
解决Azure Cognitive Service与Azure Communication Service连接错误的方案
检查认知服务资源类型与区域匹配
必须使用语音服务(Speech Service),ACS仅支持关联该类型认知服务,其他类型(如计算机视觉、文本分析)无法建立连接。同时,语音服务与ACS资源需处于同一Azure区域,跨区域配置会触发连接错误。验证语音服务的配置与权限
- 登录Azure门户,确认语音服务已启用语音转文本和文本转语音功能(IVR流程依赖这两项能力)。
- 在语音服务的「密钥和终结点」页面,检查访问密钥是否有效,可重新生成密钥后重试连接。
- 确保ACS资源的服务主体拥有语音服务的认知服务用户角色权限,避免因权限不足导致连接失败。
确认ACS资源的运行状态与PSTN配置
检查ACS资源是否处于正常运行状态,无暂停、配额超限等异常。若要实现入站PSTN IVR,需确保已完成PSTN号码的购买与关联,未配置PSTN功能的ACS无法与语音服务建立IVR关联。排查网络防火墙限制
进入语音服务的「网络」设置页面,确认已勾选「允许受信任的Azure服务访问此资源」,或手动添加ACS资源的出站IP地址到允许列表,避免防火墙拦截ACS的访问请求。重试连接或重建资源
若以上配置均正常,可先在Azure门户中断开现有关联(如有),再重新发起连接操作。仍失败的话,尝试创建新的语音服务资源,再与ACS关联,排除资源本身的异常问题。
入站PSTN呼叫IVR实现补充
连接成功后,通过ACS呼叫SDK完成IVR配置:
- 初始化
CallAutomationClient,关联已配置的语音服务 - 设置入站呼叫路由规则,将PSTN呼叫导向语音服务处理
- 编写语音提示、菜单交互逻辑,通过语音服务的
SpeechSynthesizer和SpeechRecognizer实现语音交互 - 处理呼叫转接、挂断等事件,保障IVR流程的完整性
内容的提问来源于stack exchange,提问作者223 SOUNDHAR.M
相关产品推荐
相关产品推荐

