为asterisk agi函数处理设置等待音
Set waiting tone for asterisk agi function processing
我在 this link 之后使用带有正常 PHP AGI 的星号,问题是我的 PHP AGI 需要 5 秒才能执行。我只想设置一些等待音让用户等待,直到 AGI 被处理。在同一个 link 我发现了一些东西:
set music: Enable/Disable Music on hold generator, example "SET MUSIC ON default
但我不知道具体如何使用我的意思是确切的语法是什么,我应该把它放在哪里。
我试过添加
same => n,Set(CHANNEL(musicclass)=default)
但是没用。
您将一些声音文件放入您的声音目录:
/var/lib/asterisk/mysoundFile
然后调用播放函数:
Playback(mysoundFile)
更多信息:http://www.voip-info.org/wiki/view/Asterisk+cmd+Playback
如果你使用 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
请查看 Playtones 命令。
exten => s,2,Playtones(dial)
对于您的问题,我有一个更简单的解决方案。
你使用 Asterisk AGI,不需要创建 AGI 脚本(我不喜欢 AGI 机制。我发明了一个更强大、更简单和灵活的框架,允许我用 Asterisk 做一些疯狂的事情无需触及拨号计划或任何其他配置文件)。
对于您的问题,只需执行以下操作;
通过以下方式在 agi 目录中为“/bin/echo”应用程序创建符号 link:
ln -s /bin/echo /var/lib/asterisk/agi-bin/echo
根据您的拨号计划,通过拨打 exten => s,n,AGI( echo, SET MUSIC ON)
开始保留音乐
- 做你的动作
- 通过调用
exten => s,n,AGI( echo, SET MUSIC OFF)
停止等待中的音乐
- 转移或做其他事情
这是最简单的方法,无需创建 AGI 页面。
我在 this link 之后使用带有正常 PHP AGI 的星号,问题是我的 PHP AGI 需要 5 秒才能执行。我只想设置一些等待音让用户等待,直到 AGI 被处理。在同一个 link 我发现了一些东西:
set music: Enable/Disable Music on hold generator, example "SET MUSIC ON default
但我不知道具体如何使用我的意思是确切的语法是什么,我应该把它放在哪里。
我试过添加
same => n,Set(CHANNEL(musicclass)=default)
但是没用。
您将一些声音文件放入您的声音目录:
/var/lib/asterisk/mysoundFile
然后调用播放函数:
Playback(mysoundFile)
更多信息:http://www.voip-info.org/wiki/view/Asterisk+cmd+Playback
如果你使用 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请查看 Playtones 命令。
exten => s,2,Playtones(dial)
对于您的问题,我有一个更简单的解决方案。
你使用 Asterisk AGI,不需要创建 AGI 脚本(我不喜欢 AGI 机制。我发明了一个更强大、更简单和灵活的框架,允许我用 Asterisk 做一些疯狂的事情无需触及拨号计划或任何其他配置文件)。
对于您的问题,只需执行以下操作;
通过以下方式在 agi 目录中为“/bin/echo”应用程序创建符号 link:
ln -s /bin/echo /var/lib/asterisk/agi-bin/echo
根据您的拨号计划,通过拨打
exten => s,n,AGI( echo, SET MUSIC ON)
开始保留音乐
- 做你的动作
- 通过调用
exten => s,n,AGI( echo, SET MUSIC OFF)
停止等待中的音乐
- 转移或做其他事情
这是最简单的方法,无需创建 AGI 页面。