- 作者:james.zhu(james.zhu@hiastar.com) www.hiastar.com 微信公众号:asterisk-cn
- Asterisk课堂-如何通过源代码安装方式安装Asteisk/dahdi
- Asterisk课堂-系统部署环境要求
- Asterisk课堂-Asterisk技术架构
- Asterisk课堂-拨号规则基础
- Asterisk课堂-创建第一个拨号规则
- Asterisk课堂-拨号规则中的Contexts
- Asterisk课堂-拨号规则中变量的使用
- Asterisk课堂-拨号规则中的Extensions用法
- Asterisk课堂-拨号规则中匹配模式
- Asterisk课堂-IAX2 介绍
- Asterisk课堂-IAX2 呼叫流程
- Asterisk课堂-SIP介绍
- Asterisk课堂-SIP呼叫流程
- Asterisk课堂-终端注册
- Asterisk课堂-SIP Trunk
- Asterisk课堂-SIP和NAT
- Asterisk课堂-拨号规则中的Include使用方法
- Asterisk课堂-拨号规则中的语音播放


现在我们介绍几个Asterisk中经常使用的播放命令。
Playback 顾名思义,就是Asterisk 使用playback 文件对用户进行一个语音回放。这个功能通常用来提示一些系统的信息,用户根据听到的语音提示进行下一步的流程。
Say Application,Say主要使用在系统根据命令参数对语音进行不同形式的播放。具体的命令包括:SayDigits(), SayNumber(),SayAlpha() 和SayPhonetic() 和SayUnixTime()。因为,系统默认的是英文格式。所以,如果用户需要播放其他的语言格式,需要通过系统设置来支持不同语言的播放,例如中文语音播放。图例中,拨打6592,则可以听到一百二十三;拨打6593,则可以听到1,2,3;拨打6594,则可以听到 英文hello;拨打6595,则可以听到 “Hotel,Echo,Lima,Lima,Oscar”。最后的Hello的播放格式是根据 NATO phonetic alphabet 定义的。 具体的含义参考以下图例。


除了拨号规则播放语音文件,用户也可以实现Playtone的功能,这个功能是根据每个国家对语音定义的格式来播放的,具体的格式可以参考indication.conf 文件,这个文件定义了多个国家的语音频率,包括忙音,振铃音等等语音。如果文件中没有相应的国家,例如中国,用户则需要自己添加,然后重新加载这个文件。
语音文件路径添加,默认的语音文件路径保存在 /var/lib/asterisk/sounds 路径下。用户可以添加CN的语音文件,播放时可以根据语音文件路径设置的语言来支持不同的语音。
总结,语音播放是Asterisk中非常重要的功能,用户需要根据不同的业务逻辑来播放相应的语音。同时,用户来注意语音文件的格式和系统所支持的格式,保证播放正常。另外,如果添加语音时,最好创建一个自己的语音文件路径,保证语音文件的备份存放是安全的。笔者也组织了一些开源爱好者翻译了Asterisk默认的绝大部分语音文件,用户可以到我们官方网站寻求下载,替换默认的语音文件。