asteriskでDTMFを取り出す
http://bbs.voip-info.jp/forum/viewtopic.php?showtopic=4000
を参考
を参考
ログとして記録して、後から必要な所だけ取り出す方法、、をやってみる。
まず、
/etc/asterisk/logger.conf
のログの吐き出す項目設定に、以下の様に[dtmf]を追加します。。。と。
/etc/asterisk/logger.conf
のログの吐き出す項目設定に、以下の様に[dtmf]を追加します。。。と。
full => notice,warning,error,verbose,dtmf
↑出力先
↑出力先
その後、
asteriskをreload、もしくはrestartして頂き、変更した設定を読み込みます。。。と。
asteriskをreload、もしくはrestartして頂き、変更した設定を読み込みます。。。と。
すると、上記の場合[full]と言うログファイルに、[dtmf]の記録を吐き出す事になりますので、
/var/log/asterisk/full
のファイルに、
例)
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end ‘0’ received on DAHDI/1-1, duration 0 ms
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end accepted without begin ‘0’ on DAHDI/1-1
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end passthrough ‘0’ on DAHDI/1-1
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end ‘0’ received on DAHDI/1-1, duration 0 ms
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end accepted without begin ‘0’ on DAHDI/1-1
[Oct 26 21:37:02] DTMF[13821] channel.c: DTMF end passthrough ‘0’ on DAHDI/1-1
この様な形で、検出されたDTMFの結果が、記録されます。
されない・・・・
で、
http://wiki.kolmisoft.com/index.php/DTMF_problems
をチェック。
DTMF digits are skipped
In /etc/asterisk/sip.conf in [general] section set relaxdtmf=yes and rfc2833compensate=yes and reload Asterisk
なので、やってみる。
で、
http://wiki.kolmisoft.com/index.php/DTMF_problems
をチェック。
DTMF digits are skipped
In /etc/asterisk/sip.conf in [general] section set relaxdtmf=yes and rfc2833compensate=yes and reload Asterisk
なので、やってみる。
ダメ・・・・
http://www.asteriskdocs.org/en/3rd_Edition/asterisk-book-html-chunk/Monitoring_id264504.html
を参考に
When you have saved the file, you will need to reload the logger by issuing the following command from the shell:
$ asterisk -rx ‘logger reload’
or from the Asterisk CLI:
*CLI> logger reload
をやったが、、、、
を参考に
When you have saved the file, you will need to reload the logger by issuing the following command from the shell:
$ asterisk -rx ‘logger reload’
or from the Asterisk CLI:
*CLI> logger reload
をやったが、、、、
ダメ・・・・・
CLIで
logger set level DTMF off
をやったがダメ・・・・
logger set level DTMF off
をやったがダメ・・・・
http://asteriskpbx.cocolog-nifty.com/blog/2010/12/dtmf-2df5.html
を参考に、
sip.conf
で
dtmfmode=rfc2833
を明記。
を参考に、
sip.conf
で
dtmfmode=rfc2833
を明記。
ダメ・・・
https://stackoverflow.com/questions/23752680/asterisk-ignores-dtmf-during-all-calls-cannot-use-keypress-features
を参考に
full => verbose,debug,dtmf
としてみる。。
を参考に
full => verbose,debug,dtmf
としてみる。。
できた。。。
なんてことない。
asteriskの対応は12から、、、
RaspnberryPiは11だから・・・・
sakuravpsでやってみると、Asterisk 14.4.0なので
見事ログが取れています!!!!
さあ、これをwebで簡単に見れるようにpythonとphp書いてみるか?
なんてことない。
asteriskの対応は12から、、、
RaspnberryPiは11だから・・・・
sakuravpsでやってみると、Asterisk 14.4.0なので
見事ログが取れています!!!!
さあ、これをwebで簡単に見れるようにpythonとphp書いてみるか?
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF end ‘5’ received on SIP/5001-00000009, duration 250 ms
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin emulation of ‘5’ with duration 250 queued on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin ‘5’ received on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin ignored ‘5’ on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF end ‘5’ received on SIP/5001-00000009, duration 100 ms
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end emulation of ‘5’ queued on SIP/5001-00000009
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end ‘5’ received on SIP/5001-00000009, duration 100 ms
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF begin emulation of ‘5’ with duration 100 queued on SIP/5001-00000009
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end emulation of ‘5’ queued on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin emulation of ‘5’ with duration 250 queued on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin ‘5’ received on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF begin ignored ‘5’ on SIP/5001-00000009
[Jun 18 19:43:17] DTMF[28817][C-0000000f] channel.c: DTMF end ‘5’ received on SIP/5001-00000009, duration 100 ms
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end emulation of ‘5’ queued on SIP/5001-00000009
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end ‘5’ received on SIP/5001-00000009, duration 100 ms
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF begin emulation of ‘5’ with duration 100 queued on SIP/5001-00000009
[Jun 18 19:43:18] DTMF[28817][C-0000000f] channel.c: DTMF end emulation of ‘5’ queued on SIP/5001-00000009
で1番号の表示セットのようだ!!!
以上