From 5d0ce9b450857f5c515e3b2c1609cf3ba7e36354 Mon Sep 17 00:00:00 2001 From: mattf Date: Fri, 26 Oct 2007 19:01:09 +0000 Subject: [PATCH] added CLOSER call handling to the ALL_inbound agi script. Added status summary to the CLOSERstats.php report git-svn-id: svn://192.168.202.10@693 3d104415-ff17-0410-8863-d5cf3c621b8a --- UPGRADE | 7 +++- docs/LOAD_BALANCING.txt | 35 ++++++++++++++++--- docs/conf_examples/extensions.conf.sample | 3 ++ docs/conf_examples/extensions.conf.sample-1.4 | 3 ++ www/vicidial/admin.php | 11 ++++-- 5 files changed, 52 insertions(+), 7 deletions(-) diff --git a/UPGRADE b/UPGRADE index 8f8dfb30..8ef66ee1 100644 --- a/UPGRADE +++ b/UPGRADE @@ -43,12 +43,17 @@ NOTE: Upgrading from 1.1.12-3 to 2.0.1 is at the bottom exten => h,1,DeadAGI(agi://127.0.0.1:4577/call_log--HVcauses--PRI-----NODEBUG-----${HANGUPCAUSE}-----${DIALSTATUS}-----${DIALEDTIME}-----${ANSWEREDTIME})) 9. Moved the audio transfer script and report generating scripts settings to - /etc/astguiclient.conf settings file + /etc/astguiclient.conf settings file. FTP and reports login info. 10. Added agent alert, music-on-hold and several other parameters to inbound groups. Make sure you have musiconhold working properly before using in production. +11. REQUIRED CHANGE! in your dialplan you must now add lines for load balancing + even if you only have one server, and you must have lines with the 7 + prefix for silent insertion into the meetme conference: + exten => _010*010*010*015*78600XXX,... + See LOAD_BALANCING.txt and extensions.conf.sample for more information diff --git a/docs/LOAD_BALANCING.txt b/docs/LOAD_BALANCING.txt index 8eca1da6..c2023783 100644 --- a/docs/LOAD_BALANCING.txt +++ b/docs/LOAD_BALANCING.txt @@ -77,10 +77,15 @@ NOTE: at the bottom of this document are conf examples for a 3 server load balan [default] exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*016*78600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) exten => _010*010*010*015*8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*015*78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*016*78600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) SERVER TWO(ASTtest2-10.10.10.16) extensions.conf: @@ -90,10 +95,15 @@ NOTE: at the bottom of this document are conf examples for a 3 server load balan [default] exten => _010*010*010*015*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) exten => _010*010*010*016*8600XXX,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*015*78600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*015*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) exten => _010*010*010*016*8600XXX*.,1,Goto(default,${EXTEN:16},1) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*015*78600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX*.,1,Goto(default,${EXTEN:16},1) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) 5. For BOTH servers the VDAD extens need to be setup there as well for the Load-Balance and Load-Balance-Overflow AGI scripts, as well as setting up the closer and inbound extens if needed: @@ -241,11 +251,18 @@ The only steps that are different as you add more load-balanced servers are step exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) exten => _010*010*010*017*8600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) + exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*016*78600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _010*010*010*017*78600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) exten => _010*010*010*015*8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) exten => _010*010*010*017*8600XXX*.,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*015*78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*016*78600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _010*010*010*017*78600XXX*.,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) SERVER TWO(ASTtest2-10.10.10.16) extensions.conf: @@ -257,11 +274,18 @@ The only steps that are different as you add more load-balanced servers are step exten => _010*010*010*015*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) exten => _010*010*010*016*8600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*017*8600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) + exten => _010*010*010*015*78600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*017*78600XXX,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) exten => _010*010*010*015*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) exten => _010*010*010*016*8600XXX*.,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*017*8600XXX*.,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*015*78600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX*.,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*017*78600XXX*.,1,Dial(${TRUNKIAX3}/${EXTEN:16},55,o) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) SERVER THREE(ASTtest3-10.10.10.17) extensions.conf: @@ -273,8 +297,11 @@ The only steps that are different as you add more load-balanced servers are step exten => _010*010*010*015*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) exten => _010*010*010*017*8600XXX,1,Goto(default,${EXTEN:16},1) + exten => _010*010*010*015*78600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _010*010*010*017*78600XXX,1,Goto(default,${EXTEN:16},1) - exten => _010*010*010*015*8600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) - exten => _010*010*010*016*8600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) - exten => _010*010*010*017*8600XXX*.,1,Goto(default,${EXTEN:16},1) - exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) + exten => _010*010*010*015*78600XXX*.,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) + exten => _010*010*010*016*78600XXX*.,1,Dial(${TRUNKIAX2}/${EXTEN:16},55,o) + exten => _010*010*010*017*78600XXX*.,1,Goto(default,${EXTEN:16},1) + exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) diff --git a/docs/conf_examples/extensions.conf.sample b/docs/conf_examples/extensions.conf.sample index 0ccc3129..ebbb1a32 100644 --- a/docs/conf_examples/extensions.conf.sample +++ b/docs/conf_examples/extensions.conf.sample @@ -223,7 +223,10 @@ exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) +exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) +exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) ; ### server 2 extens: ; exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) diff --git a/docs/conf_examples/extensions.conf.sample-1.4 b/docs/conf_examples/extensions.conf.sample-1.4 index f55aca72..0b681df8 100644 --- a/docs/conf_examples/extensions.conf.sample-1.4 +++ b/docs/conf_examples/extensions.conf.sample-1.4 @@ -223,7 +223,10 @@ exten => _*NXXNXXXXXX*3429,5,Voicemail,u2000 exten => _010*010*010*015*8600XXX,1,Goto(default,${EXTEN:16},1) exten => _010*010*010*015*8600XXX*.,1,Goto(default,${EXTEN:16},1) +exten => _010*010*010*015*78600XXX,1,Goto(default,${EXTEN:16},1) +exten => _010*010*010*015*78600XXX*.,1,Goto(default,${EXTEN:16},1) exten => _8600XXX*.,1,AGI(agi-VDADfixCXFER.agi) +exten => _78600XXX*.,1,AGI(agi-VDADfixCXFER.agi) ; ### server 2 extens: ; exten => _010*010*010*016*8600XXX,1,Dial(${TRUNKIAX1}/${EXTEN:16},55,o) diff --git a/www/vicidial/admin.php b/www/vicidial/admin.php index d14523e1..fdbd838a 100644 --- a/www/vicidial/admin.php +++ b/www/vicidial/admin.php @@ -5594,11 +5594,15 @@ if ($ADD==42) $stmt="DELETE FROM vicidial_campaign_statuses where campaign_id='$campaign_id' and status='$status';"; $rslt=mysql_query($stmt, $link); + $stmtA="DELETE FROM vicidial_campaign_hotkeys where campaign_id='$campaign_id' and status='$status';"; + $rslt=mysql_query($stmtA, $link); + + ### LOG CHANGES TO LOG FILE ### if ($WeBRooTWritablE > 0) { $fp = fopen ("./admin_changes_log.txt", "a"); - fwrite ($fp, "$date|DELETE CAMPAIGN STATUS|$PHP_AUTH_USER|$ip|$stmt|\n"); + fwrite ($fp, "$date|DELETE CAMPAIGN STATUS|$PHP_AUTH_USER|$ip|$stmt|$stmtA|\n"); fclose($fp); } } @@ -6747,11 +6751,14 @@ if ($ADD==421111111111111) $stmt="DELETE FROM vicidial_statuses where status='$status';"; $rslt=mysql_query($stmt, $link); + $stmtA="DELETE FROM vicidial_campaign_hotkeys where status='$status';"; + $rslt=mysql_query($stmtA, $link); + ### LOG CHANGES TO LOG FILE ### if ($WeBRooTWritablE > 0) { $fp = fopen ("./admin_changes_log.txt", "a"); - fwrite ($fp, "$date|DELETE SYSTEM STATUS |$PHP_AUTH_USER|$ip|$stmt|\n"); + fwrite ($fp, "$date|DELETE SYSTEM STATUS |$PHP_AUTH_USER|$ip|$stmt|$stmtA|\n"); fclose($fp); } }