播放来自mysql数据库和星号的语音邮件消息

时间:2018-06-28 06:42:34

标签: asterisk

我正在尝试在带星号的电话上播放消息。到那时一切都很好。

因此,我可以为扩展名留下一条消息,以使用另一个扩展名连接到语音邮件,但是当我从voicemessages表中选择录音时,我没有得到实际的录音,但有录音的数量..

我在func_odbc.conf中的功能是

[NEWMESSAGES]
dsn=asterisk
readsql=SELECT count(mailboxuser) FROM voicemessages WHERE mailboxuser='${SQL_ESC(${ARG1})}'

[GETMESSAGES]
dsn=asterisk
readsql=SELECT recording FROM voicemessages WHERE mailboxuser='${SQL_ESC(${ARG1})}'

我的拨号方案是

if(${ODBC_NEWMESSAGES(${CALLERID(num)})} != 0) {
    Playback(${ODBC_GETMESSAGES(${CALLERID(num)})});
}

首先,我检查是否有新消息,是否尝试播放它们。

我在日志中收到的是:

  

[Jun 28 09:25:35] DEBUG [29406] [C-000001bb] pbx_variables.c:函数ODBC_NEWMESSAGES(5005)结果为'2'

表示有2条新消息,然后

  

[Jun 28 09:25:35] DEBUG [29406] [C-000001bb] pbx_variables.c:函数ODBC_GETMESSAGES(5005)结果为'2'

     

[6月28日09:25:35]调试[29406] [C-000001bb] pbx.c:启动“播放”

     

[Jun 28 09:25:35] DEBUG [29406] [C-000001bb] media_cache.c:无法在“ 2”获取媒体

     

[Jun 28 09:25:35] DEBUG [29406] [C-000001bb] channel.c:Channel SIP / 5005-00000158设置写入格式路径:slin-> alaw

与其播放表中recording列中的消息,不如播放NEWMESSAGES函数中的消息总数。

此外,我该如何在消息上循环播放,并一一播放?

0 个答案:

没有答案