PHPAGIについて簡単にまとめてみました。

そもそも「PHPAGI」とは何かというと、「AGI」がAsteriskをプログラム的に操作するインターフェースであり、この機能を使えば例えば自動応答装置を構築することができます。一番代表的なものとしてはモーニングコールをAGIで実現できます。
すなわちApacheでいうところのCGIと思っていただければよろしいでしょう。
AGIでプログラムを作成するのに使用できる言語は、代表的なものとしてはPerlがありますが、我々にとって身近なPHPを使ってもプログラミングできます。
そのために必要なライブラリ群が今回紹介する。「PHPAGI」なのです。

  • PHPAGIの導入
    http://sourceforge.net/projects/phpagi/ からPHPAGIをダウンロード
    適当なディレクトリで展開してから、以下のファイルを/var/lib/asterisk/agi-bin
    にコピーする
mkdocs.php
phpagi-asmanager.php
phpagi-fastagi.php
phpagi.php

これらのファイルは実行権限を付与しておくこと。

  • サンプルプログラム(test1.php)の作成
    /var/lib/asterisk/agi-binディレクトリにtest1.phpというプログラム名で以下の
    内容を登録する。
    #!/usr/bin/php
    <?php
      require('phpagi.php');  
    
      $agi = new AGI();
      $agi->answer();
      $agi->evaluate("SAY ALPHA OK \"\""); 
      exit();
    ?>
    このファイルについても実行権限を付与しておくこと。
  • extentions.confの設定
    extension.conのdefaultセッション内に以下の内容を記述します。
; AGI Test
exten => 316,1,Goto(at,1)
exten => at,1,Wait(1)
exten => at,2,Answer()
exten => at,3,AGI(test1.php)

電話機から内線316をコールすると、"オー、ケイ"という声がするはずです。


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-05-21 (金) 14:26:45 (109d)