diff options
Diffstat (limited to 'www-ssl/inc')
-rw-r--r-- | www-ssl/inc/config_modem.php | 11 | ||||
-rwxr-xr-x | www-ssl/inc/funktion_cron.php | 100 | ||||
-rwxr-xr-x | www-ssl/inc/funktion_modem.php | 16 |
3 files changed, 115 insertions, 12 deletions
diff --git a/www-ssl/inc/config_modem.php b/www-ssl/inc/config_modem.php new file mode 100644 index 00000000..0625936d --- /dev/null +++ b/www-ssl/inc/config_modem.php @@ -0,0 +1,11 @@ +<?PHP + +//ist ein modem angeschlossen +$ModemEnable = false; + +// COM port +$ModemDev="/dev/ttyS0"; + +// vorwahl, bei tnovis telefonanlage für das programmieren von weckrufen +$WackupNumber="**3"; +?> diff --git a/www-ssl/inc/funktion_cron.php b/www-ssl/inc/funktion_cron.php new file mode 100755 index 00000000..d2afa70b --- /dev/null +++ b/www-ssl/inc/funktion_cron.php @@ -0,0 +1,100 @@ +<?PHP + +function UID2DECT($UID) +{ + global $con; + $SQL = "SELECT DECT FROM `User` WHERE UID='$UID'"; + $Erg = mysql_query($SQL, $con); + return mysql_result($Erg, 0); +} +function RID2Room($RID) +{ + global $con; + $SQL = "SELECT Name FROM `Room` WHERE RID='$RID'"; + $Erg = mysql_query($SQL, $con); + return mysql_result($Erg, 0); +} + +function TID2Engeltype($TID) +{ + global $con; + $SQL = "SELECT Name FROM `EngelType` WHERE TID='$TID'"; + $Erg = mysql_query($SQL, $con); + return mysql_result($Erg, 0); +} + + +function DialNumberIAX( $DECTnumber, $Time, $RID, $TID) +{ + global $IAXenable, $IAXcontent, $IAXserver, $AnrufDelay; + + //Parameter verarbeiten + $TimeH = substr( $Time, 11, 2); + $TimeM = substr( $Time, 14, 2); + $TimeM = substr( $Time, 14, 2) + $AnrufDelay; + if( $TimeM < 0 ) + { + $TimeM += 60; + $TimeH -= 1; + } + if( $TimeH < 0 ) + $TimeH += 24; + + if( strlen( $TimeH) == 1) + $TimeH = "0".$TimeH; + + // IAX file Schareiebn + $CallFile = "/tmp/call_". date("Ymd_His"). "_$DECTnumber"; + + if( $IAXenable) + { + $file = fopen( $CallFile, 'w' ); + if( $file != FALSE) + { + fputs( $file, "Channel: IAX2/$IAXserver/Engelserver@$IAXcontent\n"); + fputs( $file, "Callerid: $IAXcontent\n"); + fputs( $file, "Context: $IAXcontent\n"); + fputs( $file, "Extension: s\n"); + fputs( $file, "MaxRetries: 3\n"); + fputs( $file, "RetryTime: 10\n"); + fputs( $file, "SetVar: TimeH=$TimeH\n"); + fputs( $file, "SetVar: TimeM=$TimeM\n"); + fputs( $file, "SetVar: DECTnumber=$DECTnumber\n"); + fputs( $file, "SetVar: Room=". RID2Room( $RID). "\n"); + fputs( $file, "SetVar: Engeltype=". TID2Engeltype( $TID). "\n"); + fclose($file); + system( "cat $CallFile"); + system( "chmod 777 $CallFile"); + system( "mv $CallFile /var/spool/asterisk/outgoing"); + } + } + else + echo "IAX is disable\n"; +} + +function DialNumberModem( $DECTnumber, $Time) +{ + global $AnrufDelay; + + //Parameter verarbeiten + $TimeH = substr( $Time, 11, 2); + $TimeM = substr( $Time, 14, 2); + $TimeM = substr( $Time, 14, 2) + $AnrufDelay; + if( $TimeM < 0 ) + { + $TimeM += 60; + $TimeH -= 1; + } + if( $TimeH < 0 ) + $TimeH += 24; + + if( strlen( $TimeH) == 1) + $TimeH = "0".$TimeH; + + SetWackeup( $DECTnumber, $TimeH, $TimeM); +} + +return 0; + +?> + diff --git a/www-ssl/inc/funktion_modem.php b/www-ssl/inc/funktion_modem.php index a8ae010d..6cbbb49b 100755 --- a/www-ssl/inc/funktion_modem.php +++ b/www-ssl/inc/funktion_modem.php @@ -1,20 +1,14 @@ <?PHP - -$Dev="/dev/ttyS0"; // COM port -$WackupNumber="**3"; - -//ob_end_flush(); //ausgabe obwohl skript nich in arbeit -set_time_limit(50000); //Timeout erhöhen; +include "./inc/config_modem.php"; function DialNumber( $Number ) { global $Dev, $ModemEnable; -echo $Number; - if( $ModemEnable) { - $fp = fopen( $Dev, "w"); + echo "Dial number: '<u>$Number</u>' was called<br>\n"; + $fp = fopen( $ModemDev, "w"); sleep(1); fwrite( $fp, "+++"); sleep(1); @@ -28,9 +22,7 @@ echo $Number; sleep(1); } else - { - echo "Modem is Disable, number: '<u>$Number</u>' was called<br>\n"; - } + echo "Modem is Disable, number: '<u>$Number</u>' was not called<br>\n"; } |