7

AsteriskにはAsteriskManagerInterface(AMI)Asterisk Gateway Interface(AGI)があり、これらを使用して、Asteriskからの特定のイベントでPHPスクリプトをトリガーできます。同じPHPスクリプトを使用すると、電話会議の次に何をするかをAsteriskに指示することもできます。FreeSWITCHのAMIとAGIに類似点はありますか?

4

4 に答える 4

9

これらは良い質問です。@dkwiebeが言ったことにいくつか追加したかっただけです(これは正しいです、ところで)。

FreeSWITCHで同等のAMIは、イベントソケットです。(技術的には、イベントソケットを使用するプログラムを作成するための抽象化レイヤーである「イベントソケットライブラリ」またはESLではありません。私はその区別をしたかっただけです。)実際、「アスタリスク-r」に相当するFreeSWITCHは実際には「fs_cli」と呼ばれるESLベースのプログラム-FreeSWITCHコマンドラインインターフェイスの略。fs_cliプログラムは、ESLで達成できることの良い例です。

また、ESLプログラムを使用してAGIスクリプトで実行できる多くのことを実行できない理由はありません。ESLの「接続オブジェクト」は、単一のコールレッグに「ロックオン」して制御できます。ウィキには例があり、次のFreeSWITCHクックブックにはこのテーマに関するいくつかのレシピがあります。(完全な開示:私はFreeSWITCHクックブックの共著者です。)

AGIのような呼び出しを制御するもう1つのESL関連の方法は、fs_ivrdデーモンを使用することです。ESLほど一般的には使用されませんが、AGIのようなスクリプトを作成するための優れたオプションです。詳細については、このwikiページを参照してください。

最後に、Luaはスクリプト/ロジックなどを実行するための優れた選択肢であることを述べておきます。呼制御で。シンプルで軽く、習得も簡単です。ラボでは、8コアマシンで数千のLua制御の同時呼び出しを確認しました。Luaは、非常に要求の厳しい環境でも機能します。

FreeSWITCHコミュニティと質問について話し合うために、irc.freenode.netの#freeswitchに気軽に参加してください。

于 2012-01-02T17:55:30.853 に答える
4

FreeSWITCH wikiには、これらの「AsterisktoFreeSWITCH」の質問のほとんどに対応するページがあります:RosettaStone

于 2013-06-20T15:15:28.970 に答える
3

AGIは、呼び出し中に使用されるスクリプト用です(つまり、dialplan durrignダイヤルプランの実行から呼び出されます)。AMIをリッスンし、イベントを待機するスクリプトはスタンドアロンです。後者は、技術的には前者の仕事も行うことができますが、それらを分離しておく方がはるかに優れています。

于 2011-12-29T21:40:17.793 に答える
2

@dkwiebeはserverfaultで答えを出しました-https://serverfault.com/a/345513/105376

AMIの場合、イベントソケットライブラリを探しています。mod_event_socketページで利用可能ないくつかの例があります。

AGIは少し異なります。FreeSWITCHでも同様のことができますが、luaの使用をお勧めします。私は個人的にFreeSWITCHmod_perl使用しましたが、良い結果が得られました。

于 2012-01-02T00:41:10.867 に答える