[Freeswitch-svn] [commit] r8782 - in freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl: . configuration

Freeswitch SVN intralanman at freeswitch.org
Fri Jun 6 13:45:48 EDT 2008


Author: intralanman
Date: Fri Jun  6 13:45:47 2008
New Revision: 8782

Modified:
   freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/configuration/console.conf.php
   freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/dialplan_importer.php
   freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/fs_dialplan.php
   freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/global_defines.php

Log:
added a couple of bug fixes to the dialplan_importer and fs_dialplan so that there's no longer a requirement for continue to be numeric.
this implies changing the .sql so that ext_continue is no longer an int field. 



Modified: freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/configuration/console.conf.php
==============================================================================
--- freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/configuration/console.conf.php	(original)
+++ freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/configuration/console.conf.php	Fri Jun  6 13:45:47 2008
@@ -30,21 +30,36 @@
         $this -> xmlw -> writeAttribute('name', basename(__FILE__, '.php'));
         $this -> xmlw -> writeAttribute('description', 'Console configuration');
 
+        $this -> xmlw -> startElement('mappings');
+	
+	$this -> xmlw -> startElement('map');
+        $this -> xmlw -> writeAttribute('name', 'all');
+        $this -> xmlw -> writeAttribute('value', 'notice,warning,error,crit,alert,info,debug');
+	$this -> xmlw -> endElement();
+
+        $this -> xmlw -> endElement();
+
+
+
+
         $this -> xmlw -> startElement('settings');
-        $this -> xmlw -> startElement('param');
+
+	$this -> xmlw -> startElement('param');
         $this -> xmlw -> writeAttribute('name', 'colorize');
         $this -> xmlw -> writeAttribute('value', 'true');
-        $this -> xmlw -> endElement();
-        $this -> xmlw -> endElement();
+	$this -> xmlw -> endElement();
+
+	$this -> xmlw -> startElement('param');
+        $this -> xmlw -> writeAttribute('name', 'loglevel');
+        $this -> xmlw -> writeAttribute('value', 'debug');
+	$this -> xmlw -> endElement();
+
+	$this -> xmlw -> endElement();
+
+
 
-        $this -> xmlw -> startElement('mappings');
-        $this -> xmlw -> startElement('map');
-        $this -> xmlw -> writeAttribute('name', 'all');
-        $this -> xmlw -> writeAttribute('value', 'notice,warning,error,crit,alert');
-        $this -> xmlw -> endElement();
-        $this -> xmlw -> endElement();
 
         $this -> xmlw -> endElement();
     }
 }
-?>
\ No newline at end of file
+?>

Modified: freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/dialplan_importer.php
==============================================================================
--- freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/dialplan_importer.php	(original)
+++ freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/dialplan_importer.php	Fri Jun  6 13:45:47 2008
@@ -39,12 +39,13 @@
  * @return null
 */
 function run_query($db, $query) {
+    syslog(LOG_INFO, $query);
     $affected = $db -> exec($query);
     if (MDB2::isError($affected)) {
         if (!defined('UNSUCCESSFUL_QUERY')) {
             define('UNSUCCESSFUL_QUERY', true);
         }
-        echo "$query\n";
+        echo "$query<br>\n";
         echo $affected -> getMessage() . "\n";
     }
 }
@@ -96,7 +97,7 @@
     $xml_file = $_FILES['file']['tmp_name'];
     move_uploaded_file($tmp_file, $xml_file);
     //echo $xml_file . "\n<br>";
-    $xml_str = sprintf('<?xml version="1.0" encoding="UTF-8" standalone="no"?>%s', file_get_contents($xml_file));
+    $xml_str = sprintf('%s', file_get_contents($xml_file));
     //echo $xml_str;
 }
 
@@ -111,27 +112,29 @@
     $global_weight = 100;
     foreach ($context -> extension as $extension) {
         $en = $extension['name'];
-        $ec = is_numeric($extension['continue']) ? $extension['continue'] : '0';
+        //printf("<pre>%s</pre>", print_r($extension, true));
+        $ec = $extension['continue'];
         $global_weight+=100;
         foreach ($extension -> condition as $condition) {
             //print_r($condition);
             $cf = $condition['field'];
-            $ce = $condition['expression'];
-            $cc = $condition['continue'];
+            $ce = str_replace('\\', '\\\\', $condition['expression']);
+            //echo "<pre>Condidtion Expression for $en:\n    before: " . $condition['expression'] . "\n    after: $ce</pre>";
+            $cb = $condition['break'];
             $weight = 0;
             foreach ($condition as $type => $action) {
                 //echo "-------------------$type-----------------------------\n";
                 $app_name = $action['application'];
-                $app_data = $action['data'];
+                $app_data = str_replace('\\', '\\\\', $action['data']);
                 $weight++;
                 //echo "$cn\t$en\t$cf\t$ce\t$cc\t$app_name\t$app_data\t$ec\t$global_weight\t$weight\n";
                 $query = sprintf('%s %s %s %s %s %s;',
-                "INSERT INTO curl_dialplan SET",
+                "INSERT INTO dialplan SET",
                 "context='$cn', extension='$en', condition_field='$cf',",
                 "condition_expression='$ce', application_name='$app_name',",
                 "application_data='$app_data', weight='$weight', type='$type',",
                 "ext_continue='$ec', global_weight='$global_weight',",
-                "condition_continue='$cc'"
+                "cond_break='$cb'"
                 );
                 run_query($db, $query);
             }
@@ -144,4 +147,6 @@
     echo "<h2>File Successfully Imported</h2>";
 }
 upload_form();
-?>
\ No newline at end of file
+
+//printf("<pre>%s</pre>", print_r($xml_obj, true);
+?>

Modified: freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/fs_dialplan.php
==============================================================================
--- freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/fs_dialplan.php	(original)
+++ freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/fs_dialplan.php	Fri Jun  6 13:45:47 2008
@@ -26,7 +26,7 @@
 
     /**
      * This is the method that determines the XML output. Customized dialplans can
-     * be easily created by adding a record to the dialplan_special table with the 
+     * be easily created by adding a record to the dialplan_special table with the
      * appropriate values. The php class MUST contain a "main()" method. The method
      * should write directly to the xmlw obj that's pased or take care of writing
      * out the xml itself and exiting as to not return.
@@ -120,7 +120,7 @@
      * @see fs_dialplan::get_dialplan
      * @param array $dpArray Multi-dimentional array from which we write the XML
      * @todo this method should REALLY be broken down into several smaller methods
-     * 
+     *
      */
     private function writeDialplan($dpArray) {
         //print_r($dpArray);
@@ -140,7 +140,7 @@
                         $ex_split = split(';', $extension);
                         $this -> xmlw -> startElement('extension');
                         $this -> xmlw -> writeAttribute('name', $ex_split[0]);
-                        if ($ex_split[1] > 0) {
+                        if (strlen($ex_split[1]) > 0) {
                             $this -> xmlw -> writeAttribute('continue', $ex_split[1]);
                         }
                         $this -> debug($conditions);

Modified: freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/global_defines.php
==============================================================================
--- freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/global_defines.php	(original)
+++ freeswitch/trunk/scripts/contrib/intralanman/PHP/fs_curl/global_defines.php	Fri Jun  6 13:45:47 2008
@@ -43,7 +43,7 @@
 /**
  * Define debug level... should not be used in production for performance reasons
  */
-define('FS_CURL_DEBUG', 0);
+define('FS_CURL_DEBUG', 9);
 
 /**
  * define how debugging should be done (depends on FS_CURL_DEBUG)
@@ -62,4 +62,4 @@
 
 
 //define('', '');
-?>
\ No newline at end of file
+?>



More information about the Freeswitch-svn mailing list