Revision
16529
Author
jmesquita
Date
2010-01-27 21:13:57 -0600 (Wed, 27 Jan 2010)

Log Message

Make caller id per account option available. Needs to wipe out the ~/.fscomm/conf/freeswitch.xml file, sorry.

Modified Paths

Diff

Modified: freeswitch/trunk/fscomm/conf/freeswitch.xml (16528 => 16529)


--- freeswitch/trunk/fscomm/conf/freeswitch.xml	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/conf/freeswitch.xml	2010-01-28 03:13:57 UTC (rev 16529)
@@ -1,102 +1,102 @@
 <?xml version="1.0"?>
 <document type="freeswitch/xml">
-	<X-PRE-PROCESS cmd="set" data="auto_answer=false"/>
-	<X-PRE-PROCESS cmd="set" data="domain=$${local_ip_v4}"/>
-	<X-PRE-PROCESS cmd="set" data="hold_music=local_stream://moh"/>
-	<X-PRE-PROCESS cmd="set" data="codec_prefs=CELT@48000h,G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM"/>
-	<X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org"/>
-	<X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org"/>
-	<X-PRE-PROCESS cmd="set" data="console_loglevel=info"/>
-	<X-PRE-PROCESS cmd="set" data="us-ring=%(2000, 4000, 440.0, 480.0)"/>
-	<X-PRE-PROCESS cmd="set" data="bong-ring=v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1400,0,350,440)"/>
-	<X-PRE-PROCESS cmd="set" data="sit=%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)"/>
+        <X-PRE-PROCESS cmd="set" data="auto_answer=false"/>
+        <X-PRE-PROCESS cmd="set" data="domain=$${local_ip_v4}"/>
+        <X-PRE-PROCESS cmd="set" data="hold_music=local_stream://moh"/>
+        <X-PRE-PROCESS cmd="set" data="codec_prefs=CELT@48000h,G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM"/>
+        <X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org"/>
+        <X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org"/>
+        <X-PRE-PROCESS cmd="set" data="console_loglevel=info"/>
+        <X-PRE-PROCESS cmd="set" data="us-ring=%(2000, 4000, 440.0, 480.0)"/>
+        <X-PRE-PROCESS cmd="set" data="bong-ring=v=-7;%(100,0,941.0,1477.0);v=-7;>=2;+=.1;%(1400,0,350,440)"/>
+        <X-PRE-PROCESS cmd="set" data="sit=%(274,0,913.8);%(274,0,1370.6);%(380,0,1776.7)"/>
 
-	<section name="configuration" description="Various Configuration">
-		<configuration name="cdr_csv.conf" description="CDR CSV Format">
-			<settings>
-				<param name="default-template" value="example"/>
-				<param name="rotate-on-hup" value="true"/>
-				<param name="legs" value="a"/>
-			</settings>
-			<templates>
-				<template name="example">"${caller_id_name}","${caller_id_number}","${destination_number}","${context}","${start_stamp}","${answer_stamp}","${end_stamp}","${duration}","${billsec}","${hangup_cause}","${uuid}","${bleg_uuid}","${accountcode}","${read_codec}","${write_codec}"</template>
-			</templates>
-		</configuration>
+        <section name="configuration" description="Various Configuration">
+                <configuration name="cdr_csv.conf" description="CDR CSV Format">
+                        <settings>
+                                <param name="default-template" value="example"/>
+                                <param name="rotate-on-hup" value="true"/>
+                                <param name="legs" value="a"/>
+                        </settings>
+                        <templates>
+                                <template name="example">"${caller_id_name}","${caller_id_number}","${destination_number}","${context}","${start_stamp}","${answer_stamp}","${end_stamp}","${duration}","${billsec}","${hangup_cause}","${uuid}","${bleg_uuid}","${accountcode}","${read_codec}","${write_codec}"</template>
+                        </templates>
+                </configuration>
 
-		<configuration name="console.conf" description="Console Logger">
-			<mappings>
-				<map name="all" value="console,debug,info,notice,warning,err,crit,alert"/>
-			</mappings>
-			<settings>
-				<param name="colorize" value="true"/>
-				<param name="loglevel" value="$${console_loglevel}"/>
-			</settings>
-		</configuration>
+                <configuration name="console.conf" description="Console Logger">
+                        <mappings>
+                                <map name="all" value="console,debug,info,notice,warning,err,crit,alert"/>
+                        </mappings>
+                        <settings>
+                                <param name="colorize" value="true"/>
+                                <param name="loglevel" value="$${console_loglevel}"/>
+                        </settings>
+                </configuration>
 
-		<configuration name="enum.conf" description="ENUM Module">
-			<settings>
-				<param name="default-root" value="e164.org"/>
-				<param name="default-isn-root" value="freenum.org"/>
-				<param name="query-timeout" value="10"/>
-				<param name="auto-reload" value="true"/>
-			</settings>
-			<routes>
-				<route service="E2U+SIP" regex="sip:(.*)" replace="sofia/softphone/$1"/>
-			</routes>
-		</configuration>
+                <configuration name="enum.conf" description="ENUM Module">
+                        <settings>
+                                <param name="default-root" value="e164.org"/>
+                                <param name="default-isn-root" value="freenum.org"/>
+                                <param name="query-timeout" value="10"/>
+                                <param name="auto-reload" value="true"/>
+                        </settings>
+                        <routes>
+                                <route service="E2U+SIP" regex="sip:(.*)" replace="sofia/softphone/$1"/>
+                        </routes>
+                </configuration>
 
-		<configuration name="qsettings.conf" description="configures our mod_qsettings">
-			<bindings value="configuration" />
-		</configuration>
+                <configuration name="qsettings.conf" description="configures our mod_qsettings">
+                        <bindings value="configuration" />
+                </configuration>
 
-		<configuration name="local_stream.conf" description="stream files from local dir">
-			<directory name="moh/48000" path="$${base_dir}/sounds/music/48000">
-				<param name="rate" value="48000"/>
-				<param name="shuffle" value="true"/>
-				<param name="channels" value="1"/>
-				<param name="interval" value="10"/>
-				<param name="timer-name" value="soft"/>
-			</directory>
-		</configuration>
+                <configuration name="local_stream.conf" description="stream files from local dir">
+                        <directory name="moh/48000" path="$${base_dir}/sounds/music/48000">
+                                <param name="rate" value="48000"/>
+                                <param name="shuffle" value="true"/>
+                                <param name="channels" value="1"/>
+                                <param name="interval" value="10"/>
+                                <param name="timer-name" value="soft"/>
+                        </directory>
+                </configuration>
 
-		<configuration name="logfile.conf" description="File Logging">
-			<settings>
-				<param name="rotate-on-hup" value="true"/>
-			</settings>
-			<profiles>
-				<profile name="default">
-					<settings>
-					</settings>
-					<mappings>
-						<map name="all" value="debug,info,notice,warning,err,crit,alert"/>
-					</mappings>
-				</profile>
-			</profiles>
-		</configuration>
+                <configuration name="logfile.conf" description="File Logging">
+                        <settings>
+                                <param name="rotate-on-hup" value="true"/>
+                        </settings>
+                        <profiles>
+                                <profile name="default">
+                                        <settings>
+                                        </settings>
+                                        <mappings>
+                                                <map name="all" value="debug,info,notice,warning,err,crit,alert"/>
+                                        </mappings>
+                                </profile>
+                        </profiles>
+                </configuration>
 
-		<configuration name="modules.conf" description="Modules">
-			<modules>
-				<load module="mod_console"/>
-				<load module="mod_logfile"/>
-				<load module="mod_enum"/>
-				<load module="mod_cdr_csv"/>
-				<load module="mod_sofia"/>
-				<load module="mod_loopback"/>
-				<load module="mod_commands"/>
-				<load module="mod_dptools"/>
-				<load module="mod_dialplan_xml"/>
-				<load module="mod_voipcodecs"/>
-				<load module="mod_ilbc"/>
-				<load module="mod_speex"/>
-				<load module="mod_celt"/>
-				<load module="mod_siren"/>
-				<load module="mod_sndfile"/>
-				<load module="mod_tone_stream"/>
-				<load module="mod_local_stream"/>
-				<load module="mod_portaudio"/>
-				<load module="mod_event_socket"/>
-			</modules>
-		</configuration>
+                <configuration name="modules.conf" description="Modules">
+                        <modules>
+                                <load module="mod_console"/>
+                                <load module="mod_logfile"/>
+                                <load module="mod_enum"/>
+                                <load module="mod_cdr_csv"/>
+                                <load module="mod_sofia"/>
+                                <load module="mod_loopback"/>
+                                <load module="mod_commands"/>
+                                <load module="mod_dptools"/>
+                                <load module="mod_dialplan_xml"/>
+                                <load module="mod_voipcodecs"/>
+                                <load module="mod_ilbc"/>
+                                <load module="mod_speex"/>
+                                <load module="mod_celt"/>
+                                <load module="mod_siren"/>
+                                <load module="mod_sndfile"/>
+                                <load module="mod_tone_stream"/>
+                                <load module="mod_local_stream"/>
+                                <load module="mod_portaudio"/>
+                                <load module="mod_event_socket"/>
+                        </modules>
+                </configuration>
 
                 <configuration name="portaudio.conf" description="Soundcard Endpoint">
                   <settings>
@@ -125,166 +125,185 @@
                       </settings>
                 </configuration>
 
-		<configuration name="post_load_modules.conf" description="Modules">
-			<modules>
-			</modules>
-		</configuration>
+                <configuration name="post_load_modules.conf" description="Modules">
+                        <modules>
+                        </modules>
+                </configuration>
 
-		<configuration name="sofia.conf" description="sofia Endpoint">
-			<global_settings>
-				<param name="log-level" value="0"/>
-				<param name="auto-restart" value="true"/>
-				<param name="debug-presence" value="0"/>
-			</global_settings>
-			<profiles>
-				<profile name="softphone">
-					<settings>
-						<!--<param name="media-option" value="bypass-media-after-att-xfer"/>-->
-						<param name="user-agent-string" value="FreeSWITCH/FSComm"/>
-						<!-- <param name="user-agent-string" value="FreeSWITCH Rocks!"/> -->
-						<param name="debug" value="0"/>
-						<param name="sip-trace" value="no"/>
-						<param name="context" value="public"/>
-						<param name="rfc2833-pt" value="101"/>
-						<!-- port to bind to for sip traffic -->
-						<param name="sip-port" value="12345"/>
-						<param name="dialplan" value="XML"/>
-						<param name="dtmf-duration" value="100"/>
-						<param name="codec-prefs" value="$${codec_prefs}"/>
-						<param name="use-rtp-timer" value="true"/>
-						<param name="rtp-timer-name" value="soft"/>
-						<!-- ip address to use for rtp, DO NOT USE HOSTNAMES ONLY IP ADDRESSES -->
-						<param name="rtp-ip" value="$${local_ip_v4}"/>
-						<!-- ip address to bind to, DO NOT USE HOSTNAMES ONLY IP ADDRESSES -->
-						<param name="sip-ip" value="$${local_ip_v4}"/>
-						<param name="hold-music" value="$${hold_music}"/>
-						<param name="apply-nat-acl" value="rfc1918"/>
-						<!--<param name="enable-timer" value="false"/>-->
-						<!--<param name="enable-100rel" value="true"/>-->
-						<!--<param name="minimum-session-expires" value="120"/>-->
-						<!--<param name="dtmf-type" value="info"/>-->
-						<param name="manage-presence" value="false"/>
-						<!--<param name="bitpacking" value="aal2"/> -->
-						<param name="max-proceeding" value="3"/>
-						<!--<param name="session-timeout" value="120"/>-->
-						<!--set to 'greedy' if you want your codec list to take precedence -->
-						<param name="inbound-codec-negotiation" value="generous"/>
-						<!-- if you want to send any special bind params of your own -->
-						<!--<param name="bind-params" value="transport=udp"/>-->
-						<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
-						<!--<param name="inbound-late-negotiation" value="true"/>-->
-						<!--<param name="accept-blind-reg" value="true"/> -->
-						<!--<param name="accept-blind-auth" value="true"/> -->
-						<!--<param name="suppress-cng" value="true"/> -->
-						<param name="nonce-ttl" value="60"/>
-						<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
-						<!--<param name="NDLB-received-in-nat-reg-contact" value="true"/>-->
-						<param name="auth-calls" value="false"/>
-						<param name="auth-all-packets" value="false"/>
-						<param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
-						<param name="ext-sip-ip" value="$${external_sip_ip}"/>
-						<!-- rtp inactivity timeout -->
-						<param name="rtp-timeout-sec" value="300"/>
-						<param name="rtp-hold-timeout-sec" value="1800"/>
-						<!-- VAD choose one (out is a good choice); -->
-						<!-- <param name="vad" value="in"/> -->
-						<!-- <param name="vad" value="out"/> -->
-						<!-- <param name="vad" value="both"/> -->
-						<param name="disable-register" value="true"/>
-						<!--<param name="NDLB-force-rport" value="true"/>-->
-						<param name="challenge-realm" value="auto_from"/>
-						<!--<param name="disable-rtp-auto-adjust" value="true"/>-->
-						<!--<param name="inbound-use-callid-as-uuid" value="true"/>-->
-						<!--<param name="outbound-use-uuid-as-callid" value="true"/>-->
-						<!--<param name="auto-rtp-bugs" data="clear"/>-->
-					</settings>
-				</profile>
-			</profiles>
-		</configuration>
+                <configuration name="sofia.conf" description="sofia Endpoint">
+                        <global_settings>
+                                <param name="log-level" value="0"/>
+                                <param name="auto-restart" value="true"/>
+                                <param name="debug-presence" value="0"/>
+                        </global_settings>
+                        <profiles>
+                                <profile name="softphone">
+                                        <settings>
+                                                <!--<param name="media-option" value="bypass-media-after-att-xfer"/>-->
+                                                <param name="user-agent-string" value="FreeSWITCH/FSComm"/>
+                                                <!-- <param name="user-agent-string" value="FreeSWITCH Rocks!"/> -->
+                                                <param name="debug" value="0"/>
+                                                <param name="sip-trace" value="no"/>
+                                                <param name="context" value="public"/>
+                                                <param name="rfc2833-pt" value="101"/>
+                                                <!-- port to bind to for sip traffic -->
+                                                <param name="sip-port" value="12345"/>
+                                                <param name="dialplan" value="XML"/>
+                                                <param name="dtmf-duration" value="100"/>
+                                                <param name="codec-prefs" value="$${codec_prefs}"/>
+                                                <param name="use-rtp-timer" value="true"/>
+                                                <param name="rtp-timer-name" value="soft"/>
+                                                <!-- ip address to use for rtp, DO NOT USE HOSTNAMES ONLY IP ADDRESSES -->
+                                                <param name="rtp-ip" value="$${local_ip_v4}"/>
+                                                <!-- ip address to bind to, DO NOT USE HOSTNAMES ONLY IP ADDRESSES -->
+                                                <param name="sip-ip" value="$${local_ip_v4}"/>
+                                                <param name="hold-music" value="$${hold_music}"/>
+                                                <param name="apply-nat-acl" value="rfc1918"/>
+                                                <!--<param name="enable-timer" value="false"/>-->
+                                                <!--<param name="enable-100rel" value="true"/>-->
+                                                <!--<param name="minimum-session-expires" value="120"/>-->
+                                                <!--<param name="dtmf-type" value="info"/>-->
+                                                <param name="manage-presence" value="false"/>
+                                                <!--<param name="bitpacking" value="aal2"/> -->
+                                                <param name="max-proceeding" value="3"/>
+                                                <!--<param name="session-timeout" value="120"/>-->
+                                                <!--set to 'greedy' if you want your codec list to take precedence -->
+                                                <param name="inbound-codec-negotiation" value="generous"/>
+                                                <!-- if you want to send any special bind params of your own -->
+                                                <!--<param name="bind-params" value="transport=udp"/>-->
+                                                <!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
+                                                <!--<param name="inbound-late-negotiation" value="true"/>-->
+                                                <!--<param name="accept-blind-reg" value="true"/> -->
+                                                <!--<param name="accept-blind-auth" value="true"/> -->
+                                                <!--<param name="suppress-cng" value="true"/> -->
+                                                <param name="nonce-ttl" value="60"/>
+                                                <!--<param name="NDLB-broken-auth-hash" value="true"/>-->
+                                                <!--<param name="NDLB-received-in-nat-reg-contact" value="true"/>-->
+                                                <param name="auth-calls" value="false"/>
+                                                <param name="auth-all-packets" value="false"/>
+                                                <param name="ext-rtp-ip" value="$${external_rtp_ip}"/>
+                                                <param name="ext-sip-ip" value="$${external_sip_ip}"/>
+                                                <!-- rtp inactivity timeout -->
+                                                <param name="rtp-timeout-sec" value="300"/>
+                                                <param name="rtp-hold-timeout-sec" value="1800"/>
+                                                <!-- VAD choose one (out is a good choice); -->
+                                                <!-- <param name="vad" value="in"/> -->
+                                                <!-- <param name="vad" value="out"/> -->
+                                                <!-- <param name="vad" value="both"/> -->
+                                                <param name="disable-register" value="true"/>
+                                                <!--<param name="NDLB-force-rport" value="true"/>-->
+                                                <param name="challenge-realm" value="auto_from"/>
+                                                <!--<param name="disable-rtp-auto-adjust" value="true"/>-->
+                                                <!--<param name="inbound-use-callid-as-uuid" value="true"/>-->
+                                                <!--<param name="outbound-use-uuid-as-callid" value="true"/>-->
+                                                <!--<param name="auto-rtp-bugs" data="clear"/>-->
+                                        </settings>
+                                </profile>
+                        </profiles>
+                </configuration>
 
-		<configuration name="switch.conf" description="Core Configuration">
-			<cli-keybindings>
-				<key name="1" value="help"/>
-				<key name="2" value="status"/>
-				<key name="3" value="pa answer"/>
-				<key name="4" value="pa hangup"/>
-				<key name="5" value="sofia status"/>
-				<key name="6" value="reloadxml"/>
-				<key name="7" value="console loglevel 0"/>
-				<key name="8" value="console loglevel 7"/>
-				<key name="9" value="sofia status profile softphone"/>
-				<key name="10" value="fsctl pause"/>
-				<key name="11" value="fsctl resume"/>
-				<key name="12" value="version"/>
-			</cli-keybindings> 
-			<settings>
-				<param name="colorize-console" value="true"/>
-				<param name="max-sessions" value="20"/>
-				<param name="sessions-per-second" value="5"/>
-				<param name="loglevel" value="debug"/>
-				<param name="crash-protection" value="false"/>
-				<param name="dump-cores" value="yes"/>
-				<param name="rtp-start-port" value="16384"/>
-				<param name="rtp-end-port" value="16484"/>
-			</settings>
-		</configuration>
-	</section>
+                <configuration name="switch.conf" description="Core Configuration">
+                        <cli-keybindings>
+                                <key name="1" value="help"/>
+                                <key name="2" value="status"/>
+                                <key name="3" value="pa answer"/>
+                                <key name="4" value="pa hangup"/>
+                                <key name="5" value="sofia status"/>
+                                <key name="6" value="reloadxml"/>
+                                <key name="7" value="console loglevel 0"/>
+                                <key name="8" value="console loglevel 7"/>
+                                <key name="9" value="sofia status profile softphone"/>
+                                <key name="10" value="fsctl pause"/>
+                                <key name="11" value="fsctl resume"/>
+                                <key name="12" value="version"/>
+                        </cli-keybindings>
+                        <settings>
+                                <param name="colorize-console" value="true"/>
+                                <param name="max-sessions" value="20"/>
+                                <param name="sessions-per-second" value="5"/>
+                                <param name="loglevel" value="debug"/>
+                                <param name="crash-protection" value="false"/>
+                                <param name="dump-cores" value="yes"/>
+                                <param name="rtp-start-port" value="16384"/>
+                                <param name="rtp-end-port" value="16484"/>
+                        </settings>
+                </configuration>
+        </section>
 
-	<section name="dialplan" description="Regex/XML Dialplan">
-		<context name="default">
-			<extension name="codec_and_sip_uri">
-				<condition field="destination_number" expression="^sip:(.*):(.*)$">
-					<action application="bridge" data="{absolute_codec_string=$1}sofia/softphone/$2"/>
-				</condition>
-			</extension>
-			<extension name="sip_uri">
-				<condition field="destination_number" expression="^sip:(.*)$">
-					<action application="bridge" data="sofia/softphone/$1"/>
-				</condition>
-			</extension>
-			<extension name="codec_and_number">
-				<condition field="destination_number" expression="^(.*):(.*)@(.*)$">
-					<action application="bridge" data="{absolute_codec_string=$1}sofia/gateway/$3/$2"/>
-				</condition>
-			</extension>
-			<extension name="number">
-				<condition field="destination_number" expression="^(.*)@(.*)$">
-					<action application="bridge" data="sofia/gateway/$2/$1"/>
-				</condition>
-			</extension>
-			<extension name="number">
-				<condition field="destination_number" expression="^(.*)$">
+        <section name="dialplan" description="Regex/XML Dialplan">
+                <context name="default">
+                        <extension name="codec_and_sip_uri">
+                                <condition field="destination_number" expression="^sip:(.*):(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="{absolute_codec_string=$1}sofia/softphone/$2"/>
+                                </condition>
+                        </extension>
+                        <extension name="sip_uri">
+                                <condition field="destination_number" expression="^sip:(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="sofia/softphone/$1"/>
+                                </condition>
+                        </extension>
+                        <extension name="codec_and_number">
+                                <condition field="destination_number" expression="^(.*):(.*)@(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="{absolute_codec_string=$1}sofia/gateway/$3/$2"/>
+                                </condition>
+                        </extension>
+                        <extension name="number">
+                                <condition field="destination_number" expression="^(.*)@(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="sofia/gateway/$2/$1"/>
+                                </condition>
+                        </extension>
+                        <extension name="number">
+                                <condition field="destination_number" expression="^(.*)$">
                                  <!-- Default gateway is set by FSComm when default account is selected -->
-					<action application="bridge" data="sofia/gateway/${default_gateway}/$1"/>
-				</condition>
-			</extension>
-		</context>
-		<context name="public">
-			<extension name="public_extensions">
-				<condition field="$${auto_answer}" expression="^true$"/>
-				<condition field="destination_number" expression="^(.*)$">
-					<action application="info"/>
-					<action application="bridge" data="portaudio/auto_answer"/>
-				</condition>
-			</extension>
-			<extension name="public_extensions">
-				<condition field="${sip_to_params}" expression="intercom=true"/>
-				<condition field="${alert_info}" expression="Ring;Answer"/>
-				<condition field="destination_number" expression="^(.*)$">
-					<action application="info"/>
-					<action application="bridge" data="portaudio/auto_answer"/>
-				</condition>
-			</extension>
-			<extension name="public_extensions">
-				<condition field="destination_number" expression="^(.*)$">
-					<action application="info"/>
-					<action application="set" data="ringback=${us-ring}"/>
-					<action application="pre_answer"/>
-					<action application="bridge" data="portaudio"/>
-				</condition>
-			</extension>
-		</context>
-	</section>
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="sofia/gateway/${default_gateway}/$1"/>
+                                </condition>
+                        </extension>
+                </context>
+                <context name="public">
+                        <extension name="public_extensions">
+                                <condition field="$${auto_answer}" expression="^true$"/>
+                                <condition field="destination_number" expression="^(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="portaudio/auto_answer"/>
+                                </condition>
+                        </extension>
+                        <extension name="public_extensions">
+                                <condition field="${sip_to_params}" expression="intercom=true"/>
+                                <condition field="${alert_info}" expression="Ring;Answer"/>
+                                <condition field="destination_number" expression="^(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="bridge" data="portaudio/auto_answer"/>
+                                </condition>
+                        </extension>
+                        <extension name="public_extensions">
+                                <condition field="destination_number" expression="^(.*)$">
+                                        <action application="export" data="origination_caller_id_number=${fscomm_caller_id_num}"/>
+                                        <action application="export" data="origination_caller_id_name=${fscomm_caller_id_name}"/>
+                                        <action application="info"/>
+                                        <action application="set" data="ringback=${us-ring}"/>
+                                        <action application="pre_answer"/>
+                                        <action application="bridge" data="portaudio"/>
+                                </condition>
+                        </extension>
+                </context>
+        </section>
 </document>
-
-

Modified: freeswitch/trunk/fscomm/fshost.cpp (16528 => 16529)


--- freeswitch/trunk/fscomm/fshost.cpp	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/fshost.cpp	2010-01-28 03:13:57 UTC (rev 16529)
@@ -485,3 +485,22 @@
     }
     qDebug() << "\n\n";
 }
+
+QSharedPointer<Account> FSHost::getAccountByName(QString accStr)
+{
+    foreach(QSharedPointer<Account> acc, _accounts.values())
+    {
+        if (acc.data()->getName() == accStr)
+            return acc;
+    }
+    return QSharedPointer<Account>();
+}
+
+QSharedPointer<Account> FSHost::getCurrentDefaultAccount()
+{
+    QSettings settings;
+    settings.beginGroup("FreeSWITCH/conf/globals");
+    QString accString = settings.value("default_gateway").toString();
+    settings.endGroup();
+    return getAccountByName(accString);
+}

Modified: freeswitch/trunk/fscomm/fshost.h (16528 => 16529)


--- freeswitch/trunk/fscomm/fshost.h	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/fshost.h	2010-01-28 03:13:57 UTC (rev 16529)
@@ -47,6 +47,8 @@
     QSharedPointer<Call> getCurrentActiveCall();
     QList<QSharedPointer<Account> > getAccounts() { return _accounts.values(); }
     QSharedPointer<Account> getAccountByUUID(QString uuid);
+    QSharedPointer<Account> getCurrentDefaultAccount();
+    QSharedPointer<Account> getAccountByName(QString accStr);
     void accountReloadCmd(QSharedPointer<Account> acc);
 
 protected:

Modified: freeswitch/trunk/fscomm/mainwindow.cpp (16528 => 16529)


--- freeswitch/trunk/fscomm/mainwindow.cpp	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/mainwindow.cpp	2010-01-28 03:13:57 UTC (rev 16529)
@@ -239,6 +239,36 @@
     QString dialstring = QInputDialog::getText(this, tr("Make new call"),
                                          tr("Number to dial:"), QLineEdit::Normal, NULL,&ok);
 
+    QSharedPointer<Account> acc = g_FSHost.getCurrentDefaultAccount();
+    if (!acc.isNull()) {
+        QSettings settings;
+        settings.beginGroup("FreeSWITCH/conf/sofia.conf/profiles/profile/gateways/");
+        settings.beginGroup(acc.data()->getUUID());
+        settings.beginGroup("gateway/global_vars");
+        QString cidName = settings.value("caller_id_name").toString();
+        QString cidNum = settings.value("caller_id_num").toString();
+        settings.endGroup();
+        settings.endGroup();
+        settings.endGroup();
+
+        if (cidName.isEmpty()) {
+            settings.beginGroup("FreeSWITCH/conf/portaudio.conf/settings/params");
+            cidName = settings.value("cid-name").toString();
+            settings.endGroup();
+        }
+        if (cidNum.isEmpty()) {
+            settings.beginGroup("FreeSWITCH/conf/portaudio.conf/settings/params");
+            cidNum = settings.value("cid-num").toString();
+            settings.endGroup();
+        }
+
+        /* Set the vars for this call */
+        switch_core_set_variable("fscomm_caller_id_name", cidName.toAscii().data());
+        switch_core_set_variable("fscomm_caller_id_num", cidNum.toAscii().data());
+
+        qDebug() << "Name:" << cidName << "Num:" << cidNum;
+    }
+
     if (ok && !dialstring.isEmpty())
     {
         paCall(dialstring);

Modified: freeswitch/trunk/fscomm/preferences/accountdialog.cpp (16528 => 16529)


--- freeswitch/trunk/fscomm/preferences/accountdialog.cpp	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/preferences/accountdialog.cpp	2010-01-28 03:13:57 UTC (rev 16529)
@@ -137,6 +137,17 @@
     _settings->beginGroup("FreeSWITCH/conf/sofia.conf/profiles/profile/gateways");
 
     _settings->beginGroup(_accId);
+
+    _settings->beginGroup("gateway/global_vars");
+    if (ui->clidSettingsCombo->currentIndex() == 0)
+    {
+        _settings->remove("caller_id_name");
+        _settings->remove("caller_id_num");
+    } else {
+        _settings->setValue("caller_id_name", ui->sofiaCallerIDName->text());
+        _settings->setValue("caller_id_num", ui->sofiaCallerIDNum->text());
+    }
+    _settings->endGroup();
     
     _settings->beginGroup("gateway/attrs");
     _settings->setValue("name", ui->sofiaGwNameEdit->text());

Modified: freeswitch/trunk/fscomm/preferences/accountdialog.ui (16528 => 16529)


--- freeswitch/trunk/fscomm/preferences/accountdialog.ui	2010-01-28 01:12:34 UTC (rev 16528)
+++ freeswitch/trunk/fscomm/preferences/accountdialog.ui	2010-01-28 03:13:57 UTC (rev 16529)
@@ -193,7 +193,7 @@
        <item row="9" column="1">
         <widget class="QComboBox" name="clidSettingsCombo">
          <property name="enabled">
-          <bool>false</bool>
+          <bool>true</bool>
          </property>
          <item>
           <property name="text">