留守電が登録された後に内線呼び出し

134 views
Skip to first unread message

Akihiro Seki

unread,
Jul 1, 2016, 10:57:48 PM7/1/16
to 日本Asteriskユーザ会
皆様こんにちは。
お世話になっております。関です。

留守電が登録された際にメール通知をしております。
しかし、メールをあんまり見ない現場なので、留守電が登録されたのに気付くのが遅いと言われています。

解決策の一つとして、留守電が登録された後に、内線発信して「留守電が登録されました」というメッセージを再生できればと考えております。
extension.confのVoicemailコマンドの後に、Dialをおいてみたのですが、留守電録音終了でexitしてしまい、発信されませんでした。
Voicemailコマンドの中で、exitしてしまうので、次の処理が実行されないのでしょうか?


<extension.conf>

exten => ${INBOUNDNO4},1,Verbose(CID = ${CALLERID(num)})
exten => ${INBOUNDNO4},n,Set(CALLFILENAME=${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-IN-${EXTEN:7})
exten => ${INBOUNDNO4},n,Monitor(wav,${CALLFILENAME},m)
exten => ${INBOUNDNO4},n,GotoIf($["${USEVOICEMAIL}"="YES"]?use-vm)
exten => ${INBOUNDNO4},n,Dial(${NAISENLIST},,tT)
exten => ${INBOUNDNO4},n,Hangup
exten => ${INBOUNDNO4},n(use-vm),Dial(${NAISENLIST},30,tT)
exten => ${INBOUNDNO4},n,NoOp(${DIALSTATUS})
exten => ${INBOUNDNO4},n,GotoIf($["${DIALSTATUS}"="BUSY"]?vm-rec)
exten => ${INBOUNDNO4},n,GotoIf($["${DIALSTATUS}"="NOANSWER"]?vm-rec)
exten => ${INBOUNDNO4},n,GotoIf($["${DIALSTATUS}"="CHANUNAVAIL"]?vm-rec)
exten => ${INBOUNDNO4},n,Hangup
exten => ${INBOUNDNO4},n(vm-rec),Answer()
exten => ${INBOUNDNO4},n,Wait(1)
exten => ${INBOUNDNO4},n,Voicemail(201)
exten => ${INBOUNDNO4},n,Dial(${NAISENLIST},,tT)
exten => ${INBOUNDNO4},n,Hangup

<ログ>
    -- Called SIP/212
    -- SIP/212-00000003 is ringing
    -- Nobody picked up in 30000 ms
    -- Executing [04xxxxxxxxx@default:8] NoOp("SIP/hikaridenwa-00000002", "NOANSWER") in new stack
    -- Executing [04xxxxxxxxx@default:9] GotoIf("SIP/hikaridenwa-00000002", "0?vm-rec") in new stack
    -- Executing [04xxxxxxxxx@default:10] GotoIf("SIP/hikaridenwa-00000002", "1?vm-rec") in new stack
    -- Goto (default,04xxxxxxxxx,13)
    -- Executing [04xxxxxxxxx@default:13] Answer("SIP/hikaridenwa-00000002", "") in new stack
       > 0x198e7f0 -- Probation passed - setting RTP source address to 192.168.1.254:10738
    -- Executing [04xxxxxxxxx@default:14] Wait("SIP/hikaridenwa-00000002", "1") in new stack
    -- Executing [04xxxxxxxxx@default:15] VoiceMail("SIP/hikaridenwa-00000002", "201") in new stack
    -- <SIP/hikaridenwa-00000002> Playing 'vm-intro.gsm' (language 'ja')
    -- <SIP/hikaridenwa-00000002> Playing 'beep.gsm' (language 'ja')
    -- Recording the message
    -- x=0, open writing:  /var/spool/asterisk/voicemail/default/201/tmp/AeyrHW format: wav49, 0x7fa3d002c9c8
    -- x=1, open writing:  /var/spool/asterisk/voicemail/default/201/tmp/AeyrHW format: gsm, 0x7fa3d002d208
    -- x=2, open writing:  /var/spool/asterisk/voicemail/default/201/tmp/AeyrHW format: wav, 0x7fa3d002dc98
    -- User hung up
  == Parsing '/var/spool/asterisk/voicemail/default/201/INBOX/msg0027.txt': Found
  == Parsing '/var/spool/asterisk/voicemail/default/201/INBOX/msg0027.txt': Found
  == Spawn extension (default, 04xxxxxxxxx, 15) exited non-zero on 'SIP/hikaridenwa-00000002'


<環境>

CentOS release 6.3

Asterisk 11.13.0


高橋隆雄

unread,
Jul 3, 2016, 7:50:04 PM7/3/16
to 日本Asteriskユーザ会
各種コマンド類等で切断で終わるやつの後にextenを実行することはできないです。
例外的には'h'で実行することができるものもありますが、これはあまりよろしくない
場合もあるので取り扱い注意になります。

で、このような場合で切断後に処理を走らせたい場合にはAsterisk 11以降で、Hangup
Handlerというのを使います。

https://wiki.asterisk.org/wiki/display/AST/Hangup+Handlers



2016年7月2日 11:57 Akihiro Seki <akihir...@gmail.com>:
> --
> このメールは Google グループのグループ「日本Asteriskユーザ会」に登録しているユーザーに送られています。
> このグループから退会し、グループからのメールの配信を停止するには asterisk-ug...@googlegroups.com
> にメールを送信してください。
> このグループに投稿するには aster...@googlegroups.com にメールを送信してください。
> https://groups.google.com/group/asterisk-ug からこのグループにアクセスしてください。
> このディスカッションをウェブ上で閲覧するには
> https://groups.google.com/d/msgid/asterisk-ug/f360d865-3cc2-4c78-a6d0-3e74d6e12cce%40googlegroups.com
> にアクセスしてください。
> その他のオプションについては https://groups.google.com/d/optout にアクセスしてください。



--
Takao Takahashi
Reply all
Reply to author
Forward
0 new messages