56 lines
3.2 KiB
Diff
56 lines
3.2 KiB
Diff
--- agi-VDAD_RINGALL.agi.orig 2022-09-07 11:20:53.126448503 -0400
|
|
+++ agi-VDAD_RINGALL.agi 2022-09-07 11:20:12.322581793 -0400
|
|
@@ -90,7 +90,7 @@
|
|
or die "Couldn't connect to database: " . DBI->errstr;
|
|
|
|
### Grab Server values from the database
|
|
-$stmtA = "SELECT agi_output,ext_context,asterisk_version FROM servers where server_ip = '$VARserver_ip';";
|
|
+$stmtA = "SELECT agi_output,ext_context,asterisk_version,conf_engine FROM servers where server_ip = '$VARserver_ip';";
|
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
|
$sthArows=$sthA->rows;
|
|
@@ -101,6 +101,7 @@
|
|
$DBagi_output = $aryA[0];
|
|
$ext_context = $aryA[1];
|
|
$asterisk_version = $aryA[2];
|
|
+ $conf_engine = $aryA[3];
|
|
if ($DBagi_output =~ /STDERR/) {$AGILOG = '1';}
|
|
if ($DBagi_output =~ /FILE/) {$AGILOG = '2';}
|
|
if ($DBagi_output =~ /BOTH/) {$AGILOG = '3';}
|
|
@@ -273,7 +274,9 @@
|
|
if ($VLAextension =~ /^R\//)
|
|
{
|
|
### BEGIN If remote agent, then reserve a vicidial_conferences session on their server to send the calls to ###
|
|
- $stmtA="SELECT count(*) FROM vicidial_conferences where server_ip='$VLAserver_ip' and ((extension='') or (extension is null)) and conf_exten != '$VLAconf_exten';";
|
|
+ $conf_table = "vicidial_conferences";
|
|
+ if ($conf_engine == "CONFBRIDGE") {$conf_table = "vicidial_confbridges";}
|
|
+ $stmtA="SELECT count(*) FROM $conf_table where server_ip='$VLAserver_ip' and ((extension='') or (extension is null)) and conf_exten != '$VLAconf_exten';";
|
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
|
$AVCcount=$sthA->rows;
|
|
@@ -284,11 +287,11 @@
|
|
$sthA->finish();
|
|
if ($available_sessions > 0)
|
|
{
|
|
- $stmtA="UPDATE vicidial_conferences set extension='3WAY_$dial_user', leave_3way='1', leave_3way_datetime='$now_date' where server_ip='$VLAserver_ip' and ((extension='') or (extension is null)) and conf_exten != '$VLAconf_exten' limit 1;";
|
|
+ $stmtA="UPDATE $conf_table set extension='3WAY_$dial_user', leave_3way='1', leave_3way_datetime='$now_date' where server_ip='$VLAserver_ip' and ((extension='') or (extension is null)) and conf_exten != '$VLAconf_exten' limit 1;";
|
|
$AVCaffected_rows = $dbhA->do($stmtA);
|
|
if ($AVCaffected_rows > 0)
|
|
{
|
|
- $stmtA="SELECT conf_exten from vicidial_conferences where server_ip='$VLAserver_ip' and extension='3WAY_$dial_user' and leave_3way_datetime='$now_date' and conf_exten != '$VLAconf_exten';";
|
|
+ $stmtA="SELECT conf_exten from $conf_table where server_ip='$VLAserver_ip' and extension='3WAY_$dial_user' and leave_3way_datetime='$now_date' and conf_exten != '$VLAconf_exten';";
|
|
$sthA = $dbhA->prepare($stmtA) or die "preparing: ",$dbhA->errstr;
|
|
$sthA->execute or die "executing: $stmtA ", $dbhA->errstr;
|
|
$SVCcount=$sthA->rows;
|
|
@@ -560,8 +563,8 @@
|
|
$d = leading_zero($4);
|
|
$VLA_DIALstr = "$a$S$b$S$c$S$d$S";
|
|
}
|
|
- $VLA_DIALstr .= "7$VLAconf_exten";
|
|
-
|
|
+ if ($conf_engine == "CONFBRIDGE") {$VLA_DIALstrPrefix = "1";} else {$VLA_DIALstrPrefix = "7";}
|
|
+ $VLA_DIALstr .= "$VLA_DIALstrPrefix$VLAconf_exten";
|
|
$AGI->stream_file('sip-silence');
|
|
$AGI->stream_file('sip-silence');
|
|
$AGI->stream_file('sip-silence');
|