[general] static=yes writeprotect=no [globals] CONSOLE => Console/dsp IAXINFO => guest TRUNKMSD => 1 [custom-callboth2] exten => _1XXXNXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1XXXNXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1NXXNXXXXXX,3,AGI(/var/www/asterisk/bin/callout.mysql.php|${EXTEN}) exten => _NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _NXXXXXX,3,AGI(/var/www/asterisk/bin/callout.mysql.php|${EXTEN}) [conference_bridge] exten => 5356,1,meetme [macro-cmg_exten] exten => s,1,SetAccount(CMG) exten => s,2,Set(CALLFILENAME=${UNIQUEID}) exten => s,3,Monitor(wav,/recordings/${CALLFILENAME},m) exten => s,4,Dial(SIP/${ARG2},20) exten => s,5,PlayBack(vm-goodbye) exten => s,6,Hangup() ;--------start queue agent stuff--------------- [macro-queue-addremove] ;note: MACRO_EXTEN should be prefixed with I for login, O for logout, P for pause, U for unpause. ;ARG1 = queue name ;ARG2 = penalty exten => s,1,Goto(s-${MACRO_EXTEN:0:1},1) ;Login exten => s-I,1,AddQueueMember(${ARG1}|Local/${MACRO_EXTEN:1}@agents|${ARG2}) ;Logout exten => s-O,1,RemoveQueueMember(${ARG1}|Local/${MACRO_EXTEN:1}@agents) ;Pause exten => s-P,1,PauseQueueMember(${ARG1}|Local/${MACRO_EXTEN:1}@agents) ;Unpause exten => s-U,1,UnpauseQueueMember(${ARG1}|Local/${MACRO_EXTEN:1}@agents) ;Invalid exten => _s-.,1,Playback(invalid) [macro-queue-success] exten => s,1,GotoIf($[${queue-announce-success} > 0]?continue) exten => s,n,MacroExit exten => s,n(continue),Goto(s-${MACRO_EXTEN:0:1},1) exten => s-I,1,Playback(agent-loginok) exten => s-I,n,Hangup exten => s-O,1,Playback(agent-loggedoff) exten => s-O,n,Hangup [macro-callagent] exten => s,1,GotoIf($[${GROUP_COUNT(${MACRO_EXTEN}@agents)} = 0]?avail:s-BUSY|1) exten => s,n(avail),Set(OUTBOUND_GROUP=${MACRO_EXTEN}@agents) exten => s,n,Dial(${ARG1}|300|t) exten => s,n,Goto(s-${DIALSTATUS}|1) exten => _s-.,1,Hangup() exten => s-BUSY,1,Busy() exten => s-NOANSWER,1,Set(queue-announce-success=0) exten => s-NOANSWER,n,Goto(queues-manip|O${MACRO_EXTEN}|1) [queues-loginout] exten => *1,1,Answer() exten => *1,n,Read(AGENT_NUMBER|agent-user) exten => *1,n,VMAuthenticate(${AGENT_NUMBER}@default|s) exten => *1,n,Set(queue-announce-success=1) exten => *1,n,Goto(queues-manip|I${AGENT_NUMBER}|1) exten => *1*,1,Answer() exten => *1*,n,Read(AGENT_NUMBER|agent-user) exten => *1*,n,Set(queue-announce-success=1) exten => *1*,n,Goto(queues-manip|O${AGENT_NUMBER}|1) ; Context to add or remove specific individuals to their respective Queues [queues-manip] ; John Doe exten => _[IO]3501,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3501,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3501,n,Macro(queue-success) exten => _[IO]3502,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3502,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3502,n,Macro(queue-success) exten => _[IO]3503,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3503,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3503,n,Macro(queue-success) exten => _[IO]3504,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3504,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3504,n,Macro(queue-success) exten => _[IO]3505,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3505,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3505,n,Macro(queue-success) exten => _[IO]3506,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3506,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3506,n,Macro(queue-success) exten => _[IO]3507,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3507,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3507,n,Macro(queue-success) exten => _[IO]3508,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3508,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3508,n,Macro(queue-success) exten => _[IO]3509,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3509,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3509,n,Macro(queue-success) exten => _[IO]3510,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3510,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3510,n,Macro(queue-success) exten => _[IO]3511,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3511,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3511,n,Macro(queue-success) exten => _[IO]3512,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3512,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3512,n,Macro(queue-success) exten => _[IO]3513,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3513,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3513,n,Macro(queue-success) exten => _[IO]3514,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3514,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3514,n,Macro(queue-success) exten => _[IO]3515,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3515,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3515,n,Macro(queue-success) exten => _[IO]3516,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3516,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3516,n,Macro(queue-success) exten => _[IO]3517,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3517,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3517,n,Macro(queue-success) exten => _[IO]3518,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3518,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3518,n,Macro(queue-success) exten => _[IO]3519,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3519,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3519,n,Macro(queue-success) exten => _[IO]3520,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3520,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3520,n,Macro(queue-success) exten => _[IO]3520,n,Macro(queue-success) exten => _[IO]3521,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3521,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3521,n,Macro(queue-success) exten => _[IO]3522,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3522,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3522,n,Macro(queue-success) exten => _[IO]3523,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3523,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3523,n,Macro(queue-success) exten => _[IO]3524,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3524,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3524,n,Macro(queue-success) exten => _[IO]3525,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3525,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3525,n,Macro(queue-success) exten => _[IO]3526,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3526,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3526,n,Macro(queue-success) exten => _[IO]3527,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3527,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3527,n,Macro(queue-success) exten => _[IO]3528,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3528,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3528,n,Macro(queue-success) exten => _[IO]3529,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3529,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3529,n,Macro(queue-success) exten => _[IO]3530,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3530,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3530,n,Macro(queue-success) exten => _[IO]3531,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3531,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3531,n,Macro(queue-success) exten => _[IO]3532,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3532,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3532,n,Macro(queue-success) exten => _[IO]3533,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3533,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3533,n,Macro(queue-success) exten => _[IO]3534,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3534,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3534,n,Macro(queue-success) exten => _[IO]3535,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3535,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3535,n,Macro(queue-success) exten => _[IO]3536,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3536,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3536,n,Macro(queue-success) exten => _[IO]3537,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3537,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3537,n,Macro(queue-success) exten => _[IO]3538,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3538,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3538,n,Macro(queue-success) exten => _[IO]3539,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3539,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3539,n,Macro(queue-success) exten => _[IO]3540,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3540,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3540,n,Macro(queue-success) exten => _[IO]3541,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3541,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3541,n,Macro(queue-success) exten => _[IO]3542,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3542,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3542,n,Macro(queue-success) exten => _[IO]3543,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3543,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3543,n,Macro(queue-success) exten => _[IO]3544,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3544,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3544,n,Macro(queue-success) exten => _[IO]3545,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3545,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3545,n,Macro(queue-success) exten => _[IO]3546,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3546,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3546,n,Macro(queue-success) exten => _[IO]3547,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3547,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3547,n,Macro(queue-success) exten => _[IO]3548,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3548,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3548,n,Macro(queue-success) exten => _[IO]3549,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3549,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3549,n,Macro(queue-success) exten => _[IO]3550,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3550,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3550,n,Macro(queue-success) exten => _[IO]3551,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3551,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3551,n,Macro(queue-success) exten => _[IO]3552,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3552,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3552,n,Macro(queue-success) exten => _[IO]3553,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3553,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3553,n,Macro(queue-success) exten => _[IO]3554,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3554,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3554,n,Macro(queue-success) exten => _[IO]3555,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3555,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3555,n,Macro(queue-success) exten => _[IO]3556,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3556,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3556,n,Macro(queue-success) exten => _[IO]3557,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3557,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3557,n,Macro(queue-success) exten => _[IO]3558,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3558,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3558,n,Macro(queue-success) exten => _[IO]3559,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3559,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3559,n,Macro(queue-success) exten => _[IO]3560,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3560,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3560,n,Macro(queue-success) exten => _[IO]3561,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3561,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3561,n,Macro(queue-success) exten => _[IO]3562,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3562,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3562,n,Macro(queue-success) exten => _[IO]3563,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3563,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3563,n,Macro(queue-success) exten => _[IO]3564,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3564,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3564,n,Macro(queue-success) exten => _[IO]3565,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3565,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3565,n,Macro(queue-success) exten => _[IO]3566,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3566,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3566,n,Macro(queue-success) exten => _[IO]3567,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3567,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3567,n,Macro(queue-success) exten => _[IO]3568,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3568,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3568,n,Macro(queue-success) exten => _[IO]3569,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3569,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3569,n,Macro(queue-success) exten => _[IO]3570,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3570,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3570,n,Macro(queue-success) exten => _[IO]3571,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3571,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3571,n,Macro(queue-success) exten => _[IO]3572,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3572,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3572,n,Macro(queue-success) exten => _[IO]3573,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3573,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3573,n,Macro(queue-success) exten => _[IO]3574,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3574,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3574,n,Macro(queue-success) exten => _[IO]3575,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3575,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3575,n,Macro(queue-success) exten => _[IO]3576,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3576,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3576,n,Macro(queue-success) exten => _[IO]3577,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3577,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3577,n,Macro(queue-success) exten => _[IO]3578,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3578,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3578,n,Macro(queue-success) exten => _[IO]3579,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3579,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3579,n,Macro(queue-success) exten => _[IO]3580,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3580,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3580,n,Macro(queue-success) exten => _[IO]3581,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3581,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3581,n,Macro(queue-success) exten => _[IO]3582,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3582,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3582,n,Macro(queue-success) exten => _[IO]3583,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3583,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3583,n,Macro(queue-success) exten => _[IO]3584,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3584,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3584,n,Macro(queue-success) exten => _[IO]3585,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3585,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3585,n,Macro(queue-success) exten => _[IO]3586,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3586,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3586,n,Macro(queue-success) exten => _[IO]3587,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3587,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3587,n,Macro(queue-success) exten => _[IO]3588,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3588,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3588,n,Macro(queue-success) exten => _[IO]3589,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3589,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3589,n,Macro(queue-success) exten => _[IO]3590,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3590,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3590,n,Macro(queue-success) exten => _[IO]3591,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3591,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3591,n,Macro(queue-success) exten => _[IO]3592,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3592,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3592,n,Macro(queue-success) exten => _[IO]3593,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3593,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3593,n,Macro(queue-success) exten => _[IO]3594,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3594,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3594,n,Macro(queue-success) exten => _[IO]3595,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3595,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3595,n,Macro(queue-success) exten => _[IO]3596,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3596,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3596,n,Macro(queue-success) exten => _[IO]3597,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3597,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3597,n,Macro(queue-success) exten => _[IO]3598,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3598,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3598,n,Macro(queue-success) exten => _[IO]3599,1,Macro(queue-addremove|lex_live|10) exten => _[IO]3599,n,Macro(queue-addremove|lex_aged|10) exten => _[IO]3599,n,Macro(queue-success) [agents] include => queues-loginout ; Place all your agents in this context exten => 3501,1,Macro(Employee-Agent-NoVM|3501) exten => 3502,1,Macro(Employee-Agent-NoVM|3502) exten => 3503,1,Macro(Employee-Agent-NoVM|3503) exten => 3504,1,Macro(Employee-Agent-NoVM|3504) exten => 3505,1,Macro(Employee-Agent-NoVM|3505) exten => 3506,1,Macro(Employee-Agent-NoVM|3506) exten => 3507,1,Macro(Employee-Agent-NoVM|3507) exten => 3508,1,Macro(Employee-Agent-NoVM|3508) exten => 3509,1,Macro(Employee-Agent-NoVM|3509) exten => 3510,1,Macro(Employee-Agent-NoVM|3510) exten => 3511,1,Macro(Employee-Agent-NoVM|3511) exten => 3512,1,Macro(Employee-Agent-NoVM|3512) exten => 3513,1,Macro(Employee-Agent-NoVM|3513) exten => 3514,1,Macro(Employee-Agent-NoVM|3514) exten => 3515,1,Macro(Employee-Agent-NoVM|3515) exten => 3516,1,Macro(Employee-Agent-NoVM|3516) exten => 3517,1,Macro(Employee-Agent-NoVM|3517) exten => 3518,1,Macro(Employee-Agent-NoVM|3518) exten => 3519,1,Macro(Employee-Agent-NoVM|3519) exten => 3520,1,Macro(Employee-Agent-NoVM|3520) exten => 3521,1,Macro(Employee-Agent-NoVM|3521) exten => 3522,1,Macro(Employee-Agent-NoVM|3522) exten => 3523,1,Macro(Employee-Agent-NoVM|3523) exten => 3524,1,Macro(Employee-Agent-NoVM|3524) exten => 3525,1,Macro(Employee-Agent-NoVM|3525) exten => 3526,1,Macro(Employee-Agent-NoVM|3526) exten => 3527,1,Macro(Employee-Agent-NoVM|3527) exten => 3528,1,Macro(Employee-Agent-NoVM|3528) exten => 3529,1,Macro(Employee-Agent-NoVM|3529) exten => 3530,1,Macro(Employee-Agent-NoVM|3530) exten => 3531,1,Macro(Employee-Agent-NoVM|3531) exten => 3532,1,Macro(Employee-Agent-NoVM|3532) exten => 3533,1,Macro(Employee-Agent-NoVM|3533) exten => 3534,1,Macro(Employee-Agent-NoVM|3534) exten => 3535,1,Macro(Employee-Agent-NoVM|3535) exten => 3536,1,Macro(Employee-Agent-NoVM|3536) exten => 3537,1,Macro(Employee-Agent-NoVM|3537) exten => 3538,1,Macro(Employee-Agent-NoVM|3538) exten => 3539,1,Macro(Employee-Agent-NoVM|3539) exten => 3540,1,Macro(Employee-Agent-NoVM|3540) exten => 3541,1,Macro(Employee-Agent-NoVM|3541) exten => 3542,1,Macro(Employee-Agent-NoVM|3542) exten => 3543,1,Macro(Employee-Agent-NoVM|3543) exten => 3544,1,Macro(Employee-Agent-NoVM|3544) exten => 3545,1,Macro(Employee-Agent-NoVM|3545) exten => 3546,1,Macro(Employee-Agent-NoVM|3546) exten => 3547,1,Macro(Employee-Agent-NoVM|3547) exten => 3548,1,Macro(Employee-Agent-NoVM|3548) exten => 3549,1,Macro(Employee-Agent-NoVM|3549) exten => 3550,1,Macro(Employee-Agent-NoVM|3550) exten => 3551,1,Macro(Employee-Agent-NoVM|3551) exten => 3552,1,Macro(Employee-Agent-NoVM|3552) exten => 3553,1,Macro(Employee-Agent-NoVM|3553) exten => 3554,1,Macro(Employee-Agent-NoVM|3554) exten => 3555,1,Macro(Employee-Agent-NoVM|3555) exten => 3556,1,Macro(Employee-Agent-NoVM|3556) exten => 3557,1,Macro(Employee-Agent-NoVM|3557) exten => 3558,1,Macro(Employee-Agent-NoVM|3558) exten => 3559,1,Macro(Employee-Agent-NoVM|3559) exten => 3560,1,Macro(Employee-Agent-NoVM|3560) exten => 3561,1,Macro(Employee-Agent-NoVM|3561) exten => 3562,1,Macro(Employee-Agent-NoVM|3562) exten => 3563,1,Macro(Employee-Agent-NoVM|3563) exten => 3564,1,Macro(Employee-Agent-NoVM|3554) exten => 3565,1,Macro(Employee-Agent-NoVM|3565) exten => 3566,1,Macro(Employee-Agent-NoVM|3566) exten => 3567,1,Macro(Employee-Agent-NoVM|3567) exten => 3568,1,Macro(Employee-Agent-NoVM|3568) exten => 3569,1,Macro(Employee-Agent-NoVM|3569) exten => 3570,1,Macro(Employee-Agent-NoVM|3570) exten => 3571,1,Macro(Employee-Agent-NoVM|3571) exten => 3572,1,Macro(Employee-Agent-NoVM|3572) exten => 3573,1,Macro(Employee-Agent-NoVM|3573) exten => 3574,1,Macro(Employee-Agent-NoVM|3574) exten => 3575,1,Macro(Employee-Agent-NoVM|3575) exten => 3576,1,Macro(Employee-Agent-NoVM|3576) exten => 3577,1,Macro(Employee-Agent-NoVM|3577) exten => 3578,1,Macro(Employee-Agent-NoVM|3578) exten => 3579,1,Macro(Employee-Agent-NoVM|3579) exten => 3580,1,Macro(Employee-Agent-NoVM|3580) exten => 3581,1,Macro(Employee-Agent-NoVM|3581) exten => 3582,1,Macro(Employee-Agent-NoVM|3582) exten => 3583,1,Macro(Employee-Agent-NoVM|3583) exten => 3584,1,Macro(Employee-Agent-NoVM|3584) exten => 3585,1,Macro(Employee-Agent-NoVM|3585) exten => 3586,1,Macro(Employee-Agent-NoVM|3586) exten => 3587,1,Macro(Employee-Agent-NoVM|3587) exten => 3588,1,Macro(Employee-Agent-NoVM|3588) exten => 3589,1,Macro(Employee-Agent-NoVM|3589) exten => 3590,1,Macro(Employee-Agent-NoVM|3590) exten => 3591,1,Macro(Employee-Agent-NoVM|3591) exten => 3592,1,Macro(Employee-Agent-NoVM|3592) exten => 3593,1,Macro(Employee-Agent-NoVM|3593) exten => 3594,1,Macro(Employee-Agent-NoVM|3594) exten => 3595,1,Macro(Employee-Agent-NoVM|3595) exten => 3596,1,Macro(Employee-Agent-NoVM|3596) exten => 3597,1,Macro(Employee-Agent-NoVM|3597) exten => 3598,1,Macro(Employee-Agent-NoVM|3598) exten => 3599,1,Macro(Employee-Agent-NoVM|3599) [macro-Employee-Agent-NoVM] exten => s,1,NoOp() exten => s,n,Wait(1) ; so that we don't chop off the beginning of the prompts exten => s,n,GotoIf($[${GROUP_COUNT(${MACRO_EXTEN}@agents)} = 0]?avail:busy) ; don't mess with this OUTBOUND_GROUP variable -- it's magically used by Dial() exten => s,n(avail),Set(OUTBOUND_GROUP=${MACRO_EXTEN}@agents) exten => s,n,Dial(SIP/${ARG1},20) ;exten => s,n,Dial(${PEER}|20|t) exten => s,n(busy),Busy() ;--------end queue agent stuff----------------- [CMG] include => agents include => queues-loginout exten => i,1,Playback(invalid) exten => i,n,Goto(CMG,5313,1) ;voicemail access exten => 8500,1,VoicemailMain(@cmg) exten => 900,1,Wait(2) exten => 900,2,Record(/tmp/asterisk-recording:gsm) exten => 900,3,Wait(2) exten => 900,4,Playback(/tmp/asterisk-recording) exten => 900,5,Wait(2) exten => 900,6,Hangup ;Lex Live exten => 8862,1,Answer() exten => 8862,n,SetMusicOnHold(native) exten => 8862,n,Set(TIMEOUT(digit)=2) exten => 8862,n,Set(TIMEOUT(response)=10) exten => 8862,n,Background(Lex_Queue) exten => 8862,n,Queue(Lex_Live|t|||600) exten => 8862,n,Playback(Lex_Noavail) exten => 8862,n,Voicemail(2000@cmg) ;Lex Aged exten => 2905,1,Answer() exten => 2905,n,SetMusicOnHold(native) exten => 2905,n,Set(TIMEOUT(digit)=2) exten => 2905,n,Set(TIMEOUT(response)=10) exten => 2905,n,Background(Lex_Queue) exten => 2905,n,Queue(Lex_Aged|t|||600) exten => 2905,n,Playback(Lex_Noavail) exten => 2905,n,Voicemail(2000@cmg) exten => _1XXXNXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1XXXNXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1XXXNXXXXXX,3,Dial(Zap/g1/${EXTEN:1}) exten => _1800NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1800NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1800NXXXXXX,3,Dial(Zap/g1/${EXTEN:1}) exten => _1866NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1866NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1866NXXXXXX,3,Dial(Zap/g1/${EXTEN:1}) exten => _1877NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1877NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1877NXXXXXX,3,Dial(Zap/g1/${EXTEN:1}) exten => _1888NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _1888NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _1888NXXXXXX,3,Dial(Zap/g1/${EXTEN:1}) exten => _NXXXXXX,1,Set(CALLFILENAME=${UNIQUEID}) exten => _NXXXXXX,2,Monitor(wav,/recordings/${CALLFILENAME},m) exten => _NXXXXXX,3,Dial(Zap/g1/801${EXTEN:0}) exten => 3508,1,Macro(cmg_exten,3508,3508) exten => 3509,1,Macro(cmg_exten,3509,3509) exten => 3510,1,Macro(cmg_exten,3510,3510) exten => 3511,1,Macro(cmg_exten,3511,3511) exten => 3512,1,Macro(cmg_exten,3512,3512) exten => 3513,1,Macro(cmg_exten,3513,3513) exten => 3514,1,Macro(cmg_exten,3514,3514) exten => 3515,1,Macro(cmg_exten,3515,3515) exten => 3516,1,Macro(cmg_exten,3516,3516) exten => 3517,1,Macro(cmg_exten,3517,3517) exten => 3518,1,Macro(cmg_exten,3518,3518) exten => 3519,1,Macro(cmg_exten,3519,3519) exten => 3520,1,Macro(cmg_exten,3520,3520) exten => 3521,1,Macro(cmg_exten,3521,3521) exten => 3504,1,Macro(cmg_exten,3504,3504) exten => 3561,1,Macro(cmg_exten,3561,3561) exten => 3562,1,Macro(cmg_exten,3562,3562) exten => 3563,1,Macro(cmg_exten,3563,3563) exten => 3564,1,Macro(cmg_exten,3564,3564) exten => 3565,1,Macro(cmg_exten,3565,3565) exten => 3501,1,Macro(cmg_exten,3501,3501) exten => 3502,1,Macro(cmg_exten,3502,3502) exten => 3503,1,Macro(cmg_exten,3503,3503) exten => 3505,1,Macro(cmg_exten,3505,3505) exten => 3506,1,Macro(cmg_exten,3506,3506) exten => 3507,1,Macro(cmg_exten,3507,3507) exten => 3566,1,Macro(cmg_exten,3566,3566) exten => 3567,1,Macro(cmg_exten,3567,3567) exten => 3568,1,Macro(cmg_exten,3568,3568) exten => 3570,1,Macro(cmg_exten,3570,3570) exten => 3522,1,Macro(cmg_exten,3522,3522) exten => 3523,1,Macro(cmg_exten,3523,3523) exten => 3524,1,Macro(cmg_exten,3524,3524) exten => 3525,1,Macro(cmg_exten,3525,3525) exten => 3526,1,Macro(cmg_exten,3526,3526) exten => 3527,1,Macro(cmg_exten,3527,3527) exten => 3528,1,Macro(cmg_exten,3528,3528) exten => 3529,1,Macro(cmg_exten,3529,3529) exten => 3530,1,Macro(cmg_exten,3530,3530) exten => 3531,1,Macro(cmg_exten,3531,3531) exten => 3532,1,Macro(cmg_exten,3532,3532) exten => 3533,1,Macro(cmg_exten,3533,3533) exten => 3534,1,Macro(cmg_exten,3534,3534) exten => 3535,1,Macro(cmg_exten,3535,3535) exten => 3536,1,Macro(cmg_exten,3536,3536) exten => 3537,1,Macro(cmg_exten,3537,3537) exten => 3538,1,Macro(cmg_exten,3538,3538) exten => 3539,1,Macro(cmg_exten,3539,3539) exten => 3540,1,Macro(cmg_exten,3540,3540) exten => 3541,1,Macro(cmg_exten,3541,3541) exten => 3542,1,Macro(cmg_exten,3542,3542) exten => 3543,1,Macro(cmg_exten,3543,3543) exten => 3544,1,Macro(cmg_exten,3544,3544) exten => 3545,1,Macro(cmg_exten,3545,3545) exten => 3546,1,Macro(cmg_exten,3546,3546) exten => 3547,1,Macro(cmg_exten,3547,3547) exten => 3548,1,Macro(cmg_exten,3548,3548) exten => 3549,1,Macro(cmg_exten,3549,3549) exten => 3550,1,Macro(cmg_exten,3550,3550) exten => 3551,1,Macro(cmg_exten,3551,3551) exten => 3552,1,Macro(cmg_exten,3552,3552) exten => 3553,1,Macro(cmg_exten,3553,3553) exten => 3554,1,Macro(cmg_exten,3554,3554) exten => 3555,1,Macro(cmg_exten,3555,3555) exten => 3556,1,Macro(cmg_exten,3556,3556) exten => 3557,1,Macro(cmg_exten,3557,3557) exten => 3558,1,Macro(cmg_exten,3558,3558) exten => 3559,1,Macro(cmg_exten,3559,3559) exten => 3560,1,Macro(cmg_exten,3560,3560) exten => 3571,1,Macro(cmg_exten,3571,3571) exten => 3572,1,Macro(cmg_exten,3572,3572) exten => 3573,1,Macro(cmg_exten,3573,3573) exten => 3574,1,Macro(cmg_exten,3574,3574) exten => 3575,1,Macro(cmg_exten,3575,3575) exten => 3576,1,Macro(cmg_exten,3576,3576) exten => 3577,1,Macro(cmg_exten,3577,3577) exten => 3578,1,Macro(cmg_exten,3578,3578) exten => 3579,1,Macro(cmg_exten,3579,3579) exten => 3580,1,Macro(cmg_exten,3580,3580) exten => 3581,1,Macro(cmg_exten,3581,3581) exten => 3582,1,Macro(cmg_exten,3582,3582) exten => 3583,1,Macro(cmg_exten,3583,3583) exten => 3584,1,Macro(cmg_exten,3584,3584) exten => 3585,1,Macro(cmg_exten,3585,3585) exten => 3586,1,Macro(cmg_exten,3586,3586) exten => 3587,1,Macro(cmg_exten,3587,3587) exten => 3588,1,Macro(cmg_exten,3588,3588) exten => 4000,1,Macro(cmg_exten,4000,4000) exten => 6000,1,Macro(cmg_exten,6000,6000)