php 设置星号agi功能处理的等待音

ngynwnxp  于 8个月前  发布在  PHP
关注(0)|答案(5)|浏览(93)

我使用星号与正常的PHP AGI以下this链接的问题是,我的PHP AGI需要5秒来执行。我只是想设置一些等待的语气,让用户等待,直到AGI正在处理。在同一个链接,我发现了一些东西:
设置音乐:启用/禁用音乐保持发生器,例如“设置音乐默认
但我不知道怎么用,我是说,确切的语法是什么,我把它放在哪里。
我试着加上

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

字符串
但没有用

bxpogfeg

bxpogfeg1#

如果你使用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

rm5edbpk

rm5edbpk2#

请查看Playtones命令。

exten => s,2,Playtones(dial)

字符串

flseospp

flseospp3#

只是我能想到的一些方法,不一定是详尽的列表。
1.您可以使用拨号应用程序StartMusicOnHold在调用AGI之前播放保持音乐,并在AGI退出后停止StopMusicOnHold保持音乐。
例如,在extensions.conf(或includes)中

exten => test,1,....
same => n,StartMusicOnHold()
same => n,AGI(....)
same => n,StopMusicOnHold()

字符串
1.播放铃声
您可以让来电者听到铃声,并停止振铃,您可以执行“Answer()"。

exten => test,1,....
same => n,Ringing()
same => n,AGI(....)
same => n,Answer()


1.而不是从拨号计划做以上你可以做这两个从AGI。
请参阅SET MUSIC以获得保持音乐或使用AGI with EXEC Ringing进行振铃
1.或者一个库,例如php-agi

chhkpiq4

chhkpiq44#

你把一些声音文件到你的声音目录:

/var/lib/asterisk/mysoundFile

字符串
然后调用回放函数:

Playback(mysoundFile)


更多信息:http://www.voip-info.org/wiki/view/Asterisk+cmd+Playback

9njqaruj

9njqaruj5#

我有一个更简单的解决你的问题。
你可以使用Asterisk AGI,而不需要创建一个AGI脚本(我不喜欢AGI机制。我发明了一个更强大,更简单,更灵活的框架,允许我用Asterisk做疯狂的事情,而不需要接触拨号计划或任何其他配置文件)。
对于你的问题,只要做以下几点;
1.在agi目录中为“/bin/echo”应用程序创建一个符号链接:

ln -s /bin/echo  /var/lib/asterisk/agi-bin/echo

字符串
1.从您的拨号方案中,通过呼叫exten => s,n,AGI( echo, SET MUSIC ON)启动音乐保持
1.做你的动作
1.通过调用exten => s,n,AGI( echo, SET MUSIC OFF)停止音乐保持
1.转移或做其他事情
这是最简单的方法,无需创建AGI页面。

相关问题