2015-09-04 70 views
7

我正在使用正常的php agi以下的星號this鏈接問題是我的php agi需要5秒鐘才能執行。我只是想爲用戶設置一些等待音, agi正在處理中。在相同的鏈接我發現一些設置asterisk agi函數處理的等待音

set music: Enable/Disable Music on hold generator, example "SET MUSIC ON default 

,但我不知道如何使用我的意思是確切的語法和我在哪裏把它。

我曾嘗試加入

same => n,Set(CHANNEL(musicclass)=default) 

但力工作

任何人可以幫助我嗎? 感謝

回答

2

如果使用phpagi,你有這樣的事情

$agi->set_music(true,"myholdclass") 
... 
$agi->set_music(false) 

http://phpagi.sourceforge.net/phpagi2/docs/phpAGI/AGI.html#methodset_music

確定你需要首先描述/etc/asterisk/musiconhold.conf myholdclass

+0

非常感謝你的回覆處理沒有什麼,但我不使用PHP-AGI我如我的問題中所述使用簡單的agi – codegasmer

+0

我建議您使用phpagi。沒有意義做自己的自行車。如果你正在使用自定義腳本,你只需要發送「SET MUSIC ON holdclass_here \ r 」 – arheops

+0

我已經嘗試設置類星號,但在哪裏運行'SET MUSIC ON hold' – codegasmer

0

請查看Playtones命令。

訊號分配延長=> S,2,Playtones(撥)

0

我對您的問題更容易解決。

你使用Asterisk AGI,而不需要創建一個AGI腳本(我不喜歡AGI機制,我發明了一個更強大,更簡單,更靈活的框架,使我可以用Asterisk曾經觸摸過Dialplan或任何其他配置文件)。

對於您的問題,只需執行以下操作;

  1. 創建 '/ /斌回聲' 在AGI目錄中的符號鏈接的應用程序:

    ln -s /bin/echo /var/lib/asterisk/agi-bin/echo 
    
  2. 從你的撥號方案,通過調用exten => s,n,AGI(echo, SET MUSIC ON)

  3. 做開始保持音樂你的動作...
  4. 停止音樂擱置通過校對exten => s,n,AGI(echo, SET MUSIC OFF)
  5. 轉移或做其他事情...

這是最簡單的方法,無需創建AGI頁面。

問候, 勞倫斯