java技术--电话语音通知

1.由于短信,邮箱都没人看,导致出现服务器出现异常很长时间才看到,因此电话语音服务因运而生
2.目前支持语音识别的第三方API如下:

(1)科大讯飞
     <1>语音听写即在线音识别
          1.可以识别多种方言,识别率高
          2.支持Android,iOS,Windows,Java,Linux
          3.把语音(≤60秒)转换成对应的文字信息
     <2>语音转写即长语音识别
         1.支持标准版/电话专用版,可以单声道&多声道,返回json格式
         2.价格范围为4.9~9.9元/小时,提供5小时免费使用
         3.将长段音频(5小时以内)数据转换成文本数据
     <3>实时语音转写
         1.通过 WebSocket 协议,建立应用与语言转写核心引擎的长连接,将音频流数据实时转换成文字流数据
         2.WebSocket形式输入PCM实时音频流,导出json格式数据
         3.价格为2万元/路/年,新用户免费限时使用
         4.文档地址:https://doc.xfyun.cn/
 (2)阿里语音识别
     <1>录音文件识别即长语音识别
        1.目前未上架,官方提供了排期
     <2>实时语音识别
        1.支持PCM、OPU音频编码格式
        2.支持Java,C++,iOS,Android
        3.流程为先推送申请指令,然后实时传递语音流,然后发送结束指令
        4.对长时间的语音数据流进行识别,适用于会议演讲、视频直播等长时间不间断识别的场景
     <3>一句话识别
        1.支持音频编码格式:PCM、OPUS、OPU
        2.支持Java,C++,iOS,Android语言
        3.对一分钟内的短语音进行识别,适用于对话聊天,控制口令等较短的语音识别场景
 (3)百度语音
     <1>离线语音识别
        1.目前只支持Android和IOS
     <2>在线语音识别
        1.支持Android,iOS,C#,Java,Node,PHP,Python,C++语言
        2.支持普通话,英语,粤语,四川话,普通话远场
 (4)腾讯云语言识别
     <1>一句话识别即在线识别
        1.识别60s内的短语音,当音频放在请求body中传输时整个请求大小不能超过1M
        2.当音频以url方式传输时,音频时长不可超过60s
        3.接口请求频率限制:20次/每秒
     <2>离线语音识别(RESTful API)
        1.离线语音识别服务使用 RESTful API 识别语音文件,采用异步方式通知业务方全部文本结果
        2.目前支持的采样率为 8K 和 16K,仅支持中文
        3.离线语音识别接口采用 HTTPS 协议,支持语音 URL 和本地语音文件两种请求方式
        4.通常应用于对识别结果返回时延要求不高的场景
        5.识别分为推送和获取识别结果两个步骤
        6.支持长语音识别          

3.总结

(1)科大讯飞的产品比较完善,但是相比收费也是最高的
(2)阿里相对比较完善,不过要线上使用相比价格还是比较高的
(3)百度完全免费,不过只支持60秒以内识别
(4)腾讯只支持两种模式识别(语音 URL 和本地语音文件)     
(5)相比之下在智能通话中会使用科大和阿里的在线识别,在语音质检过程中使用百度的识别

4.语音通知(阿里云为例)

(1)是指通过调用语音呼叫的API,通过阿里云语音服务,从运营商网络向指定号码发起一通呼叫
(2)呼叫被应答后,播放一段指定的音频
(3) 根据音频形式的不同,语音通知的API分为两个:
     <1>若播放的音频为固定内容的音频文件(mp3/wav),则调用singleCallByVoice语音文件外呼接口
     <2>若播放的音频为带有变量的文本模板,每次调用时根据变量替换值从文本模板转化为音频文件,
        则调用singleCallByTts文本转语音外呼接口

5.使用语音通知(阿里云为例)

(1)为了成功发起一条语音通知,至少需要完成以下步骤:
     <1>创建阿里云账号
     <2>获取阿里云访问密钥
     <3>在控制台完成号码与模板的申请,获得调用接口必备的参数
         1.在“语音号码”页面完成资质的申请和号码的购买
         2.在“文本转语音模板”页面完成模板申请,或在“语音通知文件”页面完成文件上传
 (2)阿里云语音服务网址:
     https://help.aliyun.com/document_detail/55070.html?spm=a2c4g.11174283.3.1.4fb4700aX9gcia 
 (3)技术对接步骤:
     <1>下载SDK工具包
         1.SDK工具包中一共包含了2个类库,一个aliyun-java-sdk-core包,另外一个是alicom-dyvms-api包
         2.将这两个包执行mvn package命令或者mvn deploy命令打包出相应的jar包,添加到工程类库中依赖使用
     <2>编写样例程序
        1.https://helpcdn.aliyun.com/document_detail/55315.htmlspm=a2c4g.11186623.6.623.72394936uYqhfd

6.语音号码

(1)是用于使用语音通知时,向终端客户发起呼叫的号码,终端客户在来电时,看到的号码显示就是这个语音号码
(2)语音号码购买后按月收取月租,根据归属地与靓号等级,语音号码的价格从35元至60元不等

7.语音模板

(1)是向终端用户发起呼叫后,用户接起电话时听到的音频内容
(2)文本转语音外呼API(SingleCallByTts)---JAVA(阿里云)
     <1>指模板的内容是文本,在播放时自动转化为语音
     <2>发送后会根据文本的内容和变量转化为语音并播放
     <3>https://helpcdn.aliyun.com/document_detail/55315.html?spm=a2c4g.11186623.6.623.72394936uYqhfd
(3)语音文件外呼API(SingleCallByVoice)---JAVA(阿里云)
     <1>预先录制好的音频文件(mp3/wav格式)
     <2>在接听后直接播放该文件
     <3>https://helpcdn.aliyun.com/document_detail/55302.html?spm=a2c4g.11186623.6.622.50756c3dX1Ag2r  

8.语音电话

(1)语音电话是对短信通知的一种补充
    <1>系统推送一条消息后,被管理手机收到呼叫,接听后,即可自动播放推送的消息
    <2>收到的信息以语音的形式让被管理者不用查看手机就能知道新推送的消息内容
     1.登录百度AI开放平台注册一个语音服务应用
     2.开始编码前需新建一个和语音服务有关的应用获取应用对应的API Key和Secret Key信息

你可能感兴趣的:(java技术--电话语音服务,java技术杂谈专栏)