I am beginning to understand that monitoring the DND status of an extension on a BLF key is not an easy task. I have a Freepbx system with Asterisk 1.8 and I want to be able to press a button on the Aastra phone (or any phone that I want to use), enable the DND (or some semblance thereof) and light the light to show that the phone is in “Don’t bother me” mode. I have seen many references to using XML with the Aastra phones but quite frankly I don’t get it. IF this is truly the only way to do something like this can anyone point me to a DIY article that provides the info I need on both the server side and the phone side? Using the XML route is specific to the individual brand of phone isn’t it?
David you are right I am working with this on a Freepbx system. I have posed this issue over there and it appears that the dial plan indicates that the DND status should change the status of the phone from idle to busy but it doesn’t. Here some of the log.
[2013-09-09 09:21:56] VERBOSE[1374] pbx.c: – Executing [*76@from-internal:9] Playback(“SIP/110-0000000c”, “do-not-disturb&activated”) in new stack
[2013-09-09 09:21:56] VERBOSE[1374] file.c: – Playing ‘do-not-disturb.ulaw’ (language ‘en’)
[2013-09-09 09:21:58] VERBOSE[1374] file.c: – Playing ‘activated.ulaw’ (language ‘en’)
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Executing [*76@from-internal:10] Macro(“SIP/110-0000000c”, “hangupcall,”) in new stack
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Executing [s@macro-hangupcall:1] GotoIf(“SIP/110-0000000c”, “1?theend”) in new stack
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Goto (macro-hangupcall,s,3)
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Executing [s@macro-hangupcall:3] ExecIf(“SIP/110-0000000c”, “0?Set(CDR(recordingfile)=)”) in new stack
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Executing [s@macro-hangupcall:4] Hangup(“SIP/110-0000000c”, “”) in new stack
[2013-09-09 09:21:59] VERBOSE[1374] app_macro.c: == Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘SIP/110-0000000c’ in macro ‘hangupcall’
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: == Spawn extension (from-internal, *76, 10) exited non-zero on ‘SIP/110-0000000c’
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: – Executing [h@from-internal:1] Hangup(“SIP/110-0000000c”, “”) in new stack
[2013-09-09 09:21:59] VERBOSE[1374] pbx.c: == Spawn extension (from-internal, h, 1) exited non-zero on ‘SIP/110-0000000c’
[2013-09-09 09:21:59] VERBOSE[1492] chan_sip.c: == Extension Changed 110[ext-local] new state Idle for Notify User 123
According to the DialPlan it says to change the state to busy. But it doesn’t. What would keep the state from changing.
Questions about the FreePBX dialplan should be addressed to the FreePBX people. As you haven’t provided either dialplan or trace showing anything being set busy, this can’t be debugged in terms of the underlying Asterisk implementation.