diff options
-rw-r--r-- | config/freeswitch/freeswitch.inc | 72 | ||||
-rw-r--r-- | config/freeswitch/freeswitch.xml | 2 | ||||
-rw-r--r-- | config/freeswitch/freeswitch_hunt_group.tmp | 2 | ||||
-rw-r--r-- | config/freeswitch/freeswitch_hunt_group_destinations_edit.tmp | 11 | ||||
-rw-r--r-- | config/freeswitch/freeswitch_ivr_edit.tmp | 162 | ||||
-rw-r--r-- | config/freeswitch/freeswitch_ivr_options_edit.tmp | 14 | ||||
-rwxr-xr-x | pkg_config.7.xml | 4 |
7 files changed, 217 insertions, 50 deletions
diff --git a/config/freeswitch/freeswitch.inc b/config/freeswitch/freeswitch.inc index 4813dfac..15adc5f2 100644 --- a/config/freeswitch/freeswitch.inc +++ b/config/freeswitch/freeswitch.inc @@ -1534,7 +1534,9 @@ function sync_package_freeswitch_ivr() $rowhelper['ivrname'] $rowhelper['recordingid'] $rowhelper['ivrtimeout'] + $rowhelper['ivrcalltimeout'] $rowhelper['ivrcontext'] + $rowhelper['ivrdirectdial'] $rowhelper['ivrconditionjs'] $rowhelper['ivrdescr'] */ @@ -1695,8 +1697,29 @@ function sync_package_freeswitch_ivr() $tmp .= " caller_id_name = session.getVariable(\"caller_id_name\");\n"; $tmp .= " caller_id_number = session.getVariable(\"caller_id_number\");\n"; $tmp .= "\n"; - $tmp .= " session.execute(\"set\", \"ringback=\"+us_ring); //set to ringtone\n"; - $tmp .= " session.execute(\"set\", \"transfer_ringback=\"+us_ring); //set to ringtone\n"; + + $tmp .= " session.execute(\"set\", \"continue_on_fail=true\");\n"; + if (strlen($rowhelper['ivrcalltimeout']) == 0){ + $tmp .= " session.execute(\"set\", \"call_timeout=30\");\n"; //ivrcalltimeout + } + else { + $tmp .= " session.execute(\"set\", \"call_timeout=".$rowhelper['ivrcalltimeout']."\");\n"; //ivrcalltimeout + } + + if (isset($rowhelper['ivrringback'])){ + if ($rowhelper['ivrringback'] == "ring"){ + $tmp .= " session.execute(\"set\", \"ringback=\"+us_ring); //set to ringtone\n"; + $tmp .= " session.execute(\"set\", \"transfer_ringback=\"+us_ring); //set to ringtone\n"; + } + if ($rowhelper['ivrringback'] == "music"){ + $tmp .= " session.execute(\"set\", \"ringback=\${hold_music}\"); //set to ringtone\n"; + $tmp .= " session.execute(\"set\", \"transfer_ringback=\${hold_music}\"); //set to ringtone\n"; + } + } + else { + $tmp .= " session.execute(\"set\", \"ringback=\${hold_music}\"); //set to ringtone\n"; + $tmp .= " session.execute(\"set\", \"transfer_ringback=\${hold_music}\"); //set to ringtone\n"; + } $tmp .= "\n"; $tmp .= "//console_log( \"info\", \"IVR Server Time is: \"+Hours+\":\"+Mins+\" \\n\" );\n"; $tmp .= "\n"; @@ -1763,6 +1786,7 @@ function sync_package_freeswitch_ivr() if ($actiondirecttype == "extension") { $tmp .= " sofia_contact_".$actiondirectdest." = get_sofia_contact(\"".$actiondirectdest."\",domain_name, \"".$actiondirectprofile."\");\n"; $tmp .= " session.execute(\"bridge\", sofia_contact_".$actiondirectdest."); //".$actiondirectdest."\n"; + $tmp .= " session.execute(\"voicemail\", \"".$actiondirectdest." XML default\");\n"; //$tmp .= " session.execute(\"transfer\", \"".$actiondirectdest." XML default\"); //".$actiondirectdest."\n"; } if ($actiondirecttype == "voicemail") { @@ -1808,6 +1832,7 @@ function sync_package_freeswitch_ivr() if ($row['optiontype'] == "extension") { $tmp .= " sofia_contact_".$row['optiondest']." = get_sofia_contact(\"".$row['optiondest']."\",domain_name, \"".$row['optionprofile']."\");\n"; $tmp .= " session.execute(\"bridge\", sofia_contact_".$row['optiondest']."); //".$row['optiondescr']."\n"; + $tmp .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; } if ($row['optiontype'] == "voicemail") { //$tmp .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; @@ -1883,6 +1908,7 @@ function sync_package_freeswitch_ivr() if ($row['optiontype'] == "extension") { $tmpaction .= " sofia_contact_".$row['optiondest']." = get_sofia_contact(\"".$row['optiondest']."\",domain_name, \"".$row['optionprofile']."\");\n"; $tmpaction .= " session.execute(\"bridge\", sofia_contact_".$row['optiondest']."); //".$row['optiondescr']."\n"; + $tmpaction .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; } if ($row['optiontype'] == "voicemail") { //$tmpaction .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; @@ -1907,10 +1933,12 @@ function sync_package_freeswitch_ivr() } //end if count $tmp .= $tmpaction; - $tmp .= " else {\n"; - $tmp .= " session.execute(\"transfer\", dtmf.digits+\" XML default\");\n"; - //$tmp .= $tmpactiondefault; - $tmp .= " }\n"; + if ($rowhelper['ivrdirectdial'] == "true") { + $tmp .= " else {\n"; + $tmp .= " session.execute(\"transfer\", dtmf.digits+\" XML default\");\n"; + //$tmp .= $tmpactiondefault; + $tmp .= " }\n"; + } $tmp .= "\n"; unset($tmpaction); @@ -1957,6 +1985,7 @@ function sync_package_freeswitch_ivr() if ($actiondirecttype == "extension") { $tmp .= " sofia_contact_".$actiondirectdest." = get_sofia_contact(\"".$actiondirectdest."\",domain_name, \"".$actiondirectprofile."\");\n"; $tmp .= " session.execute(\"bridge\", sofia_contact_".$actiondirectdest."); //".$actiondirectdest."\n"; + $tmp .= " session.execute(\"voicemail\", \"".$actiondirectdest." XML default\");\n"; //$tmp .= " session.execute(\"transfer\", \"".$actiondirectdest." XML default\"); //".$actiondirectdest."\n"; } if ($actiondirecttype == "voicemail") { @@ -1999,6 +2028,7 @@ function sync_package_freeswitch_ivr() if ($row['optiontype'] == "extension") { $tmp .= " sofia_contact_".$row['optiondest']." = get_sofia_contact(\"".$row['optiondest']."\",domain_name, \"".$row['optionprofile']."\");\n"; $tmp .= " session.execute(\"bridge\", sofia_contact_".$row['optiondest']."); //".$row['optiondescr']."\n"; + $tmp .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; } if ($row['optiontype'] == "voicemail") { //$tmp .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; @@ -2030,7 +2060,7 @@ function sync_package_freeswitch_ivr() $tmp .= " //pickup the remaining digits\n"; $tmp .= " //http://wiki.freeswitch.org/wiki/Session_getDigits\n"; $tmp .= " //getDigits(length, terminators, timeout, digit_timeout, abs_timeout)\n"; - $tmp .= " dtmf.digits += session.getDigits(3, \"#\", 3000);\n"; + $tmp .= " dtmf.digits += session.getDigits(4, \"#\", 3000);\n"; $tmp .= "\n"; $tmp .= " console_log( \"info\", \"IVR Digit Pressed: \" + dtmf.digits + \"\\n\" );\n"; $tmp .= "\n"; @@ -2074,6 +2104,7 @@ function sync_package_freeswitch_ivr() if ($row['optiontype'] == "extension") { $tmpantiaction .= " sofia_contact_".$row['optiondest']." = get_sofia_contact(\"".$row['optiondest']."\",domain_name, \"".$row['optionprofile']."\");\n"; $tmpantiaction .= " session.execute(\"bridge\", sofia_contact_".$row['optiondest']."); //".$row['optiondescr']."\n"; + $tmpantiaction .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; } if ($row['optiontype'] == "voicemail") { //$tmpantiaction .= " session.execute(\"voicemail\", \"".$row['optiondest']." XML default\");\n"; @@ -2097,10 +2128,12 @@ function sync_package_freeswitch_ivr() } //if count $tmp .= $tmpantiaction; - $tmp .= " else {\n"; - $tmp .= " session.execute(\"transfer\", dtmf.digits+\" XML default\");\n"; - //$tmp .= $tmpantiactiondefault; - $tmp .= " }\n"; + if ($rowhelper['ivrdirectdial'] == "true") { + $tmp .= " else {\n"; + $tmp .= " session.execute(\"transfer\", dtmf.digits+\" XML default\");\n"; + //$tmp .= $tmpantiactiondefault; + $tmp .= " }\n"; + } $tmp .= "\n"; unset($tmpantiaction); @@ -2421,7 +2454,7 @@ function sync_package_freeswitch() function freeswitch_php_install_command() { global $config; - $freeswitch_package_version = "0.8.9"; + $freeswitch_package_version = "0.9.0"; $freeswitch_build_version = "1.0.4 pre 6"; $freeswitch_build_revision = "13238"; @@ -2435,6 +2468,9 @@ function freeswitch_php_install_command() conf_mount_rw(); config_lock(); + //used with fax to png, and fax to pdf conversion + exec("pkg_add -r tiff2png"); + if (!is_dir('/usr/local/www/packages/')) { exec("mkdir /usr/local/www/packages/"); } @@ -2557,6 +2593,18 @@ function freeswitch_php_install_command() exec("cd /tmp/;fetch http://www.pfsense.com/packages/config/freeswitch/freeswitch_extensions_edit.tmp"); exec("cp /tmp/freeswitch_extensions_edit.tmp /usr/local/www/packages/freeswitch/freeswitch_extensions_edit.php"); unlink_if_exists("/tmp/freeswitch_extensions_edit.tmp"); + + exec("cd /tmp/;fetch http://www.pfsense.com/packages/config/freeswitch/freeswitch_fax.tmp"); + exec("cp /tmp/freeswitch_fax.tmp /usr/local/www/packages/freeswitch/freeswitch_fax.php"); + unlink_if_exists("/tmp/freeswitch_fax.tmp"); + + exec("cd /tmp/;fetch http://www.pfsense.com/packages/config/freeswitch/freeswitch_fax_edit.tmp"); + exec("cp /tmp/freeswitch_fax_edit.tmp /usr/local/www/packages/freeswitch/freeswitch_fax_edit.php"); + unlink_if_exists("/tmp/freeswitch_fax_edit.tmp"); + + exec("cd /tmp/;fetch http://www.pfsense.com/packages/config/freeswitch/fax_to_email.tmp"); + exec("cp /tmp/fax_to_email.tmp /usr/local/www/packages/freeswitch/fax_to_email.php"); + unlink_if_exists("/tmp/fax_to_email.tmp"); exec("cd /tmp/;fetch http://www.pfsense.com/packages/config/freeswitch/freeswitch_features.tmp"); exec("cp /tmp/freeswitch_features.tmp /usr/local/www/packages/freeswitch/freeswitch_features.php"); diff --git a/config/freeswitch/freeswitch.xml b/config/freeswitch/freeswitch.xml index 7479a58f..bdd69937 100644 --- a/config/freeswitch/freeswitch.xml +++ b/config/freeswitch/freeswitch.xml @@ -44,7 +44,7 @@ <requirements>Describe your package requirements here</requirements> <faq>Currently there are no FAQ items provided.</faq> <name>FreeSWITCH Settings</name> - <version>0.8.9</version> + <version>0.9.0</version> <title>FreeSWITCH: Settings</title> <include_file>/usr/local/pkg/freeswitch.inc</include_file> <menu> diff --git a/config/freeswitch/freeswitch_hunt_group.tmp b/config/freeswitch/freeswitch_hunt_group.tmp index 5448396a..911b7d5b 100644 --- a/config/freeswitch/freeswitch_hunt_group.tmp +++ b/config/freeswitch/freeswitch_hunt_group.tmp @@ -40,7 +40,7 @@ $a_hunt_group = &$config['installedpackages']['freeswitchhuntgroup']['config']; if ($_GET['act'] == "del") { if ($_GET['type'] == 'huntgroup') { if ($a_hunt_group[$_GET['id']]) { - if file_exists("/usr/local/freeswitch/scripts/huntgroup_".$_GET['huntgroupid'].".js")) { + if (file_exists("/usr/local/freeswitch/scripts/huntgroup_".$_GET['huntgroupid'].".js")) { unlink("/usr/local/freeswitch/scripts/huntgroup_".$_GET['huntgroupid'].".js"); } unset($a_hunt_group[$_GET['id']]); diff --git a/config/freeswitch/freeswitch_hunt_group_destinations_edit.tmp b/config/freeswitch/freeswitch_hunt_group_destinations_edit.tmp index 1188438c..aa4117fa 100644 --- a/config/freeswitch/freeswitch_hunt_group_destinations_edit.tmp +++ b/config/freeswitch/freeswitch_hunt_group_destinations_edit.tmp @@ -132,8 +132,15 @@ display_top_tabs(build_menu()); <td width="22%" valign="top" class="vncellreq">Destination</td> <td width="78%" class="vtable"> <input name="destinationnumber" type="text" class="formfld" id="destinationnumber" size="40" value="<?=htmlspecialchars($pconfig['destinationnumber']);?>"> - <br> <span class="vexpl">Destination<br> - e.g. <em>1001</em></span></td> + <br> + <span class="vexpl"> + <!--<b>examples:</b><br />--> + extension: 1001<br /> + voicemail: 1001<br /> + sip uri (voicemail): sofia/default/*98@${domain}<br /> + sip uri (external number): sofia/gateway/gatewayname/12081231234<br /> + sip uri (auto attendant): sofia/default/5002@${domain}<br /> + </span> </tr> <tr> <td width="22%" valign="top" class="vncellreq">Type</td> diff --git a/config/freeswitch/freeswitch_ivr_edit.tmp b/config/freeswitch/freeswitch_ivr_edit.tmp index 603e4af5..87dd1394 100644 --- a/config/freeswitch/freeswitch_ivr_edit.tmp +++ b/config/freeswitch/freeswitch_ivr_edit.tmp @@ -130,9 +130,12 @@ if (isset($id) && $a_ivr[$id]) { $pconfig['ivrextension'] = $a_ivr[$id]['ivrextension']; $pconfig['ivrname'] = $a_ivr[$id]['ivrname']; $pconfig['recordingidaction'] = $a_ivr[$id]['recordingidaction']; - $pconfig['recordingidantiaction'] = $a_ivr[$id]['recordingidantiaction']; + $pconfig['recordingidantiaction'] = $a_ivr[$id]['recordingidantiaction']; $pconfig['ivrtimeout'] = $a_ivr[$id]['ivrtimeout']; - $pconfig['ivrcontext'] = $a_ivr[$id]['ivrcontext']; + $pconfig['ivrcalltimeout'] = $a_ivr[$id]['ivrcalltimeout']; + $pconfig['ivrcontext'] = $a_ivr[$id]['ivrcontext']; + $pconfig['ivrdirectdial'] = $a_ivr[$id]['ivrdirectdial']; + $pconfig['ivrringback'] = $a_ivr[$id]['ivrringback']; $pconfig['ivrconditionjs'] = ($a_ivr[$id]['ivrconditionjs']); $pconfig['ivrdescr'] = $a_ivr[$id]['ivrdescr']; } @@ -170,7 +173,10 @@ if ($_POST) { $ivrent['recordingidaction'] = $_POST['recordingidaction']; $ivrent['recordingidantiaction'] = $_POST['recordingidantiaction']; $ivrent['ivrtimeout'] = $_POST['ivrtimeout']; + $ivrent['ivrcalltimeout'] = $_POST['ivrcalltimeout']; $ivrent['ivrcontext'] = $_POST['ivrcontext']; + $ivrent['ivrdirectdial'] = $_POST['ivrdirectdial']; + $ivrent['ivrringback'] = $_POST['ivrringback']; $ivrent['ivrconditionjs'] = base64_encode($_POST['ivrconditionjs']); $ivrent['ivrdescr'] = $_POST['ivrdescr']; @@ -195,8 +201,25 @@ if ($_POST) { include("head.inc"); ?> - +<script language="Javascript"> +function sf() { document.forms[0].savetopath.focus(); } +</script> +<script language="Javascript" type="text/javascript" src="/edit_area/edit_area_full.js"></script> +<script language="Javascript" type="text/javascript"> + // initialisation + editAreaLoader.init({ + id: "ivrconditionjs" // id of the textarea to transform + ,start_highlight: true + ,allow_toggle: false + ,language: "en" + ,syntax: "js" + ,toolbar: "search, go_to_line,|, fullscreen, |, undo, redo, |, select_font, |, syntax_selection, |, change_smooth_selection, highlight, reset_highlight, |, help" + ,syntax_selection_allow: "css,html,js,php,xml,c,cpp,sql" + ,show_line_colors: true + }); +</script> <body link="#0000CC" vlink="#0000CC" alink="#0000CC"> + <?php include("fbegin.inc"); ?> <p class="pgtitle">FreeSWITCH: IVR: Edit</p> <?php if ($input_errors) print_input_errors($input_errors); ?> @@ -288,39 +311,112 @@ display_top_tabs(build_menu()); } ?> <tr> - <td width="22%" valign="top" class="vncellreq">Timeout</td> + <td width="22%" valign="top" class="vncellreq">IVR Timeout</td> <td width="78%" class="vtable"> <input name="ivrtimeout" type="text" class="formfld" id="ivrtimeout" size="40" value="<?=htmlspecialchars($pconfig['ivrtimeout']);?>"> - <br><span class="vexpl">After the recording concludes the + <br> + <span class="vexpl">After the recording concludes the timeout sets the time in seconds to continue to wait for DTMF. If the DTMF is <br />not detected during that time the 't' - timeout option is executed.</span> + timeout option is executed. + </span> + </td> + </tr> + <tr> + <td width="22%" valign="top" class="vncellreq">Call Timeout</td> + <td width="78%" class="vtable"> + <input name="ivrcalltimeout" type="text" class="formfld" id="ivrcalltimeout" size="40" value="<?=htmlspecialchars($pconfig['ivrcalltimeout']);?>"> + <br> + <span class="vexpl"> + Call timeout is the time in seconds to ring the destination. After this time is exceeded calls + to extensions will be sent to voicemail. default: 30 seconds + </span> </td> </tr> <tr> - <td width="22%" valign="top" class="vncell">Context</td> + <td width="22%" valign="top" class="vncellreq">Context</td> <td width="78%" class="vtable"> <input name="ivrcontext" type="text" class="formfld" id="ivrextension" size="40" value="<?=htmlspecialchars($pconfig['ivrcontext']);?>"> <br> <span class="vexpl">e.g. <em>default</em></span></td> </tr> <tr> - <td width="22%" valign="top" class="vncell">Description</td> + <td width="22%" valign="top" class="vncellreq">Direct Dial</td> + <td width="78%" class="vtable"> + <?php + echo " <select name='ivrdirectdial' class='formfld'>\n"; + echo " <option></option>\n"; + if (strlen($pconfig['ivrdirectdial']) == 0) { //set default + echo " <option value='true'>enable</option>\n"; + echo " <option selected='yes' value='false'>disabled</option>\n"; + } + else { + if (htmlspecialchars($pconfig['ivrdirectdial']) == "true") { + echo " <option selected='yes' value='true'>enabled</option>\n"; + } + else { + echo " <option value='true'>enable</option>\n"; + } + if (htmlspecialchars($pconfig['ivrdirectdial']) == "false") { + echo " <option selected='yes' value='false'>disabled</option>\n"; + } + else { + echo " <option value='false'>disable</option>\n"; + } + } + + echo " </select>\n"; + ?> + <br><span class="vexpl">Allows callers to dial directly to extensions and feature codes that are up to 5 digits in length.</span> + </td> + </tr> + <tr> + <td width="22%" valign="top" class="vncellreq">Ring Back</td> + <td width="78%" class="vtable"> + <?php + echo " <select name='ivrringback' class='formfld'>\n"; + echo " <option></option>\n"; + if (htmlspecialchars($pconfig['ivrringback']) == "ring") { + echo " <option selected='yes'>ring</option>\n"; + } + else { + echo " <option>ring</option>\n"; + } + if (htmlspecialchars($pconfig['ivrringback']) == "music") { + echo " <option selected='yes'>music</option>\n"; + } + else { + echo " <option>music</option>\n"; + } + echo " </select>\n"; + ?> + <br> + <span class="vexpl"> + Defines what the caller will hear while destination is being called. The choices are music + (music on hold) ring (ring tone.) default: music + </span> + </td> + </tr> + + <tr> + <td width="22%" valign="top" class="vncellreq">Description</td> <td width="78%" class="vtable"> <input name="ivrdescr" type="text" class="formfld" id="descr" size="40" value="<?=htmlspecialchars($pconfig['ivrdescr']);?>"> - <br> <span class="vexpl">You may enter a description here - for your reference (not parsed).</span></td> + <br> + <span class="vexpl"> + You may enter a description here for your reference (not parsed). + </span> + </td> </tr> - <tr> - <td width="22%" valign="top" class="vncell">Javascript Condition</td> + <td width="22%" valign="top" class="vncellreq">Javascript Condition</td> <td width="78%" class="vtable"> <?php if (strlen(htmlspecialchars(base64_decode($pconfig['ivrconditionjs']))) == 0) { - echo "<textarea name=\"ivrconditionjs\" cols=\"50\" rows=\"7\" wrap=\"off\">".$ivrconditionjs."</textarea>\n"; + echo "<textarea name=\"ivrconditionjs\" id=\"ivrconditionjs\" cols=\"75\" rows=\"10\" wrap=\"off\">".$ivrconditionjs."</textarea>\n"; } else { - echo "<textarea name=\"ivrconditionjs\" cols=\"50\" rows=\"7\" wrap=\"off\">".htmlspecialchars(base64_decode($pconfig['ivrconditionjs']))."</textarea>\n"; + echo "<textarea name=\"ivrconditionjs\" id=\"ivrconditionjs\" cols=\"75\" rows=\"10\" wrap=\"off\">".htmlspecialchars(base64_decode($pconfig['ivrconditionjs']))."</textarea>\n"; } ?> <br> <span class="vexpl">A simple valid condition is: @@ -387,11 +483,12 @@ display_top_tabs(build_menu()); <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> - <td width="20%" class="listhdrr">Option</td> - <td width="25%" class="listhdrr">Type</td> - <td width="25%" class="listhdrr">Destination</td> - <td width="25%" class="listhdr">Description</td> - <td width="10%" class="list"> + <td width="30" class="listhdrr">Option</td> + <td width="30" class="listhdrr">Type</td> + <td width="30" class="listhdrr">Profile</td> + <td width="150" class="listhdrr">Destination</td> + <td width="30%" class="listhdr">Description</td> + <td width="40" class="list"> <table border="0" cellspacing="0" cellpadding="1"> <tr> <td width="17"></td> @@ -415,6 +512,9 @@ display_top_tabs(build_menu()); <?=$ent['optiontype'];?> </td> <td class="listr" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$i;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> + <?=$ent['optionprofile'];?> + </td> + <td class="listr" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$i;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> <?=$ent['optiondest'];?> </td> <td class="listbg" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$id;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> @@ -436,7 +536,7 @@ display_top_tabs(build_menu()); } ?> <tr> - <td class="list" colspan="4"></td> + <td class="list" colspan="5"></td> <td class="list"> <table border="0" cellspacing="0" cellpadding="1"> <tr> @@ -449,7 +549,7 @@ display_top_tabs(build_menu()); <tr> - <td class="list" colspan="4"></td> + <td class="list" colspan="5"></td> <td class="list"></td> </tr> </table> @@ -485,11 +585,12 @@ display_top_tabs(build_menu()); <table width="100%" border="0" cellpadding="0" cellspacing="0"> <tr> - <td width="20%" class="listhdrr">Option</td> - <td width="25%" class="listhdrr">Type</td> - <td width="25%" class="listhdrr">Destination</td> - <td width="25%" class="listhdr">Description</td> - <td width="10%" class="list"> + <td width="30" class="listhdrr">Option</td> + <td width="30" class="listhdrr">Type</td> + <td width="30" class="listhdrr">Profile</td> + <td width="150" class="listhdrr">Destination</td> + <td width="30%" class="listhdr">Description</td> + <td width="40" class="list"> <table border="0" cellspacing="0" cellpadding="1"> <tr> <td width="17"></td> @@ -499,7 +600,7 @@ display_top_tabs(build_menu()); </td> </tr> - <?php + <?php $i = 0; if (count($a_ivr_options) > 0) { foreach ($a_ivr_options as $ent) { @@ -513,6 +614,9 @@ display_top_tabs(build_menu()); <?=$ent['optiontype'];?> </td> <td class="listr" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$i;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> + <?=$ent['optionprofile'];?> + </td> + <td class="listr" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$i;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> <?=$ent['optiondest'];?> </td> <td class="listbg" ondblclick="document.location='freeswitch_ivr_options_edit.php?id=<?=$id;?>&parentid=<?=$parentid;?>&ivrid=<?=$ivrid;?>';"> @@ -534,7 +638,7 @@ display_top_tabs(build_menu()); } ?> <tr> - <td class="list" colspan="4"></td> + <td class="list" colspan="5"></td> <td class="list"> <table border="0" cellspacing="0" cellpadding="1"> <tr> @@ -547,7 +651,7 @@ display_top_tabs(build_menu()); <tr> - <td class="list" colspan="4"></td> + <td class="list" colspan="5"></td> <td class="list"></td> </tr> </table> diff --git a/config/freeswitch/freeswitch_ivr_options_edit.tmp b/config/freeswitch/freeswitch_ivr_options_edit.tmp index 1a7af9d5..8f925813 100644 --- a/config/freeswitch/freeswitch_ivr_options_edit.tmp +++ b/config/freeswitch/freeswitch_ivr_options_edit.tmp @@ -154,7 +154,7 @@ display_top_tabs(build_menu()); else { echo " <option>voicemail</option>\n"; } - if (htmlspecialchars($pconfig['huntgrouptimeouttype']) == "sip uri") { + if (htmlspecialchars($pconfig['optiontype']) == "sip uri") { echo " <option selected='yes'>sip uri</option>\n"; } else { @@ -192,8 +192,16 @@ display_top_tabs(build_menu()); <td width="22%" valign="top" class="vncellreq">Destination</td> <td width="78%" class="vtable"> <input name="optiondest" type="text" class="formfld" id="optiondest" size="40" value="<?=htmlspecialchars($pconfig['optiondest']);?>"> - <br> <span class="vexpl">Destination<br> - e.g. <em>1001</em></span></td> + <br> + <span class="vexpl"> + <!--<b>examples:</b><br />--> + extension: 1001<br /> + voicemail: 1001<br /> + sip uri (voicemail): sofia/default/*98@${domain}<br /> + sip uri (external number): sofia/gateway/gatewayname/12081231234<br /> + sip uri (auto attendant): sofia/default/5002@${domain}<br /> + </span> + </td> </tr> <tr> <td width="22%" valign="top" class="vncell">Description</td> diff --git a/pkg_config.7.xml b/pkg_config.7.xml index ff4f4846..84130f18 100755 --- a/pkg_config.7.xml +++ b/pkg_config.7.xml @@ -87,12 +87,12 @@ <package> <name>FreeSWITCH</name> <website>http://www.freeswitch.org/</website> - <descr>FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat driven products scaling from a soft-phone up to a soft-switch. It can be used as a simple switching engine, a PBX, a media gateway or a media server to host IVR applications using simple scripts or XML to control the callflow. </descr> + <descr>FreeSWITCH is an open source telephony platform designed to facilitate the creation of voice and chat driven products scaling from a soft-phone up to a soft-switch. It can be used as a simple switching engine, a PBX, a media gateway or a media server to host IVR applications using simple scripts or XML to control the callflow. pfSense 1.2.3 or higher is recommended.</descr> <category>Services</category> <pkginfolink>http://doc.pfsense.org/index.php/FreeSWITCH</pkginfolink> <config_file>http://www.pfsense.com/packages/config/freeswitch/freeswitch.xml</config_file> <depends_on_package_base_url>http://files.pfsense.org/packages/7/All/</depends_on_package_base_url> - <version>0.8.9</version> + <version>0.9.0</version> <status>Beta</status> <required_version>1.2.1</required_version> <maintainer>markjcrane@gmail.com</maintainer> |