From f8247040e6231c4b3b5099ea3a526348b7941566 Mon Sep 17 00:00:00 2001 From: russell Date: Sat, 19 Jan 2008 00:19:29 +0000 Subject: Creating tag for the release of asterisk-1.6.0-beta1 git-svn-id: http://svn.digium.com/svn/asterisk/tags/1.6.0-beta1@99163 f38db490-d61c-443f-a65b-d21fe96a405b --- trunk/pbx/ael/ael-test/ael-test3/extensions.ael | 3184 +++++++++++++++++++++++ 1 file changed, 3184 insertions(+) create mode 100755 trunk/pbx/ael/ael-test/ael-test3/extensions.ael (limited to 'trunk/pbx/ael/ael-test/ael-test3/extensions.ael') diff --git a/trunk/pbx/ael/ael-test/ael-test3/extensions.ael b/trunk/pbx/ael/ael-test/ael-test3/extensions.ael new file mode 100755 index 000000000..ff1f6aea5 --- /dev/null +++ b/trunk/pbx/ael/ael-test/ael-test3/extensions.ael @@ -0,0 +1,3184 @@ +globals +{ + static=yes; + writeprotect=yes; + CONSOLE=Console/dsp; // Console interface for demo + IAXINFO=murf:tlhfckoct; // IAXtel username/password + FWDNUMBER=544788 ; // your calling number + FWDCIDNAME="Joe-Worker"; // your caller id + FWDPASSWORD=zingledoodle ; // your password + FWDRINGS=Zap/6 ; // the phone to ring + FWDVMBOX=1 ; // the VM box for this user +} + +macro std-exten( ext , dev ) +{ + Dial(${dev}/${ext},20); + goto privacyManagerFailed|s|begin; + switch(${DIALSTATUS}) + { + case BUSY: + Voicemail(b${ext}); + break; + case NOANSWER: + Voicemail(u${ext}); + break; + case ANSWER: + break; + default: + Voicemail(u${ext}); + } + catch a { + VoiceMailMain(${ext}); + } +} + +macro std-priv-exten_1( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_2( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_3( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_4( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_5( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_6( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_7( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_8( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_9( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_10( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_11( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_12( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_13( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_14( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_15( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_16( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_17( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_18( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_19( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_20( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_21( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_22( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_23( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_24( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_25( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_26( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_27( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_28( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_29( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_30( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_31( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_32( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_33( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_34( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_35( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_36( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_37( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_38( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_39( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_40( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_41( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_42( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_43( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_44( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_45( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_46( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_47( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_48( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_49( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_50( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_51( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_52( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_53( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_54( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_55( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_56( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_57( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_58( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_59( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_60( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_61( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_62( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_63( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_64( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_65( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_66( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_67( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_68( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_69( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_70( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_71( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_72( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten_73( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + + +macro std-priv-exten( dev, ext , timeout, opts, torcont, dontcont ) +{ + Dial(${dev},${timeout},${opts}); + NoOp(${DIALSTATUS} was chosen); + switch(${DIALSTATUS}) + { + case TORTURE: + goto ${torcont}|s|begin; + break; + case DONTCALL: + goto ${dontcont}|s|begin; + break; + case BUSY: + Voicemail(b${ext}); + break; + case ANSWER: + break; + case NOANSWER: + Voicemail(u${ext}); + break; + default: + Voicemail(u${ext}); + } +} + +macro fillcidname() +{ + if( "${CALLERID(num)}" = "" ) // nothing to work with, quit!!! + return; + Set(cidn=${DB(cidname/${CALLERID(num)})}); + if( "${CALLERID(name)}" != "" ) + { + if( ("${cidn}" = "Privacy Manager" & "${CALLERID(name)}" != "Privacy Manager") | "${cidn}" = "" ) // if the entry isn't in the database, + // or if an entry exists, and it's "Privacy Manager", empty, (or add other useless possibilities). + { + Set(DB(cidname/${CALLERID(num)})=${CALLERID(name)}); // then set or override what's in the DB + } + } + // Now, we fill in the callerid info from the incoming entry, if it's stuff worth using + // Ignore fundamentally semi-anonymous information from local cell phones + // if the db has an entry for this number, and it's not a canned string from a cell phone company + if( ( "${cidn}" != "" ) & ( "${CALLERID(name)}" = "" + | "${CALLERID(name)}" = "CODY,WY " + | "${CALLERID(name)}" = "POWELL,WY " + | "${CALLERID(name)}" = "WIRELESS CALLER" + | "${CALLERID(name)}" = "SUBSCRIBER,WIRE" + | "${CALLERID(name)}" = "CELLULAR ONE" + | "${CALLERID(name)}" = "Cellular One Customer" + | "${CALLERID(name)}" = "CELLULAR ONE " + | "${CALLERID(name)}" = "Privacy Manager" + | "${CALLERID(name)}" = "RIVERTON,WY " + | "${CALLERID(name)}" = "BASIN,WY " + | "${CALLERID(name)}" = "BILLINGS,MT " + | "${CALLERID(name)}" = "PROVO,UT " + | "${CALLERID(name)}" = "TOLL FREE " ) ) // put stuff in the above, that the phone company tends to put in your callerid, + // that you would rather override with DB info + // there's no way to guess them all, but you can get the most popular ones... + // why cell phones can't do CID like everybody else, ....? + { + Set(CALLERID(name)=${cidn}); // Override what the phone company provides with what's in the DB for this number. + } +} + +macro ciddial(dialnum, lookup, waittime, dialopts, ddev) +{ + Set(cidnu=${CALLERID(num)}); + Set(cidn=${DB(cidname/${lookup})}); + Set(CALLERID(name)=${cidn}); + Dial(${ddev}/${dialnum}|${waittime}|${dialopts}); + if( "${DIALSTATUS}" = "CHANUNAVAIL" ) + { + BackGround(try_voip); + CALLERID(num)=7075679201; + Dial(SIP/1${lookup}@tctwest,${waittime},${dialopts}); + if( "${DIALSTATUS}" = "CHANUNAVAIL" ) + { + BackGround(try_cell); + CALLERID(num)=${cidnu}; // put the original number back + Dial(Zap/2/${lookup},${waittime},${dialopts}); + } + } +} + +macro ciddial3(dialnum, lookup, waittime, dialopts, ddev) +{ + Set(cidnu=${CALLERID(num)}); + Set(cidn=${DB(cidname/${lookup})}); + Set(CALLERID(name)=${cidn}); + Dial(${ddev}/${dialnum}|${waittime}|${dialopts}); + if( "${DIALSTATUS}" = "CHANUNAVAIL" ) + { + BackGround(try_cell); + Dial(Zap/2/${lookup},${waittime},${dialopts}); + } +} + +macro ciddial2(dialnum, lookup, waittime, dialopts, ddev) // give priority to tctwest, then the ZAP in emergencies +{ + Set(cidn=${DB(cidname/${lookup})}); + Set(cidnu=${CALLERID(num)}); + Set(CALLERID(name)=${cidn}); + Set(CALLERID(num)=7075679201); + Dial(SIP/1${lookup}@tctwest,${waittime},${dialopts}); + if( "${DIALSTATUS}" = "CHANUNAVAIL" ) + { + Set(CALLERID(num)=${cidnu}); // put the original number back + BackGround(try_zap); + Dial(${ddev}/${dialnum},${waittime}|${dialopts}); + if( "${DIALSTATUS}" = "CHANUNAVAIL" ) + { + BackGround(try_cell); + Dial(Zap/2/${lookup},${waittime},${dialopts}); + } + } +} + +macro callerid-liar() +{ + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/priv-callerintros/LIAR.gsm&); + Background(priv-liar); // Script: OOOps! Sorry! I don't allow men with ski masks pulled over their + // faces to get in the front door, and unidentified callers won't fair + // any better. You entered *MY* phone number. That won't work. + // If you are telemarketing, cross me off the list, and don't call again. + // If you did this by mistake, forgive my defenses, and call again. + // Alternate: (priv-liar2) + // Script: You have chosen to try to deceive my system and withold your CallerID, + // by entering my own phone number as YOUR CallerID. I find this + // offensive because you are being dishonest. I will not do business nor + // waste my time talking to anyone who is less than honest and forthcoming. + // Take me off your call list and do not call me again. + Hangup(); +} + +macro callerid-bad() +{ + mycid=${CALLERID(num)}:"1([0-9]+)"; + Set(CALLERID(num)=${mycid}); + Wait(0); +} + +context privacyManagerFailed { + s => { + begin: + Background(PrivManInstructions); // Script: OOps, that didn't go well. You need to enter *your* area code, and *your* 7 digit + // phone number, for a total of 10 digits, or you'll be handed over to the monkeys. Let's + // try this again, and hopefully you can get past our front-line defenses! + PrivacyManager(); + if( "${PRIVACYMGRSTATUS}" = "FAILED" ) + { + Background(tt-allbusy); + Background(tt-somethingwrong); + Background(tt-monkeysintro); + Background(tt-monkeys); + Background(tt-weasels); + Hangup(); + } + else + { + goto homeline|s|postPriv; + } + } +} + +// Some comments +// Some more comments + +context homeline { + s => { + begin: + Answer(); + Set(repeatcount=0); + Zapateller(nocallerid); + PrivacyManager(); + if( "${PRIVACYMGRSTATUS}" = "FAILED" ) + { + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/privmanfailed.gsm); + &std-priv-exten(Zap/3r1&Zap/5r1,2,25,mtw,telemarket,telemarket); + Hangup(); + return; +// goto privacyManagerFailed|s|begin; + } + postPriv: + &fillcidname(); + Set(CONFCIDNA=${CALLERID(name)}); + Set(CONFCIDNU=${CALLERID(num)}); + AGI(callall); + AGI(submit-announce.agi); + if( "${CALLERID(num)}" : "1" ) + { + &callerid-bad(); + } + if( "${CALLERID(num)}" = "7077577685" & "${CALLERID(name)}" : "Privacy Manager" ) + { + &callerid-liar(); + } + TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&); + Set(lds=${DB(playlds/${CALLERID(num)})}); + if( "${lds}" = "1" ) + { + SetMusicOnHold(mohlds); + } + direct=${DB(DirectCall/${CALLERID(num)})}; + if( "${direct}" != "" & ${direct} != 0 ) + { + verbose(direct is XXX#${direct}XXXX); + Playback(greetings/direct); // Welcome to the Murphy residence. This system will automatically try to connect you to... + Playback(/var/spool/asterisk/voicemail/default/${direct}/greet); + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/${direct}/greet.wav&); + switch(${direct}) + { + case 1: //Steve + &std-priv-exten(Zap/6r3&Sip/murf,1,25,mpA(beep)tw,telemarket,telemarket); + goto s|loopback; + case 2: //Sonya + &std-priv-exten(Zap/3r1&Zap/5r1,2,25,mtw,telemarket,telemarket); + goto s|loopback; + default: // all the kids + Set(z=${direct}-2); + goto homeline-kids|${z}|1; + } + } + loopback: + ifTime(*|*|20-25|dec) + { + Playback(greetings/christmas); + } + else ifTime(*|*|31|dec) + { + Playback(greetings/newyear); + } + else ifTime(*|*|1|jan) + { + Playback(greetings/newyear); + } + else ifTime(*|*|14|feb) + { + Playback(greetings/valentines); + } + else ifTime(*|*|17|mar) + { + Playback(greetings/stPat); + } + else ifTime(*|*|31|oct) + { + Playback(greetings/halloween); + } + else ifTime(*|mon|15-21|jan) + { + Playback(greetings/mlkDay); + } + else ifTime(*|thu|22-28|nov) + { + Playback(greetings/thanksgiving); + } + else ifTime(*|mon|25-31|may) + { + Playback(greetings/memorial); + } + else ifTime(*|mon|1-7|sep) + { + Playback(greetings/labor); + } + else ifTime(*|mon|15-21|feb) + { + Playback(greetings/president); + } + else ifTime(*|sun|8-14|may) + { + Playback(greetings/mothers); + } + else ifTime(*|sun|15-21|jun) + { + Playback(greetings/fathers); + } + else + { + Playback(greetings/hello); // None of the above? Just a plain hello will do + } + Background(murphy-homeline-intro1); // Script: Hello-- Welcome to the Murphy's! If you already know what + // option you want, you don't have to wait for this entire spiel-- just + // have at it. + // If you are calling because this number is on a list of some sort, dial 6. + // If you want Sonya, dial 1. + // If you want one of the kids, dial 2. + // If you want Steve, dial 3. + // to play with your introduction, dial 5. + // If we don't seem to be giving you the time of day, try 7. + // Have a good day! + + } + 1 => { // Sonya + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/2/greet.wav&); + &std-priv-exten(Zap/3r1&Zap/5r1,2,25,mtw,telemarket,telemarket); + goto s|loopback; + } + 2 => { // Kids + goto homeline-kids|s|begin; + } + 21 => { + Dial(IAX2/seaniax,20,T); + } + 3 => { // Steve + &std-priv-exten(Zap/6r3&Sip/murf,1,25,mpA(beep)tw,telemarket,telemarket); + goto s|loopback; + } + 4 => { // Voicemail + VoicemailMain(); + goto s|loopback; + } + 5 => { // play with intro + goto home-introduction|s|begin; + } + 6 => { // Telemarketers + goto telemarket|s|begin; + } + 7 => { // time of day, riddle + agi(tts-riddle.agi); + Background(gsm/what-time-it-is2); + SayUnixTime(); + goto s|loopback; + } + 792 => { // Page All + goto pageall|s|begin; + } + 793 => { // check the tone recognition + Read(zz,,0,,1,0); + SayDigits(${zz}); + } + t => { + Set(repeatcount=${repeatcount} + 1); + if( ${repeatcount} < 3 ) + { + goto s|loopback; // just loopback isn't enough + } + Hangup(); + } + i => { + Background(invalid); + goto s|loopback; + } + o => { + Congestion(); + } + fax => { + Dial(Zap/4); + } +} + +// Some comments +// Some more comments + +context pageall { + s => { + begin: + AGI(callall); + MeetMe(5555,dtqp); + MeetMeAdmin(5555,K); + Hangup(); + } + + h => { + begin: + MeetMeAdmin(5555,K); + Background(conf-muted); + Hangup(); + } +} + +// Some comments +// Some more comments + +context add-to-conference { + start => { + NoCDR(); + MeetMe(5555,dmqp); + } + h => { + Hangup(); + } +} + +context home-introduction { + s => { + begin: + Background(intro-options); // Script: To hear your Introduction, dial 1. + // to record a new introduction, dial 2. + // to return to the main menu, dial 3. + // to hear what this is all about, dial 4. + } + 1 => { + Playback(priv-callerintros/${CALLERID(num)}); + goto s|begin; + } + 2 => { + goto home-introduction-record|s|begin; + } + 3 => { + goto homeline|s|loopback; + } + 4 => { + Playback(intro-intro); // Script: + // This may seem a little strange, but it really is a neat + // thing, both for you and for us. I've taped a short introduction + // for many of the folks who normally call us. Using the Caller ID + // from each incoming call, the system plays the introduction + // for that phone number over a speaker, just as the call comes in. + // This helps the folks + // here in the house more quickly determine who is calling. + // and gets the right ones to gravitate to the phone. + // You can listen to, and record a new intro for your phone number + // using this menu. + goto s|begin; + } + t => { + goto s|begin; + } + i => { + Background(invalid); + goto s|begin; + } + o => { + goto s|begin; + } +} + +context home-introduction-record { + s => { + begin: + Background(intro-record-choices); // Script: + // If you want some advice about recording your + // introduction, dial 1. + // otherwise, dial 2, and introduce yourself after + // the beep. + } + 1 => { + Playback(intro-record); + // Your introduction should be short and sweet and crisp. + // Your introduction will be limited to 10 seconds. + // This is NOT meant to be a voice mail message, so + // please, don't say anything about why you are calling. + // After we are done making the recording, your introduction + // will be saved for playback. + // If you are the only person that would call from this number, + // please state your name. Otherwise, state your business + // or residence name instead. For instance, if you are + // friend of the family, say, Olie McPherson, and both + // you and your kids might call here a lot, you might + // say: "This is the distinguished Olie McPherson Residence!" + // If you are the only person calling, you might say this: + // "This is the illustrious Kermit McFrog! Pick up the Phone, someone!!" + // If you are calling from a business, you might pronounce a more sedate introduction,like, + // "Fritz from McDonalds calling.", or perhaps the more original introduction: + // "John, from the Park County Morgue. You stab 'em, we slab 'em!". + // Just one caution: the kids will hear what you record every time + // you call. So watch your language! + // I will begin recording after the tone. + // When you are done, hit the # key. Gather your thoughts and get + // ready. Remember, the # key will end the recording, and play back + // your intro. Good Luck, and Thank you!" + goto 2|begin; + } + 2 => { + begin: + Background(intro-start); + // OK, here we go! After the beep, please give your introduction. + Background(beep); + Record(priv-callerintros/${CALLERID(num)}:gsm,3); + Background(priv-callerintros/${CALLERID(num)}); + goto home-introduction|s|begin; + } + t => { + goto s|begin; + } + i => { + Background(invalid); + goto s|begin; + } + o => { + goto s|begin; + } +} + +context homeline-kids { + s => { + begin: + Background(murphy-homeline-kids); // Which Kid? 1=Sean, 2:Eric, 3:Ryan, 4:Kyle, 5:Amber, 6:Alex, 7:Neal + } + 1 => { // SEAN + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/3/greet.wav&); + // &std-priv-exten(Zap/3r2&Zap/5r2,3,35,mtw,telemarket,telemarket); + &std-priv-exten(IAX2/seaniax&Zap/5r2,3,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + } + 2 => { // ERIC + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/4/greet.wav&); + Voicemail(u4); + goto homeline|s|loopback; + + // SetMusicOnHold(erics); + // TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + // TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/4/greet.wav&); + // &std-priv-exten(Zap/3r2&Zap/5r2,4,35,mtw,telemarket,telemarket); + // goto homeline|s|loopback; + } + 3 => { // RYAN + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/5/greet.wav&); + &std-priv-exten(Zap/3r2&Zap/5r2,5,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + } + 4 => { // KYLE + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/6/greet.wav&); + &std-priv-exten(Zap/3r2&Zap/5r2,6,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + } + 5 => { + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/7/greet.wav&); + &std-priv-exten(Zap/3r2&Zap/5r2,7,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + + } + 6 => { + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/8/greet.wav&); + &std-priv-exten(Zap/3r2&Zap/5r2,8,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + } + 7 => { + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/9/greet.wav&); + &std-priv-exten(Zap/3r2&Zap/5r2,9,35,mtw,telemarket,telemarket); + goto homeline|s|loopback; + } + t => { + goto s|begin; + } + i => { + Background(invalid); + goto s|begin; + } + o => { + goto s|begin; + } +} + +context voipworkline { + s => { + begin: + Answer(); + TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&); + goto workline|s|loopback; + } + 7075679201 => { + Answer(); + TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&); + goto workline|s|loopback; + } +} + +context workline { + s => { + begin: + Answer(); + Wait(1); + Set(repeatcount=0); + Zapateller(nocallerid); +// PrivacyManager(); +// if( "${PRIVACYMGRSTATUS}" = "FAILED" ) +// { +// goto privacyManagerFailed|s|begin; +// } + &fillcidname(); + TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&); + loopback: + Background(greetings/greeting); //script: Hello + Background(murphy-office-intro1); //script: welcome to Steve Murphy's office. If you are dialing + // this number because it was on a calling list of any sort, dial 6. + // Otherwise, dial 1, and hopefully, you will reach Steve. + } + 1 => { + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm); + TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/1/greet.wav&); + + &std-priv-exten(Zap/6&Sip/murf,1,30,mtw,telemarket,telemarket); + goto s|loopback; + } + 4 => { + VoicemailMain(); + goto s|loopback; + } + 6 => { + goto telemarket|s|begin; + } + 793 => { // check the tone recognition + Read(zz,,0,,1,0); + SayDigits(${zz}); + } + t => { + repeatcount=${repeatcount} + 1; + if( ${repeatcount} < 3 ) + { + goto s|loopback; // just loopback isn't enough + } + Hangup(); + } + i => { + Background(invalid); + goto s|loopback; + } + o => { + Congestion(); + } + fax => { + Answer(); + Dial(Zap/4); + } +} + +context dialFWD { + ignorepat => 8; + ignorepat => 9; + _83. => { + Set(CALLERID(name)=${FWDCIDNAME}); + Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2},60,r); + Congestion(); + } + _82NXX => { + Set(CALLERID(name)=${FWDCIDNAME}); + Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2},60,r); + Congestion(); + } + _92NXX => { + Set(CALLERID(name)=${FWDCIDNAME}); + Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2},60,r); + Congestion(); + } +} + +context dialiaxtel { + ignorepat => 8; + ignorepat => 9; + _81700NXXXXXX => { + Dial(IAX2/zorch:zilchnoodle@iaxtel.com/${EXTEN:1}@iaxtel); + } + _81800NXXXXXX => { + Dial(IAX2/zorch:zilchnoodle@iaxtel.com/${EXTEN:1}@iaxtel); + } + _91700NXXXXXX => { + Dial(IAX2/zorch:zilchnoodle@iaxtel.com/${EXTEN:1}@iaxtel); + } + _91800NXXXXXX => { + Dial(IAX2/zorch:zilchnoodle@iaxtel.com/${EXTEN:1}@iaxtel); + } + +} + +context dialgoiax { + ignorepat => 9; + _93. => { + Set(CALLERID(name)="Joe Worker"); + Dial(IAX2/878201007658:stickyfinger295@server1.goiax.com/${EXTEN:2},60,r); + Congestion(); + } + +} + +context homefirst { + ignorepat => 9; + _91NXXNXXXXXX => { + &ciddial(${EXTEN:1},${EXTEN:2},30,TW,Zap/1); + } + _9754XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9574XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9202XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9219XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9254XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9716XXXX => { + &ciddial(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9NXXXXXX => { + &ciddial(1707${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9011. => { + &ciddial(${EXTEN:1},${EXTEN:1},30,TW,Zap/1); + } + _9911 => { + Dial(Zap/1/911,30,T); + } + _9411 => { + Dial(Zap/1/411,30,T); + } +} + +context workfirst { + ignorepat => 9; + _91NXXNXXXXXX => { + &ciddial2(${EXTEN:1},${EXTEN:2},30,TW,Zap/1); + } + _9754XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9574XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9202XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9219XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9254XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9716XXXX => { + &ciddial2(${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9NXXXXXX => { + &ciddial2(1707${EXTEN:1},707${EXTEN:1},30,TW,Zap/1); + } + _9911 => { + Dial(Zap/1/911,30,T); + } + _9411 => { + Dial(Zap/1/411,30,T); + } +} + +context force_cell { + ignorepat => 8; + _81NXXNXXXXXX => { + &ciddial(${EXTEN:1}#,${EXTEN:2},30,TW,Zap/2); + } + _8754XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8574XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8202XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8219XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8254XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8716XXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8NXXXXXX => { + &ciddial(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/2); + } + _8911 => { + Dial(Zap/1/911|30|T); + } + _8411 => { + Dial(Zap/1/411|30|T); + } +} + +context force_home { + ignorepat => 8; + _81NXXNXXXXXX => { + &ciddial3(${EXTEN:1}#,${EXTEN:2},30,TW,Zap/1); + } + _8754XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8574XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8202XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8219XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8254XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8716XXXX => { + &ciddial3(${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8NXXXXXX => { + &ciddial3(1707${EXTEN:1}#,707${EXTEN:1},30,TW,Zap/1); + } + _8911 => { + Dial(Zap/1/911|30|T); + } + _8411 => { + Dial(Zap/1/411|30|T); + } +} + +context homeext { + ignorepat => 8; + ignorepat => 9; + includes { + parkedcalls; + homefirst; + force_cell; + } + s => { + loopback: + Wait(0); + } + 1 => { + &std-priv-exten(Zap/3&Zap/5,2,35,mtw,telemarket,telemarket); + goto s|loopback; + } + 2 => { + &std-priv-exten(Zap/6&Zap/5,1,35,mpA(beep3)Tt,telemarket,telemarket); + goto s|loopback; + } + 4 => { + VoicemailMain(); + } + 5 => { + Record(recording:gsm); + Background(recording); + } + 6 => { + Background(recording); + } + 760 => { + DateTime(); + goto s|loopback; + } + 761 => { + Record(announcement:gsm); + TrySystem(/usr/bin/play /var/lib/asterisk/sounds/announcement.gsm&); + goto s|loopback; + } + 762 => { + agi(tts-riddle.agi); + Background(gsm/what-time-it-is2); + SayUnixTime(); + goto s|loopback; + } + 763 => { + Set(CALLERID(num)=); + Dial(Zap/6r3,35,mptA(beep3)); //results: it should ALWAYS ask for an intro; the intro should not be left behind + Hangup(); + } + 764 => { + Set(CALLERID(num)=); + Dial(Zap/6r3,35,mptnA(beep3)); //results: Don't save the intro; shouldn't anyway if no callerid + Hangup(); + } + 765 => { + Set(CALLERID(num)=); + Dial(Zap/6r3,35,mptNA(beep3)); //results: Don't screen if there's CALLERID; it should screen the call. + Hangup(); + } + 766 => { + Dial(Zap/6r3,35,mptNA(beep3)); //results: Don't screen if there's CALLERID; it should screen the call. + Hangup(); + } + 767 => { + Dial(Zap/6r3,35,mptnA(beep3)); //results: Don't save the intro; the interesting case, because callerID should be present. + Hangup(); + } + 769 => { + Playtones(dial); + Wait(2); + Playtones(busy); + Wait(2); + Playtones(ring); + Wait(2); + Playtones(congestion); + Wait(2); + Playtones(callwaiting); + Wait(2); + Playtones(dialrecall); + Wait(2); + Playtones(record); + Wait(2); + Playtones(info); + Wait(5); + Hangup(); + } + 790 => { + MeetMe(790,p); + } + 792 => { + goto pageall|s|begin; + } + 795 => { + AGI(wakeup.agi);Congestion(); + } + 544716 => { // Incoming call from FWD + TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&); + goto s|loopback; + } + + i => { + Background(invalid); + goto s|loopback; + } + o => { + goto s|loopback; + } + t => { + Congestion(); + } +} + +context fromvmhome { + 1 => { + Dial(Zap/6&Sip/murf|20|Tt); + } + 2 => { + Dial(Zap/3&Zap/5|20|Tt); + } + _707202XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707219XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707254XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707716XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707754XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707574XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _NXXNXXXXXX => { + &ciddial(1${EXTEN},${EXTEN},30,TW,Zap/1); + } + _1NXXNXXXXXX => { // HAND DIALING + &ciddial(${EXTEN},${EXTEN:1},30,TW,Zap/1); + } + _754XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _574XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _NXXXXXX => { + &ciddial(1707${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _911 => { + &ciddial(911,911,30,TW,Zap/1); + } + _411 => { + &ciddial(411,411,30,TW,Zap/1); + } +} + +context fromvmwork { + 1 => { + Dial(Zap/6&Sip/murf|20|Tt); + } + 2 => { + Dial(Zap/3&Zap/5|20|Tt); + } + _707202XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707219XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707254XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707716XXXX => { + &ciddial(1${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707754XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707574XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _NXXNXXXXXX => { + &ciddial(1${EXTEN},${EXTEN},30,TW,Zap/1); + } + _1NXXNXXXXXX => { // HAND DIALING + &ciddial(${EXTEN},${EXTEN:1},30,TW,Zap/1); + } + _754XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _574XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _NXXXXXX => { + &ciddial(1707${EXTEN},707${EXTEN},30,TW,Zap/1); + } + 911 => { + &ciddial(911,911,30,TW,Zap/1); + } + 411 => { + &ciddial(411,411,30,TW,Zap/1); + } +} + +context fromSeanUniden { + includes + { + parkedcalls; + } + 21 => { + Dial(IAX2/seaniax,20,T); + } + _707202XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707219XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707254XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707716XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707754XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _707574XXXX => { + &ciddial(${EXTEN:3},${EXTEN},30,TW,Zap/1); + } + _NXXNXXXXXX => { + &ciddial(1${EXTEN},${EXTEN},30,TW,Zap/1); + } + _1NXXNXXXXXX => { + &ciddial(${EXTEN},${EXTEN:1},30,TW,Zap/1); + } + _754XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _574XXXX => { + &ciddial(${EXTEN},707${EXTEN},30,TW,Zap/1); + } + _NXXXXXX => { + &ciddial(1707${EXTEN},707${EXTEN},30,TW,Zap/1); + } + 911 => { + &ciddial(911,911,30,TW,Zap/1); + } + 411 => { + &ciddial(411,411,30,TW,Zap/1); + } +} + +context workext { + ignorepat => 8; + ignorepat => 9; + includes { + parkedcalls; + workfirst; + force_home; + dialFWD; + dialiaxtel; + dialgoiax; + } + s => { + loopback: + Wait(0); + } + 1 => { + Dial(Zap/3&Zap/5,20,tT); + } + 2 => { + Dial(Zap/5&Zap/6,20,tT); + } + 21 => { + Dial(IAX2/seaniax,20,T); + } + 22 => { + Set(CALLERID(num)=1234567890); + Set(CALLERID(name)=TestCaller); + Dial(Zap/5,20,mP()A(beep)tw); + NoOp(here is dialstatus: ${DIALSTATUS}...); + goto s|loopback; + } + 4 => { + VoicemailMain(); + goto s|loopback; + } + 5 => { + Record(recording:gsm); + Background(recording); + } + 6 => { + ZapBarge(); + } + 760 => { + DateTime(); + goto s|loopback; + } + 761 => { + ZapBarge(); + goto s|loopback; + } + 765 => { + Playback(demo-echotest); + Echo(); + Playback(demo-echodone); + goto s|loopback; + } + 766 => { + Festival(The other thing to watch is neuro-electronics: the ability to interface technology with our neural system: My wife: Sigrid: has had a cochlear implant since 1996. This once profoundly deaf person now uses the phone: recognizes accents: and listens to movies and recorded books.); + goto s|loopback; + } + 767 => { + agi(tts-riddle.agi); + Background(gsm/what-time-it-is2); + SayUnixTime(); + goto s|loopback; + } + 768 => { + agi(tts-computer.agi); + } + 771 => { + eagi(eagi-test); + agi(my-agi-test); + } + 772 => { + agi(wakeup.agi); + } + 775 => { + if( ${EXTEN}=${EXTEN} ) + { + BackGround(digits/1); + } + else + { + BackGround(digits/0); + } + if( ${EXTEN}=${LANGUAGE} ) + { + BackGround(digits/1); + } + else + { + BackGround(digits/0); + } + BackGround(digits/2); + } + 776 => { + Set(TEST=00359889811777); + if( ${TEST}= 00359889811777 ) + { + BackGround(digits/1); + } + else + { + BackGround(digits/0); + } + if( ${TEST}= 00359889811888 ) + { + BackGround(digits/1); + } + else + { + BackGround(digits/0); + } + Hangup(); + } + 790 => { + MeetMe(790,p); + } + 792 => { + goto pageall|s|begin; + } + 793 => { + #include "include1.ael2" + } + 795 => { + AGI(wakeup.agi); + Congestion(); + } + 797 => { + Set(CONFCIDNA=${CALLERID(name)}); + Set(CONFCIDNU=${CALLERID(num)}); + AGI(callall); + AGI(submit-announce.agi); + Hangup(); + } +} + +context wakeup { + 3 => { + Dial(Zap/3|30); + } + 4 => { + Dial(Zap/4|30); + + } + 5 => { + Dial(Zap/5|30); + + } + 6 => { + Dial(Zap/6|30); + + } + 99 => { + Dial(IAX2/murfiaxphone|30); + } + 97 => { + Dial(IAX2/ryaniax|30); + } + 94 => { + Dial(IAX2/seaniax|30); + } +} + +context announce-all { + s => { + begin: + MeetMe(5555,dtqp); + MeetMeAdmin(5555,K); + Hangup(); + } + h => { + MeetMeAdmin(5555,K); + Hangup(); + } +} + +// now include the telemarketer torture scripts! + +#include "telemarket_torture.ael2" + + -- cgit v1.2.3