Merged revisions 79255 via svnmerge from
authorSteve Murphy <murf@digium.com>
Tue, 14 Aug 2007 14:32:21 +0000 (14:32 +0000)
committerSteve Murphy <murf@digium.com>
Tue, 14 Aug 2007 14:32:21 +0000 (14:32 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r79255 | murf | 2007-08-13 11:49:54 -0600 (Mon, 13 Aug 2007) | 1 line

This patch fixes bug 10411. I added a new regression test, some regression test cleanups
........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@79392 65c4cc65-6c06-0410-ace0-fbb531ad65f3

17 files changed:
pbx/ael/ael-test/ael-test5/extensions.ael
pbx/ael/ael-test/ael-test6/extensions.ael
pbx/ael/ael-test/ael-vtest21/extensions.ael [new file with mode: 0644]
pbx/ael/ael-test/ref.ael-ntest10
pbx/ael/ael-test/ref.ael-test1
pbx/ael/ael-test/ref.ael-test11
pbx/ael/ael-test/ref.ael-test14
pbx/ael/ael-test/ref.ael-test19
pbx/ael/ael-test/ref.ael-test2
pbx/ael/ael-test/ref.ael-test3
pbx/ael/ael-test/ref.ael-test4
pbx/ael/ael-test/ref.ael-test6
pbx/ael/ael-test/ref.ael-vtest13
pbx/ael/ael-test/ref.ael-vtest17
pbx/ael/ael-test/ref.ael-vtest21 [new file with mode: 0644]
pbx/pbx_ael.c
utils/ael_main.c

index 00a91fd..e4f703b 100644 (file)
@@ -275,14 +275,14 @@ context test-phinfo {
 
 context long-distance {
        includes {
-               local;
+               local1;
        };
 
        _91XXXXXXXXXX => &dialout(${EXTEN});
        _9011. => &dialout(${EXTEN});
 };
 
-context local {
+context local1 {
        includes {
                default;
        };
@@ -472,7 +472,7 @@ context app-calltrace-perform {
                };
        };
 
-       1 => goto local|${ct_calltrace}|1;
+       1 => goto local1|${ct_calltrace}|1;
 
        i => {
                Playback(vm-goodbye);
index 890c711..13ebf67 100644 (file)
@@ -271,14 +271,14 @@ context test-phinfo {
 
 context long-distance {
        includes {
-               local;
+               local1;
        };
 
        _91XXXXXXXXXX => &dialout(${EXTEN});
        _9011. => &dialout(${EXTEN});
 };
 
-context local {
+context local1 {
        includes {
                default;
        };
@@ -468,7 +468,7 @@ context app-calltrace-perform {
                };
        };
 
-       1 => goto local|${ct_calltrace}|1;
+       1 => goto local1|${ct_calltrace}|1;
 
        i => {
                Playback(vm-goodbye);
diff --git a/pbx/ael/ael-test/ael-vtest21/extensions.ael b/pbx/ael/ael-test/ael-vtest21/extensions.ael
new file mode 100644 (file)
index 0000000..95f2530
--- /dev/null
@@ -0,0 +1,14 @@
+globals {
+        AXLHAFT=wow-to-the-tenth-power;
+        JibberWorthy=zinger3;
+        OFFICE_CODE=503;
+}
+
+context from-enum {
+
+  _${OFFICE_CODE}XXXX => {
+        Answer();
+        goto ${EXTEN:3}|1;
+  }
+}
+
index f03e145..3ecc171 100644 (file)
@@ -5,17 +5,27 @@
 
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:3910 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:3917 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3925 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 1-4: The macro endsess does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 6-9: The macro nullchk does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 11-26: The macro endcall does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 28-44: The macro endcall2 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 46-68: The macro endcall3 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 70-96: The macro endcall4 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 98-131: The macro endcall5 does not end with a return; I will insert one.
-LOG: lev:2 file:pbx_ael.c  line:3928 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1-4: The macro endsess does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 6-9: The macro nullchk does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 11-26: The macro endcall does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 28-44: The macro endcall2 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 36-36: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 46-68: The macro endcall3 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 48-48: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 60-60: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 70-96: The macro endcall4 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 72-72: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 84-84: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 87-87: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 98-131: The macro endcall5 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 106-106: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 119-119: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 122-122: A default case was automatically added to the switch.
+LOG: lev:2 file:pbx_ael.c  line:4110 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
 Executed ast_context_create(conts, name=endsess, registrar=pbx_ael);
 Executed ast_context_create(conts, name=nullchk, registrar=pbx_ael);
 Executed ast_context_create(conts, name=endcall, registrar=pbx_ael);
@@ -25,118 +35,128 @@ Executed ast_context_create(conts, name=endcall4, registrar=pbx_ael);
 Executed ast_context_create(conts, name=endcall5, registrar=pbx_ael);
 Executed ast_add_extension2(context=endsess, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=NoOp, data=hithere, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endsess, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=nullchk, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=nullchk, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=nullchk, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=NoOp, data=${type} is this, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=nullchk, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-1-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-1-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall-1, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall, rep=0, exten=s, priority=4, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=2, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:6, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-1-out|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=5, label=(null), callerid=(null), appl=Goto, data=8, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=6, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=7, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=8, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall-out-1-2, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=9, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=10, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-3-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=_sw-1-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=11, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:15, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-1-out,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=14, label=(null), callerid=(null), appl=Goto, data=17, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=15, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=16, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=17, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall-out-1-2, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=18, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall, rep=0, exten=sw-1-out, priority=19, label=(null), callerid=(null), appl=Goto, data=sw-1-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-3-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall2-3, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall2, rep=0, exten=s, priority=4, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=1, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=2, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=3, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=4, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=2, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:5, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-3-out2|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=5, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall2-out-3-4, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=6, label=(null), callerid=(null), appl=Goto, data=sw-3-out2|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-5-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=_sw-3-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=10, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=11, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=12, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out2, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-3-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=11, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-3-out2,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall2-out-3-4, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall2, rep=0, exten=sw-3-out, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-3-out2,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-5-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall3-5, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=4, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?5:6, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-8-out|ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-8-out,ptr1, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=6, label=(null), callerid=(null), appl=NoOp, data=Finish if-endcall3-7, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-8-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-8-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=8, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall3-8, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall3, rep=0, exten=s, priority=9, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=1, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?2:4, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=2, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=3, label=(null), callerid=(null), appl=Goto, data=s|8, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=4, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall3-out-8-9, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=5, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=6, label=(null), callerid=(null), appl=Goto, data=s|8, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=2, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:5, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-8-out|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=5, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall3-out-5-6, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=6, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=7, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-10-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=_sw-8-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,8, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=10, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?11:13, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=11, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=12, label=(null), callerid=(null), appl=Goto, data=s,8, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=13, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall3-out-8-9, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=14, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-8-out, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-8-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=_sw-5-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=11, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-8-out,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall3-out-5-6, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=15, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall3, rep=0, exten=sw-5-out, priority=16, label=(null), callerid=(null), appl=Goto, data=sw-5-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-10-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall4-10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=4, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?5:6, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-14-in|ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-14-in,ptr1, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=6, label=(null), callerid=(null), appl=NoOp, data=Finish if-endcall4-12, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-13-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-13-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=8, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall4-13, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall4, rep=0, exten=s, priority=9, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=1, label=(null), callerid=(null), appl=Goto, data=sw-14-${type}|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=2, label=(null), callerid=(null), appl=NoOp, data=Finish switch-sw-endcall4-out-13-14, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=3, label=(null), callerid=(null), appl=Goto, data=s|8, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=1, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?2:4, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=2, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=3, label=(null), callerid=(null), appl=Goto, data=sw-13-out|2, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=4, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-sw-endcall4-out-13-in-14-15, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=5, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=6, label=(null), callerid=(null), appl=Goto, data=sw-13-out|2, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=2, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:5, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-14-in|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=5, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall4-out-10-11, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=6, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=7, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=type=${ARG1}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-16-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=_sw-13-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,8, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=10, label=(null), callerid=(null), appl=Goto, data=sw-14-${type},10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=11, label=(null), callerid=(null), appl=NoOp, data=Finish switch-sw-endcall4-out-13-14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-13-out, priority=12, label=(null), callerid=(null), appl=Goto, data=sw-13-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=_sw-14-., priority=10, label=(null), callerid=(null), appl=Goto, data=sw-13-out,11, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=10, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?11:13, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=11, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=12, label=(null), callerid=(null), appl=Goto, data=sw-13-out,11, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=13, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-sw-endcall4-out-13-in-14-15, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=14, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-14-in, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-14-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=_sw-10-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=11, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-14-in,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall4-out-10-11, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=15, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall4, rep=0, exten=sw-10-out, priority=16, label=(null), callerid=(null), appl=Goto, data=sw-10-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=1, label=(null), callerid=(null), appl=Set, data=LOCAL(type)=${ARG1}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=2, label=(null), callerid=(null), appl=Goto, data=sw-16-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=3, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall5-16, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=4, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?5:6, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-21-in|ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=5, label=(null), callerid=(null), appl=Goto, data=sw-21-in,ptr1, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=6, label=(null), callerid=(null), appl=NoOp, data=Finish if-endcall5-19, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-20-${type}|1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=7, label=(null), callerid=(null), appl=Goto, data=sw-20-${type},10, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=8, label=(null), callerid=(null), appl=NoOp, data=Finish switch-endcall5-20, FREE, registrar=pbx_ael);
 Executed ast_add_extension2(context=endcall5, rep=0, exten=s, priority=9, label=(null), callerid=(null), appl=Return, data=, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=1, label=(null), callerid=(null), appl=Goto, data=sw-21-${type}|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=2, label=(null), callerid=(null), appl=NoOp, data=Finish switch-sw-endcall5-out-20-21, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=3, label=(null), callerid=(null), appl=Goto, data=s|8, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=1, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?2:4, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=2, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=3, label=(null), callerid=(null), appl=Goto, data=sw-20-out|2, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=4, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-sw-endcall5-out-20-in-21-22, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=5, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=6, label=(null), callerid=(null), appl=Goto, data=sw-20-out|2, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=2, label=ptr2, callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:5, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-21-in|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=5, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall5-in-16-18, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=6, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=7, label=(null), callerid=(null), appl=Goto, data=s|3, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=1, label=(null), callerid=(null), appl=Gosub, data=nullchk|s|1(callid), FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=2, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?3:5, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=3, label=(null), callerid=(null), appl=Gosub, data=endsess|s|1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=4, label=(null), callerid=(null), appl=Goto, data=sw-21-in|ptr1, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=5, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall5-out-16-17, FREE, registrar=pbx_ael);
-Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=6, label=(null), callerid=(null), appl=Goto, data=sw-16-in|1, FREE, registrar=pbx_ael);
-LOG: lev:2 file:pbx_ael.c  line:3930 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
+Executed ast_add_extension2(context=endcall5, rep=0, exten=_sw-20-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,8, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=10, label=(null), callerid=(null), appl=Goto, data=sw-21-${type},10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=11, label=(null), callerid=(null), appl=NoOp, data=Finish switch-sw-endcall5-out-20-21, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-20-out, priority=12, label=(null), callerid=(null), appl=Goto, data=sw-20-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=_sw-21-., priority=10, label=(null), callerid=(null), appl=Goto, data=sw-20-out,11, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=10, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?11:13, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=11, label=ptr1, callerid=(null), appl=Softhangup, data=${CHANNEL}, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=12, label=(null), callerid=(null), appl=Goto, data=sw-20-out,11, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=13, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-sw-endcall5-out-20-in-21-22, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=14, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-21-in, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-21-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=_sw-16-., priority=10, label=(null), callerid=(null), appl=Goto, data=s,3, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=11, label=ptr2, callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-21-in,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall5-in-16-18, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=15, label=(null), callerid=(null), appl=Noop, data=esac, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-in, priority=16, label=(null), callerid=(null), appl=Goto, data=sw-16-.,10, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=10, label=(null), callerid=(null), appl=Gosub, data=nullchk,s,1(callid), FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=11, label=(null), callerid=(null), appl=GotoIf, data=$[${testnotnull}]?12:14, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=12, label=(null), callerid=(null), appl=Gosub, data=endsess,s,1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-21-in,ptr1, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall5-out-16-17, FREE, registrar=pbx_ael);
+Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-16-in,10, FREE, registrar=pbx_ael);
+LOG: lev:2 file:pbx_ael.c  line:4112 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
 Executed ast_merge_contexts_and_delete();
-LOG: lev:2 file:pbx_ael.c  line:3933 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4115 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
 Executed ast_walk_contexts();
-LOG: lev:2 file:pbx_ael.c  line:3936 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse  line:479 func: main  7 contexts, 17 extensions, 111 priorities
+LOG: lev:2 file:pbx_ael.c  line:4118 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse  line:522 func: main  7 contexts, 27 extensions, 121 priorities
index 94baee9..5ef73ab 100644 (file)
@@ -2,17 +2,18 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:3910 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:3917 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3925 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 2-16: The macro testdial does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:712 func: check_macro_returns  Warning: file ./extensions.ael, line 18-25: The macro exten-gen does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:1352 func: check_goto  Warning: file ./extensions.ael, line 21-21: It's bad form to have a goto in a macro to a target outside the macro!
-LOG: lev:3 file:pbx_ael.c  line:1352 func: check_goto  Warning: file ./extensions.ael, line 23-23: It's bad form to have a goto in a macro to a target outside the macro!
-LOG: lev:3 file:pbx_ael.c  line:944 func: check_dow  Warning: file ./extensions.ael, line 67-67: The day (m0n) must be one of 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', or 'sat'!
-LOG: lev:3 file:pbx_ael.c  line:902 func: check_timerange  Warning: file ./extensions.ael, line 78-78: The end time (25:00) is out of range!
-LOG: lev:2 file:pbx_ael.c  line:3928 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3930 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3933 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3936 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse  line:479 func: main  5 contexts, 13 extensions, 154 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 2-16: The macro testdial does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 18-25: The macro exten-gen does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:1408 func: check_goto  Warning: file ./extensions.ael, line 21-21: It's bad form to have a goto in a macro to a target outside the macro!
+LOG: lev:3 file:pbx_ael.c  line:1408 func: check_goto  Warning: file ./extensions.ael, line 23-23: It's bad form to have a goto in a macro to a target outside the macro!
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 58-58: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:989 func: check_dow  Warning: file ./extensions.ael, line 67-67: The day (m0n) must be one of 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', or 'sat'!
+LOG: lev:3 file:pbx_ael.c  line:947 func: check_timerange  Warning: file ./extensions.ael, line 78-78: The end time (25:00) is out of range!
+LOG: lev:2 file:pbx_ael.c  line:4110 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4112 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4115 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4118 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse  line:522 func: main  5 contexts, 14 extensions, 155 priorities
index 7250c7a..7211c2b 100644 (file)
@@ -2,10 +2,13 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:3910 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:3917 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3925 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:4 file:pbx_ael.c  line:1167 func: check_label  Error: file ./extensions.ael, line 13-13: Duplicate label lab1! Previously defined at file ./extensions.ael, line 8.
-LOG: lev:4 file:pbx_ael.c  line:1167 func: check_label  Error: file ./extensions.ael, line 49-49: Duplicate label ptr1! Previously defined at file ./extensions.ael, line 33.
-LOG: lev:4 file:pbx_ael.c  line:3938 func: pbx_load_module  Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse  line:479 func: main  0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:4 file:pbx_ael.c  line:1214 func: check_label  Error: file ./extensions.ael, line 13-13: Duplicate label lab1! Previously defined at file ./extensions.ael, line 8.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 32-32: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 44-44: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 47-47: A default case was automatically added to the switch.
+LOG: lev:4 file:pbx_ael.c  line:1214 func: check_label  Error: file ./extensions.ael, line 49-49: Duplicate label ptr1! Previously defined at file ./extensions.ael, line 33.
+LOG: lev:4 file:pbx_ael.c  line:4120 func: pbx_load_module  Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse  line:522 func: main  0 contexts, 0 extensions, 0 priorities
index a0ff967..2c51ae7 100644 (file)
@@ -2,10 +2,11 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:3910 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:3917 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:3925 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:4 file:pbx_ael.c  line:1091 func: check_continue  Error: file ./extensions.ael, line 15-15: 'continue' not in 'for' or 'while' statement!
-LOG: lev:4 file:pbx_ael.c  line:1072 func: check_break  Error: file ./extensions.ael, line 17-17: 'break' not in switch, for, or while statement!
-LOG: lev:4 file:pbx_ael.c  line:3938 func: pbx_load_module  Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse  line:479 func: main  0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
+LOG: lev:4 file:pbx_ael.c  line:1138 func: check_continue  Error: file ./extensions.ael, line 15-15: 'continue' not in 'for' or 'while' statement!
+LOG: lev:4 file:pbx_ael.c  line:1119 func: check_break  Error: file ./extensions.ael, line 17-17: 'break' not in switch, for, or while statement!
+LOG: lev:4 file:pbx_ael.c  line:4120 func: pbx_load_module  Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse  line:522 func: main  0 contexts, 0 extensions, 0 priorities
index 35ed2c7..7ff3fd4 100644 (file)
@@ -2,14 +2,15 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:4026 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:4033 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4041 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:4 file:pbx_ael.c  line:2340 func: check_context_names  Error: file ./extensions.ael, line 49-62: The context name (incoming) is also declared in file ./extensions.ael, line 62-69!
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 71-175: The macro std-priv-exten does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:2440 func: check_pval_item  Warning: file ./extensions.ael, line 312-312: macro call to non-existent funcA ! Hopefully it is present in extensions.conf! 
-LOG: lev:3 file:pbx_ael.c  line:2440 func: check_pval_item  Warning: file ./extensions.ael, line 313-313: macro call to non-existent funcD ! Hopefully it is present in extensions.conf! 
-LOG: lev:3 file:pbx_ael.c  line:1393 func: check_goto  Warning: file ./extensions.ael, line 319-319: goto:  no context test5 could be found that matches the goto target!
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 363-366: The macro dialoutpstn does not end with a return; I will insert one.
-LOG: lev:4 file:pbx_ael.c  line:4054 func: pbx_load_module  Sorry, but 0 syntax errors and 1 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse  line:512 func: main  0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:4 file:pbx_ael.c  line:2372 func: check_context_names  Error: file ./extensions.ael, line 49-62: The context name (incoming) is also declared in file ./extensions.ael, line 62-69!
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 71-175: The macro std-priv-exten does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:2356 func: check_switch_expr  Warning: file ./extensions.ael, line 245-246: A default case was automatically added to the switch.
+LOG: lev:3 file:pbx_ael.c  line:2472 func: check_pval_item  Warning: file ./extensions.ael, line 312-312: macro call to non-existent funcA ! Hopefully it is present in extensions.conf! 
+LOG: lev:3 file:pbx_ael.c  line:2472 func: check_pval_item  Warning: file ./extensions.ael, line 313-313: macro call to non-existent funcD ! Hopefully it is present in extensions.conf! 
+LOG: lev:3 file:pbx_ael.c  line:1398 func: check_goto  Warning: file ./extensions.ael, line 319-319: goto:  no context test5 could be found that matches the goto target!
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 363-366: The macro dialoutpstn does not end with a return; I will insert one.
+LOG: lev:4 file:pbx_ael.c  line:4120 func: pbx_load_module  Sorry, but 0 syntax errors and 1 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse  line:522 func: main  0 contexts, 0 extensions, 0 priorities
index 7c19042..1611179 100644 (file)
@@ -2,28 +2,28 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:4021 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:4028 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./apptest.ael2, 3474 chars
-LOG: lev:3 file:ael.y  line:529 func: ael_yyparse  ==== File: ./apptest.ael2, Line 46, Cols: 8-11: Suggestion: Use the goto statement instead of the Goto() application call in AEL.
-LOG: lev:2 file:pbx_ael.c  line:4036 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 35-35: application call to EndWhile affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 37-37: application call to ExecIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 38-38: application call to ExecIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 44-44: application call to Gosub affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 45-45: application call to GosubIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:1393 func: check_goto  Warning: file ./apptest.ael2, line 46-46: goto:  no context cont could be found that matches the goto target!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 47-47: application call to GotoIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 48-48: application call to GotoIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 58-58: application call to Macro affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2503 func: check_pval_item  Warning: file ./apptest.ael2, line 59-59: I am converting the MacroExit call here to a return statement.
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 60-60: application call to MacroIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 85-85: application call to Random affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 94-94: application call to Return affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 119-119: application call to StackPop affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 141-141: application call to While affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:2 file:pbx_ael.c  line:4039 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4041 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4044 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4047 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse  line:512 func: main  1 contexts, 1 extensions, 142 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./apptest.ael2, 3474 chars
+LOG: lev:3 file:ael.y  line:538 func: ael_yyparse  ==== File: ./apptest.ael2, Line 46, Cols: 8-11: Suggestion: Use the goto statement instead of the Goto() application call in AEL.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 35-35: application call to EndWhile affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 37-37: application call to ExecIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 38-38: application call to ExecIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 44-44: application call to Gosub affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 45-45: application call to GosubIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:1398 func: check_goto  Warning: file ./apptest.ael2, line 46-46: goto:  no context cont could be found that matches the goto target!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 47-47: application call to GotoIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 48-48: application call to GotoIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 58-58: application call to Macro affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2535 func: check_pval_item  Warning: file ./apptest.ael2, line 59-59: I am converting the MacroExit call here to a return statement.
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 60-60: application call to MacroIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 85-85: application call to Random affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 94-94: application call to Return affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 119-119: application call to StackPop affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 141-141: application call to While affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:2 file:pbx_ael.c  line:4110 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4112 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4115 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4118 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse  line:522 func: main  1 contexts, 1 extensions, 142 priorities
index a5ebf73..ede9024 100644 (file)
@@ -2,99 +2,99 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:4021 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:4028 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./include1.ael2, 78 chars
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./include2.ael2, 98 chars
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./include3.ael2, 57 chars
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./include5.ael2, 56 chars
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./include4.ael2, 87 chars
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./telemarket_torture.ael2, 28036 chars
-LOG: lev:2 file:pbx_ael.c  line:4036 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 14-34: The macro std-exten does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:1403 func: check_goto  Warning: file ./extensions.ael, line 17-17: It's bad form to have a goto in a macro to a target outside the macro!
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 36-59: The macro std-priv-exten_1 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 62-85: The macro std-priv-exten_2 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 88-111: The macro std-priv-exten_3 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 114-137: The macro std-priv-exten_4 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 140-163: The macro std-priv-exten_5 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 166-189: The macro std-priv-exten_6 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 192-215: The macro std-priv-exten_7 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 218-241: The macro std-priv-exten_8 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 244-267: The macro std-priv-exten_9 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 270-293: The macro std-priv-exten_10 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 296-319: The macro std-priv-exten_11 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 322-345: The macro std-priv-exten_12 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 348-371: The macro std-priv-exten_13 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 374-397: The macro std-priv-exten_14 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 400-423: The macro std-priv-exten_15 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 426-449: The macro std-priv-exten_16 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 452-475: The macro std-priv-exten_17 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 478-501: The macro std-priv-exten_18 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 504-527: The macro std-priv-exten_19 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 530-553: The macro std-priv-exten_20 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 556-579: The macro std-priv-exten_21 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 582-605: The macro std-priv-exten_22 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 608-631: The macro std-priv-exten_23 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 634-657: The macro std-priv-exten_24 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 660-683: The macro std-priv-exten_25 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 686-709: The macro std-priv-exten_26 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 712-735: The macro std-priv-exten_27 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 738-761: The macro std-priv-exten_28 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 764-787: The macro std-priv-exten_29 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 790-813: The macro std-priv-exten_30 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 816-839: The macro std-priv-exten_31 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 842-865: The macro std-priv-exten_32 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 868-891: The macro std-priv-exten_33 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 894-917: The macro std-priv-exten_34 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 920-943: The macro std-priv-exten_35 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 946-969: The macro std-priv-exten_36 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 972-995: The macro std-priv-exten_37 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 998-1021: The macro std-priv-exten_38 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1024-1047: The macro std-priv-exten_39 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1050-1073: The macro std-priv-exten_40 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1076-1099: The macro std-priv-exten_41 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1102-1125: The macro std-priv-exten_42 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1128-1151: The macro std-priv-exten_43 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1154-1177: The macro std-priv-exten_44 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1180-1203: The macro std-priv-exten_45 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1206-1229: The macro std-priv-exten_46 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1232-1255: The macro std-priv-exten_47 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1258-1281: The macro std-priv-exten_48 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1284-1307: The macro std-priv-exten_49 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1310-1333: The macro std-priv-exten_50 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1336-1359: The macro std-priv-exten_51 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1362-1385: The macro std-priv-exten_52 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1388-1411: The macro std-priv-exten_53 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1414-1437: The macro std-priv-exten_54 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1440-1463: The macro std-priv-exten_55 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1466-1489: The macro std-priv-exten_56 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1492-1515: The macro std-priv-exten_57 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1518-1541: The macro std-priv-exten_58 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1544-1567: The macro std-priv-exten_59 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1570-1593: The macro std-priv-exten_60 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1596-1619: The macro std-priv-exten_61 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1622-1645: The macro std-priv-exten_62 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1648-1671: The macro std-priv-exten_63 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1674-1697: The macro std-priv-exten_64 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1700-1723: The macro std-priv-exten_65 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1726-1749: The macro std-priv-exten_66 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1752-1775: The macro std-priv-exten_67 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1778-1801: The macro std-priv-exten_68 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1804-1827: The macro std-priv-exten_69 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1830-1853: The macro std-priv-exten_70 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1856-1879: The macro std-priv-exten_71 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1882-1905: The macro std-priv-exten_72 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1908-1931: The macro std-priv-exten_73 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1934-1957: The macro std-priv-exten does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1959-1995: The macro fillcidname does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 1997-2015: The macro ciddial does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 2017-2028: The macro ciddial3 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 2030-2048: The macro ciddial2 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 2050-2065: The macro callerid-liar does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 2067-2072: The macro callerid-bad does not end with a return; I will insert one.
-LOG: lev:2 file:pbx_ael.c  line:4039 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4041 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4044 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4047 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse  line:512 func: main  172 contexts, 858 extensions, 2406 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./include1.ael2, 78 chars
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./include2.ael2, 98 chars
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./include3.ael2, 57 chars
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./include5.ael2, 56 chars
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./include4.ael2, 87 chars
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./telemarket_torture.ael2, 28036 chars
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 14-34: The macro std-exten does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:1408 func: check_goto  Warning: file ./extensions.ael, line 17-17: It's bad form to have a goto in a macro to a target outside the macro!
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 36-59: The macro std-priv-exten_1 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 62-85: The macro std-priv-exten_2 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 88-111: The macro std-priv-exten_3 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 114-137: The macro std-priv-exten_4 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 140-163: The macro std-priv-exten_5 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 166-189: The macro std-priv-exten_6 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 192-215: The macro std-priv-exten_7 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 218-241: The macro std-priv-exten_8 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 244-267: The macro std-priv-exten_9 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 270-293: The macro std-priv-exten_10 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 296-319: The macro std-priv-exten_11 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 322-345: The macro std-priv-exten_12 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 348-371: The macro std-priv-exten_13 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 374-397: The macro std-priv-exten_14 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 400-423: The macro std-priv-exten_15 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 426-449: The macro std-priv-exten_16 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 452-475: The macro std-priv-exten_17 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 478-501: The macro std-priv-exten_18 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 504-527: The macro std-priv-exten_19 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 530-553: The macro std-priv-exten_20 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 556-579: The macro std-priv-exten_21 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 582-605: The macro std-priv-exten_22 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 608-631: The macro std-priv-exten_23 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 634-657: The macro std-priv-exten_24 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 660-683: The macro std-priv-exten_25 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 686-709: The macro std-priv-exten_26 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 712-735: The macro std-priv-exten_27 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 738-761: The macro std-priv-exten_28 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 764-787: The macro std-priv-exten_29 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 790-813: The macro std-priv-exten_30 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 816-839: The macro std-priv-exten_31 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 842-865: The macro std-priv-exten_32 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 868-891: The macro std-priv-exten_33 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 894-917: The macro std-priv-exten_34 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 920-943: The macro std-priv-exten_35 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 946-969: The macro std-priv-exten_36 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 972-995: The macro std-priv-exten_37 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 998-1021: The macro std-priv-exten_38 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1024-1047: The macro std-priv-exten_39 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1050-1073: The macro std-priv-exten_40 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1076-1099: The macro std-priv-exten_41 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1102-1125: The macro std-priv-exten_42 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1128-1151: The macro std-priv-exten_43 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1154-1177: The macro std-priv-exten_44 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1180-1203: The macro std-priv-exten_45 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1206-1229: The macro std-priv-exten_46 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1232-1255: The macro std-priv-exten_47 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1258-1281: The macro std-priv-exten_48 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1284-1307: The macro std-priv-exten_49 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1310-1333: The macro std-priv-exten_50 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1336-1359: The macro std-priv-exten_51 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1362-1385: The macro std-priv-exten_52 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1388-1411: The macro std-priv-exten_53 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1414-1437: The macro std-priv-exten_54 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1440-1463: The macro std-priv-exten_55 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1466-1489: The macro std-priv-exten_56 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1492-1515: The macro std-priv-exten_57 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1518-1541: The macro std-priv-exten_58 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1544-1567: The macro std-priv-exten_59 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1570-1593: The macro std-priv-exten_60 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1596-1619: The macro std-priv-exten_61 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1622-1645: The macro std-priv-exten_62 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1648-1671: The macro std-priv-exten_63 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1674-1697: The macro std-priv-exten_64 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1700-1723: The macro std-priv-exten_65 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1726-1749: The macro std-priv-exten_66 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1752-1775: The macro std-priv-exten_67 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1778-1801: The macro std-priv-exten_68 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1804-1827: The macro std-priv-exten_69 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1830-1853: The macro std-priv-exten_70 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1856-1879: The macro std-priv-exten_71 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1882-1905: The macro std-priv-exten_72 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1908-1931: The macro std-priv-exten_73 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1934-1957: The macro std-priv-exten does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1959-1995: The macro fillcidname does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 1997-2015: The macro ciddial does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 2017-2028: The macro ciddial3 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 2030-2048: The macro ciddial2 does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 2050-2065: The macro callerid-liar does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 2067-2072: The macro callerid-bad does not end with a return; I will insert one.
+LOG: lev:2 file:pbx_ael.c  line:4110 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4112 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4115 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4118 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse  line:522 func: main  172 contexts, 858 extensions, 2406 priorities
index 7c19042..1611179 100644 (file)
@@ -2,28 +2,28 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:4021 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:4028 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:ael/ael.flex  line:429 func: ael_yylex    --Read in included file ./apptest.ael2, 3474 chars
-LOG: lev:3 file:ael.y  line:529 func: ael_yyparse  ==== File: ./apptest.ael2, Line 46, Cols: 8-11: Suggestion: Use the goto statement instead of the Goto() application call in AEL.
-LOG: lev:2 file:pbx_ael.c  line:4036 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 35-35: application call to EndWhile affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 37-37: application call to ExecIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 38-38: application call to ExecIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 44-44: application call to Gosub affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 45-45: application call to GosubIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:1393 func: check_goto  Warning: file ./apptest.ael2, line 46-46: goto:  no context cont could be found that matches the goto target!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 47-47: application call to GotoIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 48-48: application call to GotoIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 58-58: application call to Macro affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2503 func: check_pval_item  Warning: file ./apptest.ael2, line 59-59: I am converting the MacroExit call here to a return statement.
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 60-60: application call to MacroIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 85-85: application call to Random affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 94-94: application call to Return affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 119-119: application call to StackPop affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:3 file:pbx_ael.c  line:2498 func: check_pval_item  Warning: file ./apptest.ael2, line 141-141: application call to While affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
-LOG: lev:2 file:pbx_ael.c  line:4039 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4041 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4044 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c  line:4047 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse  line:512 func: main  1 contexts, 1 extensions, 142 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:ael.flex  line:430 func: ael_yylex    --Read in included file ./apptest.ael2, 3474 chars
+LOG: lev:3 file:ael.y  line:538 func: ael_yyparse  ==== File: ./apptest.ael2, Line 46, Cols: 8-11: Suggestion: Use the goto statement instead of the Goto() application call in AEL.
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 35-35: application call to EndWhile affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 37-37: application call to ExecIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 38-38: application call to ExecIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 44-44: application call to Gosub affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 45-45: application call to GosubIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:1398 func: check_goto  Warning: file ./apptest.ael2, line 46-46: goto:  no context cont could be found that matches the goto target!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 47-47: application call to GotoIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 48-48: application call to GotoIfTime affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 58-58: application call to Macro affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2535 func: check_pval_item  Warning: file ./apptest.ael2, line 59-59: I am converting the MacroExit call here to a return statement.
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 60-60: application call to MacroIf affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 85-85: application call to Random affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 94-94: application call to Return affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 119-119: application call to StackPop affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:3 file:pbx_ael.c  line:2530 func: check_pval_item  Warning: file ./apptest.ael2, line 141-141: application call to While affects flow of control, and needs to be re-written using AEL if, while, goto, etc. keywords instead!
+LOG: lev:2 file:pbx_ael.c  line:4110 func: pbx_load_module  AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4112 func: pbx_load_module  AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4115 func: pbx_load_module  AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c  line:4118 func: pbx_load_module  AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse  line:522 func: main  1 contexts, 1 extensions, 142 priorities
index 586920c..ec5fc13 100644 (file)
@@ -2,23 +2,23 @@
 (If you find progress and other non-error messages irritating, you can use -q to suppress them)
 
 (You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c  line:4021 func: pbx_load_module  Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c  line:4028 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:4 file:ael/ael.flex  line:276 func: ael_yylex  File=./extensions.ael, line=165, column=49: Mismatched '}' in expression!
-LOG: lev:4 file:ael.y  line:752 func: ael_yyerror  ==== File: ./extensions.ael, Line 165, Cols: 51-51: Error: syntax error, unexpected '=', expecting ')'
-LOG: lev:4 file:ael.y  line:752 func: ael_yyerror  ==== File: ./extensions.ael, Line 169, Cols: 24-24: Error: syntax error, unexpected '&'
-LOG: lev:4 file:ael/ael.flex  line:276 func: ael_yylex  File=./extensions.ael, line=222, column=41: Mismatched '}' in expression!
-LOG: lev:4 file:ael.y  line:752 func: ael_yyerror  ==== File: ./extensions.ael, Line 222, Cols: 43-43: Error: syntax error, unexpected '=', expecting ')'
-LOG: lev:4 file:ael.y  line:752 func: ael_yyerror  ==== File: ./extensions.ael, Line 226, Cols: 16-16: Error: syntax error, unexpected '&'
-LOG: lev:4 file:ael.y  line:752 func: ael_yyerror  ==== File: ./extensions.ael, Line 291, Cols: 21-28: Error: syntax error, unexpected word, expecting '(' or ';' or '=' or ':'
-LOG: lev:2 file:pbx_ael.c  line:4036 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 116-125: The macro dialout does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 129-168: The macro stdexten does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 184-191: The macro uvm does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 193-200: The macro bvm does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 202-207: The macro checkdnd does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 209-216: The macro checkcf does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 218-225: The macro checkcfb does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c  line:734 func: check_macro_returns  Warning: file ./extensions.ael, line 688-694: The macro check-psd-exists does not end with a return; I will insert one.
-LOG: lev:4 file:pbx_ael.c  line:4049 func: pbx_load_module  Sorry, but 5 syntax errors and 0 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse  line:512 func: main  0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c  line:4092 func: pbx_load_module  Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c  line:4099 func: pbx_load_module  AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:4 file:ael.flex  line:277 func: ael_yylex  File=./extensions.ael, line=165, column=49: Mismatched '}' in expression!
+LOG: lev:4 file:ael.y  line:764 func: ael_yyerror  ==== File: ./extensions.ael, Line 165, Cols: 51-51: Error: syntax error, unexpected '=', expecting ')'
+LOG: lev:4 file:ael.y  line:764 func: ael_yyerror  ==== File: ./extensions.ael, Line 169, Cols: 24-24: Error: syntax error, unexpected '&'
+LOG: lev:4 file:ael.flex  line:277 func: ael_yylex  File=./extensions.ael, line=222, column=41: Mismatched '}' in expression!
+LOG: lev:4 file:ael.y  line:764 func: ael_yyerror  ==== File: ./extensions.ael, Line 222, Cols: 43-43: Error: syntax error, unexpected '=', expecting ')'
+LOG: lev:4 file:ael.y  line:764 func: ael_yyerror  ==== File: ./extensions.ael, Line 226, Cols: 16-16: Error: syntax error, unexpected '&'
+LOG: lev:4 file:ael.y  line:764 func: ael_yyerror  ==== File: ./extensions.ael, Line 291, Cols: 21-28: Error: syntax error, unexpected word, expecting '(' or ';' or '=' or ':'
+LOG: lev:2 file:pbx_ael.c  line:4107 func: pbx_load_module  AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 116-125: The macro dialout does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 129-168: The macro stdexten does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 184-191: The macro uvm does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 193-200: The macro bvm does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 202-207: The macro checkdnd does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 209-216: The macro checkcf does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 218-225: The macro checkcfb does not end with a return; I will insert one.
+LOG: lev:3 file:pbx_ael.c  line:739 func: check_macro_returns  Warning: file ./extensions.ael, line 688-694: The macro check-psd-exists does not end with a return; I will insert one.
+LOG: lev:4 file:pbx_ael.c  line:4120 func: pbx_load_module  Sorry, but 5 syntax errors and 0 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse  line:522 func: main  0 contexts, 0 extensions, 0 priorities
index 968c71d..da9316d 100644 (file)
@@ -11,1870 +11,1870 @@ FWDVMBOX=1
 
 
 [std-exten]
-exten => s,1,Set(ext=${ARG1})
-exten => s,2,Set(dev=${ARG2})
-exten => s,3,Dial(${dev}/${ext}|20)
-exten => s,4,Goto(sw-1-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(ext)=${ARG1})
+exten => s,2,Set(LOCAL(dev)=${ARG2})
+exten => s,3,Dial(${dev}/${ext}\,20)
+exten => s,4,Goto(sw-1-${DIALSTATUS}\,10)
 exten => s,5,NoOp(Finish switch-std-exten-1)
 exten => s,6,Return()
 exten => a,1,VoiceMailMain(${ext})
 exten => _sw-1-.,10,Voicemail(u${ext})
-exten => _sw-1-.,11,Goto(s|5)
-exten => sw-1-ANSWER,10,Goto(s|5)
+exten => _sw-1-.,11,Goto(s\,5)
+exten => sw-1-ANSWER,10,Goto(s\,5)
 exten => sw-1-NOANSWER,10,Voicemail(u${ext})
-exten => sw-1-NOANSWER,11,Goto(s|5)
+exten => sw-1-NOANSWER,11,Goto(s\,5)
 exten => sw-1-BUSY,10,Voicemail(b${ext})
-exten => sw-1-BUSY,11,Goto(s|5)
+exten => sw-1-BUSY,11,Goto(s\,5)
 
 
 [std-priv-exten_1]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-3-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-3-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_1-3)
 exten => s,11,Return()
 exten => _sw-3-.,10,Voicemail(u${ext})
-exten => _sw-3-.,11,Goto(s|10)
+exten => _sw-3-.,11,Goto(s\,10)
 exten => sw-3-NOANSWER,10,Voicemail(u${ext})
-exten => sw-3-NOANSWER,11,Goto(s|10)
-exten => sw-3-ANSWER,10,Goto(s|10)
+exten => sw-3-NOANSWER,11,Goto(s\,10)
+exten => sw-3-ANSWER,10,Goto(s\,10)
 exten => sw-3-BUSY,10,Voicemail(b${ext})
-exten => sw-3-BUSY,11,Goto(s|10)
-exten => sw-3-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-3-DONTCALL,11,Goto(s|10)
-exten => sw-3-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-3-TORTURE,11,Goto(s|10)
+exten => sw-3-BUSY,11,Goto(s\,10)
+exten => sw-3-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-3-DONTCALL,11,Goto(s\,10)
+exten => sw-3-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-3-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_2]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-4-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-4-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_2-4)
 exten => s,11,Return()
 exten => _sw-4-.,10,Voicemail(u${ext})
-exten => _sw-4-.,11,Goto(s|10)
+exten => _sw-4-.,11,Goto(s\,10)
 exten => sw-4-NOANSWER,10,Voicemail(u${ext})
-exten => sw-4-NOANSWER,11,Goto(s|10)
-exten => sw-4-ANSWER,10,Goto(s|10)
+exten => sw-4-NOANSWER,11,Goto(s\,10)
+exten => sw-4-ANSWER,10,Goto(s\,10)
 exten => sw-4-BUSY,10,Voicemail(b${ext})
-exten => sw-4-BUSY,11,Goto(s|10)
-exten => sw-4-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-4-DONTCALL,11,Goto(s|10)
-exten => sw-4-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-4-TORTURE,11,Goto(s|10)
+exten => sw-4-BUSY,11,Goto(s\,10)
+exten => sw-4-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-4-DONTCALL,11,Goto(s\,10)
+exten => sw-4-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-4-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_3]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-5-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-5-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_3-5)
 exten => s,11,Return()
 exten => _sw-5-.,10,Voicemail(u${ext})
-exten => _sw-5-.,11,Goto(s|10)
+exten => _sw-5-.,11,Goto(s\,10)
 exten => sw-5-NOANSWER,10,Voicemail(u${ext})
-exten => sw-5-NOANSWER,11,Goto(s|10)
-exten => sw-5-ANSWER,10,Goto(s|10)
+exten => sw-5-NOANSWER,11,Goto(s\,10)
+exten => sw-5-ANSWER,10,Goto(s\,10)
 exten => sw-5-BUSY,10,Voicemail(b${ext})
-exten => sw-5-BUSY,11,Goto(s|10)
-exten => sw-5-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-5-DONTCALL,11,Goto(s|10)
-exten => sw-5-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-5-TORTURE,11,Goto(s|10)
+exten => sw-5-BUSY,11,Goto(s\,10)
+exten => sw-5-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-5-DONTCALL,11,Goto(s\,10)
+exten => sw-5-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-5-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_4]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-6-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-6-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_4-6)
 exten => s,11,Return()
 exten => _sw-6-.,10,Voicemail(u${ext})
-exten => _sw-6-.,11,Goto(s|10)
+exten => _sw-6-.,11,Goto(s\,10)
 exten => sw-6-NOANSWER,10,Voicemail(u${ext})
-exten => sw-6-NOANSWER,11,Goto(s|10)
-exten => sw-6-ANSWER,10,Goto(s|10)
+exten => sw-6-NOANSWER,11,Goto(s\,10)
+exten => sw-6-ANSWER,10,Goto(s\,10)
 exten => sw-6-BUSY,10,Voicemail(b${ext})
-exten => sw-6-BUSY,11,Goto(s|10)
-exten => sw-6-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-6-DONTCALL,11,Goto(s|10)
-exten => sw-6-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-6-TORTURE,11,Goto(s|10)
+exten => sw-6-BUSY,11,Goto(s\,10)
+exten => sw-6-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-6-DONTCALL,11,Goto(s\,10)
+exten => sw-6-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-6-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_5]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-7-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-7-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_5-7)
 exten => s,11,Return()
 exten => _sw-7-.,10,Voicemail(u${ext})
-exten => _sw-7-.,11,Goto(s|10)
+exten => _sw-7-.,11,Goto(s\,10)
 exten => sw-7-NOANSWER,10,Voicemail(u${ext})
-exten => sw-7-NOANSWER,11,Goto(s|10)
-exten => sw-7-ANSWER,10,Goto(s|10)
+exten => sw-7-NOANSWER,11,Goto(s\,10)
+exten => sw-7-ANSWER,10,Goto(s\,10)
 exten => sw-7-BUSY,10,Voicemail(b${ext})
-exten => sw-7-BUSY,11,Goto(s|10)
-exten => sw-7-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-7-DONTCALL,11,Goto(s|10)
-exten => sw-7-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-7-TORTURE,11,Goto(s|10)
+exten => sw-7-BUSY,11,Goto(s\,10)
+exten => sw-7-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-7-DONTCALL,11,Goto(s\,10)
+exten => sw-7-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-7-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_6]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-8-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-8-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_6-8)
 exten => s,11,Return()
 exten => _sw-8-.,10,Voicemail(u${ext})
-exten => _sw-8-.,11,Goto(s|10)
+exten => _sw-8-.,11,Goto(s\,10)
 exten => sw-8-NOANSWER,10,Voicemail(u${ext})
-exten => sw-8-NOANSWER,11,Goto(s|10)
-exten => sw-8-ANSWER,10,Goto(s|10)
+exten => sw-8-NOANSWER,11,Goto(s\,10)
+exten => sw-8-ANSWER,10,Goto(s\,10)
 exten => sw-8-BUSY,10,Voicemail(b${ext})
-exten => sw-8-BUSY,11,Goto(s|10)
-exten => sw-8-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-8-DONTCALL,11,Goto(s|10)
-exten => sw-8-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-8-TORTURE,11,Goto(s|10)
+exten => sw-8-BUSY,11,Goto(s\,10)
+exten => sw-8-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-8-DONTCALL,11,Goto(s\,10)
+exten => sw-8-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-8-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_7]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-9-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-9-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_7-9)
 exten => s,11,Return()
 exten => _sw-9-.,10,Voicemail(u${ext})
-exten => _sw-9-.,11,Goto(s|10)
+exten => _sw-9-.,11,Goto(s\,10)
 exten => sw-9-NOANSWER,10,Voicemail(u${ext})
-exten => sw-9-NOANSWER,11,Goto(s|10)
-exten => sw-9-ANSWER,10,Goto(s|10)
+exten => sw-9-NOANSWER,11,Goto(s\,10)
+exten => sw-9-ANSWER,10,Goto(s\,10)
 exten => sw-9-BUSY,10,Voicemail(b${ext})
-exten => sw-9-BUSY,11,Goto(s|10)
-exten => sw-9-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-9-DONTCALL,11,Goto(s|10)
-exten => sw-9-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-9-TORTURE,11,Goto(s|10)
+exten => sw-9-BUSY,11,Goto(s\,10)
+exten => sw-9-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-9-DONTCALL,11,Goto(s\,10)
+exten => sw-9-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-9-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_8]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-10-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-10-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_8-10)
 exten => s,11,Return()
 exten => _sw-10-.,10,Voicemail(u${ext})
-exten => _sw-10-.,11,Goto(s|10)
+exten => _sw-10-.,11,Goto(s\,10)
 exten => sw-10-NOANSWER,10,Voicemail(u${ext})
-exten => sw-10-NOANSWER,11,Goto(s|10)
-exten => sw-10-ANSWER,10,Goto(s|10)
+exten => sw-10-NOANSWER,11,Goto(s\,10)
+exten => sw-10-ANSWER,10,Goto(s\,10)
 exten => sw-10-BUSY,10,Voicemail(b${ext})
-exten => sw-10-BUSY,11,Goto(s|10)
-exten => sw-10-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-10-DONTCALL,11,Goto(s|10)
-exten => sw-10-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-10-TORTURE,11,Goto(s|10)
+exten => sw-10-BUSY,11,Goto(s\,10)
+exten => sw-10-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-10-DONTCALL,11,Goto(s\,10)
+exten => sw-10-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-10-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_9]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-11-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-11-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_9-11)
 exten => s,11,Return()
 exten => _sw-11-.,10,Voicemail(u${ext})
-exten => _sw-11-.,11,Goto(s|10)
+exten => _sw-11-.,11,Goto(s\,10)
 exten => sw-11-NOANSWER,10,Voicemail(u${ext})
-exten => sw-11-NOANSWER,11,Goto(s|10)
-exten => sw-11-ANSWER,10,Goto(s|10)
+exten => sw-11-NOANSWER,11,Goto(s\,10)
+exten => sw-11-ANSWER,10,Goto(s\,10)
 exten => sw-11-BUSY,10,Voicemail(b${ext})
-exten => sw-11-BUSY,11,Goto(s|10)
-exten => sw-11-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-11-DONTCALL,11,Goto(s|10)
-exten => sw-11-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-11-TORTURE,11,Goto(s|10)
+exten => sw-11-BUSY,11,Goto(s\,10)
+exten => sw-11-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-11-DONTCALL,11,Goto(s\,10)
+exten => sw-11-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-11-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_10]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-12-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-12-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_10-12)
 exten => s,11,Return()
 exten => _sw-12-.,10,Voicemail(u${ext})
-exten => _sw-12-.,11,Goto(s|10)
+exten => _sw-12-.,11,Goto(s\,10)
 exten => sw-12-NOANSWER,10,Voicemail(u${ext})
-exten => sw-12-NOANSWER,11,Goto(s|10)
-exten => sw-12-ANSWER,10,Goto(s|10)
+exten => sw-12-NOANSWER,11,Goto(s\,10)
+exten => sw-12-ANSWER,10,Goto(s\,10)
 exten => sw-12-BUSY,10,Voicemail(b${ext})
-exten => sw-12-BUSY,11,Goto(s|10)
-exten => sw-12-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-12-DONTCALL,11,Goto(s|10)
-exten => sw-12-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-12-TORTURE,11,Goto(s|10)
+exten => sw-12-BUSY,11,Goto(s\,10)
+exten => sw-12-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-12-DONTCALL,11,Goto(s\,10)
+exten => sw-12-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-12-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_11]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-13-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-13-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_11-13)
 exten => s,11,Return()
 exten => _sw-13-.,10,Voicemail(u${ext})
-exten => _sw-13-.,11,Goto(s|10)
+exten => _sw-13-.,11,Goto(s\,10)
 exten => sw-13-NOANSWER,10,Voicemail(u${ext})
-exten => sw-13-NOANSWER,11,Goto(s|10)
-exten => sw-13-ANSWER,10,Goto(s|10)
+exten => sw-13-NOANSWER,11,Goto(s\,10)
+exten => sw-13-ANSWER,10,Goto(s\,10)
 exten => sw-13-BUSY,10,Voicemail(b${ext})
-exten => sw-13-BUSY,11,Goto(s|10)
-exten => sw-13-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-13-DONTCALL,11,Goto(s|10)
-exten => sw-13-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-13-TORTURE,11,Goto(s|10)
+exten => sw-13-BUSY,11,Goto(s\,10)
+exten => sw-13-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-13-DONTCALL,11,Goto(s\,10)
+exten => sw-13-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-13-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_12]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-14-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-14-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_12-14)
 exten => s,11,Return()
 exten => _sw-14-.,10,Voicemail(u${ext})
-exten => _sw-14-.,11,Goto(s|10)
+exten => _sw-14-.,11,Goto(s\,10)
 exten => sw-14-NOANSWER,10,Voicemail(u${ext})
-exten => sw-14-NOANSWER,11,Goto(s|10)
-exten => sw-14-ANSWER,10,Goto(s|10)
+exten => sw-14-NOANSWER,11,Goto(s\,10)
+exten => sw-14-ANSWER,10,Goto(s\,10)
 exten => sw-14-BUSY,10,Voicemail(b${ext})
-exten => sw-14-BUSY,11,Goto(s|10)
-exten => sw-14-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-14-DONTCALL,11,Goto(s|10)
-exten => sw-14-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-14-TORTURE,11,Goto(s|10)
+exten => sw-14-BUSY,11,Goto(s\,10)
+exten => sw-14-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-14-DONTCALL,11,Goto(s\,10)
+exten => sw-14-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-14-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_13]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-15-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-15-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_13-15)
 exten => s,11,Return()
 exten => _sw-15-.,10,Voicemail(u${ext})
-exten => _sw-15-.,11,Goto(s|10)
+exten => _sw-15-.,11,Goto(s\,10)
 exten => sw-15-NOANSWER,10,Voicemail(u${ext})
-exten => sw-15-NOANSWER,11,Goto(s|10)
-exten => sw-15-ANSWER,10,Goto(s|10)
+exten => sw-15-NOANSWER,11,Goto(s\,10)
+exten => sw-15-ANSWER,10,Goto(s\,10)
 exten => sw-15-BUSY,10,Voicemail(b${ext})
-exten => sw-15-BUSY,11,Goto(s|10)
-exten => sw-15-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-15-DONTCALL,11,Goto(s|10)
-exten => sw-15-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-15-TORTURE,11,Goto(s|10)
+exten => sw-15-BUSY,11,Goto(s\,10)
+exten => sw-15-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-15-DONTCALL,11,Goto(s\,10)
+exten => sw-15-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-15-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_14]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-16-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-16-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_14-16)
 exten => s,11,Return()
 exten => _sw-16-.,10,Voicemail(u${ext})
-exten => _sw-16-.,11,Goto(s|10)
+exten => _sw-16-.,11,Goto(s\,10)
 exten => sw-16-NOANSWER,10,Voicemail(u${ext})
-exten => sw-16-NOANSWER,11,Goto(s|10)
-exten => sw-16-ANSWER,10,Goto(s|10)
+exten => sw-16-NOANSWER,11,Goto(s\,10)
+exten => sw-16-ANSWER,10,Goto(s\,10)
 exten => sw-16-BUSY,10,Voicemail(b${ext})
-exten => sw-16-BUSY,11,Goto(s|10)
-exten => sw-16-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-16-DONTCALL,11,Goto(s|10)
-exten => sw-16-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-16-TORTURE,11,Goto(s|10)
+exten => sw-16-BUSY,11,Goto(s\,10)
+exten => sw-16-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-16-DONTCALL,11,Goto(s\,10)
+exten => sw-16-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-16-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_15]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-17-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-17-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_15-17)
 exten => s,11,Return()
 exten => _sw-17-.,10,Voicemail(u${ext})
-exten => _sw-17-.,11,Goto(s|10)
+exten => _sw-17-.,11,Goto(s\,10)
 exten => sw-17-NOANSWER,10,Voicemail(u${ext})
-exten => sw-17-NOANSWER,11,Goto(s|10)
-exten => sw-17-ANSWER,10,Goto(s|10)
+exten => sw-17-NOANSWER,11,Goto(s\,10)
+exten => sw-17-ANSWER,10,Goto(s\,10)
 exten => sw-17-BUSY,10,Voicemail(b${ext})
-exten => sw-17-BUSY,11,Goto(s|10)
-exten => sw-17-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-17-DONTCALL,11,Goto(s|10)
-exten => sw-17-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-17-TORTURE,11,Goto(s|10)
+exten => sw-17-BUSY,11,Goto(s\,10)
+exten => sw-17-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-17-DONTCALL,11,Goto(s\,10)
+exten => sw-17-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-17-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_16]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-18-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-18-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_16-18)
 exten => s,11,Return()
 exten => _sw-18-.,10,Voicemail(u${ext})
-exten => _sw-18-.,11,Goto(s|10)
+exten => _sw-18-.,11,Goto(s\,10)
 exten => sw-18-NOANSWER,10,Voicemail(u${ext})
-exten => sw-18-NOANSWER,11,Goto(s|10)
-exten => sw-18-ANSWER,10,Goto(s|10)
+exten => sw-18-NOANSWER,11,Goto(s\,10)
+exten => sw-18-ANSWER,10,Goto(s\,10)
 exten => sw-18-BUSY,10,Voicemail(b${ext})
-exten => sw-18-BUSY,11,Goto(s|10)
-exten => sw-18-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-18-DONTCALL,11,Goto(s|10)
-exten => sw-18-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-18-TORTURE,11,Goto(s|10)
+exten => sw-18-BUSY,11,Goto(s\,10)
+exten => sw-18-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-18-DONTCALL,11,Goto(s\,10)
+exten => sw-18-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-18-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_17]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-19-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-19-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_17-19)
 exten => s,11,Return()
 exten => _sw-19-.,10,Voicemail(u${ext})
-exten => _sw-19-.,11,Goto(s|10)
+exten => _sw-19-.,11,Goto(s\,10)
 exten => sw-19-NOANSWER,10,Voicemail(u${ext})
-exten => sw-19-NOANSWER,11,Goto(s|10)
-exten => sw-19-ANSWER,10,Goto(s|10)
+exten => sw-19-NOANSWER,11,Goto(s\,10)
+exten => sw-19-ANSWER,10,Goto(s\,10)
 exten => sw-19-BUSY,10,Voicemail(b${ext})
-exten => sw-19-BUSY,11,Goto(s|10)
-exten => sw-19-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-19-DONTCALL,11,Goto(s|10)
-exten => sw-19-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-19-TORTURE,11,Goto(s|10)
+exten => sw-19-BUSY,11,Goto(s\,10)
+exten => sw-19-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-19-DONTCALL,11,Goto(s\,10)
+exten => sw-19-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-19-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_18]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-20-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-20-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_18-20)
 exten => s,11,Return()
 exten => _sw-20-.,10,Voicemail(u${ext})
-exten => _sw-20-.,11,Goto(s|10)
+exten => _sw-20-.,11,Goto(s\,10)
 exten => sw-20-NOANSWER,10,Voicemail(u${ext})
-exten => sw-20-NOANSWER,11,Goto(s|10)
-exten => sw-20-ANSWER,10,Goto(s|10)
+exten => sw-20-NOANSWER,11,Goto(s\,10)
+exten => sw-20-ANSWER,10,Goto(s\,10)
 exten => sw-20-BUSY,10,Voicemail(b${ext})
-exten => sw-20-BUSY,11,Goto(s|10)
-exten => sw-20-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-20-DONTCALL,11,Goto(s|10)
-exten => sw-20-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-20-TORTURE,11,Goto(s|10)
+exten => sw-20-BUSY,11,Goto(s\,10)
+exten => sw-20-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-20-DONTCALL,11,Goto(s\,10)
+exten => sw-20-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-20-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_19]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-21-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-21-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_19-21)
 exten => s,11,Return()
 exten => _sw-21-.,10,Voicemail(u${ext})
-exten => _sw-21-.,11,Goto(s|10)
+exten => _sw-21-.,11,Goto(s\,10)
 exten => sw-21-NOANSWER,10,Voicemail(u${ext})
-exten => sw-21-NOANSWER,11,Goto(s|10)
-exten => sw-21-ANSWER,10,Goto(s|10)
+exten => sw-21-NOANSWER,11,Goto(s\,10)
+exten => sw-21-ANSWER,10,Goto(s\,10)
 exten => sw-21-BUSY,10,Voicemail(b${ext})
-exten => sw-21-BUSY,11,Goto(s|10)
-exten => sw-21-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-21-DONTCALL,11,Goto(s|10)
-exten => sw-21-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-21-TORTURE,11,Goto(s|10)
+exten => sw-21-BUSY,11,Goto(s\,10)
+exten => sw-21-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-21-DONTCALL,11,Goto(s\,10)
+exten => sw-21-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-21-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_20]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-22-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-22-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_20-22)
 exten => s,11,Return()
 exten => _sw-22-.,10,Voicemail(u${ext})
-exten => _sw-22-.,11,Goto(s|10)
+exten => _sw-22-.,11,Goto(s\,10)
 exten => sw-22-NOANSWER,10,Voicemail(u${ext})
-exten => sw-22-NOANSWER,11,Goto(s|10)
-exten => sw-22-ANSWER,10,Goto(s|10)
+exten => sw-22-NOANSWER,11,Goto(s\,10)
+exten => sw-22-ANSWER,10,Goto(s\,10)
 exten => sw-22-BUSY,10,Voicemail(b${ext})
-exten => sw-22-BUSY,11,Goto(s|10)
-exten => sw-22-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-22-DONTCALL,11,Goto(s|10)
-exten => sw-22-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-22-TORTURE,11,Goto(s|10)
+exten => sw-22-BUSY,11,Goto(s\,10)
+exten => sw-22-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-22-DONTCALL,11,Goto(s\,10)
+exten => sw-22-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-22-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_21]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-23-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-23-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_21-23)
 exten => s,11,Return()
 exten => _sw-23-.,10,Voicemail(u${ext})
-exten => _sw-23-.,11,Goto(s|10)
+exten => _sw-23-.,11,Goto(s\,10)
 exten => sw-23-NOANSWER,10,Voicemail(u${ext})
-exten => sw-23-NOANSWER,11,Goto(s|10)
-exten => sw-23-ANSWER,10,Goto(s|10)
+exten => sw-23-NOANSWER,11,Goto(s\,10)
+exten => sw-23-ANSWER,10,Goto(s\,10)
 exten => sw-23-BUSY,10,Voicemail(b${ext})
-exten => sw-23-BUSY,11,Goto(s|10)
-exten => sw-23-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-23-DONTCALL,11,Goto(s|10)
-exten => sw-23-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-23-TORTURE,11,Goto(s|10)
+exten => sw-23-BUSY,11,Goto(s\,10)
+exten => sw-23-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-23-DONTCALL,11,Goto(s\,10)
+exten => sw-23-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-23-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_22]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-24-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-24-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_22-24)
 exten => s,11,Return()
 exten => _sw-24-.,10,Voicemail(u${ext})
-exten => _sw-24-.,11,Goto(s|10)
+exten => _sw-24-.,11,Goto(s\,10)
 exten => sw-24-NOANSWER,10,Voicemail(u${ext})
-exten => sw-24-NOANSWER,11,Goto(s|10)
-exten => sw-24-ANSWER,10,Goto(s|10)
+exten => sw-24-NOANSWER,11,Goto(s\,10)
+exten => sw-24-ANSWER,10,Goto(s\,10)
 exten => sw-24-BUSY,10,Voicemail(b${ext})
-exten => sw-24-BUSY,11,Goto(s|10)
-exten => sw-24-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-24-DONTCALL,11,Goto(s|10)
-exten => sw-24-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-24-TORTURE,11,Goto(s|10)
+exten => sw-24-BUSY,11,Goto(s\,10)
+exten => sw-24-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-24-DONTCALL,11,Goto(s\,10)
+exten => sw-24-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-24-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_23]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-25-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-25-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_23-25)
 exten => s,11,Return()
 exten => _sw-25-.,10,Voicemail(u${ext})
-exten => _sw-25-.,11,Goto(s|10)
+exten => _sw-25-.,11,Goto(s\,10)
 exten => sw-25-NOANSWER,10,Voicemail(u${ext})
-exten => sw-25-NOANSWER,11,Goto(s|10)
-exten => sw-25-ANSWER,10,Goto(s|10)
+exten => sw-25-NOANSWER,11,Goto(s\,10)
+exten => sw-25-ANSWER,10,Goto(s\,10)
 exten => sw-25-BUSY,10,Voicemail(b${ext})
-exten => sw-25-BUSY,11,Goto(s|10)
-exten => sw-25-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-25-DONTCALL,11,Goto(s|10)
-exten => sw-25-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-25-TORTURE,11,Goto(s|10)
+exten => sw-25-BUSY,11,Goto(s\,10)
+exten => sw-25-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-25-DONTCALL,11,Goto(s\,10)
+exten => sw-25-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-25-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_24]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-26-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-26-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_24-26)
 exten => s,11,Return()
 exten => _sw-26-.,10,Voicemail(u${ext})
-exten => _sw-26-.,11,Goto(s|10)
+exten => _sw-26-.,11,Goto(s\,10)
 exten => sw-26-NOANSWER,10,Voicemail(u${ext})
-exten => sw-26-NOANSWER,11,Goto(s|10)
-exten => sw-26-ANSWER,10,Goto(s|10)
+exten => sw-26-NOANSWER,11,Goto(s\,10)
+exten => sw-26-ANSWER,10,Goto(s\,10)
 exten => sw-26-BUSY,10,Voicemail(b${ext})
-exten => sw-26-BUSY,11,Goto(s|10)
-exten => sw-26-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-26-DONTCALL,11,Goto(s|10)
-exten => sw-26-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-26-TORTURE,11,Goto(s|10)
+exten => sw-26-BUSY,11,Goto(s\,10)
+exten => sw-26-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-26-DONTCALL,11,Goto(s\,10)
+exten => sw-26-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-26-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_25]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-27-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-27-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_25-27)
 exten => s,11,Return()
 exten => _sw-27-.,10,Voicemail(u${ext})
-exten => _sw-27-.,11,Goto(s|10)
+exten => _sw-27-.,11,Goto(s\,10)
 exten => sw-27-NOANSWER,10,Voicemail(u${ext})
-exten => sw-27-NOANSWER,11,Goto(s|10)
-exten => sw-27-ANSWER,10,Goto(s|10)
+exten => sw-27-NOANSWER,11,Goto(s\,10)
+exten => sw-27-ANSWER,10,Goto(s\,10)
 exten => sw-27-BUSY,10,Voicemail(b${ext})
-exten => sw-27-BUSY,11,Goto(s|10)
-exten => sw-27-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-27-DONTCALL,11,Goto(s|10)
-exten => sw-27-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-27-TORTURE,11,Goto(s|10)
+exten => sw-27-BUSY,11,Goto(s\,10)
+exten => sw-27-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-27-DONTCALL,11,Goto(s\,10)
+exten => sw-27-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-27-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_26]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-28-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-28-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_26-28)
 exten => s,11,Return()
 exten => _sw-28-.,10,Voicemail(u${ext})
-exten => _sw-28-.,11,Goto(s|10)
+exten => _sw-28-.,11,Goto(s\,10)
 exten => sw-28-NOANSWER,10,Voicemail(u${ext})
-exten => sw-28-NOANSWER,11,Goto(s|10)
-exten => sw-28-ANSWER,10,Goto(s|10)
+exten => sw-28-NOANSWER,11,Goto(s\,10)
+exten => sw-28-ANSWER,10,Goto(s\,10)
 exten => sw-28-BUSY,10,Voicemail(b${ext})
-exten => sw-28-BUSY,11,Goto(s|10)
-exten => sw-28-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-28-DONTCALL,11,Goto(s|10)
-exten => sw-28-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-28-TORTURE,11,Goto(s|10)
+exten => sw-28-BUSY,11,Goto(s\,10)
+exten => sw-28-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-28-DONTCALL,11,Goto(s\,10)
+exten => sw-28-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-28-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_27]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-29-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-29-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_27-29)
 exten => s,11,Return()
 exten => _sw-29-.,10,Voicemail(u${ext})
-exten => _sw-29-.,11,Goto(s|10)
+exten => _sw-29-.,11,Goto(s\,10)
 exten => sw-29-NOANSWER,10,Voicemail(u${ext})
-exten => sw-29-NOANSWER,11,Goto(s|10)
-exten => sw-29-ANSWER,10,Goto(s|10)
+exten => sw-29-NOANSWER,11,Goto(s\,10)
+exten => sw-29-ANSWER,10,Goto(s\,10)
 exten => sw-29-BUSY,10,Voicemail(b${ext})
-exten => sw-29-BUSY,11,Goto(s|10)
-exten => sw-29-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-29-DONTCALL,11,Goto(s|10)
-exten => sw-29-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-29-TORTURE,11,Goto(s|10)
+exten => sw-29-BUSY,11,Goto(s\,10)
+exten => sw-29-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-29-DONTCALL,11,Goto(s\,10)
+exten => sw-29-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-29-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_28]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-30-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-30-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_28-30)
 exten => s,11,Return()
 exten => _sw-30-.,10,Voicemail(u${ext})
-exten => _sw-30-.,11,Goto(s|10)
+exten => _sw-30-.,11,Goto(s\,10)
 exten => sw-30-NOANSWER,10,Voicemail(u${ext})
-exten => sw-30-NOANSWER,11,Goto(s|10)
-exten => sw-30-ANSWER,10,Goto(s|10)
+exten => sw-30-NOANSWER,11,Goto(s\,10)
+exten => sw-30-ANSWER,10,Goto(s\,10)
 exten => sw-30-BUSY,10,Voicemail(b${ext})
-exten => sw-30-BUSY,11,Goto(s|10)
-exten => sw-30-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-30-DONTCALL,11,Goto(s|10)
-exten => sw-30-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-30-TORTURE,11,Goto(s|10)
+exten => sw-30-BUSY,11,Goto(s\,10)
+exten => sw-30-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-30-DONTCALL,11,Goto(s\,10)
+exten => sw-30-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-30-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_29]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-31-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-31-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_29-31)
 exten => s,11,Return()
 exten => _sw-31-.,10,Voicemail(u${ext})
-exten => _sw-31-.,11,Goto(s|10)
+exten => _sw-31-.,11,Goto(s\,10)
 exten => sw-31-NOANSWER,10,Voicemail(u${ext})
-exten => sw-31-NOANSWER,11,Goto(s|10)
-exten => sw-31-ANSWER,10,Goto(s|10)
+exten => sw-31-NOANSWER,11,Goto(s\,10)
+exten => sw-31-ANSWER,10,Goto(s\,10)
 exten => sw-31-BUSY,10,Voicemail(b${ext})
-exten => sw-31-BUSY,11,Goto(s|10)
-exten => sw-31-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-31-DONTCALL,11,Goto(s|10)
-exten => sw-31-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-31-TORTURE,11,Goto(s|10)
+exten => sw-31-BUSY,11,Goto(s\,10)
+exten => sw-31-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-31-DONTCALL,11,Goto(s\,10)
+exten => sw-31-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-31-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_30]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-32-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-32-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_30-32)
 exten => s,11,Return()
 exten => _sw-32-.,10,Voicemail(u${ext})
-exten => _sw-32-.,11,Goto(s|10)
+exten => _sw-32-.,11,Goto(s\,10)
 exten => sw-32-NOANSWER,10,Voicemail(u${ext})
-exten => sw-32-NOANSWER,11,Goto(s|10)
-exten => sw-32-ANSWER,10,Goto(s|10)
+exten => sw-32-NOANSWER,11,Goto(s\,10)
+exten => sw-32-ANSWER,10,Goto(s\,10)
 exten => sw-32-BUSY,10,Voicemail(b${ext})
-exten => sw-32-BUSY,11,Goto(s|10)
-exten => sw-32-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-32-DONTCALL,11,Goto(s|10)
-exten => sw-32-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-32-TORTURE,11,Goto(s|10)
+exten => sw-32-BUSY,11,Goto(s\,10)
+exten => sw-32-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-32-DONTCALL,11,Goto(s\,10)
+exten => sw-32-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-32-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_31]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-33-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-33-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_31-33)
 exten => s,11,Return()
 exten => _sw-33-.,10,Voicemail(u${ext})
-exten => _sw-33-.,11,Goto(s|10)
+exten => _sw-33-.,11,Goto(s\,10)
 exten => sw-33-NOANSWER,10,Voicemail(u${ext})
-exten => sw-33-NOANSWER,11,Goto(s|10)
-exten => sw-33-ANSWER,10,Goto(s|10)
+exten => sw-33-NOANSWER,11,Goto(s\,10)
+exten => sw-33-ANSWER,10,Goto(s\,10)
 exten => sw-33-BUSY,10,Voicemail(b${ext})
-exten => sw-33-BUSY,11,Goto(s|10)
-exten => sw-33-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-33-DONTCALL,11,Goto(s|10)
-exten => sw-33-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-33-TORTURE,11,Goto(s|10)
+exten => sw-33-BUSY,11,Goto(s\,10)
+exten => sw-33-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-33-DONTCALL,11,Goto(s\,10)
+exten => sw-33-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-33-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_32]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-34-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-34-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_32-34)
 exten => s,11,Return()
 exten => _sw-34-.,10,Voicemail(u${ext})
-exten => _sw-34-.,11,Goto(s|10)
+exten => _sw-34-.,11,Goto(s\,10)
 exten => sw-34-NOANSWER,10,Voicemail(u${ext})
-exten => sw-34-NOANSWER,11,Goto(s|10)
-exten => sw-34-ANSWER,10,Goto(s|10)
+exten => sw-34-NOANSWER,11,Goto(s\,10)
+exten => sw-34-ANSWER,10,Goto(s\,10)
 exten => sw-34-BUSY,10,Voicemail(b${ext})
-exten => sw-34-BUSY,11,Goto(s|10)
-exten => sw-34-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-34-DONTCALL,11,Goto(s|10)
-exten => sw-34-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-34-TORTURE,11,Goto(s|10)
+exten => sw-34-BUSY,11,Goto(s\,10)
+exten => sw-34-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-34-DONTCALL,11,Goto(s\,10)
+exten => sw-34-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-34-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_33]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-35-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-35-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_33-35)
 exten => s,11,Return()
 exten => _sw-35-.,10,Voicemail(u${ext})
-exten => _sw-35-.,11,Goto(s|10)
+exten => _sw-35-.,11,Goto(s\,10)
 exten => sw-35-NOANSWER,10,Voicemail(u${ext})
-exten => sw-35-NOANSWER,11,Goto(s|10)
-exten => sw-35-ANSWER,10,Goto(s|10)
+exten => sw-35-NOANSWER,11,Goto(s\,10)
+exten => sw-35-ANSWER,10,Goto(s\,10)
 exten => sw-35-BUSY,10,Voicemail(b${ext})
-exten => sw-35-BUSY,11,Goto(s|10)
-exten => sw-35-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-35-DONTCALL,11,Goto(s|10)
-exten => sw-35-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-35-TORTURE,11,Goto(s|10)
+exten => sw-35-BUSY,11,Goto(s\,10)
+exten => sw-35-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-35-DONTCALL,11,Goto(s\,10)
+exten => sw-35-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-35-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_34]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-36-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-36-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_34-36)
 exten => s,11,Return()
 exten => _sw-36-.,10,Voicemail(u${ext})
-exten => _sw-36-.,11,Goto(s|10)
+exten => _sw-36-.,11,Goto(s\,10)
 exten => sw-36-NOANSWER,10,Voicemail(u${ext})
-exten => sw-36-NOANSWER,11,Goto(s|10)
-exten => sw-36-ANSWER,10,Goto(s|10)
+exten => sw-36-NOANSWER,11,Goto(s\,10)
+exten => sw-36-ANSWER,10,Goto(s\,10)
 exten => sw-36-BUSY,10,Voicemail(b${ext})
-exten => sw-36-BUSY,11,Goto(s|10)
-exten => sw-36-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-36-DONTCALL,11,Goto(s|10)
-exten => sw-36-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-36-TORTURE,11,Goto(s|10)
+exten => sw-36-BUSY,11,Goto(s\,10)
+exten => sw-36-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-36-DONTCALL,11,Goto(s\,10)
+exten => sw-36-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-36-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_35]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-37-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-37-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_35-37)
 exten => s,11,Return()
 exten => _sw-37-.,10,Voicemail(u${ext})
-exten => _sw-37-.,11,Goto(s|10)
+exten => _sw-37-.,11,Goto(s\,10)
 exten => sw-37-NOANSWER,10,Voicemail(u${ext})
-exten => sw-37-NOANSWER,11,Goto(s|10)
-exten => sw-37-ANSWER,10,Goto(s|10)
+exten => sw-37-NOANSWER,11,Goto(s\,10)
+exten => sw-37-ANSWER,10,Goto(s\,10)
 exten => sw-37-BUSY,10,Voicemail(b${ext})
-exten => sw-37-BUSY,11,Goto(s|10)
-exten => sw-37-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-37-DONTCALL,11,Goto(s|10)
-exten => sw-37-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-37-TORTURE,11,Goto(s|10)
+exten => sw-37-BUSY,11,Goto(s\,10)
+exten => sw-37-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-37-DONTCALL,11,Goto(s\,10)
+exten => sw-37-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-37-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_36]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-38-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-38-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_36-38)
 exten => s,11,Return()
 exten => _sw-38-.,10,Voicemail(u${ext})
-exten => _sw-38-.,11,Goto(s|10)
+exten => _sw-38-.,11,Goto(s\,10)
 exten => sw-38-NOANSWER,10,Voicemail(u${ext})
-exten => sw-38-NOANSWER,11,Goto(s|10)
-exten => sw-38-ANSWER,10,Goto(s|10)
+exten => sw-38-NOANSWER,11,Goto(s\,10)
+exten => sw-38-ANSWER,10,Goto(s\,10)
 exten => sw-38-BUSY,10,Voicemail(b${ext})
-exten => sw-38-BUSY,11,Goto(s|10)
-exten => sw-38-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-38-DONTCALL,11,Goto(s|10)
-exten => sw-38-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-38-TORTURE,11,Goto(s|10)
+exten => sw-38-BUSY,11,Goto(s\,10)
+exten => sw-38-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-38-DONTCALL,11,Goto(s\,10)
+exten => sw-38-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-38-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_37]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-39-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-39-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_37-39)
 exten => s,11,Return()
 exten => _sw-39-.,10,Voicemail(u${ext})
-exten => _sw-39-.,11,Goto(s|10)
+exten => _sw-39-.,11,Goto(s\,10)
 exten => sw-39-NOANSWER,10,Voicemail(u${ext})
-exten => sw-39-NOANSWER,11,Goto(s|10)
-exten => sw-39-ANSWER,10,Goto(s|10)
+exten => sw-39-NOANSWER,11,Goto(s\,10)
+exten => sw-39-ANSWER,10,Goto(s\,10)
 exten => sw-39-BUSY,10,Voicemail(b${ext})
-exten => sw-39-BUSY,11,Goto(s|10)
-exten => sw-39-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-39-DONTCALL,11,Goto(s|10)
-exten => sw-39-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-39-TORTURE,11,Goto(s|10)
+exten => sw-39-BUSY,11,Goto(s\,10)
+exten => sw-39-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-39-DONTCALL,11,Goto(s\,10)
+exten => sw-39-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-39-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_38]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-40-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-40-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_38-40)
 exten => s,11,Return()
 exten => _sw-40-.,10,Voicemail(u${ext})
-exten => _sw-40-.,11,Goto(s|10)
+exten => _sw-40-.,11,Goto(s\,10)
 exten => sw-40-NOANSWER,10,Voicemail(u${ext})
-exten => sw-40-NOANSWER,11,Goto(s|10)
-exten => sw-40-ANSWER,10,Goto(s|10)
+exten => sw-40-NOANSWER,11,Goto(s\,10)
+exten => sw-40-ANSWER,10,Goto(s\,10)
 exten => sw-40-BUSY,10,Voicemail(b${ext})
-exten => sw-40-BUSY,11,Goto(s|10)
-exten => sw-40-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-40-DONTCALL,11,Goto(s|10)
-exten => sw-40-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-40-TORTURE,11,Goto(s|10)
+exten => sw-40-BUSY,11,Goto(s\,10)
+exten => sw-40-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-40-DONTCALL,11,Goto(s\,10)
+exten => sw-40-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-40-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_39]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-41-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-41-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_39-41)
 exten => s,11,Return()
 exten => _sw-41-.,10,Voicemail(u${ext})
-exten => _sw-41-.,11,Goto(s|10)
+exten => _sw-41-.,11,Goto(s\,10)
 exten => sw-41-NOANSWER,10,Voicemail(u${ext})
-exten => sw-41-NOANSWER,11,Goto(s|10)
-exten => sw-41-ANSWER,10,Goto(s|10)
+exten => sw-41-NOANSWER,11,Goto(s\,10)
+exten => sw-41-ANSWER,10,Goto(s\,10)
 exten => sw-41-BUSY,10,Voicemail(b${ext})
-exten => sw-41-BUSY,11,Goto(s|10)
-exten => sw-41-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-41-DONTCALL,11,Goto(s|10)
-exten => sw-41-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-41-TORTURE,11,Goto(s|10)
+exten => sw-41-BUSY,11,Goto(s\,10)
+exten => sw-41-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-41-DONTCALL,11,Goto(s\,10)
+exten => sw-41-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-41-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_40]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-42-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-42-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_40-42)
 exten => s,11,Return()
 exten => _sw-42-.,10,Voicemail(u${ext})
-exten => _sw-42-.,11,Goto(s|10)
+exten => _sw-42-.,11,Goto(s\,10)
 exten => sw-42-NOANSWER,10,Voicemail(u${ext})
-exten => sw-42-NOANSWER,11,Goto(s|10)
-exten => sw-42-ANSWER,10,Goto(s|10)
+exten => sw-42-NOANSWER,11,Goto(s\,10)
+exten => sw-42-ANSWER,10,Goto(s\,10)
 exten => sw-42-BUSY,10,Voicemail(b${ext})
-exten => sw-42-BUSY,11,Goto(s|10)
-exten => sw-42-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-42-DONTCALL,11,Goto(s|10)
-exten => sw-42-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-42-TORTURE,11,Goto(s|10)
+exten => sw-42-BUSY,11,Goto(s\,10)
+exten => sw-42-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-42-DONTCALL,11,Goto(s\,10)
+exten => sw-42-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-42-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_41]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-43-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-43-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_41-43)
 exten => s,11,Return()
 exten => _sw-43-.,10,Voicemail(u${ext})
-exten => _sw-43-.,11,Goto(s|10)
+exten => _sw-43-.,11,Goto(s\,10)
 exten => sw-43-NOANSWER,10,Voicemail(u${ext})
-exten => sw-43-NOANSWER,11,Goto(s|10)
-exten => sw-43-ANSWER,10,Goto(s|10)
+exten => sw-43-NOANSWER,11,Goto(s\,10)
+exten => sw-43-ANSWER,10,Goto(s\,10)
 exten => sw-43-BUSY,10,Voicemail(b${ext})
-exten => sw-43-BUSY,11,Goto(s|10)
-exten => sw-43-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-43-DONTCALL,11,Goto(s|10)
-exten => sw-43-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-43-TORTURE,11,Goto(s|10)
+exten => sw-43-BUSY,11,Goto(s\,10)
+exten => sw-43-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-43-DONTCALL,11,Goto(s\,10)
+exten => sw-43-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-43-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_42]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-44-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-44-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_42-44)
 exten => s,11,Return()
 exten => _sw-44-.,10,Voicemail(u${ext})
-exten => _sw-44-.,11,Goto(s|10)
+exten => _sw-44-.,11,Goto(s\,10)
 exten => sw-44-NOANSWER,10,Voicemail(u${ext})
-exten => sw-44-NOANSWER,11,Goto(s|10)
-exten => sw-44-ANSWER,10,Goto(s|10)
+exten => sw-44-NOANSWER,11,Goto(s\,10)
+exten => sw-44-ANSWER,10,Goto(s\,10)
 exten => sw-44-BUSY,10,Voicemail(b${ext})
-exten => sw-44-BUSY,11,Goto(s|10)
-exten => sw-44-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-44-DONTCALL,11,Goto(s|10)
-exten => sw-44-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-44-TORTURE,11,Goto(s|10)
+exten => sw-44-BUSY,11,Goto(s\,10)
+exten => sw-44-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-44-DONTCALL,11,Goto(s\,10)
+exten => sw-44-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-44-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_43]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-45-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-45-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_43-45)
 exten => s,11,Return()
 exten => _sw-45-.,10,Voicemail(u${ext})
-exten => _sw-45-.,11,Goto(s|10)
+exten => _sw-45-.,11,Goto(s\,10)
 exten => sw-45-NOANSWER,10,Voicemail(u${ext})
-exten => sw-45-NOANSWER,11,Goto(s|10)
-exten => sw-45-ANSWER,10,Goto(s|10)
+exten => sw-45-NOANSWER,11,Goto(s\,10)
+exten => sw-45-ANSWER,10,Goto(s\,10)
 exten => sw-45-BUSY,10,Voicemail(b${ext})
-exten => sw-45-BUSY,11,Goto(s|10)
-exten => sw-45-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-45-DONTCALL,11,Goto(s|10)
-exten => sw-45-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-45-TORTURE,11,Goto(s|10)
+exten => sw-45-BUSY,11,Goto(s\,10)
+exten => sw-45-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-45-DONTCALL,11,Goto(s\,10)
+exten => sw-45-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-45-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_44]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-46-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-46-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_44-46)
 exten => s,11,Return()
 exten => _sw-46-.,10,Voicemail(u${ext})
-exten => _sw-46-.,11,Goto(s|10)
+exten => _sw-46-.,11,Goto(s\,10)
 exten => sw-46-NOANSWER,10,Voicemail(u${ext})
-exten => sw-46-NOANSWER,11,Goto(s|10)
-exten => sw-46-ANSWER,10,Goto(s|10)
+exten => sw-46-NOANSWER,11,Goto(s\,10)
+exten => sw-46-ANSWER,10,Goto(s\,10)
 exten => sw-46-BUSY,10,Voicemail(b${ext})
-exten => sw-46-BUSY,11,Goto(s|10)
-exten => sw-46-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-46-DONTCALL,11,Goto(s|10)
-exten => sw-46-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-46-TORTURE,11,Goto(s|10)
+exten => sw-46-BUSY,11,Goto(s\,10)
+exten => sw-46-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-46-DONTCALL,11,Goto(s\,10)
+exten => sw-46-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-46-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_45]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-47-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-47-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_45-47)
 exten => s,11,Return()
 exten => _sw-47-.,10,Voicemail(u${ext})
-exten => _sw-47-.,11,Goto(s|10)
+exten => _sw-47-.,11,Goto(s\,10)
 exten => sw-47-NOANSWER,10,Voicemail(u${ext})
-exten => sw-47-NOANSWER,11,Goto(s|10)
-exten => sw-47-ANSWER,10,Goto(s|10)
+exten => sw-47-NOANSWER,11,Goto(s\,10)
+exten => sw-47-ANSWER,10,Goto(s\,10)
 exten => sw-47-BUSY,10,Voicemail(b${ext})
-exten => sw-47-BUSY,11,Goto(s|10)
-exten => sw-47-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-47-DONTCALL,11,Goto(s|10)
-exten => sw-47-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-47-TORTURE,11,Goto(s|10)
+exten => sw-47-BUSY,11,Goto(s\,10)
+exten => sw-47-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-47-DONTCALL,11,Goto(s\,10)
+exten => sw-47-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-47-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_46]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-48-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-48-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_46-48)
 exten => s,11,Return()
 exten => _sw-48-.,10,Voicemail(u${ext})
-exten => _sw-48-.,11,Goto(s|10)
+exten => _sw-48-.,11,Goto(s\,10)
 exten => sw-48-NOANSWER,10,Voicemail(u${ext})
-exten => sw-48-NOANSWER,11,Goto(s|10)
-exten => sw-48-ANSWER,10,Goto(s|10)
+exten => sw-48-NOANSWER,11,Goto(s\,10)
+exten => sw-48-ANSWER,10,Goto(s\,10)
 exten => sw-48-BUSY,10,Voicemail(b${ext})
-exten => sw-48-BUSY,11,Goto(s|10)
-exten => sw-48-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-48-DONTCALL,11,Goto(s|10)
-exten => sw-48-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-48-TORTURE,11,Goto(s|10)
+exten => sw-48-BUSY,11,Goto(s\,10)
+exten => sw-48-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-48-DONTCALL,11,Goto(s\,10)
+exten => sw-48-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-48-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_47]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-49-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-49-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_47-49)
 exten => s,11,Return()
 exten => _sw-49-.,10,Voicemail(u${ext})
-exten => _sw-49-.,11,Goto(s|10)
+exten => _sw-49-.,11,Goto(s\,10)
 exten => sw-49-NOANSWER,10,Voicemail(u${ext})
-exten => sw-49-NOANSWER,11,Goto(s|10)
-exten => sw-49-ANSWER,10,Goto(s|10)
+exten => sw-49-NOANSWER,11,Goto(s\,10)
+exten => sw-49-ANSWER,10,Goto(s\,10)
 exten => sw-49-BUSY,10,Voicemail(b${ext})
-exten => sw-49-BUSY,11,Goto(s|10)
-exten => sw-49-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-49-DONTCALL,11,Goto(s|10)
-exten => sw-49-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-49-TORTURE,11,Goto(s|10)
+exten => sw-49-BUSY,11,Goto(s\,10)
+exten => sw-49-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-49-DONTCALL,11,Goto(s\,10)
+exten => sw-49-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-49-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_48]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-50-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-50-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_48-50)
 exten => s,11,Return()
 exten => _sw-50-.,10,Voicemail(u${ext})
-exten => _sw-50-.,11,Goto(s|10)
+exten => _sw-50-.,11,Goto(s\,10)
 exten => sw-50-NOANSWER,10,Voicemail(u${ext})
-exten => sw-50-NOANSWER,11,Goto(s|10)
-exten => sw-50-ANSWER,10,Goto(s|10)
+exten => sw-50-NOANSWER,11,Goto(s\,10)
+exten => sw-50-ANSWER,10,Goto(s\,10)
 exten => sw-50-BUSY,10,Voicemail(b${ext})
-exten => sw-50-BUSY,11,Goto(s|10)
-exten => sw-50-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-50-DONTCALL,11,Goto(s|10)
-exten => sw-50-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-50-TORTURE,11,Goto(s|10)
+exten => sw-50-BUSY,11,Goto(s\,10)
+exten => sw-50-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-50-DONTCALL,11,Goto(s\,10)
+exten => sw-50-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-50-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_49]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-51-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-51-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_49-51)
 exten => s,11,Return()
 exten => _sw-51-.,10,Voicemail(u${ext})
-exten => _sw-51-.,11,Goto(s|10)
+exten => _sw-51-.,11,Goto(s\,10)
 exten => sw-51-NOANSWER,10,Voicemail(u${ext})
-exten => sw-51-NOANSWER,11,Goto(s|10)
-exten => sw-51-ANSWER,10,Goto(s|10)
+exten => sw-51-NOANSWER,11,Goto(s\,10)
+exten => sw-51-ANSWER,10,Goto(s\,10)
 exten => sw-51-BUSY,10,Voicemail(b${ext})
-exten => sw-51-BUSY,11,Goto(s|10)
-exten => sw-51-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-51-DONTCALL,11,Goto(s|10)
-exten => sw-51-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-51-TORTURE,11,Goto(s|10)
+exten => sw-51-BUSY,11,Goto(s\,10)
+exten => sw-51-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-51-DONTCALL,11,Goto(s\,10)
+exten => sw-51-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-51-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_50]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-52-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-52-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_50-52)
 exten => s,11,Return()
 exten => _sw-52-.,10,Voicemail(u${ext})
-exten => _sw-52-.,11,Goto(s|10)
+exten => _sw-52-.,11,Goto(s\,10)
 exten => sw-52-NOANSWER,10,Voicemail(u${ext})
-exten => sw-52-NOANSWER,11,Goto(s|10)
-exten => sw-52-ANSWER,10,Goto(s|10)
+exten => sw-52-NOANSWER,11,Goto(s\,10)
+exten => sw-52-ANSWER,10,Goto(s\,10)
 exten => sw-52-BUSY,10,Voicemail(b${ext})
-exten => sw-52-BUSY,11,Goto(s|10)
-exten => sw-52-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-52-DONTCALL,11,Goto(s|10)
-exten => sw-52-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-52-TORTURE,11,Goto(s|10)
+exten => sw-52-BUSY,11,Goto(s\,10)
+exten => sw-52-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-52-DONTCALL,11,Goto(s\,10)
+exten => sw-52-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-52-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_51]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-53-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-53-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_51-53)
 exten => s,11,Return()
 exten => _sw-53-.,10,Voicemail(u${ext})
-exten => _sw-53-.,11,Goto(s|10)
+exten => _sw-53-.,11,Goto(s\,10)
 exten => sw-53-NOANSWER,10,Voicemail(u${ext})
-exten => sw-53-NOANSWER,11,Goto(s|10)
-exten => sw-53-ANSWER,10,Goto(s|10)
+exten => sw-53-NOANSWER,11,Goto(s\,10)
+exten => sw-53-ANSWER,10,Goto(s\,10)
 exten => sw-53-BUSY,10,Voicemail(b${ext})
-exten => sw-53-BUSY,11,Goto(s|10)
-exten => sw-53-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-53-DONTCALL,11,Goto(s|10)
-exten => sw-53-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-53-TORTURE,11,Goto(s|10)
+exten => sw-53-BUSY,11,Goto(s\,10)
+exten => sw-53-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-53-DONTCALL,11,Goto(s\,10)
+exten => sw-53-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-53-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_52]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-54-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-54-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_52-54)
 exten => s,11,Return()
 exten => _sw-54-.,10,Voicemail(u${ext})
-exten => _sw-54-.,11,Goto(s|10)
+exten => _sw-54-.,11,Goto(s\,10)
 exten => sw-54-NOANSWER,10,Voicemail(u${ext})
-exten => sw-54-NOANSWER,11,Goto(s|10)
-exten => sw-54-ANSWER,10,Goto(s|10)
+exten => sw-54-NOANSWER,11,Goto(s\,10)
+exten => sw-54-ANSWER,10,Goto(s\,10)
 exten => sw-54-BUSY,10,Voicemail(b${ext})
-exten => sw-54-BUSY,11,Goto(s|10)
-exten => sw-54-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-54-DONTCALL,11,Goto(s|10)
-exten => sw-54-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-54-TORTURE,11,Goto(s|10)
+exten => sw-54-BUSY,11,Goto(s\,10)
+exten => sw-54-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-54-DONTCALL,11,Goto(s\,10)
+exten => sw-54-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-54-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_53]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-55-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-55-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_53-55)
 exten => s,11,Return()
 exten => _sw-55-.,10,Voicemail(u${ext})
-exten => _sw-55-.,11,Goto(s|10)
+exten => _sw-55-.,11,Goto(s\,10)
 exten => sw-55-NOANSWER,10,Voicemail(u${ext})
-exten => sw-55-NOANSWER,11,Goto(s|10)
-exten => sw-55-ANSWER,10,Goto(s|10)
+exten => sw-55-NOANSWER,11,Goto(s\,10)
+exten => sw-55-ANSWER,10,Goto(s\,10)
 exten => sw-55-BUSY,10,Voicemail(b${ext})
-exten => sw-55-BUSY,11,Goto(s|10)
-exten => sw-55-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-55-DONTCALL,11,Goto(s|10)
-exten => sw-55-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-55-TORTURE,11,Goto(s|10)
+exten => sw-55-BUSY,11,Goto(s\,10)
+exten => sw-55-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-55-DONTCALL,11,Goto(s\,10)
+exten => sw-55-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-55-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_54]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-56-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-56-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_54-56)
 exten => s,11,Return()
 exten => _sw-56-.,10,Voicemail(u${ext})
-exten => _sw-56-.,11,Goto(s|10)
+exten => _sw-56-.,11,Goto(s\,10)
 exten => sw-56-NOANSWER,10,Voicemail(u${ext})
-exten => sw-56-NOANSWER,11,Goto(s|10)
-exten => sw-56-ANSWER,10,Goto(s|10)
+exten => sw-56-NOANSWER,11,Goto(s\,10)
+exten => sw-56-ANSWER,10,Goto(s\,10)
 exten => sw-56-BUSY,10,Voicemail(b${ext})
-exten => sw-56-BUSY,11,Goto(s|10)
-exten => sw-56-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-56-DONTCALL,11,Goto(s|10)
-exten => sw-56-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-56-TORTURE,11,Goto(s|10)
+exten => sw-56-BUSY,11,Goto(s\,10)
+exten => sw-56-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-56-DONTCALL,11,Goto(s\,10)
+exten => sw-56-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-56-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_55]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-57-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-57-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_55-57)
 exten => s,11,Return()
 exten => _sw-57-.,10,Voicemail(u${ext})
-exten => _sw-57-.,11,Goto(s|10)
+exten => _sw-57-.,11,Goto(s\,10)
 exten => sw-57-NOANSWER,10,Voicemail(u${ext})
-exten => sw-57-NOANSWER,11,Goto(s|10)
-exten => sw-57-ANSWER,10,Goto(s|10)
+exten => sw-57-NOANSWER,11,Goto(s\,10)
+exten => sw-57-ANSWER,10,Goto(s\,10)
 exten => sw-57-BUSY,10,Voicemail(b${ext})
-exten => sw-57-BUSY,11,Goto(s|10)
-exten => sw-57-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-57-DONTCALL,11,Goto(s|10)
-exten => sw-57-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-57-TORTURE,11,Goto(s|10)
+exten => sw-57-BUSY,11,Goto(s\,10)
+exten => sw-57-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-57-DONTCALL,11,Goto(s\,10)
+exten => sw-57-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-57-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_56]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-58-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-58-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_56-58)
 exten => s,11,Return()
 exten => _sw-58-.,10,Voicemail(u${ext})
-exten => _sw-58-.,11,Goto(s|10)
+exten => _sw-58-.,11,Goto(s\,10)
 exten => sw-58-NOANSWER,10,Voicemail(u${ext})
-exten => sw-58-NOANSWER,11,Goto(s|10)
-exten => sw-58-ANSWER,10,Goto(s|10)
+exten => sw-58-NOANSWER,11,Goto(s\,10)
+exten => sw-58-ANSWER,10,Goto(s\,10)
 exten => sw-58-BUSY,10,Voicemail(b${ext})
-exten => sw-58-BUSY,11,Goto(s|10)
-exten => sw-58-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-58-DONTCALL,11,Goto(s|10)
-exten => sw-58-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-58-TORTURE,11,Goto(s|10)
+exten => sw-58-BUSY,11,Goto(s\,10)
+exten => sw-58-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-58-DONTCALL,11,Goto(s\,10)
+exten => sw-58-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-58-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_57]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-59-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-59-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_57-59)
 exten => s,11,Return()
 exten => _sw-59-.,10,Voicemail(u${ext})
-exten => _sw-59-.,11,Goto(s|10)
+exten => _sw-59-.,11,Goto(s\,10)
 exten => sw-59-NOANSWER,10,Voicemail(u${ext})
-exten => sw-59-NOANSWER,11,Goto(s|10)
-exten => sw-59-ANSWER,10,Goto(s|10)
+exten => sw-59-NOANSWER,11,Goto(s\,10)
+exten => sw-59-ANSWER,10,Goto(s\,10)
 exten => sw-59-BUSY,10,Voicemail(b${ext})
-exten => sw-59-BUSY,11,Goto(s|10)
-exten => sw-59-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-59-DONTCALL,11,Goto(s|10)
-exten => sw-59-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-59-TORTURE,11,Goto(s|10)
+exten => sw-59-BUSY,11,Goto(s\,10)
+exten => sw-59-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-59-DONTCALL,11,Goto(s\,10)
+exten => sw-59-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-59-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_58]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-60-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-60-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_58-60)
 exten => s,11,Return()
 exten => _sw-60-.,10,Voicemail(u${ext})
-exten => _sw-60-.,11,Goto(s|10)
+exten => _sw-60-.,11,Goto(s\,10)
 exten => sw-60-NOANSWER,10,Voicemail(u${ext})
-exten => sw-60-NOANSWER,11,Goto(s|10)
-exten => sw-60-ANSWER,10,Goto(s|10)
+exten => sw-60-NOANSWER,11,Goto(s\,10)
+exten => sw-60-ANSWER,10,Goto(s\,10)
 exten => sw-60-BUSY,10,Voicemail(b${ext})
-exten => sw-60-BUSY,11,Goto(s|10)
-exten => sw-60-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-60-DONTCALL,11,Goto(s|10)
-exten => sw-60-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-60-TORTURE,11,Goto(s|10)
+exten => sw-60-BUSY,11,Goto(s\,10)
+exten => sw-60-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-60-DONTCALL,11,Goto(s\,10)
+exten => sw-60-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-60-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_59]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-61-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-61-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_59-61)
 exten => s,11,Return()
 exten => _sw-61-.,10,Voicemail(u${ext})
-exten => _sw-61-.,11,Goto(s|10)
+exten => _sw-61-.,11,Goto(s\,10)
 exten => sw-61-NOANSWER,10,Voicemail(u${ext})
-exten => sw-61-NOANSWER,11,Goto(s|10)
-exten => sw-61-ANSWER,10,Goto(s|10)
+exten => sw-61-NOANSWER,11,Goto(s\,10)
+exten => sw-61-ANSWER,10,Goto(s\,10)
 exten => sw-61-BUSY,10,Voicemail(b${ext})
-exten => sw-61-BUSY,11,Goto(s|10)
-exten => sw-61-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-61-DONTCALL,11,Goto(s|10)
-exten => sw-61-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-61-TORTURE,11,Goto(s|10)
+exten => sw-61-BUSY,11,Goto(s\,10)
+exten => sw-61-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-61-DONTCALL,11,Goto(s\,10)
+exten => sw-61-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-61-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_60]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-62-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-62-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_60-62)
 exten => s,11,Return()
 exten => _sw-62-.,10,Voicemail(u${ext})
-exten => _sw-62-.,11,Goto(s|10)
+exten => _sw-62-.,11,Goto(s\,10)
 exten => sw-62-NOANSWER,10,Voicemail(u${ext})
-exten => sw-62-NOANSWER,11,Goto(s|10)
-exten => sw-62-ANSWER,10,Goto(s|10)
+exten => sw-62-NOANSWER,11,Goto(s\,10)
+exten => sw-62-ANSWER,10,Goto(s\,10)
 exten => sw-62-BUSY,10,Voicemail(b${ext})
-exten => sw-62-BUSY,11,Goto(s|10)
-exten => sw-62-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-62-DONTCALL,11,Goto(s|10)
-exten => sw-62-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-62-TORTURE,11,Goto(s|10)
+exten => sw-62-BUSY,11,Goto(s\,10)
+exten => sw-62-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-62-DONTCALL,11,Goto(s\,10)
+exten => sw-62-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-62-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_61]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-63-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-63-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_61-63)
 exten => s,11,Return()
 exten => _sw-63-.,10,Voicemail(u${ext})
-exten => _sw-63-.,11,Goto(s|10)
+exten => _sw-63-.,11,Goto(s\,10)
 exten => sw-63-NOANSWER,10,Voicemail(u${ext})
-exten => sw-63-NOANSWER,11,Goto(s|10)
-exten => sw-63-ANSWER,10,Goto(s|10)
+exten => sw-63-NOANSWER,11,Goto(s\,10)
+exten => sw-63-ANSWER,10,Goto(s\,10)
 exten => sw-63-BUSY,10,Voicemail(b${ext})
-exten => sw-63-BUSY,11,Goto(s|10)
-exten => sw-63-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-63-DONTCALL,11,Goto(s|10)
-exten => sw-63-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-63-TORTURE,11,Goto(s|10)
+exten => sw-63-BUSY,11,Goto(s\,10)
+exten => sw-63-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-63-DONTCALL,11,Goto(s\,10)
+exten => sw-63-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-63-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_62]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-64-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-64-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_62-64)
 exten => s,11,Return()
 exten => _sw-64-.,10,Voicemail(u${ext})
-exten => _sw-64-.,11,Goto(s|10)
+exten => _sw-64-.,11,Goto(s\,10)
 exten => sw-64-NOANSWER,10,Voicemail(u${ext})
-exten => sw-64-NOANSWER,11,Goto(s|10)
-exten => sw-64-ANSWER,10,Goto(s|10)
+exten => sw-64-NOANSWER,11,Goto(s\,10)
+exten => sw-64-ANSWER,10,Goto(s\,10)
 exten => sw-64-BUSY,10,Voicemail(b${ext})
-exten => sw-64-BUSY,11,Goto(s|10)
-exten => sw-64-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-64-DONTCALL,11,Goto(s|10)
-exten => sw-64-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-64-TORTURE,11,Goto(s|10)
+exten => sw-64-BUSY,11,Goto(s\,10)
+exten => sw-64-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-64-DONTCALL,11,Goto(s\,10)
+exten => sw-64-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-64-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_63]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-65-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-65-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_63-65)
 exten => s,11,Return()
 exten => _sw-65-.,10,Voicemail(u${ext})
-exten => _sw-65-.,11,Goto(s|10)
+exten => _sw-65-.,11,Goto(s\,10)
 exten => sw-65-NOANSWER,10,Voicemail(u${ext})
-exten => sw-65-NOANSWER,11,Goto(s|10)
-exten => sw-65-ANSWER,10,Goto(s|10)
+exten => sw-65-NOANSWER,11,Goto(s\,10)
+exten => sw-65-ANSWER,10,Goto(s\,10)
 exten => sw-65-BUSY,10,Voicemail(b${ext})
-exten => sw-65-BUSY,11,Goto(s|10)
-exten => sw-65-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-65-DONTCALL,11,Goto(s|10)
-exten => sw-65-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-65-TORTURE,11,Goto(s|10)
+exten => sw-65-BUSY,11,Goto(s\,10)
+exten => sw-65-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-65-DONTCALL,11,Goto(s\,10)
+exten => sw-65-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-65-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_64]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-66-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-66-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_64-66)
 exten => s,11,Return()
 exten => _sw-66-.,10,Voicemail(u${ext})
-exten => _sw-66-.,11,Goto(s|10)
+exten => _sw-66-.,11,Goto(s\,10)
 exten => sw-66-NOANSWER,10,Voicemail(u${ext})
-exten => sw-66-NOANSWER,11,Goto(s|10)
-exten => sw-66-ANSWER,10,Goto(s|10)
+exten => sw-66-NOANSWER,11,Goto(s\,10)
+exten => sw-66-ANSWER,10,Goto(s\,10)
 exten => sw-66-BUSY,10,Voicemail(b${ext})
-exten => sw-66-BUSY,11,Goto(s|10)
-exten => sw-66-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-66-DONTCALL,11,Goto(s|10)
-exten => sw-66-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-66-TORTURE,11,Goto(s|10)
+exten => sw-66-BUSY,11,Goto(s\,10)
+exten => sw-66-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-66-DONTCALL,11,Goto(s\,10)
+exten => sw-66-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-66-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_65]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-67-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-67-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_65-67)
 exten => s,11,Return()
 exten => _sw-67-.,10,Voicemail(u${ext})
-exten => _sw-67-.,11,Goto(s|10)
+exten => _sw-67-.,11,Goto(s\,10)
 exten => sw-67-NOANSWER,10,Voicemail(u${ext})
-exten => sw-67-NOANSWER,11,Goto(s|10)
-exten => sw-67-ANSWER,10,Goto(s|10)
+exten => sw-67-NOANSWER,11,Goto(s\,10)
+exten => sw-67-ANSWER,10,Goto(s\,10)
 exten => sw-67-BUSY,10,Voicemail(b${ext})
-exten => sw-67-BUSY,11,Goto(s|10)
-exten => sw-67-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-67-DONTCALL,11,Goto(s|10)
-exten => sw-67-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-67-TORTURE,11,Goto(s|10)
+exten => sw-67-BUSY,11,Goto(s\,10)
+exten => sw-67-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-67-DONTCALL,11,Goto(s\,10)
+exten => sw-67-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-67-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_66]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-68-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-68-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_66-68)
 exten => s,11,Return()
 exten => _sw-68-.,10,Voicemail(u${ext})
-exten => _sw-68-.,11,Goto(s|10)
+exten => _sw-68-.,11,Goto(s\,10)
 exten => sw-68-NOANSWER,10,Voicemail(u${ext})
-exten => sw-68-NOANSWER,11,Goto(s|10)
-exten => sw-68-ANSWER,10,Goto(s|10)
+exten => sw-68-NOANSWER,11,Goto(s\,10)
+exten => sw-68-ANSWER,10,Goto(s\,10)
 exten => sw-68-BUSY,10,Voicemail(b${ext})
-exten => sw-68-BUSY,11,Goto(s|10)
-exten => sw-68-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-68-DONTCALL,11,Goto(s|10)
-exten => sw-68-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-68-TORTURE,11,Goto(s|10)
+exten => sw-68-BUSY,11,Goto(s\,10)
+exten => sw-68-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-68-DONTCALL,11,Goto(s\,10)
+exten => sw-68-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-68-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_67]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-69-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-69-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_67-69)
 exten => s,11,Return()
 exten => _sw-69-.,10,Voicemail(u${ext})
-exten => _sw-69-.,11,Goto(s|10)
+exten => _sw-69-.,11,Goto(s\,10)
 exten => sw-69-NOANSWER,10,Voicemail(u${ext})
-exten => sw-69-NOANSWER,11,Goto(s|10)
-exten => sw-69-ANSWER,10,Goto(s|10)
+exten => sw-69-NOANSWER,11,Goto(s\,10)
+exten => sw-69-ANSWER,10,Goto(s\,10)
 exten => sw-69-BUSY,10,Voicemail(b${ext})
-exten => sw-69-BUSY,11,Goto(s|10)
-exten => sw-69-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-69-DONTCALL,11,Goto(s|10)
-exten => sw-69-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-69-TORTURE,11,Goto(s|10)
+exten => sw-69-BUSY,11,Goto(s\,10)
+exten => sw-69-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-69-DONTCALL,11,Goto(s\,10)
+exten => sw-69-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-69-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_68]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-70-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-70-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_68-70)
 exten => s,11,Return()
 exten => _sw-70-.,10,Voicemail(u${ext})
-exten => _sw-70-.,11,Goto(s|10)
+exten => _sw-70-.,11,Goto(s\,10)
 exten => sw-70-NOANSWER,10,Voicemail(u${ext})
-exten => sw-70-NOANSWER,11,Goto(s|10)
-exten => sw-70-ANSWER,10,Goto(s|10)
+exten => sw-70-NOANSWER,11,Goto(s\,10)
+exten => sw-70-ANSWER,10,Goto(s\,10)
 exten => sw-70-BUSY,10,Voicemail(b${ext})
-exten => sw-70-BUSY,11,Goto(s|10)
-exten => sw-70-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-70-DONTCALL,11,Goto(s|10)
-exten => sw-70-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-70-TORTURE,11,Goto(s|10)
+exten => sw-70-BUSY,11,Goto(s\,10)
+exten => sw-70-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-70-DONTCALL,11,Goto(s\,10)
+exten => sw-70-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-70-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_69]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-71-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-71-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_69-71)
 exten => s,11,Return()
 exten => _sw-71-.,10,Voicemail(u${ext})
-exten => _sw-71-.,11,Goto(s|10)
+exten => _sw-71-.,11,Goto(s\,10)
 exten => sw-71-NOANSWER,10,Voicemail(u${ext})
-exten => sw-71-NOANSWER,11,Goto(s|10)
-exten => sw-71-ANSWER,10,Goto(s|10)
+exten => sw-71-NOANSWER,11,Goto(s\,10)
+exten => sw-71-ANSWER,10,Goto(s\,10)
 exten => sw-71-BUSY,10,Voicemail(b${ext})
-exten => sw-71-BUSY,11,Goto(s|10)
-exten => sw-71-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-71-DONTCALL,11,Goto(s|10)
-exten => sw-71-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-71-TORTURE,11,Goto(s|10)
+exten => sw-71-BUSY,11,Goto(s\,10)
+exten => sw-71-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-71-DONTCALL,11,Goto(s\,10)
+exten => sw-71-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-71-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_70]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-72-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-72-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_70-72)
 exten => s,11,Return()
 exten => _sw-72-.,10,Voicemail(u${ext})
-exten => _sw-72-.,11,Goto(s|10)
+exten => _sw-72-.,11,Goto(s\,10)
 exten => sw-72-NOANSWER,10,Voicemail(u${ext})
-exten => sw-72-NOANSWER,11,Goto(s|10)
-exten => sw-72-ANSWER,10,Goto(s|10)
+exten => sw-72-NOANSWER,11,Goto(s\,10)
+exten => sw-72-ANSWER,10,Goto(s\,10)
 exten => sw-72-BUSY,10,Voicemail(b${ext})
-exten => sw-72-BUSY,11,Goto(s|10)
-exten => sw-72-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-72-DONTCALL,11,Goto(s|10)
-exten => sw-72-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-72-TORTURE,11,Goto(s|10)
+exten => sw-72-BUSY,11,Goto(s\,10)
+exten => sw-72-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-72-DONTCALL,11,Goto(s\,10)
+exten => sw-72-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-72-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_71]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-73-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-73-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_71-73)
 exten => s,11,Return()
 exten => _sw-73-.,10,Voicemail(u${ext})
-exten => _sw-73-.,11,Goto(s|10)
+exten => _sw-73-.,11,Goto(s\,10)
 exten => sw-73-NOANSWER,10,Voicemail(u${ext})
-exten => sw-73-NOANSWER,11,Goto(s|10)
-exten => sw-73-ANSWER,10,Goto(s|10)
+exten => sw-73-NOANSWER,11,Goto(s\,10)
+exten => sw-73-ANSWER,10,Goto(s\,10)
 exten => sw-73-BUSY,10,Voicemail(b${ext})
-exten => sw-73-BUSY,11,Goto(s|10)
-exten => sw-73-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-73-DONTCALL,11,Goto(s|10)
-exten => sw-73-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-73-TORTURE,11,Goto(s|10)
+exten => sw-73-BUSY,11,Goto(s\,10)
+exten => sw-73-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-73-DONTCALL,11,Goto(s\,10)
+exten => sw-73-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-73-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_72]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-74-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-74-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_72-74)
 exten => s,11,Return()
 exten => _sw-74-.,10,Voicemail(u${ext})
-exten => _sw-74-.,11,Goto(s|10)
+exten => _sw-74-.,11,Goto(s\,10)
 exten => sw-74-NOANSWER,10,Voicemail(u${ext})
-exten => sw-74-NOANSWER,11,Goto(s|10)
-exten => sw-74-ANSWER,10,Goto(s|10)
+exten => sw-74-NOANSWER,11,Goto(s\,10)
+exten => sw-74-ANSWER,10,Goto(s\,10)
 exten => sw-74-BUSY,10,Voicemail(b${ext})
-exten => sw-74-BUSY,11,Goto(s|10)
-exten => sw-74-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-74-DONTCALL,11,Goto(s|10)
-exten => sw-74-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-74-TORTURE,11,Goto(s|10)
+exten => sw-74-BUSY,11,Goto(s\,10)
+exten => sw-74-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-74-DONTCALL,11,Goto(s\,10)
+exten => sw-74-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-74-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten_73]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-75-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-75-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten_73-75)
 exten => s,11,Return()
 exten => _sw-75-.,10,Voicemail(u${ext})
-exten => _sw-75-.,11,Goto(s|10)
+exten => _sw-75-.,11,Goto(s\,10)
 exten => sw-75-NOANSWER,10,Voicemail(u${ext})
-exten => sw-75-NOANSWER,11,Goto(s|10)
-exten => sw-75-ANSWER,10,Goto(s|10)
+exten => sw-75-NOANSWER,11,Goto(s\,10)
+exten => sw-75-ANSWER,10,Goto(s\,10)
 exten => sw-75-BUSY,10,Voicemail(b${ext})
-exten => sw-75-BUSY,11,Goto(s|10)
-exten => sw-75-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-75-DONTCALL,11,Goto(s|10)
-exten => sw-75-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-75-TORTURE,11,Goto(s|10)
+exten => sw-75-BUSY,11,Goto(s\,10)
+exten => sw-75-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-75-DONTCALL,11,Goto(s\,10)
+exten => sw-75-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-75-TORTURE,11,Goto(s\,10)
 
 
 [std-priv-exten]
-exten => s,1,Set(dev=${ARG1})
-exten => s,2,Set(ext=${ARG2})
-exten => s,3,Set(timeout=${ARG3})
-exten => s,4,Set(opts=${ARG4})
-exten => s,5,Set(torcont=${ARG5})
-exten => s,6,Set(dontcont=${ARG6})
-exten => s,7,Dial(${dev}|${timeout}|${opts})
-exten => s,8,NoOp(${DIALSTATUS} was chosen)
-exten => s,9,Goto(sw-76-${DIALSTATUS}|10)
+exten => s,1,Set(LOCAL(dev)=${ARG1})
+exten => s,2,Set(LOCAL(ext)=${ARG2})
+exten => s,3,Set(LOCAL(timeout)=${ARG3})
+exten => s,4,Set(LOCAL(opts)=${ARG4})
+exten => s,5,Set(LOCAL(torcont)=${ARG5})
+exten => s,6,Set(LOCAL(dontcont)=${ARG6})
+exten => s,7,Dial(${dev}\,${timeout}\,${opts})
+exten => s,8,NoOp(${DIALSTATUS} was chosen)
+exten => s,9,Goto(sw-76-${DIALSTATUS}\,10)
 exten => s,10,NoOp(Finish switch-std-priv-exten-76)
 exten => s,11,Return()
 exten => _sw-76-.,10,Voicemail(u${ext})
-exten => _sw-76-.,11,Goto(s|10)
+exten => _sw-76-.,11,Goto(s\,10)
 exten => sw-76-NOANSWER,10,Voicemail(u${ext})
-exten => sw-76-NOANSWER,11,Goto(s|10)
-exten => sw-76-ANSWER,10,Goto(s|10)
+exten => sw-76-NOANSWER,11,Goto(s\,10)
+exten => sw-76-ANSWER,10,Goto(s\,10)
 exten => sw-76-BUSY,10,Voicemail(b${ext})
-exten => sw-76-BUSY,11,Goto(s|10)
-exten => sw-76-DONTCALL,10,Goto(${dontcont}|s|begin)
-exten => sw-76-DONTCALL,11,Goto(s|10)
-exten => sw-76-TORTURE,10,Goto(${torcont}|s|begin)
-exten => sw-76-TORTURE,11,Goto(s|10)
+exten => sw-76-BUSY,11,Goto(s\,10)
+exten => sw-76-DONTCALL,10,Goto(${dontcont}\,s\,begin)
+exten => sw-76-DONTCALL,11,Goto(s\,10)
+exten => sw-76-TORTURE,10,Goto(${torcont}\,s\,begin)
+exten => sw-76-TORTURE,11,Goto(s\,10)
 
 
 [fillcidname]
@@ -1894,11 +1894,11 @@ exten => s,13,Return()
 
 
 [ciddial]
-exten => s,1,Set(dialnum=${ARG1})
-exten => s,2,Set(lookup=${ARG2})
-exten => s,3,Set(waittime=${ARG3})
-exten => s,4,Set(dialopts=${ARG4})
-exten => s,5,Set(ddev=${ARG5})
+exten => s,1,Set(LOCAL(dialnum)=${ARG1})
+exten => s,2,Set(LOCAL(lookup)=${ARG2})
+exten => s,3,Set(LOCAL(waittime)=${ARG3})
+exten => s,4,Set(LOCAL(dialopts)=${ARG4})
+exten => s,5,Set(LOCAL(ddev)=${ARG5})
 exten => s,6,Set(cidnu=${CALLERID(num)})
 exten => s,7,Set(cidn=${DB(cidname/${lookup})})
 exten => s,8,Set(CALLERID(name)=${cidn})
@@ -1906,51 +1906,51 @@ exten => s,9,Dial(${ddev}/${dialnum}|${waittime}|${dialopts})
 exten => s,10,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL" ]?11:19)
 exten => s,11,BackGround(try_voip)
 exten => s,12,Set(CALLERID(num)=$[7075679201])
-exten => s,13,Dial(SIP/1${lookup}@tctwest|${waittime}|${dialopts})
+exten => s,13,Dial(SIP/1${lookup}@tctwest\,${waittime}\,${dialopts})
 exten => s,14,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL" ]?15:18)
 exten => s,15,BackGround(try_cell)
 exten => s,16,Set(CALLERID(num)=$[${cidnu}])
-exten => s,17,Dial(Zap/2/${lookup}|${waittime}|${dialopts})
+exten => s,17,Dial(Zap/2/${lookup}\,${waittime}\,${dialopts})
 exten => s,18,NoOp(Finish if-if-ciddial-81-82)
 exten => s,19,NoOp(Finish if-ciddial-81)
 exten => s,20,Return()
 
 
 [ciddial3]
-exten => s,1,Set(dialnum=${ARG1})
-exten => s,2,Set(lookup=${ARG2})
-exten => s,3,Set(waittime=${ARG3})
-exten => s,4,Set(dialopts=${ARG4})
-exten => s,5,Set(ddev=${ARG5})
+exten => s,1,Set(LOCAL(dialnum)=${ARG1})
+exten => s,2,Set(LOCAL(lookup)=${ARG2})
+exten => s,3,Set(LOCAL(waittime)=${ARG3})
+exten => s,4,Set(LOCAL(dialopts)=${ARG4})
+exten => s,5,Set(LOCAL(ddev)=${ARG5})
 exten => s,6,Set(cidnu=${CALLERID(num)})
 exten => s,7,Set(cidn=${DB(cidname/${lookup})})
 exten => s,8,Set(CALLERID(name)=${cidn})
 exten => s,9,Dial(${ddev}/${dialnum}|${waittime}|${dialopts})
 exten => s,10,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL" ]?11:13)
 exten => s,11,BackGround(try_cell)
-exten => s,12,Dial(Zap/2/${lookup}|${waittime}|${dialopts})
+exten => s,12,Dial(Zap/2/${lookup}\,${waittime}\,${dialopts})
 exten => s,13,NoOp(Finish if-ciddial3-83)
 exten => s,14,Return()
 
 
 [ciddial2]
-exten => s,1,Set(dialnum=${ARG1})
-exten => s,2,Set(lookup=${ARG2})
-exten => s,3,Set(waittime=${ARG3})
-exten => s,4,Set(dialopts=${ARG4})
-exten => s,5,Set(ddev=${ARG5})
+exten => s,1,Set(LOCAL(dialnum)=${ARG1})
+exten => s,2,Set(LOCAL(lookup)=${ARG2})
+exten => s,3,Set(LOCAL(waittime)=${ARG3})
+exten => s,4,Set(LOCAL(dialopts)=${ARG4})
+exten => s,5,Set(LOCAL(ddev)=${ARG5})
 exten => s,6,Set(cidn=${DB(cidname/${lookup})})
 exten => s,7,Set(cidnu=${CALLERID(num)})
 exten => s,8,Set(CALLERID(name)=${cidn})
 exten => s,9,Set(CALLERID(num)=7075679201)
-exten => s,10,Dial(SIP/1${lookup}@tctwest|${waittime}|${dialopts})
+exten => s,10,Dial(SIP/1${lookup}@tctwest\,${waittime}\,${dialopts})
 exten => s,11,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL" ]?12:19)
 exten => s,12,Set(CALLERID(num)=${cidnu})
 exten => s,13,BackGround(try_zap)
-exten => s,14,Dial(${ddev}/${dialnum}|${waittime}|${dialopts})
+exten => s,14,Dial(${ddev}/${dialnum}\,${waittime}|${dialopts})
 exten => s,15,GotoIf($["${DIALSTATUS}" = "CHANUNAVAIL" ]?16:18)
 exten => s,16,BackGround(try_cell)
-exten => s,17,Dial(Zap/2/${lookup}|${waittime}|${dialopts})
+exten => s,17,Dial(Zap/2/${lookup}\,${waittime}\,${dialopts})
 exten => s,18,NoOp(Finish if-if-ciddial2-84-85)
 exten => s,19,NoOp(Finish if-ciddial2-84)
 exten => s,20,Return()
@@ -1981,7 +1981,7 @@ exten => s,7,Background(tt-monkeys)
 exten => s,8,Background(tt-weasels)
 exten => s,9,Hangup()
 exten => s,10,Goto(12)
-exten => s,11,Goto(homeline|s|postPriv)
+exten => s,11,Goto(homeline\,s\,postPriv)
 exten => s,12,NoOp(Finish if-privacyManagerFailed-86)
 
 
@@ -1992,20 +1992,20 @@ exten => s,3,Zapateller(nocallerid)
 exten => s,4,PrivacyManager()
 exten => s,5,GotoIf($["${PRIVACYMGRSTATUS}" = "FAILED" ]?6:10)
 exten => s,6,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/privmanfailed.gsm)
-exten => s,7,Gosub(std-priv-exten|s|1(Zap/3r1&Zap/5r1|2|25|mtw|telemarket|telemarket))
+exten => s,7,Gosub(std-priv-exten\,s\,1(Zap/3r1&Zap/5r1\,2\,25\,mtw\,telemarket\,telemarket))
 exten => s,8,Hangup()
 exten => s,9,Return()
 exten => s,10,NoOp(Finish if-homeline-87)
-exten => s,11(postPriv),Gosub(fillcidname|s|1)
+exten => s,11(postPriv),Gosub(fillcidname\,s\,1)
 exten => s,12,Set(CONFCIDNA=${CALLERID(name)})
 exten => s,13,Set(CONFCIDNU=${CALLERID(num)})
 exten => s,14,AGI(callall)
 exten => s,15,AGI(submit-announce.agi)
 exten => s,16,GotoIf($["${CALLERID(num)}" : "1" ]?17:18)
-exten => s,17,Gosub(callerid-bad|s|1)
+exten => s,17,Gosub(callerid-bad\,s\,1)
 exten => s,18,NoOp(Finish if-homeline-88)
 exten => s,19,GotoIf($["${CALLERID(num)}"  = "7077577685" & "${CALLERID(name)}" : "Privacy Manager" ]?20:21)
-exten => s,20,Gosub(callerid-liar|s|1)
+exten => s,20,Gosub(callerid-liar\,s\,1)
 exten => s,21,NoOp(Finish if-homeline-89)
 exten => s,22,TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&)
 exten => s,23,Set(lds=${DB(playlds/${CALLERID(num)})})
@@ -2019,58 +2019,58 @@ exten => s,30,Playback(greetings/direct)
 exten => s,31,Playback(/var/spool/asterisk/voicemail/default/${direct}/greet)
 exten => s,32,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => s,33,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/${direct}/greet.wav&)
-exten => s,34,Goto(sw-92-${direct}|10)
+exten => s,34,Goto(sw-92-${direct}\,10)
 exten => s,35,NoOp(Finish switch-if-homeline-91-92)
 exten => s,36,NoOp(Finish if-homeline-91)
-exten => s,37(loopback),GotoIfTime(*|*|20-25|dec?39)
+exten => s,37(loopback),GotoIfTime(*\,*\,20-25\,dec?39)
 exten => s,38,Goto(41)
 exten => s,39,Playback(greetings/christmas)
 exten => s,40,Goto(102)
-exten => s,41,GotoIfTime(*|*|31|dec?43)
+exten => s,41,GotoIfTime(*\,*\,31\,dec?43)
 exten => s,42,Goto(45)
 exten => s,43,Playback(greetings/newyear)
 exten => s,44,Goto(101)
-exten => s,45,GotoIfTime(*|*|1|jan?47)
+exten => s,45,GotoIfTime(*\,*\,1\,jan?47)
 exten => s,46,Goto(49)
 exten => s,47,Playback(greetings/newyear)
 exten => s,48,Goto(100)
-exten => s,49,GotoIfTime(*|*|14|feb?51)
+exten => s,49,GotoIfTime(*\,*\,14\,feb?51)
 exten => s,50,Goto(53)
 exten => s,51,Playback(greetings/valentines)
 exten => s,52,Goto(99)
-exten => s,53,GotoIfTime(*|*|17|mar?55)
+exten => s,53,GotoIfTime(*\,*\,17\,mar?55)
 exten => s,54,Goto(57)
 exten => s,55,Playback(greetings/stPat)
 exten => s,56,Goto(98)
-exten => s,57,GotoIfTime(*|*|31|oct?59)
+exten => s,57,GotoIfTime(*\,*\,31\,oct?59)
 exten => s,58,Goto(61)
 exten => s,59,Playback(greetings/halloween)
 exten => s,60,Goto(97)
-exten => s,61,GotoIfTime(*|mon|15-21|jan?63)
+exten => s,61,GotoIfTime(*\,mon\,15-21\,jan?63)
 exten => s,62,Goto(65)
 exten => s,63,Playback(greetings/mlkDay)
 exten => s,64,Goto(96)
-exten => s,65,GotoIfTime(*|thu|22-28|nov?67)
+exten => s,65,GotoIfTime(*\,thu\,22-28\,nov?67)
 exten => s,66,Goto(69)
 exten => s,67,Playback(greetings/thanksgiving)
 exten => s,68,Goto(95)
-exten => s,69,GotoIfTime(*|mon|25-31|may?71)
+exten => s,69,GotoIfTime(*\,mon\,25-31\,may?71)
 exten => s,70,Goto(73)
 exten => s,71,Playback(greetings/memorial)
 exten => s,72,Goto(94)
-exten => s,73,GotoIfTime(*|mon|1-7|sep?75)
+exten => s,73,GotoIfTime(*\,mon\,1-7\,sep?75)
 exten => s,74,Goto(77)
 exten => s,75,Playback(greetings/labor)
 exten => s,76,Goto(93)
-exten => s,77,GotoIfTime(*|mon|15-21|feb?79)
+exten => s,77,GotoIfTime(*\,mon\,15-21\,feb?79)
 exten => s,78,Goto(81)
 exten => s,79,Playback(greetings/president)
 exten => s,80,Goto(92)
-exten => s,81,GotoIfTime(*|sun|8-14|may?83)
+exten => s,81,GotoIfTime(*\,sun\,8-14\,may?83)
 exten => s,82,Goto(85)
 exten => s,83,Playback(greetings/mothers)
 exten => s,84,Goto(91)
-exten => s,85,GotoIfTime(*|sun|15-21|jun?87)
+exten => s,85,GotoIfTime(*\,sun\,15-21\,jun?87)
 exten => s,86,Goto(89)
 exten => s,87,Playback(greetings/fathers)
 exten => s,88,Goto(90)
@@ -2090,129 +2090,129 @@ exten => s,101,NoOp(Finish iftime-iftime-homeline-93-94)
 exten => s,102,NoOp(Finish iftime-homeline-93)
 exten => s,103,Background(murphy-homeline-intro1)
 exten => _sw-92-.,10,Set(z=${direct}-2)
-exten => _sw-92-.,11,Goto(homeline-kids|${z}|1)
-exten => sw-92-2,10,Gosub(std-priv-exten|s|1(Zap/3r1&Zap/5r1|2|25|mtw|telemarket|telemarket))
-exten => sw-92-2,11,Goto(s|loopback)
-exten => sw-92-1,10,Gosub(std-priv-exten|s|1(Zap/6r3&Sip/murf|1|25|mpA(beep)tw|telemarket|telemarket))
-exten => sw-92-1,11,Goto(s|loopback)
+exten => _sw-92-.,11,Goto(homeline-kids\,${z}\,1)
+exten => sw-92-2,10,Gosub(std-priv-exten\,s\,1(Zap/3r1&Zap/5r1\,2\,25\,mtw\,telemarket\,telemarket))
+exten => sw-92-2,11,Goto(s\,loopback)
+exten => sw-92-1,10,Gosub(std-priv-exten\,s\,1(Zap/6r3&Sip/murf\,1\,25\,mpA(beep)tw\,telemarket\,telemarket))
+exten => sw-92-1,11,Goto(s\,loopback)
 exten => 1,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 1,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/2/greet.wav&)
-exten => 1,3,Gosub(std-priv-exten|s|1(Zap/3r1&Zap/5r1|2|25|mtw|telemarket|telemarket))
-exten => 1,4,Goto(s|loopback)
-exten => 2,1,Goto(homeline-kids|s|begin)
-exten => 21,1,Dial(IAX2/seaniax|20|T)
-exten => 3,1,Gosub(std-priv-exten|s|1(Zap/6r3&Sip/murf|1|25|mpA(beep)tw|telemarket|telemarket))
-exten => 3,2,Goto(s|loopback)
+exten => 1,3,Gosub(std-priv-exten\,s\,1(Zap/3r1&Zap/5r1\,2\,25\,mtw\,telemarket\,telemarket))
+exten => 1,4,Goto(s\,loopback)
+exten => 2,1,Goto(homeline-kids\,s\,begin)
+exten => 21,1,Dial(IAX2/seaniax\,20\,T)
+exten => 3,1,Gosub(std-priv-exten\,s\,1(Zap/6r3&Sip/murf\,1\,25\,mpA(beep)tw\,telemarket\,telemarket))
+exten => 3,2,Goto(s\,loopback)
 exten => 4,1,VoicemailMain()
-exten => 4,2,Goto(s|loopback)
-exten => 5,1,Goto(home-introduction|s|begin)
-exten => 6,1,Goto(telemarket|s|begin)
+exten => 4,2,Goto(s\,loopback)
+exten => 5,1,Goto(home-introduction\,s\,begin)
+exten => 6,1,Goto(telemarket\,s\,begin)
 exten => 7,1,agi(tts-riddle.agi)
 exten => 7,2,Background(gsm/what-time-it-is2)
 exten => 7,3,SayUnixTime()
-exten => 7,4,Goto(s|loopback)
-exten => 792,1,Goto(pageall|s|begin)
-exten => 793,1,Read(zz||0||1|0)
+exten => 7,4,Goto(s\,loopback)
+exten => 792,1,Goto(pageall\,s\,begin)
+exten => 793,1,Read(zz\,\,0\,\,1\,0)
 exten => 793,2,SayDigits(${zz})
 exten => t,1,Set(repeatcount=${repeatcount} + 1)
 exten => t,2,GotoIf($[${repeatcount} < 3 ]?3:4)
-exten => t,3,Goto(s|loopback)
+exten => t,3,Goto(s\,loopback)
 exten => t,4,NoOp(Finish if-homeline-106)
 exten => t,5,Hangup()
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|loopback)
+exten => i,2,Goto(s\,loopback)
 exten => o,1,Congestion()
 exten => fax,1,Dial(Zap/4)
 
 
 [pageall]
 exten => s,1(begin),AGI(callall)
-exten => s,2,MeetMe(5555|dtqp)
-exten => s,3,MeetMeAdmin(5555|K)
+exten => s,2,MeetMe(5555\,dtqp)
+exten => s,3,MeetMeAdmin(5555\,K)
 exten => s,4,Hangup()
-exten => h,1(begin),MeetMeAdmin(5555|K)
+exten => h,1(begin),MeetMeAdmin(5555\,K)
 exten => h,2,Background(conf-muted)
 exten => h,3,Hangup()
 
 
 [add-to-conference]
 exten => start,1,NoCDR()
-exten => start,2,MeetMe(5555|dmqp)
+exten => start,2,MeetMe(5555\,dmqp)
 exten => h,1,Hangup()
 
 
 [home-introduction]
 exten => s,1(begin),Background(intro-options)
 exten => 1,1,Playback(priv-callerintros/${CALLERID(num)})
-exten => 1,2,Goto(s|begin)
-exten => 2,1,Goto(home-introduction-record|s|begin)
-exten => 3,1,Goto(homeline|s|loopback)
+exten => 1,2,Goto(s\,begin)
+exten => 2,1,Goto(home-introduction-record\,s\,begin)
+exten => 3,1,Goto(homeline\,s\,loopback)
 exten => 4,1,Playback(intro-intro)
-exten => 4,2,Goto(s|begin)
-exten => t,1,Goto(s|begin)
+exten => 4,2,Goto(s\,begin)
+exten => t,1,Goto(s\,begin)
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|begin)
-exten => o,1,Goto(s|begin)
+exten => i,2,Goto(s\,begin)
+exten => o,1,Goto(s\,begin)
 
 
 [home-introduction-record]
 exten => s,1(begin),Background(intro-record-choices)
 exten => 1,1,Playback(intro-record)
-exten => 1,2,Goto(2|begin)
+exten => 1,2,Goto(2\,begin)
 exten => 2,1(begin),Background(intro-start)
 exten => 2,2,Background(beep)
-exten => 2,3,Record(priv-callerintros/${CALLERID(num)}:gsm|3)
+exten => 2,3,Record(priv-callerintros/${CALLERID(num)}:gsm\,3)
 exten => 2,4,Background(priv-callerintros/${CALLERID(num)})
-exten => 2,5,Goto(home-introduction|s|begin)
-exten => t,1,Goto(s|begin)
+exten => 2,5,Goto(home-introduction\,s\,begin)
+exten => t,1,Goto(s\,begin)
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|begin)
-exten => o,1,Goto(s|begin)
+exten => i,2,Goto(s\,begin)
+exten => o,1,Goto(s\,begin)
 
 
 [homeline-kids]
 exten => s,1(begin),Background(murphy-homeline-kids)
 exten => 1,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 1,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/3/greet.wav&)
-exten => 1,3,Gosub(std-priv-exten|s|1(IAX2/seaniax&Zap/5r2|3|35|mtw|telemarket|telemarket))
-exten => 1,4,Goto(homeline|s|loopback)
+exten => 1,3,Gosub(std-priv-exten\,s\,1(IAX2/seaniax&Zap/5r2\,3\,35\,mtw\,telemarket\,telemarket))
+exten => 1,4,Goto(homeline\,s\,loopback)
 exten => 2,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 2,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/4/greet.wav&)
 exten => 2,3,Voicemail(u4)
-exten => 2,4,Goto(homeline|s|loopback)
+exten => 2,4,Goto(homeline\,s\,loopback)
 exten => 3,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 3,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/5/greet.wav&)
-exten => 3,3,Gosub(std-priv-exten|s|1(Zap/3r2&Zap/5r2|5|35|mtw|telemarket|telemarket))
-exten => 3,4,Goto(homeline|s|loopback)
+exten => 3,3,Gosub(std-priv-exten\,s\,1(Zap/3r2&Zap/5r2\,5\,35\,mtw\,telemarket\,telemarket))
+exten => 3,4,Goto(homeline\,s\,loopback)
 exten => 4,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 4,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/6/greet.wav&)
-exten => 4,3,Gosub(std-priv-exten|s|1(Zap/3r2&Zap/5r2|6|35|mtw|telemarket|telemarket))
-exten => 4,4,Goto(homeline|s|loopback)
+exten => 4,3,Gosub(std-priv-exten\,s\,1(Zap/3r2&Zap/5r2\,6\,35\,mtw\,telemarket\,telemarket))
+exten => 4,4,Goto(homeline\,s\,loopback)
 exten => 5,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 5,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/7/greet.wav&)
-exten => 5,3,Gosub(std-priv-exten|s|1(Zap/3r2&Zap/5r2|7|35|mtw|telemarket|telemarket))
-exten => 5,4,Goto(homeline|s|loopback)
+exten => 5,3,Gosub(std-priv-exten\,s\,1(Zap/3r2&Zap/5r2\,7\,35\,mtw\,telemarket\,telemarket))
+exten => 5,4,Goto(homeline\,s\,loopback)
 exten => 6,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 6,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/8/greet.wav&)
-exten => 6,3,Gosub(std-priv-exten|s|1(Zap/3r2&Zap/5r2|8|35|mtw|telemarket|telemarket))
-exten => 6,4,Goto(homeline|s|loopback)
+exten => 6,3,Gosub(std-priv-exten\,s\,1(Zap/3r2&Zap/5r2\,8\,35\,mtw\,telemarket\,telemarket))
+exten => 6,4,Goto(homeline\,s\,loopback)
 exten => 7,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 7,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/9/greet.wav&)
-exten => 7,3,Gosub(std-priv-exten|s|1(Zap/3r2&Zap/5r2|9|35|mtw|telemarket|telemarket))
-exten => 7,4,Goto(homeline|s|loopback)
-exten => t,1,Goto(s|begin)
+exten => 7,3,Gosub(std-priv-exten\,s\,1(Zap/3r2&Zap/5r2\,9\,35\,mtw\,telemarket\,telemarket))
+exten => 7,4,Goto(homeline\,s\,loopback)
+exten => t,1,Goto(s\,begin)
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|begin)
-exten => o,1,Goto(s|begin)
+exten => i,2,Goto(s\,begin)
+exten => o,1,Goto(s\,begin)
 
 
 [voipworkline]
 exten => s,1(begin),Answer()
 exten => s,2,TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&)
-exten => s,3,Goto(workline|s|loopback)
+exten => s,3,Goto(workline\,s\,loopback)
 exten => 7075679201,1,Answer()
 exten => 7075679201,2,TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&)
-exten => 7075679201,3,Goto(workline|s|loopback)
+exten => 7075679201,3,Goto(workline\,s\,loopback)
 
 
 [workline]
@@ -2220,26 +2220,26 @@ exten => s,1(begin),Answer()
 exten => s,2,Wait(1)
 exten => s,3,Set(repeatcount=0)
 exten => s,4,Zapateller(nocallerid)
-exten => s,5,Gosub(fillcidname|s|1)
+exten => s,5,Gosub(fillcidname\,s\,1)
 exten => s,6,TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&)
 exten => s,7(loopback),Background(greetings/greeting)
 exten => s,8,Background(murphy-office-intro1)
 exten => 1,1,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/call-for.gsm)
 exten => 1,2,TrySystem(/usr/bin/play /var/spool/asterisk/voicemail/default/1/greet.wav&)
-exten => 1,3,Gosub(std-priv-exten|s|1(Zap/6&Sip/murf|1|30|mtw|telemarket|telemarket))
-exten => 1,4,Goto(s|loopback)
+exten => 1,3,Gosub(std-priv-exten\,s\,1(Zap/6&Sip/murf\,1\,30\,mtw\,telemarket\,telemarket))
+exten => 1,4,Goto(s\,loopback)
 exten => 4,1,VoicemailMain()
-exten => 4,2,Goto(s|loopback)
-exten => 6,1,Goto(telemarket|s|begin)
-exten => 793,1,Read(zz||0||1|0)
+exten => 4,2,Goto(s\,loopback)
+exten => 6,1,Goto(telemarket\,s\,begin)
+exten => 793,1,Read(zz\,\,0\,\,1\,0)
 exten => 793,2,SayDigits(${zz})
 exten => t,1,Set(repeatcount=$[${repeatcount} + 1])
 exten => t,2,GotoIf($[${repeatcount} < 3 ]?3:4)
-exten => t,3,Goto(s|loopback)
+exten => t,3,Goto(s\,loopback)
 exten => t,4,NoOp(Finish if-workline-107)
 exten => t,5,Hangup()
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|loopback)
+exten => i,2,Goto(s\,loopback)
 exten => o,1,Congestion()
 exten => fax,1,Answer()
 exten => fax,2,Dial(Zap/4)
@@ -2249,13 +2249,13 @@ exten => fax,2,Dial(Zap/4)
 ignorepat => 8
 ignorepat => 9
 exten => _83.,1,Set(CALLERID(name)=${FWDCIDNAME})
-exten => _83.,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}|60|r)
+exten => _83.,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}\,60\,r)
 exten => _83.,3,Congestion()
 exten => _82NXX,1,Set(CALLERID(name)=${FWDCIDNAME})
-exten => _82NXX,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}|60|r)
+exten => _82NXX,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}\,60\,r)
 exten => _82NXX,3,Congestion()
 exten => _92NXX,1,Set(CALLERID(name)=${FWDCIDNAME})
-exten => _92NXX,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}|60|r)
+exten => _92NXX,2,Dial(IAX2/${FWDNUMBER}:${FWDPASSWORD}@iax2.fwdnet.net/${EXTEN:2}\,60\,r)
 exten => _92NXX,3,Congestion()
 
 
@@ -2271,63 +2271,63 @@ exten => _91800NXXXXXX,1,Dial(IAX2/zorch:zilchnoodle@iaxtel.com/${EXTEN:1}@iaxte
 [dialgoiax]
 ignorepat => 9
 exten => _93.,1,Set(CALLERID(name)="Joe Worker")
-exten => _93.,2,Dial(IAX2/878201007658:stickyfinger295@server1.goiax.com/${EXTEN:2}|60|r)
+exten => _93.,2,Dial(IAX2/878201007658:stickyfinger295@server1.goiax.com/${EXTEN:2}\,60\,r)
 exten => _93.,3,Congestion()
 
 
 [homefirst]
 ignorepat => 9
-exten => _91NXXNXXXXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|${EXTEN:2}|30|TW|Zap/1))
-exten => _9754XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9574XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9202XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9219XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9254XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9716XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9NXXXXXX,1,Gosub(ciddial|s|1(1707${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9011.,1,Gosub(ciddial|s|1(${EXTEN:1}|${EXTEN:1}|30|TW|Zap/1))
-exten => _9911,1,Dial(Zap/1/911|30|T)
-exten => _9411,1,Dial(Zap/1/411|30|T)
+exten => _91NXXNXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,${EXTEN:2}\,30\,TW\,Zap/1))
+exten => _9754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9202XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9219XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9254XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9716XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9NXXXXXX,1,Gosub(ciddial\,s\,1(1707${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9011.,1,Gosub(ciddial\,s\,1(${EXTEN:1}\,${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9911,1,Dial(Zap/1/911\,30\,T)
+exten => _9411,1,Dial(Zap/1/411\,30\,T)
 
 
 [workfirst]
 ignorepat => 9
-exten => _91NXXNXXXXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|${EXTEN:2}|30|TW|Zap/1))
-exten => _9754XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9574XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9202XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9219XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9254XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9716XXXX,1,Gosub(ciddial2|s|1(${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9NXXXXXX,1,Gosub(ciddial2|s|1(1707${EXTEN:1}|707${EXTEN:1}|30|TW|Zap/1))
-exten => _9911,1,Dial(Zap/1/911|30|T)
-exten => _9411,1,Dial(Zap/1/411|30|T)
+exten => _91NXXNXXXXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,${EXTEN:2}\,30\,TW\,Zap/1))
+exten => _9754XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9574XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9202XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9219XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9254XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9716XXXX,1,Gosub(ciddial2\,s\,1(${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9NXXXXXX,1,Gosub(ciddial2\,s\,1(1707${EXTEN:1}\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _9911,1,Dial(Zap/1/911\,30\,T)
+exten => _9411,1,Dial(Zap/1/411\,30\,T)
 
 
 [force_cell]
 ignorepat => 8
-exten => _81NXXNXXXXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|${EXTEN:2}|30|TW|Zap/2))
-exten => _8754XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8574XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8202XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8219XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8254XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8716XXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
-exten => _8NXXXXXX,1,Gosub(ciddial|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/2))
+exten => _81NXXNXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,${EXTEN:2}\,30\,TW\,Zap/2))
+exten => _8754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8202XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8219XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8254XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8716XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
+exten => _8NXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/2))
 exten => _8911,1,Dial(Zap/1/911|30|T)
 exten => _8411,1,Dial(Zap/1/411|30|T)
 
 
 [force_home]
 ignorepat => 8
-exten => _81NXXNXXXXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|${EXTEN:2}|30|TW|Zap/1))
-exten => _8754XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8574XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8202XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8219XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8254XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8716XXXX,1,Gosub(ciddial3|s|1(${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
-exten => _8NXXXXXX,1,Gosub(ciddial3|s|1(1707${EXTEN:1}#|707${EXTEN:1}|30|TW|Zap/1))
+exten => _81NXXNXXXXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,${EXTEN:2}\,30\,TW\,Zap/1))
+exten => _8754XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8574XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8202XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8219XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8254XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8716XXXX,1,Gosub(ciddial3\,s\,1(${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _8NXXXXXX,1,Gosub(ciddial3\,s\,1(1707${EXTEN:1}#\,707${EXTEN:1}\,30\,TW\,Zap/1))
 exten => _8911,1,Dial(Zap/1/911|30|T)
 exten => _8411,1,Dial(Zap/1/411|30|T)
 
@@ -2339,35 +2339,35 @@ include => parkedcalls
 include => homefirst
 include => force_cell
 exten => s,1(loopback),Wait(0)
-exten => 1,1,Gosub(std-priv-exten|s|1(Zap/3&Zap/5|2|35|mtw|telemarket|telemarket))
-exten => 1,2,Goto(s|loopback)
-exten => 2,1,Gosub(std-priv-exten|s|1(Zap/6&Zap/5|1|35|mpA(beep3)Tt|telemarket|telemarket))
-exten => 2,2,Goto(s|loopback)
+exten => 1,1,Gosub(std-priv-exten\,s\,1(Zap/3&Zap/5\,2\,35\,mtw\,telemarket\,telemarket))
+exten => 1,2,Goto(s\,loopback)
+exten => 2,1,Gosub(std-priv-exten\,s\,1(Zap/6&Zap/5\,1\,35\,mpA(beep3)Tt\,telemarket\,telemarket))
+exten => 2,2,Goto(s\,loopback)
 exten => 4,1,VoicemailMain()
 exten => 5,1,Record(recording:gsm)
 exten => 5,2,Background(recording)
 exten => 6,1,Background(recording)
 exten => 760,1,DateTime()
-exten => 760,2,Goto(s|loopback)
+exten => 760,2,Goto(s\,loopback)
 exten => 761,1,Record(announcement:gsm)
 exten => 761,2,TrySystem(/usr/bin/play /var/lib/asterisk/sounds/announcement.gsm&)
-exten => 761,3,Goto(s|loopback)
+exten => 761,3,Goto(s\,loopback)
 exten => 762,1,agi(tts-riddle.agi)
 exten => 762,2,Background(gsm/what-time-it-is2)
 exten => 762,3,SayUnixTime()
-exten => 762,4,Goto(s|loopback)
+exten => 762,4,Goto(s\,loopback)
 exten => 763,1,Set(CALLERID(num)=)
-exten => 763,2,Dial(Zap/6r3|35|mptA(beep3))
+exten => 763,2,Dial(Zap/6r3\,35\,mptA(beep3))
 exten => 763,3,Hangup()
 exten => 764,1,Set(CALLERID(num)=)
-exten => 764,2,Dial(Zap/6r3|35|mptnA(beep3))
+exten => 764,2,Dial(Zap/6r3\,35\,mptnA(beep3))
 exten => 764,3,Hangup()
 exten => 765,1,Set(CALLERID(num)=)
-exten => 765,2,Dial(Zap/6r3|35|mptNA(beep3))
+exten => 765,2,Dial(Zap/6r3\,35\,mptNA(beep3))
 exten => 765,3,Hangup()
-exten => 766,1,Dial(Zap/6r3|35|mptNA(beep3))
+exten => 766,1,Dial(Zap/6r3\,35\,mptNA(beep3))
 exten => 766,2,Hangup()
-exten => 767,1,Dial(Zap/6r3|35|mptnA(beep3))
+exten => 767,1,Dial(Zap/6r3\,35\,mptnA(beep3))
 exten => 767,2,Hangup()
 exten => 769,1,Playtones(dial)
 exten => 769,2,Wait(2)
@@ -2386,70 +2386,70 @@ exten => 769,14,Wait(2)
 exten => 769,15,Playtones(info)
 exten => 769,16,Wait(5)
 exten => 769,17,Hangup()
-exten => 790,1,MeetMe(790|p)
-exten => 792,1,Goto(pageall|s|begin)
+exten => 790,1,MeetMe(790\,p)
+exten => 792,1,Goto(pageall\,s\,begin)
 exten => 795,1,AGI(wakeup.agi)
 exten => 795,2,Congestion()
 exten => 544716,1,TrySystem(/usr/local/bin/who-is-it ${CALLERID(num)} "${CALLERID(name)}"&)
-exten => 544716,2,Goto(s|loopback)
+exten => 544716,2,Goto(s\,loopback)
 exten => i,1,Background(invalid)
-exten => i,2,Goto(s|loopback)
-exten => o,1,Goto(s|loopback)
+exten => i,2,Goto(s\,loopback)
+exten => o,1,Goto(s\,loopback)
 exten => t,1,Congestion()
 
 
 [fromvmhome]
 exten => 1,1,Dial(Zap/6&Sip/murf|20|Tt)
 exten => 2,1,Dial(Zap/3&Zap/5|20|Tt)
-exten => _707202XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707219XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707254XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707716XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707754XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707574XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _NXXNXXXXXX,1,Gosub(ciddial|s|1(1${EXTEN}|${EXTEN}|30|TW|Zap/1))
-exten => _1NXXNXXXXXX,1,Gosub(ciddial|s|1(${EXTEN}|${EXTEN:1}|30|TW|Zap/1))
-exten => _754XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _574XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _NXXXXXX,1,Gosub(ciddial|s|1(1707${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _911,1,Gosub(ciddial|s|1(911|911|30|TW|Zap/1))
-exten => _411,1,Gosub(ciddial|s|1(411|411|30|TW|Zap/1))
+exten => _707202XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707219XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707254XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707716XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXNXXXXXX,1,Gosub(ciddial\,s\,1(1${EXTEN}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _1NXXNXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXXXXX,1,Gosub(ciddial\,s\,1(1707${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _911,1,Gosub(ciddial\,s\,1(911\,911\,30\,TW\,Zap/1))
+exten => _411,1,Gosub(ciddial\,s\,1(411\,411\,30\,TW\,Zap/1))
 
 
 [fromvmwork]
 exten => 1,1,Dial(Zap/6&Sip/murf|20|Tt)
 exten => 2,1,Dial(Zap/3&Zap/5|20|Tt)
-exten => _707202XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707219XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707254XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707716XXXX,1,Gosub(ciddial|s|1(1${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707754XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707574XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _NXXNXXXXXX,1,Gosub(ciddial|s|1(1${EXTEN}|${EXTEN}|30|TW|Zap/1))
-exten => _1NXXNXXXXXX,1,Gosub(ciddial|s|1(${EXTEN}|${EXTEN:1}|30|TW|Zap/1))
-exten => _754XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _574XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _NXXXXXX,1,Gosub(ciddial|s|1(1707${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => 911,1,Gosub(ciddial|s|1(911|911|30|TW|Zap/1))
-exten => 411,1,Gosub(ciddial|s|1(411|411|30|TW|Zap/1))
+exten => _707202XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707219XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707254XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707716XXXX,1,Gosub(ciddial\,s\,1(1${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXNXXXXXX,1,Gosub(ciddial\,s\,1(1${EXTEN}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _1NXXNXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXXXXX,1,Gosub(ciddial\,s\,1(1707${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => 911,1,Gosub(ciddial\,s\,1(911\,911\,30\,TW\,Zap/1))
+exten => 411,1,Gosub(ciddial\,s\,1(411\,411\,30\,TW\,Zap/1))
 
 
 [fromSeanUniden]
 include => parkedcalls
-exten => 21,1,Dial(IAX2/seaniax|20|T)
-exten => _707202XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707219XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707254XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707716XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707754XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _707574XXXX,1,Gosub(ciddial|s|1(${EXTEN:3}|${EXTEN}|30|TW|Zap/1))
-exten => _NXXNXXXXXX,1,Gosub(ciddial|s|1(1${EXTEN}|${EXTEN}|30|TW|Zap/1))
-exten => _1NXXNXXXXXX,1,Gosub(ciddial|s|1(${EXTEN}|${EXTEN:1}|30|TW|Zap/1))
-exten => _754XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _574XXXX,1,Gosub(ciddial|s|1(${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => _NXXXXXX,1,Gosub(ciddial|s|1(1707${EXTEN}|707${EXTEN}|30|TW|Zap/1))
-exten => 911,1,Gosub(ciddial|s|1(911|911|30|TW|Zap/1))
-exten => 411,1,Gosub(ciddial|s|1(411|411|30|TW|Zap/1))
+exten => 21,1,Dial(IAX2/seaniax\,20\,T)
+exten => _707202XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707219XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707254XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707716XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _707574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN:3}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXNXXXXXX,1,Gosub(ciddial\,s\,1(1${EXTEN}\,${EXTEN}\,30\,TW\,Zap/1))
+exten => _1NXXNXXXXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,${EXTEN:1}\,30\,TW\,Zap/1))
+exten => _754XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _574XXXX,1,Gosub(ciddial\,s\,1(${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => _NXXXXXX,1,Gosub(ciddial\,s\,1(1707${EXTEN}\,707${EXTEN}\,30\,TW\,Zap/1))
+exten => 911,1,Gosub(ciddial\,s\,1(911\,911\,30\,TW\,Zap/1))
+exten => 411,1,Gosub(ciddial\,s\,1(411\,411\,30\,TW\,Zap/1))
 
 
 [workext]
@@ -2462,33 +2462,33 @@ include => dialFWD
 include => dialiaxtel
 include => dialgoiax
 exten => s,1(loopback),Wait(0)
-exten => 1,1,Dial(Zap/3&Zap/5|20|tT)
-exten => 2,1,Dial(Zap/5&Zap/6|20|tT)
-exten => 21,1,Dial(IAX2/seaniax|20|T)
+exten => 1,1,Dial(Zap/3&Zap/5\,20\,tT)
+exten => 2,1,Dial(Zap/5&Zap/6\,20\,tT)
+exten => 21,1,Dial(IAX2/seaniax\,20\,T)
 exten => 22,1,Set(CALLERID(num)=1234567890)
 exten => 22,2,Set(CALLERID(name)=TestCaller)
-exten => 22,3,Dial(Zap/5|20|mP()A(beep)tw)
+exten => 22,3,Dial(Zap/5\,20\,mP()A(beep)tw)
 exten => 22,4,NoOp(here is dialstatus: ${DIALSTATUS}...)
-exten => 22,5,Goto(s|loopback)
+exten => 22,5,Goto(s\,loopback)
 exten => 4,1,VoicemailMain()
-exten => 4,2,Goto(s|loopback)
+exten => 4,2,Goto(s\,loopback)
 exten => 5,1,Record(recording:gsm)
 exten => 5,2,Background(recording)
 exten => 6,1,ZapBarge()
 exten => 760,1,DateTime()
-exten => 760,2,Goto(s|loopback)
+exten => 760,2,Goto(s\,loopback)
 exten => 761,1,ZapBarge()
-exten => 761,2,Goto(s|loopback)
+exten => 761,2,Goto(s\,loopback)
 exten => 765,1,Playback(demo-echotest)
 exten => 765,2,Echo()
 exten => 765,3,Playback(demo-echodone)
-exten => 765,4,Goto(s|loopback)
+exten => 765,4,Goto(s\,loopback)
 exten => 766,1,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.)
-exten => 766,2,Goto(s|loopback)
+exten => 766,2,Goto(s\,loopback)
 exten => 767,1,agi(tts-riddle.agi)
 exten => 767,2,Background(gsm/what-time-it-is2)
 exten => 767,3,SayUnixTime()
-exten => 767,4,Goto(s|loopback)
+exten => 767,4,Goto(s\,loopback)
 exten => 768,1,agi(tts-computer.agi)
 exten => 771,1,eagi(eagi-test)
 exten => 771,2,agi(my-agi-test)
@@ -2516,12 +2516,12 @@ exten => 776,9,Goto(11)
 exten => 776,10,BackGround(digits/0)
 exten => 776,11,NoOp(Finish if-workext-111)
 exten => 776,12,Hangup()
-exten => 790,1,MeetMe(790|p)
-exten => 792,1,Goto(pageall|s|begin)
-exten => 793,1,NoOp(Hello| this is included from include1.ael2)
+exten => 790,1,MeetMe(790\,p)
+exten => 792,1,Goto(pageall\,s\,begin)
+exten => 793,1,NoOp(Hello\, this is included from include1.ael2)
 exten => 793,2,NoOp(This was included from include2.ael2)
 exten => 793,3,NoOp(This is include3.ael2!)
-exten => 793,4,NoOp(Include5.ael2 doesn't include anything| either!)
+exten => 793,4,NoOp(Include5.ael2 doesn't include anything\, either!)
 exten => 793,5,NoOp(This is include4.ael2! Isn't it cool!?!?!?!)
 exten => 793,6,NoOp(4 doesn't include anything)
 exten => 795,1,AGI(wakeup.agi)
@@ -2544,79 +2544,79 @@ exten => 94,1,Dial(IAX2/seaniax|30)
 
 
 [announce-all]
-exten => s,1(begin),MeetMe(5555|dtqp)
-exten => s,2,MeetMeAdmin(5555|K)
+exten => s,1(begin),MeetMe(5555\,dtqp)
+exten => s,2,MeetMeAdmin(5555\,K)
 exten => s,3,Hangup()
-exten => h,1,MeetMeAdmin(5555|K)
+exten => h,1,MeetMeAdmin(5555\,K)
 exten => h,2,Hangup()
 
 
 [telemarket]
 exten => s,1(begin),Playback(telemarketer-intro)
 exten => s,2,Playback(telemarketer-choices)
-exten => 1,1,Goto(telemarket-charity|s|begin)
-exten => 2,1,Goto(telemarket-political|s|begin)
-exten => 3,1,Goto(telemarket-pollster|s|begin)
-exten => 4,1,Goto(telemarket-research|s|begin)
-exten => 5,1,Goto(telemarket-magazine|s|begin)
-exten => 6,1,Goto(telemarket-commercial|s|begin)
-exten => 7,1,Goto(telemarket-other|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-charity\,s\,begin)
+exten => 2,1,Goto(telemarket-political\,s\,begin)
+exten => 3,1,Goto(telemarket-pollster\,s\,begin)
+exten => 4,1,Goto(telemarket-research\,s\,begin)
+exten => 5,1,Goto(telemarket-magazine\,s\,begin)
+exten => 6,1,Goto(telemarket-commercial\,s\,begin)
+exten => 7,1,Goto(telemarket-other\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-charity]
 exten => s,1(begin),Playback(telemark-charity-intro)
 exten => s,2,Playback(telemark-charity-choices)
-exten => 1,1,Goto(telemarket-char-disease|s|begin)
-exten => 2,1,Goto(telemarket-char-handicap|s|begin)
-exten => 3,1,Goto(telemarket-char-police|s|begin)
-exten => 4,1,Goto(telemarket-char-school|s|begin)
-exten => 5,1,Goto(telemarket-char-college|s|begin)
-exten => 6,1,Goto(telemarket-char-animal|s|begin)
-exten => 7,1,Goto(telemarket-char-candidate|s|begin)
-exten => 8,1,Goto(telemarket-char-abuse|s|begin)
-exten => 9,1,Goto(telemarket-char-other|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-char-disease\,s\,begin)
+exten => 2,1,Goto(telemarket-char-handicap\,s\,begin)
+exten => 3,1,Goto(telemarket-char-police\,s\,begin)
+exten => 4,1,Goto(telemarket-char-school\,s\,begin)
+exten => 5,1,Goto(telemarket-char-college\,s\,begin)
+exten => 6,1,Goto(telemarket-char-animal\,s\,begin)
+exten => 7,1,Goto(telemarket-char-candidate\,s\,begin)
+exten => 8,1,Goto(telemarket-char-abuse\,s\,begin)
+exten => 9,1,Goto(telemarket-char-other\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-char-disease]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-handicap]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-police]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-school]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-college]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-animal]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-candidate]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-abuse]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-char-other]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-sorry]
@@ -2632,323 +2632,323 @@ exten => s,2,Hangup()
 [telemarket-political]
 exten => s,1(begin),Playback(telemark-polit-intro)
 exten => s,2,Playback(telemark-polit-choices)
-exten => 1,1,Goto(telemarket-poli-Am1st|s|begin)
-exten => 2,1,Goto(telemarket-poli-American|s|begin)
-exten => 3,1,Goto(telemarket-poli-AmHer|s|begin)
-exten => 4,1,Goto(telemarket-poli-AmInd|s|begin)
-exten => 5,1,Goto(telemarket-poli-AmNaz|s|begin)
-exten => 6,1,Goto(telemarket-poli-Pot|s|begin)
-exten => 7,1,Goto(telemarket-poli-AmRef|s|begin)
-exten => 8,1,Goto(telemarket-poli-CFP|s|begin)
-exten => 9,1,Goto(telemarket-political2|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-poli-Am1st\,s\,begin)
+exten => 2,1,Goto(telemarket-poli-American\,s\,begin)
+exten => 3,1,Goto(telemarket-poli-AmHer\,s\,begin)
+exten => 4,1,Goto(telemarket-poli-AmInd\,s\,begin)
+exten => 5,1,Goto(telemarket-poli-AmNaz\,s\,begin)
+exten => 6,1,Goto(telemarket-poli-Pot\,s\,begin)
+exten => 7,1,Goto(telemarket-poli-AmRef\,s\,begin)
+exten => 8,1,Goto(telemarket-poli-CFP\,s\,begin)
+exten => 9,1,Goto(telemarket-political2\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-political2]
 exten => s,1(begin),Playback(telemark-politx-intro)
 exten => s,2,Playback(telemark-polit2-choices)
-exten => 1,1,Goto(telemarket-poli-Communist|s|begin)
-exten => 2,1,Goto(telemarket-poli-Constit|s|begin)
-exten => 3,1,Goto(telemarket-poli-FamVal|s|begin)
-exten => 4,1,Goto(telemarket-poli-FreedSoc|s|begin)
-exten => 5,1,Goto(telemarket-poli-Grassroot|s|begin)
-exten => 6,1,Goto(telemarket-poli-Green|s|begin)
-exten => 7,1,Goto(telemarket-poli-Greens|s|begin)
-exten => 8,1,Goto(telemarket-poli-Independence|s|begin)
-exten => 9,1,Goto(telemarket-political3|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-poli-Communist\,s\,begin)
+exten => 2,1,Goto(telemarket-poli-Constit\,s\,begin)
+exten => 3,1,Goto(telemarket-poli-FamVal\,s\,begin)
+exten => 4,1,Goto(telemarket-poli-FreedSoc\,s\,begin)
+exten => 5,1,Goto(telemarket-poli-Grassroot\,s\,begin)
+exten => 6,1,Goto(telemarket-poli-Green\,s\,begin)
+exten => 7,1,Goto(telemarket-poli-Greens\,s\,begin)
+exten => 8,1,Goto(telemarket-poli-Independence\,s\,begin)
+exten => 9,1,Goto(telemarket-political3\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-political3]
 exten => s,1(begin),Playback(telemark-politx-intro)
 exten => s,2,Playback(telemark-polit3-choices)
-exten => 1,1,Goto(telemarket-poli-IndAm|s|begin)
-exten => 2,1,Goto(telemarket-poli-Labor|s|begin)
-exten => 3,1,Goto(telemarket-poli-Liber|s|begin)
-exten => 4,1,Goto(telemarket-poli-Light|s|begin)
-exten => 5,1,Goto(telemarket-poli-NatLaw|s|begin)
-exten => 6,1,Goto(telemarket-poli-New|s|begin)
-exten => 7,1,Goto(telemarket-poli-NewUn|s|begin)
-exten => 8,1,Goto(telemarket-poli-PeaceFree|s|begin)
-exten => 9,1,Goto(telemarket-political4|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-poli-IndAm\,s\,begin)
+exten => 2,1,Goto(telemarket-poli-Labor\,s\,begin)
+exten => 3,1,Goto(telemarket-poli-Liber\,s\,begin)
+exten => 4,1,Goto(telemarket-poli-Light\,s\,begin)
+exten => 5,1,Goto(telemarket-poli-NatLaw\,s\,begin)
+exten => 6,1,Goto(telemarket-poli-New\,s\,begin)
+exten => 7,1,Goto(telemarket-poli-NewUn\,s\,begin)
+exten => 8,1,Goto(telemarket-poli-PeaceFree\,s\,begin)
+exten => 9,1,Goto(telemarket-political4\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-political4]
 exten => s,1(begin),Playback(telemark-politx-intro)
 exten => s,2,Playback(telemark-polit4-choices)
-exten => 1,1,Goto(telemarket-poli-Prohib|s|begin)
-exten => 2,1,Goto(telemarket-poli-Ref|s|begin)
-exten => 3,1,Goto(telemarket-poli-Revol|s|begin)
-exten => 4,1,Goto(telemarket-poli-SocPart|s|begin)
-exten => 5,1,Goto(telemarket-poli-SocAct|s|begin)
-exten => 6,1,Goto(telemarket-poli-SocEq|s|begin)
-exten => 7,1,Goto(telemarket-poli-SocLab|s|begin)
-exten => 8,1,Goto(telemarket-poli-SocWork|s|begin)
-exten => 9,1,Goto(telemarket-political5|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-poli-Prohib\,s\,begin)
+exten => 2,1,Goto(telemarket-poli-Ref\,s\,begin)
+exten => 3,1,Goto(telemarket-poli-Revol\,s\,begin)
+exten => 4,1,Goto(telemarket-poli-SocPart\,s\,begin)
+exten => 5,1,Goto(telemarket-poli-SocAct\,s\,begin)
+exten => 6,1,Goto(telemarket-poli-SocEq\,s\,begin)
+exten => 7,1,Goto(telemarket-poli-SocLab\,s\,begin)
+exten => 8,1,Goto(telemarket-poli-SocWork\,s\,begin)
+exten => 9,1,Goto(telemarket-political5\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-political5]
 exten => s,1(begin),Playback(telemark-politx-intro)
 exten => s,2,Playback(telemark-polit5-choices)
-exten => 1,1,Goto(telemarket-poli-South|s|begin)
-exten => 2,1,Goto(telemarket-poli-SoInd|s|begin)
-exten => 3,1,Goto(telemarket-poli-USPac|s|begin)
-exten => 4,1,Goto(telemarket-poli-WTP|s|begin)
-exten => 5,1,Goto(telemarket-poli-WWP|s|begin)
-exten => 6,1,Goto(telemarket-poli-Democrat|s|begin)
-exten => 7,1,Goto(telemarket-poli-Repub|s|begin)
-exten => 8,1,Goto(telemarket-poli-other|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemarket-poli-South\,s\,begin)
+exten => 2,1,Goto(telemarket-poli-SoInd\,s\,begin)
+exten => 3,1,Goto(telemarket-poli-USPac\,s\,begin)
+exten => 4,1,Goto(telemarket-poli-WTP\,s\,begin)
+exten => 5,1,Goto(telemarket-poli-WWP\,s\,begin)
+exten => 6,1,Goto(telemarket-poli-Democrat\,s\,begin)
+exten => 7,1,Goto(telemarket-poli-Repub\,s\,begin)
+exten => 8,1,Goto(telemarket-poli-other\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-poli-other]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Repub]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Democrat]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-WWP]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-WTP]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-USPac]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SoInd]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-South]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SocWork]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SocLab]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SocEq]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SocAct]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-SocPart]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Revol]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Ref]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Prohib]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-PeaceFree]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-NewUn]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-New]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-NatLaw]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Light]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Liber]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Labor]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-IndAm]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Independence]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Greens]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Green]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Grassroot]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-FreedSoc]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-FamVal]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Constit]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Communist]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-CFP]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-AmRef]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Pot]
-exten => s,1(begin),Goto(telemarket-political|s|begin)
+exten => s,1(begin),Goto(telemarket-political\,s\,begin)
 
 
 [telemarket-poli-AmNaz]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-AmInd]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-AmHer]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-American]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-poli-Am1st]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-pollster]
 exten => s,1(begin),Playback(telemark-poll-intro)
-exten => s,2,Goto(telemarket-sorry|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => s,2,Goto(telemarket-sorry\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-research]
 exten => s,1(begin),Playback(telemark-research-intro)
-exten => s,2,Goto(telemarket-sorry|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => s,2,Goto(telemarket-sorry\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-magazine]
 exten => s,1(begin),Playback(telemark-mag-choices)
-exten => 1,1,Goto(telemark-mag-new|s|begin)
-exten => 2,1,Goto(telemark-mag-renew|s|begin)
-exten => 3,1,Goto(telemark-mag-survey|s|begin)
-exten => 4,1,Goto(telemark-mag-verify|s|begin)
-exten => 5,1,Goto(telemark-mag-other|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => 1,1,Goto(telemark-mag-new\,s\,begin)
+exten => 2,1,Goto(telemark-mag-renew\,s\,begin)
+exten => 3,1,Goto(telemark-mag-survey\,s\,begin)
+exten => 4,1,Goto(telemark-mag-verify\,s\,begin)
+exten => 5,1,Goto(telemark-mag-other\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemark-mag-new]
 exten => s,1(begin),Playback(telemark-mag-new)
 exten => s,2,Hangup()
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemark-mag-renew]
 exten => s,1(begin),Playback(telemark-mag-renew)
 exten => s,2,Hangup()
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemark-mag-survey]
 exten => s,1(begin),Playback(telemark-mag-survey)
 exten => s,2,Hangup()
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemark-mag-verify]
 exten => s,1(begin),Playback(telemark-mag-verify)
 exten => s,2,Hangup()
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemark-mag-other]
-exten => s,1(begin),Goto(telemarket-sorry|s|begin)
+exten => s,1(begin),Goto(telemarket-sorry\,s\,begin)
 
 
 [telemarket-commercial]
 exten => s,1(begin),Playback(telemark-comm-intro)
 exten => s,2,Voicemail(u82)
-exten => s,3,Goto(telemarket-sorry|s|begin)
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => s,3,Goto(telemarket-sorry\,s\,begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
 
 
 [telemarket-other]
 exten => s,1(begin),Playback(telemark-other-intro)
 exten => s,2,Hangup()
-exten => t,1,Goto(telemarket|s|begin)
-exten => i,1,Goto(telemarket|s|begin)
-exten => o,1,Goto(telemarket|s|begin)
+exten => t,1,Goto(telemarket\,s\,begin)
+exten => i,1,Goto(telemarket\,s\,begin)
+exten => o,1,Goto(telemarket\,s\,begin)
index 9f84bbc..081e37b 100644 (file)
@@ -1,12 +1,12 @@
 
 
 [dialextens]
-exten => _10X,1,Dial(Zap/${EXTEN:2}|30|tw)
-exten => _1ZX,1,Dial(Zap/${EXTEN:1}|30|tw)
+exten => _10X,1,Dial(Zap/${EXTEN:2}\,30\,tw)
+exten => _1ZX,1,Dial(Zap/${EXTEN:1}\,30\,tw)
 
 
 [dialthrus]
-exten => _3XX,1,Dial(Zap/${EXTEN:1}|30|tw)
+exten => _3XX,1,Dial(Zap/${EXTEN:1}\,30\,tw)
 
 
 [t1incoming]
@@ -40,25 +40,26 @@ exten => 81,9,Set(time2=${EPOCH})
 exten => 81,10,Verbose(The time diff is $[${time2} - ${time1} ] seconds)
 exten => 81,11,Verbose(Which means that the priorities/sec = $[4* ${iterations} / (${time2} - ${time1}) ])
 exten => 81,12,SayNumber($[4 * ${iterations} / (${time2} - ${time1}) ])
-exten => 82,1,Gosub(ndeep|s|1(100000))
+exten => 82,1,Gosub(ndeep\,s\,1(100000))
 exten => 82,2,Verbose(Finished 100000 levels deep call!)
-exten => 83,1,Goto(sw-2-${EXTEN}|10)
+exten => 83,1,Goto(sw-2-${EXTEN}\,10)
 exten => 83,2,NoOp(Finish switch-extension-2)
+exten => _sw-2-.,10,Goto(83\,2)
 exten => _sw-2-[4-7]X,10,Verbose(and this too!)
-exten => _sw-2-[4-7]X,11,Goto(83|2)
+exten => _sw-2-[4-7]X,11,Goto(sw-2-.\,10)
 exten => _sw-2-9X,10,Verbose(handle both 8x and 9x calls)
-exten => _sw-2-9X,11,Goto(sw-2-49|10)
+exten => _sw-2-9X,11,Goto(sw-2-49\,10)
 exten => _sw-2-8X,10,Verbose(do something to prepare it)
-exten => _sw-2-8X,11,Goto(sw-2-99|10)
+exten => _sw-2-8X,11,Goto(sw-2-99\,10)
 
 
 [ndeep]
-exten => s,1,Set(level=${ARG1})
+exten => s,1,Set(LOCAL(level)=${ARG1})
 exten => s,2,GotoIf($[${level} == 0]?3:5)
 exten => s,3,Verbose(2|Got to Level 0)
 exten => s,4,Return()
 exten => s,5,NoOp(Finish if-ndeep-3)
-exten => s,6,Gosub(ndeep|s|1($[${level}-1]))
+exten => s,6,Gosub(ndeep\,s\,1($[${level}-1]))
 exten => s,7,Return()
 
 
diff --git a/pbx/ael/ael-test/ref.ael-vtest21 b/pbx/ael/ael-test/ref.ael-vtest21
new file mode 100644 (file)
index 0000000..711540a
--- /dev/null
@@ -0,0 +1,9 @@
+[globals]
+AXLHAFT=wow-to-the-tenth-power
+JibberWorthy=zinger3
+OFFICE_CODE=503
+
+
+[from-enum]
+exten => _${OFFICE_CODE}XXXX,1,Answer()
+exten => _${OFFICE_CODE}XXXX,2,Goto(${EXTEN:3}\,1)
index 41feb9f..e9dde83 100644 (file)
@@ -3697,15 +3697,18 @@ void add_extensions(struct ael_extension *exten)
 {
        struct ael_priority *pr;
        char *label=0;
+       char realext[AST_MAX_EXTENSION];
        if (!exten) {
                ast_log(LOG_WARNING, "This file is Empty!\n" );
                return;
        }
        do {
                struct ael_priority *last = 0;
-               
+
+               memset(realext, '\0', sizeof(realext)); /* make sure this is properly initialized */
+               pbx_substitute_variables_helper(NULL, exten->name, realext, sizeof(realext) - 1);
                if (exten->hints) {
-                       if (ast_add_extension2(exten->context, 0 /*no replace*/, exten->name, PRIORITY_HINT, NULL, exten->cidmatch, 
+                       if (ast_add_extension2(exten->context, 0 /*no replace*/, realext, PRIORITY_HINT, NULL, exten->cidmatch, 
                                                                  exten->hints, NULL, ast_free, registrar)) {
                                ast_log(LOG_WARNING, "Unable to add step at priority 'hint' of extension '%s'\n",
                                                exten->name);
@@ -3785,7 +3788,7 @@ void add_extensions(struct ael_extension *exten)
                        else
                                label = 0;
                        
-                       if (ast_add_extension2(exten->context, 0 /*no replace*/, exten->name, pr->priority_num, (label?label:NULL), exten->cidmatch, 
+                       if (ast_add_extension2(exten->context, 0 /*no replace*/, realext, pr->priority_num, (label?label:NULL), exten->cidmatch, 
                                                                  app, strdup(appargs), ast_free, registrar)) {
                                ast_log(LOG_WARNING, "Unable to add step at priority '%d' of extension '%s'\n", pr->priority_num, 
                                                exten->name);
@@ -3885,6 +3888,22 @@ void ast_compile_ael2(struct ast_context **local_contexts, struct pval *root)
        struct ael_extension *exten;
        struct ael_extension *exten_list = 0;
 
+       for (p=root; p; p=p->next ) { /* do the globals first, so they'll be there
+                                                                        when we try to eval them */
+               switch (p->type) {
+               case PV_GLOBALS:
+                       /* just VARDEC elements */
+                       for (p2=p->u1.list; p2; p2=p2->next) {
+                               char buf2[2000];
+                               snprintf(buf2,sizeof(buf2),"%s=%s", p2->u1.str, p2->u2.val);
+                               pbx_builtin_setvar(NULL, buf2);
+                       }
+                       break;
+               default:
+                       break;
+               }
+       }
+       
        for (p=root; p; p=p->next ) {
                pval *lp;
                int argc;
@@ -3948,12 +3967,7 @@ void ast_compile_ael2(struct ast_context **local_contexts, struct pval *root)
                        break;
                        
                case PV_GLOBALS:
-                       /* just VARDEC elements */
-                       for (p2=p->u1.list; p2; p2=p2->next) {
-                               char buf2[2000];
-                               snprintf(buf2,sizeof(buf2),"%s=%s", p2->u1.str, p2->u2.val);
-                               pbx_builtin_setvar(NULL, buf2);
-                       }
+                       /* already done */
                        break;
                        
                case PV_CONTEXT:
index df8a01c..76562c3 100644 (file)
@@ -164,6 +164,17 @@ void ast_unregister_file_version(void)
        /* I'm erasing this, because I don't think anyone really ever needs to see it anyway */
 
 }
+void pbx_substitute_variables_helper(struct ast_channel *c,const char *cp1,char *cp2,int count);
+void pbx_substitute_variables_helper(struct ast_channel *c,const char *cp1,char *cp2,int count)
+{
+       if (cp1 && *cp1)
+               strncpy(cp2,cp1,AST_MAX_EXTENSION); /* Right now, this routine is ONLY being called for 
+                                                                                          a possible var substitution on extension names,
+                                                                                          so....! */
+       else
+               *cp2 = 0;
+}
+
 int ast_add_extension2(struct ast_context *con,
                        int replace, const char *extension, int priority, const char *label, const char *callerid,
                        const char *application, void *data, void (*datad)(void *),