Asterisk權威指南/序

維基教科書,自由的教學讀本

「有不止一種方式可以做到。」我跟Asterisk打交道已經九年了,隨着不斷發布的版本、新增的特性以及越來越多的人在用這個難以置信的工具解決各種通訊問題,這句話越來越正確。我有幸作為Asterisk項目的社區經理在Digium工作了兩年,這段經歷使我看到世界範圍的開發力量推動了Asterisk向前發展。Asterisk的深度和廣度是驚人的,部署支持幾十萬用戶的系統是很平常的事。我看見Asterisk已經深入滲透到金融、軍事、醫療、財富100強、服務供應商、電話卡以及移動環境等市場。實際上我敢說,任何一個領域,如果需要一個通用語音工具來完成某項任務,Asterisk就是一個缺省的選擇。

Asterisk已經成為了開源軟件改變商業世界的典型。在任何介紹Asterisk的會議中,我最喜歡的部分就是回答初學者的問題。當我不斷地說「是的,它能做到」時,我看見人們的眼睛越張越大。於是,人們開始很高興地設想一些他們的電話系統或通訊系統無法完成的一些事情。無線電集成?當然。在呼入或呼出電話中播放MP3?可以。把電話會議的錄音發給與會者?沒問題。把語音服務集成到現有Java應用程式中?簡單。即時通訊?語音導航?視頻?可以,可以,可以,可以。

隨着連續不斷的肯定答覆,接下來,最棒的事情莫過於邀請提問者坐下來,開始向他演示Asterisk是如何快速部署和配置的。然後,我會向他推薦《Asterisk: 電話的未來》(《Asterisk:The Future of Telephony》)。使用Asterisk,在很短的時間內公司就能改變他們向客戶提供產品的方式,非盈利性組織可以翻新他們的服務形態,個人可以為他們的座機或手機定製一個呼叫處理系統。Asterisk可以連幾條線部署在家裏, 也可以是一個跨越洲際的多伺服器系統,但所有這些都要從安裝軟件包、打開幾個配置文件和學習範例開始。

從1999年Mark Spencer開發的一個基本PBX開始,Asterisk在幾千名開發者的幫助下,已經從一個簡單的連接電話呼叫的系統變成了一個可以處理語音、視頻和文本的平台,可以連接多種虛擬或物理設備類型。Asterisk的誕生和成長得益於專有硬件的四個掘墓者:開源運動、互聯網、摩爾定律和通信成本的直線下降。甚至那些和Asterisk有競爭衝突的硬件供應商,也已經在他們的實驗室和核心網絡中使用Asterisk了:幾乎所有的VoIP設備都要和Asterisk做測試,以保證其兼容性。

在我最近出席的一次通訊會議上,「誰在使用Asterisk?」這個問題被提出,現場差不多75%的人舉起了他們的手。Asterisk是一個成熟、穩定的軟件平台,幾乎已經滲透到通訊產業的每一個領域,使得它成為了開源服務系統的一個重要組件。我建議,任何同時需要Web和語音服務的系統,可以考慮在LAMP中加多一個A, 變成LAAMP。(其實我覺得LAMA-P也是一個不錯的選擇,但不知道為什麼沒人喜歡,嘻嘻)

這個版本補充了很多範例,這是我盼望已久的事情。Asterisk的便利性在於初學者可以很容易地理解其基本概念。當初學者掌握了基本內容,開始嘗試多種方式完成同一件事情時,本書會介紹如何使用Java、Perl或Python編寫AGI程序,甚至定製Application。但對任何人來說,不管他的技能水平如何,第一步都是看其他人寫的基本Application的範例。 作者不僅給出了Asterisk的方法綱要,還為初學者甚至專家提供了很多優秀範例,使得可以快速掌握新技術。

Asterisk 1.x系列非常強大,幾乎可以解決你的所有語音問題。對於那些想要更複雜特性的人們來說,要知道還有很多有趣的特性正在開發中。如果你是第一次使用Asterisk,我要歡迎你來到這個由用戶和開發者組成的社區大家庭。這本書可以把你從新手變成老手。如果你是一個有經驗的Asterisk開發者或繼承者,我相信這本書也能給你帶來驚喜,「哦,原來還可以這樣做」。

建議你加入郵件列表,IRC在線聊天室,和AstriCon年度會議,以便了解最新信息。沒有你的興趣、付出和編碼,Asterisk將不復存在。開源項目歡迎新穎的想法和卓越的貢獻:我希望你參與到Asterisk社區中來,也希望能在這本書的下一個版本中看到你的問題和範例。