Access codes to features

Hi. i am running asterisk 11 and i would like to have features access codes in my system such as call waiting(all types) (enable/disable), call forward (enable/disable) and DND. my dialplan is pretty simple and it is the following

exten => _XXXXXXXXXX,1,Dial(SIP/VoipGate/${EXTEN},120,Tt)
exten => _XXXXXXXXXX,1,Busy()

exten => _4XX,2,Answer()
exten => _4XX,3,VoiceMail(${EXTEN}@Office,su)
exten => _4XX,4,HangUp()
exten => _4XX,102,Answer()
exten => _4XX,103,VoiceMail(${EXTEN}@Office,sb)
exten => _4XX,104,HangUp()

i would like to enable/disable call waiting by typing eg. *70/*71
DND for the extension *72 enable, *73 to disable.

Regarding call waiting, at the moment it is disabled (default value). Now if an extension is busy, a busy message is send back to the caller. I would like have the following behavior:
-in the event were the extension is busy, then send a message indication to the extension and the caller to hear from the SIP provider the default early media for call waiting due to busy. Then after some period of time eg 30 secs send busy.
-in the event where the extension is busy, send the early media to the caller and waiting indication to the extension. If the extension decides to get the call then get the 2nd call and send the 1st to hear moh.

My phones are mainly softphones (zoiper), a few IP phones and 2 SPA3000 for analog devices.

could someone help me please with this task, please?

Define extensions that manipulate a global variable that is accessed by normal extensions.

1 Like

Hi david551, thanks a lot for the quick reply. i am afraid i am lost with that. I am not very experienced with that, so i might need to copy it from somewhere. Do you have any links, please?