Diff
Modified: freeswitch/trunk/fscomm/mainwindow.cpp (17258 => 17259)
--- freeswitch/trunk/fscomm/mainwindow.cpp 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/mainwindow.cpp 2010-04-09 02:15:29 UTC (rev 17259)
@@ -179,10 +179,26 @@
}
+void MainWindow::applyPreprocessors(QStringList cmds)
+{
+ if (g_FSHost.getCurrentActiveCall().isNull()) return;
+ QString uuid = g_FSHost.getCurrentActiveCall().data()->getUuid();
+ foreach(QString cmd, cmds)
+ {
+ switch_stream_handle_t stream = { 0 };
+ SWITCH_STANDARD_STREAM(stream);
+ switch_api_execute("uuid_preprocess", QString("%1 %2").arg(uuid, cmd).toAscii().data(), NULL, &stream);
+ switch_safe_free(stream.data);
+ }
+}
+
void MainWindow::prefTriggered()
{
if (!preferences)
+ {
preferences = new PrefDialog();
+ connect(preferences, SIGNAL(preprocessorsApplied(QStringList)), this, SLOT(applyPreprocessors(QStringList)));
+ }
preferences->raise();
preferences->show();
Modified: freeswitch/trunk/fscomm/mainwindow.h (17258 => 17259)
--- freeswitch/trunk/fscomm/mainwindow.h 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/mainwindow.h 2010-04-09 02:15:29 UTC (rev 17259)
@@ -85,6 +85,7 @@
void updateCallTimers();
void debugConsoleTriggered();
void debugEventsTriggered();
+ void applyPreprocessors(QStringList);
private:
Ui::MainWindow *ui;
Modified: freeswitch/trunk/fscomm/preferences/prefdialog.cpp (17258 => 17259)
--- freeswitch/trunk/fscomm/preferences/prefdialog.cpp 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/preferences/prefdialog.cpp 2010-04-09 02:15:29 UTC (rev 17259)
@@ -15,6 +15,7 @@
_pref_accounts = new PrefAccounts(ui);
_mod_portaudio = new PrefPortaudio(ui, this);
+ connect(_mod_portaudio, SIGNAL(preprocessorsApplied(QStringList)), this, SIGNAL(preprocessorsApplied(QStringList)));
_mod_sofia = new PrefSofia(ui, this);
readConfig();
}
Modified: freeswitch/trunk/fscomm/preferences/prefdialog.h (17258 => 17259)
--- freeswitch/trunk/fscomm/preferences/prefdialog.h 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/preferences/prefdialog.h 2010-04-09 02:15:29 UTC (rev 17259)
@@ -26,6 +26,9 @@
private slots:
void writeConfig();
+signals:
+ void preprocessorsApplied(QStringList);
+
private:
void readConfig();
QSettings *_settings;
Modified: freeswitch/trunk/fscomm/preferences/prefdialog.ui (17258 => 17259)
--- freeswitch/trunk/fscomm/preferences/prefdialog.ui 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/preferences/prefdialog.ui 2010-04-09 02:15:29 UTC (rev 17259)
@@ -6,1006 +6,1158 @@
<rect>
<x>0</x>
<y>0</y>
- <width>839</width>
- <height>613</height>
+ <width>803</width>
+ <height>667</height>
</rect>
</property>
<property name="windowTitle">
<string>Preferences</string>
</property>
- <layout class="QGridLayout" name="gridLayout">
- <item row="0" column="0">
- <widget class="QListWidget" name="listSections">
- <property name="minimumSize">
- <size>
- <width>120</width>
- <height>0</height>
- </size>
- </property>
- <property name="maximumSize">
- <size>
- <width>120</width>
- <height>16777215</height>
- </size>
- </property>
- <property name="showDropIndicator" stdset="0">
- <bool>false</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::NoDragDrop</enum>
- </property>
- <property name="iconSize">
- <size>
- <width>96</width>
- <height>84</height>
- </size>
- </property>
- <property name="movement">
- <enum>QListView::Static</enum>
- </property>
- <property name="flow">
- <enum>QListView::LeftToRight</enum>
- </property>
- <property name="isWrapping" stdset="0">
- <bool>true</bool>
- </property>
- <property name="spacing">
- <number>12</number>
- </property>
- <property name="viewMode">
- <enum>QListView::IconMode</enum>
- </property>
+ <layout class="QVBoxLayout" name="verticalLayout_8">
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout_7">
<item>
- <property name="text">
- <string>General</string>
- </property>
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/images/pref_general.jpg</normaloff>:/images/pref_general.jpg</iconset>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Accounts</string>
- </property>
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/images/pref_accounts.jpg</normaloff>:/images/pref_accounts.jpg</iconset>
- </property>
- </item>
- <item>
- <property name="text">
- <string>Sofia</string>
- </property>
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/images/pref_sip.png</normaloff>:/images/pref_sip.png</iconset>
- </property>
- </item>
- <item>
- <property name="text">
- <string>PortAudio</string>
- </property>
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/images/pref_audio.gif</normaloff>:/images/pref_audio.gif</iconset>
- </property>
- </item>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QStackedWidget" name="stackedWidget">
- <property name="currentIndex">
- <number>0</number>
- </property>
- <widget class="QWidget" name="generalPage">
- <layout class="QVBoxLayout" name="verticalLayout_3">
+ <widget class="QListWidget" name="listSections">
+ <property name="minimumSize">
+ <size>
+ <width>120</width>
+ <height>0</height>
+ </size>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>120</width>
+ <height>16777215</height>
+ </size>
+ </property>
+ <property name="showDropIndicator" stdset="0">
+ <bool>false</bool>
+ </property>
+ <property name="dragDropMode">
+ <enum>QAbstractItemView::NoDragDrop</enum>
+ </property>
+ <property name="iconSize">
+ <size>
+ <width>96</width>
+ <height>84</height>
+ </size>
+ </property>
+ <property name="movement">
+ <enum>QListView::Static</enum>
+ </property>
+ <property name="flow">
+ <enum>QListView::LeftToRight</enum>
+ </property>
+ <property name="isWrapping" stdset="0">
+ <bool>true</bool>
+ </property>
+ <property name="spacing">
+ <number>12</number>
+ </property>
+ <property name="viewMode">
+ <enum>QListView::IconMode</enum>
+ </property>
<item>
- <widget class="QGroupBox" name="groupBox_5">
- <property name="title">
- <string>User Information</string>
- </property>
- <layout class="QFormLayout" name="formLayout_4">
- <item row="0" column="0">
- <widget class="QLabel" name="label_13">
- <property name="text">
- <string>CallerID Name:</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QLineEdit" name="PaCallerIdNameEdit"/>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_14">
- <property name="text">
- <string>CallerID Number:</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QLineEdit" name="PaCallerIdNumEdit"/>
- </item>
- </layout>
- </widget>
+ <property name="text">
+ <string>General</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../resources.qrc">
+ <normaloff>:/images/pref_general.jpg</normaloff>:/images/pref_general.jpg</iconset>
+ </property>
</item>
- </layout>
- </widget>
- <widget class="QWidget" name="accountsPage">
- <layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
- <widget class="QTableWidget" name="accountsTable">
- <property name="editTriggers">
- <set>QAbstractItemView::NoEditTriggers</set>
- </property>
- <property name="selectionBehavior">
- <enum>QAbstractItemView::SelectRows</enum>
- </property>
- <column>
- <property name="text">
- <string>Name</string>
- </property>
- </column>
- <column>
- <property name="text">
- <string>Username</string>
- </property>
- </column>
- </widget>
+ <property name="text">
+ <string>Accounts</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../resources.qrc">
+ <normaloff>:/images/pref_accounts.jpg</normaloff>:/images/pref_accounts.jpg</iconset>
+ </property>
</item>
<item>
- <layout class="QVBoxLayout" name="verticalLayout_7">
+ <property name="text">
+ <string>Sofia</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../resources.qrc">
+ <normaloff>:/images/pref_sip.png</normaloff>:/images/pref_sip.png</iconset>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>Audio</string>
+ </property>
+ <property name="icon">
+ <iconset resource="../resources.qrc">
+ <normaloff>:/images/pref_audio.gif</normaloff>:/images/pref_audio.gif</iconset>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item>
+ <widget class="QStackedWidget" name="stackedWidget">
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="generalPage">
+ <layout class="QVBoxLayout" name="verticalLayout_3">
<item>
- <widget class="QPushButton" name="sofiaGwAddBtn">
- <property name="text">
- <string>Add</string>
+ <widget class="QGroupBox" name="groupBox_5">
+ <property name="title">
+ <string>User Information</string>
</property>
+ <layout class="QFormLayout" name="formLayout_4">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_13">
+ <property name="text">
+ <string>CallerID Name:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLineEdit" name="PaCallerIdNameEdit"/>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_14">
+ <property name="text">
+ <string>CallerID Number:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QLineEdit" name="PaCallerIdNumEdit"/>
+ </item>
+ </layout>
</widget>
</item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="accountsPage">
+ <layout class="QHBoxLayout" name="horizontalLayout_5">
<item>
- <widget class="QPushButton" name="sofiaGwRemBtn">
- <property name="text">
- <string>Remove</string>
+ <widget class="QTableWidget" name="accountsTable">
+ <property name="editTriggers">
+ <set>QAbstractItemView::NoEditTriggers</set>
</property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="sofiaGwEditBtn">
- <property name="enabled">
- <bool>true</bool>
+ <property name="selectionBehavior">
+ <enum>QAbstractItemView::SelectRows</enum>
</property>
- <property name="text">
- <string>Edit</string>
- </property>
+ <column>
+ <property name="text">
+ <string>Name</string>
+ </property>
+ </column>
+ <column>
+ <property name="text">
+ <string>Username</string>
+ </property>
+ </column>
</widget>
</item>
<item>
- <spacer name="verticalSpacer">
- <property name="orientation">
- <enum>Qt::Vertical</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>20</width>
- <height>40</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="sofiaPage">
- <layout class="QVBoxLayout" name="verticalLayout_2">
- <item>
- <widget class="QTabWidget" name="tabWidget">
- <property name="currentIndex">
- <number>0</number>
- </property>
- <widget class="QWidget" name="tab">
- <attribute name="title">
- <string>General</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_5">
+ <layout class="QVBoxLayout" name="verticalLayout_7">
<item>
- <widget class="QGroupBox" name="groupBox">
- <property name="title">
- <string>Global</string>
+ <widget class="QPushButton" name="sofiaGwAddBtn">
+ <property name="text">
+ <string>Add</string>
</property>
- <layout class="QFormLayout" name="formLayout">
- <property name="fieldGrowthPolicy">
- <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
- </property>
- <item row="0" column="0">
- <widget class="QLabel" name="label">
- <property name="text">
- <string>log-level</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QSpinBox" name="sofiaLogLevelSpin"/>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_2">
- <property name="text">
- <string>auto-restart</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QComboBox" name="sofiaAutoRestartCombo">
- <item>
- <property name="text">
- <string>true</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>false</string>
- </property>
- </item>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_3">
- <property name="text">
- <string>debug-presence</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <widget class="QSpinBox" name="sofiaDebugPresenceSpin"/>
- </item>
- <item row="3" column="0">
- <widget class="QLabel" name="label_15">
- <property name="text">
- <string>rewrite-multicasted-fs-path</string>
- </property>
- </widget>
- </item>
- <item row="3" column="1">
- <widget class="QComboBox" name="sofiaRewriteMulticastedFsPathCombo">
- <item>
- <property name="text">
- <string>false</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>true</string>
- </property>
- </item>
- </widget>
- </item>
- </layout>
</widget>
</item>
<item>
- <widget class="QGroupBox" name="groupBox_6">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
+ <widget class="QPushButton" name="sofiaGwRemBtn">
+ <property name="text">
+ <string>Remove</string>
</property>
- <property name="title">
- <string>Profile</string>
- </property>
- <layout class="QFormLayout" name="formLayout_6">
- <item row="0" column="0">
- <widget class="QLabel" name="label_4">
- <property name="text">
- <string>user-agent-string</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QLineEdit" name="sofiaUserAgentStringEdit">
- <property name="text">
- <string>FreeSWITCH/FSComm</string>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_26">
- <property name="text">
- <string>hold-music</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QLineEdit" name="sofiaHoldMusicEdit">
- <property name="text">
- <string>localstream://moh</string>
- </property>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_16">
- <property name="text">
- <string>context</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <widget class="QLineEdit" name="sofiaContextEdit">
- <property name="text">
- <string>public</string>
- </property>
- </widget>
- </item>
- <item row="3" column="0">
- <widget class="QLabel" name="label_19">
- <property name="text">
- <string>dialplan</string>
- </property>
- </widget>
- </item>
- <item row="3" column="1">
- <widget class="QLineEdit" name="sofiaDialplanEdit">
- <property name="text">
- <string>XML</string>
- </property>
- </widget>
- </item>
- </layout>
</widget>
</item>
- </layout>
- </widget>
- <widget class="QWidget" name="tab_2">
- <attribute name="title">
- <string>Network</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_4">
<item>
- <widget class="QGroupBox" name="groupBox_2">
- <property name="title">
- <string>Softphone Profile</string>
+ <widget class="QPushButton" name="sofiaGwEditBtn">
+ <property name="enabled">
+ <bool>true</bool>
</property>
- <layout class="QFormLayout" name="formLayout_2">
- <property name="fieldGrowthPolicy">
- <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
- </property>
- <item row="0" column="0">
- <widget class="QLabel" name="label_18">
- <property name="text">
- <string>sip-port</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QSpinBox" name="sofiaSipPortSpin">
- <property name="minimum">
- <number>1</number>
- </property>
- <property name="maximum">
- <number>65535</number>
- </property>
- <property name="value">
- <number>12345</number>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_22">
- <property name="text">
- <string>use-rtp-timer</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QComboBox" name="sofiaUseRtpTimerCombo">
- <item>
- <property name="text">
- <string>true</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>false</string>
- </property>
- </item>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_24">
- <property name="text">
- <string>rtp-ip</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <widget class="QLineEdit" name="sofiaRtpIpEdit">
- <property name="text">
- <string>auto</string>
- </property>
- </widget>
- </item>
- <item row="3" column="0">
- <widget class="QLabel" name="label_25">
- <property name="text">
- <string>sip-ip</string>
- </property>
- </widget>
- </item>
- <item row="3" column="1">
- <widget class="QLineEdit" name="sofiaSipIpEdit">
- <property name="text">
- <string>auto</string>
- </property>
- </widget>
- </item>
- <item row="4" column="0">
- <widget class="QLabel" name="label_27">
- <property name="text">
- <string>apply-nat-acl</string>
- </property>
- </widget>
- </item>
- <item row="4" column="1">
- <widget class="QLineEdit" name="sofiaApplyNatAclEdit">
- <property name="text">
- <string>rfc1918</string>
- </property>
- </widget>
- </item>
- <item row="5" column="0">
- <widget class="QLabel" name="label_34">
- <property name="text">
- <string>ext-rtp-ip</string>
- </property>
- </widget>
- </item>
- <item row="5" column="1">
- <widget class="QLineEdit" name="sofiaExtRtpIpEdit">
- <property name="text">
- <string>stun:stun.freeswitch.org</string>
- </property>
- </widget>
- </item>
- <item row="6" column="0">
- <widget class="QLabel" name="label_35">
- <property name="text">
- <string>ext-sip-ip</string>
- </property>
- </widget>
- </item>
- <item row="6" column="1">
- <widget class="QLineEdit" name="sofiaExtSipIpEdit">
- <property name="text">
- <string>stun:stun.freeswitch.org</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="tab_4">
- <attribute name="title">
- <string>Codecs</string>
- </attribute>
- <layout class="QFormLayout" name="formLayout_7">
- <property name="fieldGrowthPolicy">
- <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
- </property>
- <item row="0" column="0">
- <widget class="QLabel" name="label_30">
<property name="text">
- <string>inbound-codec-negotiation</string>
+ <string>Edit</string>
</property>
</widget>
</item>
- <item row="0" column="1">
- <widget class="QComboBox" name="sofiaInboundCodecNegotiationCombo">
- <item>
- <property name="text">
- <string>generous</string>
- </property>
- </item>
- <item>
- <property name="text">
- <string>greedy</string>
- </property>
- </item>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_42">
- <property name="text">
- <string>Codecs</string>
+ <item>
+ <spacer name="verticalSpacer">
+ <property name="orientation">
+ <enum>Qt::Vertical</enum>
</property>
- </widget>
+ <property name="sizeHint" stdset="0">
+ <size>
+ <width>20</width>
+ <height>40</height>
+ </size>
+ </property>
+ </spacer>
</item>
- <item row="1" column="1">
- <widget class="CodecWidget" name="sofiaProfileCodecWidget" native="true"/>
- </item>
</layout>
- </widget>
- <widget class="QWidget" name="tab_3">
- <attribute name="title">
- <string>Advanced</string>
- </attribute>
- <layout class="QVBoxLayout" name="verticalLayout_6">
- <item>
- <widget class="QGroupBox" name="groupBox_7">
- <property name="title">
- <string>Profile</string>
- </property>
- <layout class="QFormLayout" name="formLayout_8">
- <item row="0" column="0">
- <widget class="QLabel" name="label_17">
- <property name="text">
- <string>rfc2833-pt</string>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="sofiaPage">
+ <layout class="QVBoxLayout" name="verticalLayout_2">
+ <item>
+ <widget class="QTabWidget" name="tabWidget">
+ <property name="currentIndex">
+ <number>0</number>
+ </property>
+ <widget class="QWidget" name="tab">
+ <attribute name="title">
+ <string>General</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_5">
+ <item>
+ <widget class="QGroupBox" name="groupBox">
+ <property name="title">
+ <string>Global</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout">
+ <property name="fieldGrowthPolicy">
+ <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
- </widget>
- </item>
- <item row="0" column="1">
- <widget class="QLineEdit" name="sofiaRfc2833PtEdit">
- <property name="text">
- <string>101</string>
- </property>
- </widget>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_5">
- <property name="text">
- <string>debug</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QSpinBox" name="sofiaDebugSpin"/>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_6">
- <property name="text">
- <string>sip-trace</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <widget class="QComboBox" name="sofiaSipTraceCombo">
- <item>
- <property name="text">
- <string>false</string>
- </property>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label">
+ <property name="text">
+ <string>log-level</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>true</string>
- </property>
+ <item row="0" column="1">
+ <widget class="QSpinBox" name="sofiaLogLevelSpin"/>
</item>
- </widget>
- </item>
- <item row="3" column="0">
- <widget class="QLabel" name="label_20">
- <property name="text">
- <string>dtmf-duration</string>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_2">
+ <property name="text">
+ <string>auto-restart</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QComboBox" name="sofiaAutoRestartCombo">
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_3">
+ <property name="text">
+ <string>debug-presence</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QSpinBox" name="sofiaDebugPresenceSpin"/>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_15">
+ <property name="text">
+ <string>rewrite-multicasted-fs-path</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="QComboBox" name="sofiaRewriteMulticastedFsPathCombo">
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupBox_6">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="title">
+ <string>Profile</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout_6">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_4">
+ <property name="text">
+ <string>user-agent-string</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QLineEdit" name="sofiaUserAgentStringEdit">
+ <property name="text">
+ <string>FreeSWITCH/FSComm</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_26">
+ <property name="text">
+ <string>hold-music</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QLineEdit" name="sofiaHoldMusicEdit">
+ <property name="text">
+ <string>localstream://moh</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_16">
+ <property name="text">
+ <string>context</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QLineEdit" name="sofiaContextEdit">
+ <property name="text">
+ <string>public</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_19">
+ <property name="text">
+ <string>dialplan</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="QLineEdit" name="sofiaDialplanEdit">
+ <property name="text">
+ <string>XML</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_2">
+ <attribute name="title">
+ <string>Network</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_4">
+ <item>
+ <widget class="QGroupBox" name="groupBox_2">
+ <property name="title">
+ <string>Softphone Profile</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout_2">
+ <property name="fieldGrowthPolicy">
+ <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
</property>
- </widget>
- </item>
- <item row="3" column="1">
- <widget class="QSpinBox" name="sofiaDtmfDurationSpin">
- <property name="maximum">
- <number>1000</number>
- </property>
- <property name="value">
- <number>100</number>
- </property>
- </widget>
- </item>
- <item row="4" column="0">
- <widget class="QLabel" name="label_23">
- <property name="text">
- <string>rtp-timer-name</string>
- </property>
- </widget>
- </item>
- <item row="4" column="1">
- <widget class="QLineEdit" name="sofiaRtpTimerNameEdit">
- <property name="text">
- <string>soft</string>
- </property>
- </widget>
- </item>
- <item row="5" column="0">
- <widget class="QLabel" name="label_28">
- <property name="text">
- <string>manage-presence</string>
- </property>
- </widget>
- </item>
- <item row="5" column="1">
- <widget class="QComboBox" name="sofiaManagePresenceCombo">
- <item>
- <property name="text">
- <string>false</string>
- </property>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_18">
+ <property name="text">
+ <string>sip-port</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>true</string>
- </property>
+ <item row="0" column="1">
+ <widget class="QSpinBox" name="sofiaSipPortSpin">
+ <property name="minimum">
+ <number>1</number>
+ </property>
+ <property name="maximum">
+ <number>65535</number>
+ </property>
+ <property name="value">
+ <number>12345</number>
+ </property>
+ </widget>
</item>
- </widget>
- </item>
- <item row="6" column="0">
- <widget class="QLabel" name="label_29">
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_22">
+ <property name="text">
+ <string>use-rtp-timer</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QComboBox" name="sofiaUseRtpTimerCombo">
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_24">
+ <property name="text">
+ <string>rtp-ip</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QLineEdit" name="sofiaRtpIpEdit">
+ <property name="text">
+ <string>auto</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_25">
+ <property name="text">
+ <string>sip-ip</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="QLineEdit" name="sofiaSipIpEdit">
+ <property name="text">
+ <string>auto</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="0">
+ <widget class="QLabel" name="label_27">
+ <property name="text">
+ <string>apply-nat-acl</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="1">
+ <widget class="QLineEdit" name="sofiaApplyNatAclEdit">
+ <property name="text">
+ <string>rfc1918</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QLabel" name="label_34">
+ <property name="text">
+ <string>ext-rtp-ip</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="1">
+ <widget class="QLineEdit" name="sofiaExtRtpIpEdit">
+ <property name="text">
+ <string>stun:stun.freeswitch.org</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="0">
+ <widget class="QLabel" name="label_35">
+ <property name="text">
+ <string>ext-sip-ip</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="1">
+ <widget class="QLineEdit" name="sofiaExtSipIpEdit">
+ <property name="text">
+ <string>stun:stun.freeswitch.org</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_4">
+ <attribute name="title">
+ <string>Codecs</string>
+ </attribute>
+ <layout class="QFormLayout" name="formLayout_7">
+ <property name="fieldGrowthPolicy">
+ <enum>QFormLayout::AllNonFixedFieldsGrow</enum>
+ </property>
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_30">
+ <property name="text">
+ <string>inbound-codec-negotiation</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QComboBox" name="sofiaInboundCodecNegotiationCombo">
+ <item>
<property name="text">
- <string>max-proceeding</string>
+ <string>generous</string>
</property>
- </widget>
- </item>
- <item row="6" column="1">
- <widget class="QSpinBox" name="sofiaMaxProceedingEdit">
- <property name="value">
- <number>3</number>
- </property>
- </widget>
- </item>
- <item row="7" column="0">
- <widget class="QLabel" name="label_31">
+ </item>
+ <item>
<property name="text">
- <string>nonce-ttl</string>
+ <string>greedy</string>
</property>
- </widget>
- </item>
- <item row="7" column="1">
- <widget class="QSpinBox" name="sofiaNonceTtlSpin">
- <property name="value">
- <number>60</number>
- </property>
- </widget>
- </item>
- <item row="8" column="0">
- <widget class="QLabel" name="label_36">
- <property name="text">
- <string>rtp-timeout-sec</string>
- </property>
- </widget>
- </item>
- <item row="8" column="1">
- <widget class="QSpinBox" name="sofiaRtpTimeoutSecSpin">
- <property name="maximum">
- <number>1000</number>
- </property>
- <property name="value">
- <number>300</number>
- </property>
- </widget>
- </item>
- <item row="9" column="0">
- <widget class="QLabel" name="label_37">
- <property name="text">
- <string>rtp-hold-timeout-sec</string>
- </property>
- </widget>
- </item>
- <item row="9" column="1">
- <widget class="QSpinBox" name="sofiaRtpHoldTimeoutSecSpin">
- <property name="maximum">
- <number>5000</number>
- </property>
- <property name="value">
- <number>1800</number>
- </property>
- </widget>
- </item>
- <item row="10" column="0">
- <widget class="QLabel" name="label_32">
- <property name="text">
- <string>auth-calls</string>
- </property>
- </widget>
- </item>
- <item row="10" column="1">
- <widget class="QComboBox" name="sofiaAuthCallsCombo">
- <item>
- <property name="text">
- <string>false</string>
- </property>
+ </item>
+ </widget>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_42">
+ <property name="text">
+ <string>Codecs</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="CodecWidget" name="sofiaProfileCodecWidget" native="true"/>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="tab_3">
+ <attribute name="title">
+ <string>Advanced</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_6">
+ <item>
+ <widget class="QGroupBox" name="groupBox_7">
+ <property name="title">
+ <string>Profile</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout_8">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_17">
+ <property name="text">
+ <string>rfc2833-pt</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>true</string>
- </property>
+ <item row="0" column="1">
+ <widget class="QLineEdit" name="sofiaRfc2833PtEdit">
+ <property name="text">
+ <string>101</string>
+ </property>
+ </widget>
</item>
- </widget>
- </item>
- <item row="11" column="0">
- <widget class="QLabel" name="label_33">
- <property name="text">
- <string>auth-all-packets</string>
- </property>
- </widget>
- </item>
- <item row="11" column="1">
- <widget class="QComboBox" name="sofiaAuthAllPacketsCombo">
- <item>
- <property name="text">
- <string>false</string>
- </property>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_5">
+ <property name="text">
+ <string>debug</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>true</string>
- </property>
+ <item row="1" column="1">
+ <widget class="QSpinBox" name="sofiaDebugSpin"/>
</item>
- </widget>
- </item>
- <item row="12" column="0">
- <widget class="QLabel" name="label_38">
- <property name="text">
- <string>disable-register</string>
- </property>
- </widget>
- </item>
- <item row="12" column="1">
- <widget class="QComboBox" name="sofiaDisableRegisterCombo">
- <item>
- <property name="text">
- <string>true</string>
- </property>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_6">
+ <property name="text">
+ <string>sip-trace</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>false</string>
- </property>
+ <item row="2" column="1">
+ <widget class="QComboBox" name="sofiaSipTraceCombo">
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ </widget>
</item>
- </widget>
- </item>
- <item row="13" column="0">
- <widget class="QLabel" name="label_39">
- <property name="text">
- <string>challenge-realm</string>
- </property>
- </widget>
- </item>
- <item row="13" column="1">
- <widget class="QComboBox" name="sofiaChallengeRealmCombo">
- <item>
- <property name="text">
- <string>auto_from</string>
- </property>
+ <item row="3" column="0">
+ <widget class="QLabel" name="label_20">
+ <property name="text">
+ <string>dtmf-duration</string>
+ </property>
+ </widget>
</item>
- <item>
- <property name="text">
- <string>auto_to</string>
- </property>
+ <item row="3" column="1">
+ <widget class="QSpinBox" name="sofiaDtmfDurationSpin">
+ <property name="maximum">
+ <number>1000</number>
+ </property>
+ <property name="value">
+ <number>100</number>
+ </property>
+ </widget>
</item>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- </widget>
- </item>
- </layout>
- </widget>
- <widget class="QWidget" name="portaudioPage">
- <layout class="QVBoxLayout" name="verticalLayout">
- <item>
- <widget class="QGroupBox" name="groupBox_3">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="title">
- <string>Devices</string>
- </property>
- <layout class="QFormLayout" name="formLayout_3">
- <item row="0" column="0">
- <widget class="QLabel" name="label_7">
- <property name="text">
- <string>indev</string>
- </property>
+ <item row="4" column="0">
+ <widget class="QLabel" name="label_23">
+ <property name="text">
+ <string>rtp-timer-name</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="1">
+ <widget class="QLineEdit" name="sofiaRtpTimerNameEdit">
+ <property name="text">
+ <string>soft</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QLabel" name="label_28">
+ <property name="text">
+ <string>manage-presence</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="1">
+ <widget class="QComboBox" name="sofiaManagePresenceCombo">
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="6" column="0">
+ <widget class="QLabel" name="label_29">
+ <property name="text">
+ <string>max-proceeding</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="1">
+ <widget class="QSpinBox" name="sofiaMaxProceedingEdit">
+ <property name="value">
+ <number>3</number>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="0">
+ <widget class="QLabel" name="label_31">
+ <property name="text">
+ <string>nonce-ttl</string>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="1">
+ <widget class="QSpinBox" name="sofiaNonceTtlSpin">
+ <property name="value">
+ <number>60</number>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="0">
+ <widget class="QLabel" name="label_36">
+ <property name="text">
+ <string>rtp-timeout-sec</string>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="1">
+ <widget class="QSpinBox" name="sofiaRtpTimeoutSecSpin">
+ <property name="maximum">
+ <number>1000</number>
+ </property>
+ <property name="value">
+ <number>300</number>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="0">
+ <widget class="QLabel" name="label_37">
+ <property name="text">
+ <string>rtp-hold-timeout-sec</string>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="1">
+ <widget class="QSpinBox" name="sofiaRtpHoldTimeoutSecSpin">
+ <property name="maximum">
+ <number>5000</number>
+ </property>
+ <property name="value">
+ <number>1800</number>
+ </property>
+ </widget>
+ </item>
+ <item row="10" column="0">
+ <widget class="QLabel" name="label_32">
+ <property name="text">
+ <string>auth-calls</string>
+ </property>
+ </widget>
+ </item>
+ <item row="10" column="1">
+ <widget class="QComboBox" name="sofiaAuthCallsCombo">
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="11" column="0">
+ <widget class="QLabel" name="label_33">
+ <property name="text">
+ <string>auth-all-packets</string>
+ </property>
+ </widget>
+ </item>
+ <item row="11" column="1">
+ <widget class="QComboBox" name="sofiaAuthAllPacketsCombo">
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="12" column="0">
+ <widget class="QLabel" name="label_38">
+ <property name="text">
+ <string>disable-register</string>
+ </property>
+ </widget>
+ </item>
+ <item row="12" column="1">
+ <widget class="QComboBox" name="sofiaDisableRegisterCombo">
+ <item>
+ <property name="text">
+ <string>true</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>false</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ <item row="13" column="0">
+ <widget class="QLabel" name="label_39">
+ <property name="text">
+ <string>challenge-realm</string>
+ </property>
+ </widget>
+ </item>
+ <item row="13" column="1">
+ <widget class="QComboBox" name="sofiaChallengeRealmCombo">
+ <item>
+ <property name="text">
+ <string>auto_from</string>
+ </property>
+ </item>
+ <item>
+ <property name="text">
+ <string>auto_to</string>
+ </property>
+ </item>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
</widget>
- </item>
- <item row="0" column="1">
- <widget class="QComboBox" name="PaIndevCombo"/>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_8">
- <property name="text">
- <string>outdev</string>
- </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ <widget class="QWidget" name="portaudioPage">
+ <layout class="QVBoxLayout" name="verticalLayout">
+ <item>
+ <widget class="QTabWidget" name="tabWidget_2">
+ <property name="currentIndex">
+ <number>1</number>
+ </property>
+ <widget class="QWidget" name="tab_5">
+ <attribute name="title">
+ <string>General</string>
+ </attribute>
+ <layout class="QVBoxLayout" name="verticalLayout_9">
+ <item>
+ <widget class="QGroupBox" name="groupBox_3">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="title">
+ <string>Devices</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout_3">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_7">
+ <property name="text">
+ <string>indev</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <widget class="QComboBox" name="PaIndevCombo"/>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_8">
+ <property name="text">
+ <string>outdev</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_3">
+ <item>
+ <widget class="QComboBox" name="PaOutdevCombo"/>
+ </item>
+ <item>
+ <widget class="QPushButton" name="PaOutdevTestBtn">
+ <property name="enabled">
+ <bool>false</bool>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>86</width>
+ <height>27</height>
+ </size>
+ </property>
+ <property name="text">
+ <string>Test</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_9">
+ <property name="text">
+ <string>rindgev</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_2">
+ <item>
+ <widget class="QComboBox" name="PaRingdevCombo"/>
+ </item>
+ <item>
+ <widget class="QPushButton" name="PaRingdevTestBtn">
+ <property name="enabled">
+ <bool>true</bool>
+ </property>
+ <property name="maximumSize">
+ <size>
+ <width>86</width>
+ <height>27</height>
+ </size>
+ </property>
+ <property name="text">
+ <string>Test</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="3" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_6">
+ <item>
+ <widget class="QPushButton" name="PaLoopTestBtn">
+ <property name="text">
+ <string>Loop Test</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="PaRefreshDevListBtn">
+ <property name="text">
+ <string>Refresh DevList</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="4" column="0">
+ <widget class="QLabel" name="label_40">
+ <property name="text">
+ <string>Sample Rate</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="1">
+ <widget class="QLineEdit" name="PaSampleRateEdit">
+ <property name="text">
+ <string>16000</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="0">
+ <widget class="QLabel" name="label_41">
+ <property name="text">
+ <string>Codec MS</string>
+ </property>
+ </widget>
+ </item>
+ <item row="5" column="1">
+ <widget class="QLineEdit" name="PaCodecMSEdit">
+ <property name="text">
+ <string>10</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ <item>
+ <widget class="QGroupBox" name="groupBox_4">
+ <property name="sizePolicy">
+ <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
+ <horstretch>0</horstretch>
+ <verstretch>0</verstretch>
+ </sizepolicy>
+ </property>
+ <property name="title">
+ <string>Files</string>
+ </property>
+ <layout class="QFormLayout" name="formLayout_5">
+ <item row="0" column="0">
+ <widget class="QLabel" name="label_10">
+ <property name="text">
+ <string>ring-file</string>
+ </property>
+ </widget>
+ </item>
+ <item row="0" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout_4">
+ <item>
+ <widget class="QLineEdit" name="PaRingFileEdit">
+ <property name="text">
+ <string>tone_stream://%(2000,4000,440.0,480.0);loops=20</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="PaRingFileBtn">
+ <property name="text">
+ <string>Open</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ <item row="1" column="0">
+ <widget class="QLabel" name="label_12">
+ <property name="text">
+ <string>ring-interval</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QSpinBox" name="PaRingIntervalSpin">
+ <property name="value">
+ <number>5</number>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="0">
+ <widget class="QLabel" name="label_11">
+ <property name="text">
+ <string>hold-file</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <layout class="QHBoxLayout" name="horizontalLayout">
+ <item>
+ <widget class="QLineEdit" name="PaHoldFileEdit">
+ <property name="readOnly">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <widget class="QPushButton" name="PaHoldFileBtn">
+ <property name="text">
+ <string>Open</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ </item>
+ </layout>
</widget>
- </item>
- <item row="1" column="1">
- <layout class="QHBoxLayout" name="horizontalLayout_3">
- <item>
- <widget class="QComboBox" name="PaOutdevCombo"/>
- </item>
- <item>
- <widget class="QPushButton" name="PaOutdevTestBtn">
- <property name="enabled">
- <bool>false</bool>
- </property>
- <property name="maximumSize">
- <size>
- <width>86</width>
- <height>27</height>
- </size>
- </property>
- <property name="text">
- <string>Test</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_9">
- <property name="text">
- <string>rindgev</string>
- </property>
+ <widget class="QWidget" name="tab_6">
+ <attribute name="title">
+ <string>Preprocessor</string>
+ </attribute>
+ <layout class="QFormLayout" name="formLayout_9">
+ <item row="0" column="0" colspan="2">
+ <widget class="QLabel" name="label_21">
+ <property name="text">
+ <string>Echo canceller</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="1">
+ <widget class="QCheckBox" name="checkAECRead">
+ <property name="text">
+ <string>read</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1">
+ <widget class="QCheckBox" name="checkAECWrite">
+ <property name="text">
+ <string>write</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="1">
+ <widget class="QLabel" name="label_45">
+ <property name="text">
+ <string>Tail</string>
+ </property>
+ </widget>
+ </item>
+ <item row="4" column="1">
+ <widget class="QSpinBox" name="spinAECTail"/>
+ </item>
+ <item row="5" column="0" colspan="2">
+ <widget class="QLabel" name="label_43">
+ <property name="text">
+ <string>Echo Suppressor</string>
+ </property>
+ </widget>
+ </item>
+ <item row="6" column="1">
+ <widget class="QCheckBox" name="checkESRead">
+ <property name="text">
+ <string>read</string>
+ </property>
+ </widget>
+ </item>
+ <item row="7" column="1">
+ <widget class="QCheckBox" name="checkESWrite">
+ <property name="text">
+ <string>write</string>
+ </property>
+ </widget>
+ </item>
+ <item row="8" column="1">
+ <widget class="QLabel" name="label_46">
+ <property name="text">
+ <string>Db</string>
+ </property>
+ </widget>
+ </item>
+ <item row="9" column="1">
+ <widget class="QSpinBox" name="spinESDb"/>
+ </item>
+ <item row="10" column="0" colspan="2">
+ <widget class="QLabel" name="label_47">
+ <property name="text">
+ <string>Noise Supressor</string>
+ </property>
+ </widget>
+ </item>
+ <item row="11" column="1">
+ <widget class="QCheckBox" name="checkNSRead">
+ <property name="text">
+ <string>read</string>
+ </property>
+ </widget>
+ </item>
+ <item row="12" column="1">
+ <widget class="QCheckBox" name="checkNSWrite">
+ <property name="text">
+ <string>write</string>
+ </property>
+ </widget>
+ </item>
+ <item row="13" column="1">
+ <widget class="QLabel" name="label_48">
+ <property name="text">
+ <string>Db</string>
+ </property>
+ </widget>
+ </item>
+ <item row="14" column="1">
+ <widget class="QSpinBox" name="spinNSDb"/>
+ </item>
+ <item row="16" column="1">
+ <widget class="QCheckBox" name="checkAGCRead">
+ <property name="text">
+ <string>read</string>
+ </property>
+ </widget>
+ </item>
+ <item row="17" column="1">
+ <widget class="QCheckBox" name="checkAGCWrite">
+ <property name="text">
+ <string>write</string>
+ </property>
+ </widget>
+ </item>
+ <item row="18" column="1">
+ <widget class="QSpinBox" name="spinAGC"/>
+ </item>
+ <item row="15" column="0">
+ <widget class="QLabel" name="label_44">
+ <property name="text">
+ <string>AGC</string>
+ </property>
+ </widget>
+ </item>
+ <item row="19" column="1">
+ <widget class="QPushButton" name="btnApplyPreprocessor">
+ <property name="text">
+ <string>Apply</string>
+ </property>
+ <property name="checkable">
+ <bool>true</bool>
+ </property>
+ </widget>
+ </item>
+ </layout>
</widget>
- </item>
- <item row="2" column="1">
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <item>
- <widget class="QComboBox" name="PaRingdevCombo"/>
- </item>
- <item>
- <widget class="QPushButton" name="PaRingdevTestBtn">
- <property name="enabled">
- <bool>true</bool>
- </property>
- <property name="maximumSize">
- <size>
- <width>86</width>
- <height>27</height>
- </size>
- </property>
- <property name="text">
- <string>Test</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item row="3" column="1">
- <layout class="QHBoxLayout" name="horizontalLayout_6">
- <item>
- <widget class="QPushButton" name="PaLoopTestBtn">
- <property name="text">
- <string>Loop Test</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="PaRefreshDevListBtn">
- <property name="text">
- <string>Refresh DevList</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item row="4" column="0">
- <widget class="QLabel" name="label_40">
- <property name="text">
- <string>Sample Rate</string>
- </property>
- </widget>
- </item>
- <item row="4" column="1">
- <widget class="QLineEdit" name="PaSampleRateEdit">
- <property name="text">
- <string>16000</string>
- </property>
- </widget>
- </item>
- <item row="5" column="0">
- <widget class="QLabel" name="label_41">
- <property name="text">
- <string>Codec MS</string>
- </property>
- </widget>
- </item>
- <item row="5" column="1">
- <widget class="QLineEdit" name="PaCodecMSEdit">
- <property name="text">
- <string>10</string>
- </property>
- </widget>
- </item>
- </layout>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="groupBox_4">
- <property name="sizePolicy">
- <sizepolicy hsizetype="Preferred" vsizetype="Expanding">
- <horstretch>0</horstretch>
- <verstretch>0</verstretch>
- </sizepolicy>
- </property>
- <property name="title">
- <string>Files</string>
- </property>
- <layout class="QFormLayout" name="formLayout_5">
- <item row="0" column="0">
- <widget class="QLabel" name="label_10">
- <property name="text">
- <string>ring-file</string>
- </property>
- </widget>
- </item>
- <item row="0" column="1">
- <layout class="QHBoxLayout" name="horizontalLayout_4">
- <item>
- <widget class="QLineEdit" name="PaRingFileEdit">
- <property name="text">
- <string>tone_stream://%(2000,4000,440.0,480.0);loops=20</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="PaRingFileBtn">
- <property name="text">
- <string>Open</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item row="1" column="0">
- <widget class="QLabel" name="label_12">
- <property name="text">
- <string>ring-interval</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QSpinBox" name="PaRingIntervalSpin">
- <property name="value">
- <number>5</number>
- </property>
- </widget>
- </item>
- <item row="2" column="0">
- <widget class="QLabel" name="label_11">
- <property name="text">
- <string>hold-file</string>
- </property>
- </widget>
- </item>
- <item row="2" column="1">
- <layout class="QHBoxLayout" name="horizontalLayout">
- <item>
- <widget class="QLineEdit" name="PaHoldFileEdit">
- <property name="readOnly">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QPushButton" name="PaHoldFileBtn">
- <property name="text">
- <string>Open</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- </widget>
+ </widget>
+ </item>
+ </layout>
+ </widget>
+ </widget>
+ </item>
+ </layout>
</item>
- <item row="1" column="1">
+ <item>
<widget class="QDialogButtonBox" name="buttonBox">
<property name="orientation">
<enum>Qt::Horizontal</enum>
Modified: freeswitch/trunk/fscomm/preferences/prefportaudio.cpp (17258 => 17259)
--- freeswitch/trunk/fscomm/preferences/prefportaudio.cpp 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/preferences/prefportaudio.cpp 2010-04-09 02:15:29 UTC (rev 17259)
@@ -15,8 +15,30 @@
connect(_ui->PaRingdevTestBtn, SIGNAL(clicked()), this, SLOT(ringdevTest()));
connect(_ui->PaLoopTestBtn, SIGNAL(clicked()), this, SLOT(loopTest()));
connect(_ui->PaRefreshDevListBtn, SIGNAL(clicked()), this, SLOT(refreshDevList()));
+ connect(_ui->btnApplyPreprocessor, SIGNAL(toggled(bool)), this, SLOT(applyPreprocessors(bool)));
}
+void PrefPortaudio::applyPreprocessors(bool state)
+{
+ QStringList cmds;
+ if (!state)
+ {
+ cmds.append("stop");
+ }
+ else
+ {
+ if (_ui->checkAECRead->isChecked()) cmds.append(QString("recho_cancel=%1").arg(_ui->spinAECTail->value()));
+ if (_ui->checkAECWrite->isChecked()) cmds.append(QString("wecho_cancel=%1").arg(_ui->spinAECTail->value()));
+ if (_ui->checkESRead->isChecked()) cmds.append(QString("recho_suppress=%1").arg(_ui->spinESDb->value()));
+ if (_ui->checkESWrite->isChecked()) cmds.append(QString("wecho_suppress=%1").arg(_ui->spinESDb->value()));
+ if (_ui->checkNSRead->isChecked()) cmds.append(QString("rnoise_suppress=%1").arg(_ui->spinNSDb->value()));
+ if (_ui->checkNSWrite->isChecked()) cmds.append(QString("wnoise_suppress=%1").arg(_ui->spinNSDb->value()));
+ if (_ui->checkAGCRead->isChecked()) cmds.append(QString("ragc=%1").arg(_ui->spinAGC->value()));
+ if (_ui->checkAGCWrite->isChecked()) cmds.append(QString("wagc=%1").arg(_ui->spinAGC->value()));
+ }
+ emit preprocessorsApplied(cmds);
+}
+
void PrefPortaudio::ringdevTest()
{
QString result;
Modified: freeswitch/trunk/fscomm/preferences/prefportaudio.h (17258 => 17259)
--- freeswitch/trunk/fscomm/preferences/prefportaudio.h 2010-04-08 21:17:13 UTC (rev 17258)
+++ freeswitch/trunk/fscomm/preferences/prefportaudio.h 2010-04-09 02:15:29 UTC (rev 17259)
@@ -24,6 +24,11 @@
void ringdevTest();
void loopTest();
void refreshDevList();
+ void applyPreprocessors(bool);
+
+signals:
+ void preprocessorsApplied(QStringList);
+
private:
void getPaDevlist(void);
QSettings *_settings;