分類

Slideshow

Get the Flash Player to see the slideshow.

彙整

近期迴響

Asterisk 相關

Learning

Who am I

經常收看

金錢世界

Site search

 

十一月 2008
« 十月    
 1
2345678
9101112131415
16171819202122
23242526272829
30  

標籤

近期文章

Tag: AGI

Asterisk Gateway Interace (AGI) 續篇

在上一篇文中,我對 AGI 有粗略的介紹,在後段也介紹了基於 FastAGI 建立了一個
系統。這一篇將會是上一篇後段的延續,講解那系統利用 FastAGI 較為細節的部分。

我們自行設計的 Application Server 是基於 MS-Windows 設計。它是以 Windows Service 形式運作。它會開一個 TCP Socket 4573 接收來自 Asterisk 的 FastAGI 要求。接受要求後,Asterisk 的Dialplan 便把控制權移交到 Application Server 中,而Asterisk 那方便一直等待,直至 Application Server 這方的工作完成為止。

當然,Application Server 這方的控制程序並不是硬寫的。它借用了 Mozilla 的
SpiderMonkey 模組作一個 Script Engine。SpiderMonkey 原是 Mozilla 和 FireFox的 JavaScript Engine。那麼,開發人員便可以像開發DialPlan一樣地簡單,用JavaScript 在Application Server上開發 Call Flow。

http://www.mozilla.org/js/spidermonkey/

看過以下的網址後,你會發現 AGI 每一指令正是反映了Asterisk 在Dialpan 中的
一道指令。而AGI 沒有提供的便可能以用 “Exec” [...]

Asterisk Gateway Interace (AGI)

Asterisk 提供了名為 Asterisk Gateway Interface (以下簡稱為 AGI) 的功能,開發者可能以透過 Dialplan
以外的工具或程式 (E.g. Perl, Shell Script,C++, Java, PHP, Mono, etc….)來開發Asterisk的應用程序
,控制Asterisk 的 telephony channel,包括Play music,讀寫DTMF等等。

AGI 是一個獨立程式,Asterisk 會經由Dialplan 調用 AGI() 這一程式來執行AGI。它執行後便會用 stdin
和 stdout 來控制Asterisk。直至那 channel 收線為止。

AGI 在Asterisk 下,會根據本身的用途和行為特徵分了四種類型。
1, AGI - AGI 應用程序是與Asterisk 一同在本機內執行。
2, EAGI - 有別於 AGI,它除了用 stdin 和 stdout 外,它還會把   音訊輸出到 File descriptor 3。其他應用程式可以用它的
File descriptor 3來搜取這channel 的音訊。
3, FastAGI - [...]

Asterisk Gateway Interace (AGI)

Asterisk 提供了名為 Asterisk Gateway Interface (以下簡稱為 AGI) 的功能,開發者可能以透過 Dialplan
以外的工具或程式 (E.g. Perl, Shell Script,C++, Java, PHP, Mono, etc….)來開發Asterisk的應用程序
,控制Asterisk 的 telephony channel,包括Play music,讀寫DTMF等等。

AGI 是一個獨立程式,Asterisk 會經由Dialplan 調用 AGI() 這一程式來執行AGI。它執行後便會用 stdin
和 stdout 來控制Asterisk。直至那 channel 收線為止。

AGI 在Asterisk 下,會根據本身的用途和行為特徵分了四種類型。
1, AGI - AGI 應用程序是與Asterisk 一同在本機內執行。
2, EAGI - 有別於 AGI,它除了用 stdin 和 stdout 外,它還會把   音訊輸出到 File descriptor 3。其他應用程式可以用它的
File descriptor 3來搜取這channel 的音訊。
3, FastAGI - [...]