- 作者:james.zhu(james.zhu@hiastar.com) www.hiastar.com 微信公眾號:asterisk-cn
- Asterisk課堂-如何通過(guò)源代碼安裝方式安裝Asteisk/dahdi
- Asterisk課堂-系統部署環(huán)境要求
- Asterisk課堂-Asterisk技術(shù)架構
- Asterisk課堂-撥號規則基礎
- Asterisk課堂-創(chuàng )建第一個(gè)撥號規則
- Asterisk課堂-撥號規則中的Contexts
- Asterisk課堂-撥號規則中變量的使用
- Asterisk課堂-撥號規則中的Extensions用法
- Asterisk課堂-撥號規則中匹配模式
- Asterisk課堂-IAX2 介紹
- Asterisk課堂-IAX2 呼叫流程
- Asterisk課堂-SIP介紹
- Asterisk課堂-SIP呼叫流程
- Asterisk課堂-終端注冊
- Asterisk課堂-SIP Trunk
- Asterisk課堂-SIP和NAT
- Asterisk課堂-撥號規則中的Include使用方法
- Asterisk課堂-撥號規則中的語(yǔ)音播放

Asterisk最基本的功能就是語(yǔ)音功能,簡(jiǎn)單來(lái)說(shuō)就是終端之間的語(yǔ)音通信,包括系統對通道播放的語(yǔ)音。用戶(hù)呼入系統以后,通過(guò)撥號規則的設置,系統可以對其用戶(hù)播放語(yǔ)音提示,數字號碼等等功能。簡(jiǎn)單應用場(chǎng)景包括分數查詢(xún)系統的語(yǔ)音回放,用戶(hù)狀態(tài)查詢(xún)等等相關(guān)場(chǎng)景。視頻介紹了語(yǔ)音播放的幾個(gè)方式:

現在我們介紹幾個(gè)Asterisk中經(jīng)常使用的播放命令。
Playback 顧名思義,就是Asterisk 使用playback 文件對用戶(hù)進(jìn)行一個(gè)語(yǔ)音回放。這個(gè)功能通常用來(lái)提示一些系統的信息,用戶(hù)根據聽(tīng)到的語(yǔ)音提示進(jìn)行下一步的流程。
Say Application,Say主要使用在系統根據命令參數對語(yǔ)音進(jìn)行不同形式的播放。具體的命令包括:SayDigits(), SayNumber(),SayAlpha() 和SayPhonetic() 和SayUnixTime()。因為,系統默認的是英文格式。所以,如果用戶(hù)需要播放其他的語(yǔ)言格式,需要通過(guò)系統設置來(lái)支持不同語(yǔ)言的播放,例如中文語(yǔ)音播放。圖例中,撥打6592,則可以聽(tīng)到一百二十三;撥打6593,則可以聽(tīng)到1,2,3;撥打6594,則可以聽(tīng)到 英文hello;撥打6595,則可以聽(tīng)到 “Hotel,Echo,Lima,Lima,Oscar”。最后的Hello的播放格式是根據 NATO phonetic alphabet 定義的。 具體的含義參考以下圖例。


除了撥號規則播放語(yǔ)音文件,用戶(hù)也可以實(shí)現Playtone的功能,這個(gè)功能是根據每個(gè)國家對語(yǔ)音定義的格式來(lái)播放的,具體的格式可以參考indication.conf 文件,這個(gè)文件定義了多個(gè)國家的語(yǔ)音頻率,包括忙音,振鈴音等等語(yǔ)音。如果文件中沒(méi)有相應的國家,例如中國,用戶(hù)則需要自己添加,然后重新加載這個(gè)文件。
語(yǔ)音文件路徑添加,默認的語(yǔ)音文件路徑保存在 /var/lib/asterisk/sounds 路徑下。用戶(hù)可以添加CN的語(yǔ)音文件,播放時(shí)可以根據語(yǔ)音文件路徑設置的語(yǔ)言來(lái)支持不同的語(yǔ)音。
總結,語(yǔ)音播放是Asterisk中非常重要的功能,用戶(hù)需要根據不同的業(yè)務(wù)邏輯來(lái)播放相應的語(yǔ)音。同時(shí),用戶(hù)來(lái)注意語(yǔ)音文件的格式和系統所支持的格式,保證播放正常。另外,如果添加語(yǔ)音時(shí),最好創(chuàng )建一個(gè)自己的語(yǔ)音文件路徑,保證語(yǔ)音文件的備份存放是安全的。筆者也組織了一些開(kāi)源愛(ài)好者翻譯了Asterisk默認的絕大部分語(yǔ)音文件,用戶(hù)可以到我們官方網(wǎng)站尋求下載,替換默認的語(yǔ)音文件。