diff options
author | mcrane <mctch@yahoo.com> | 2009-06-10 05:39:33 -0600 |
---|---|---|
committer | mcrane <mctch@yahoo.com> | 2009-06-10 05:39:33 -0600 |
commit | a24a6994a246ee3d869a17540a916288032dbfc6 (patch) | |
tree | e29be438e0f48f646d453f4ad782b62ae64a9dab | |
parent | 2805239ac2dca632d02d32445a1c2b48e288f39a (diff) | |
download | pfsense-packages-a24a6994a246ee3d869a17540a916288032dbfc6.tar.gz pfsense-packages-a24a6994a246ee3d869a17540a916288032dbfc6.tar.bz2 pfsense-packages-a24a6994a246ee3d869a17540a916288032dbfc6.zip |
FreeSWITCH package add tiff2png for fax conversion, hunt group fix warning messages when adding next hunt groups, delete from hunt group list, IVR add examples for sip uri, IVR add call timeout, direct dial, and ring back tone. Hunt group add additional examples for sip uri.
-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> |