122 Commits

Author SHA1 Message Date
Anthony Minessale
c85078efc9 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3296 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 19:33:49 +00:00
Michael Jerris
e061df2198 work around sofia bug where you need to set contact using tag on response to invite after you have done an outbound reg. This still needs to be fixed right in the sofia lib.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3295 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 17:19:15 +00:00
Anthony Minessale
f727b16cb5 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3294 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 16:26:12 +00:00
Anthony Minessale
0ce3f5b08b tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3286 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 05:13:59 +00:00
Michael Jerris
88a53a6b44 Fix segfault on registrations when we are not challenged for aut. can't match scheme and realm if there isn't one.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3282 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-08 19:12:28 +00:00
Michael Jerris
2824afcd64 parse params from the user directory properly on a register.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3270 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-06 16:35:23 +00:00
Anthony Minessale
9caae3960c update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3251 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-01 23:26:00 +00:00
Michael Jerris
0bf221111d msvc doesn't like = {}, and is a bit pickier on unreachable code.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3247 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 21:46:42 +00:00
Anthony Minessale
9ab2b1db57 Media Management (Sponsored By Front Logic)
This modification makes it possible to change the media path of session in the switch on-the-fly and from the dialplan.
It adds some API interface calls usable from a remote client such as mod_event_socket or the test console.

1) media [off] <uuid>

   Turns on/off the media on the call described by <uuid>
   The media will be redirected as desiered either into the switch or point to point.

2) hold [off] <uuid>

   Turns on/off endpoint specific hold state on the session described by <uuid>

3) broadcast <uuid> "<path>[ <timer_name>]" or "speak:<tts_engine>|<tts_voice>|<text>[|<timer_name>]" [both]

   A message will be sent to the call described by uuid instructing it to play the file or speak the text indicated.

   If the 'both' option is specified both ends of the call will hear the message otherwise just the uuid specified
   will hear the message.

   During playback when only one side is hearing the message the other end will hear silence.

   If media is not flowing across the switch when the message is broadcasted, the media will be directed to the
   switch for the duration of the call and then returned to it's previous state.


Also the no_media=true option in the dialplan before a bridge makes it possible to place a call while proxying the session
description from one endpoint to the other and establishing an immidiate point-to-point media connection with no media
on the switch.

<action application="set" data="no_media=true"/>
<action application="bridge" data="sofia/mydomain.com/myid@myhost.com"/>


*NOTE* when connecting two outbound legs by using the "originate" api command with an extension that has no_media=true enabled,
the media for the first leg will be engaged with the switch until the second leg has answered and the other session description
is available to establish a point to point connection at which time point-to-point mode will be enabled.

*NOTE* it is reccommended you rebuild FreeSWITCH with "make sure" as there have been some changes to the core.



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3245 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 21:38:06 +00:00
Michael Jerris
3146d99422 use switch_payload_t for the rtp payload numbers.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3240 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-31 05:42:40 +00:00
Anthony Minessale
a4a79bcff1 let sofia have here way
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3236 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-30 15:27:05 +00:00
Anthony Minessale
718ace8b83 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3227 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-29 17:57:55 +00:00
Anthony Minessale
cbdcbcf87a update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3214 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-26 20:02:57 +00:00
Michael Jerris
08b2207573 make sofia a bit more stable after an outbound register. Please note, we are working on some issues in sofia, revisions after last weekend are currently not considered stable under some conditions.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3208 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-26 11:47:22 +00:00
Michael Jerris
ee086006d5 why malloc?
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3204 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 18:00:14 +00:00
Anthony Minessale
d58c1d05b9 fix
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3203 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 17:59:50 +00:00
Michael Jerris
ac6f80b95d only need realm on auth
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3200 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 17:00:57 +00:00
Anthony Minessale
a592674795 sip signalling
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3197 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 15:46:42 +00:00
Anthony Minessale
61f7148941 tidy up
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3196 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 14:01:03 +00:00
Anthony Minessale
08442ff2c4 signalling refactoring for media etc
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3192 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 04:28:49 +00:00
Michael Jerris
1f2d19e28e update more sip cause code to qsig cause code mappings from rfc 4497 sections 8.4.1 and 8.4.4
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3190 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-25 03:45:20 +00:00
Michael Jerris
0fb5729590 add the start of DTMF INFO support from Paul Tinsley. thanks.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3186 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-24 22:11:25 +00:00
Anthony Minessale
521e3b0a55 figure out when we are on hold
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3185 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-24 21:31:39 +00:00
Anthony Minessale
04546b6b93 fix sillyness
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3171 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-24 01:29:04 +00:00
Anthony Minessale
b30eb82b84 new sofia rollout
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3166 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-23 20:28:55 +00:00
Michael Jerris
49a130962c code before declaration
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3155 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-22 15:46:01 +00:00
Anthony Minessale
aba9c77c35 your run-of-the mill nightmarish attempt at normalizing not one crazy protocol but many....
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3151 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-22 04:37:19 +00:00
Anthony Minessale
f4b25c70b4 add viles patch
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3140 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 22:54:55 +00:00
Anthony Minessale
59f3204d61 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3130 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-21 01:20:46 +00:00
Anthony Minessale
343fd5cea5 refactor the presence stuff and add it to mod_conference
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3124 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 22:11:26 +00:00
Anthony Minessale
db2753b78a this ascii 20 ' ' sponsored by Matt Klein aka Vile
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3122 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 13:32:44 +00:00
Anthony Minessale
3a32d9e53c Presence and Chat Gateway Code
This is some brand new stuff to gateway chat/presence/audio from one protocol to another
So far it only works between google/jingle and SIP

All I had to test the SIP end was X-Lite and Eyebeam and GoogleTalk on the jingle end.

With this setup registered X-Lite's can chat with each other and call each other 
as well as X-Lite to GoogleTalk and GoogleTalk to X-Lite audio calls.

Chat May also be done between X-Lite and jabber 

You'll also need a jabber server configured for component login so you can interface.
We have only tested with jabberd2 so far.

Configure DNS so srv records for jabber for your subdomain (fs.mydomain.com in the example)
so the jabber records are pointed at your jabber server.

RELEVANT CONFIGS

<!-- Brian has no jingle support so send calls to him over to his iax url -->
<extension name="bkw">
  <condition field="destination_number" expression="^jingle\+brian@agents.cylynx.com$">
    <action application="bridge" data="iax/guest@brianwest.homeunix.org/9184290404"/>
  </condition>
</extension>

<!-- Assumption is made here that both sip and jingle have the same profile/domain name as documented below -->

<extension name="jingle2sip">
  <condition field="source" expression="mod_dingaling"/>
  <condition field="destination_number" expression="^sip\+([^\@]+)\@(.*)$">
    <action application="bridge" data="sofia/$2/$1%$2"/>
  </condition>
</extension>

<extension name="sip2jingle">
  <condition field="source" expression="mod_sofia"/>
  <condition field="destination_number" expression="^jingle\+([^\@]+)\@(.*)$">
    <action application="bridge" data="dingaling/sip+${sip_fromuser}@${sip_fromhost}/$1@$2"/>
  </condition>
</extension>


<configuration name="sofia.conf" description="sofia Endpoint">
  <global_settings>
    <param name="log-level" value="0"/>
  </global_settings>

  <profiles>
    <profile name="fs.mydomain.com">
      <registrations/>
      <settings>
	<param name="debug" value="1"/>
	<param name="rfc2833-pt" value="101"/>
	<param name="sip-port" value="5060"/>
	<param name="dialplan" value="XML"/>
	<param name="dtmf-duration" value="100"/>
	<param name="codec-prefs" value="PCMU"/>
	<param name="codec-ms" value="20"/>
	<param name="accept-blind-reg" value="true"/>
	<param name="manage-presence" value="true"/>
	<!--<param name="full-id-in-dialplan" value="true"/>-->
	<!--<param name="auth-calls" value="true"/>-->
	<!--<param name="auth-all-packets" value="true"/>-->
	<param name="use-rtp-timer" value="true"/>
	<param name="rtp-timer-name" value="soft"/>
	<param name="rtp-ip" value="100.200.100.200"/>
	<param name="sip-ip" value="fs.mydomain.com"/>
      </settings>
    </profile>
  </profiles>

</configuration>


<configuration name="dingaling.conf" description="XMPP Jingle Endpoint">
  <settings>
    <param name="debug" value="0"/>
    <param name="codec-prefs" value="PCMU"/>
  </settings>

  <profile type="component">
    <param name="name" value="fs.mydomain.com"/>
    <param name="password" value="secret"/>
    <param name="dialplan" value="XML"/>
    <param name="rtp-ip" value="208.64.200.42"/>
    <param name="server" value="jabber.freeswitch.org:5347"/>
    <!-- disable to trade async for more calls -->
    <param name="use-rtp-timer" value="true"/>
    <param name="exten" value="_auto_"/>
    <!--<param name="vad" value="both"/>-->
  </profile>

</configuration>



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3115 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 06:17:00 +00:00
Michael Jerris
e70a025a88 fix segfault?
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3114 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 05:45:52 +00:00
Paul Tinsley
eaf4409b45 Fix for broken trunk commit, setting contact_str size to the size of sql variable it's stored in [contact VARCHAR(1024)] + 1 for the null.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3113 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-20 03:33:49 +00:00
Anthony Minessale
b9a215313d update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3112 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 19:39:18 +00:00
Michael Jerris
e6b81ff14a remove useless comment.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3109 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 17:09:48 +00:00
Michael Jerris
87aaab80d5 Get Alert-Info from inbound invite and set to the channel variable so that it can be passed through to the other end of the call if it is a sip call.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3108 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 17:04:58 +00:00
Michael Jerris
c1f346b99e change to switch_mprintf
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3107 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 16:42:41 +00:00
Anthony Minessale
12243c194e tidy up, note yesterday's propagate_vars was changed to export_vars
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3106 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 16:33:54 +00:00
Michael Jerris
9d52ec2ae1 add Alert-Info: Thanks Ken.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3104 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 16:10:24 +00:00
Anthony Minessale
99e22d69bd refactor earlier junk from this eve and add ken's propagate variable thing
set this sometime before an origination (bridge etc).

<action application="set" data="propagate_vars=my_cool_var1,my_cool_var2,foo,bar"/>

and they should be cloned over to the new channel when it's substantiated



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3101 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 07:13:34 +00:00
Michael Jerris
3eb8ebd45c fix windows build from recent changes.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3091 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 01:28:29 +00:00
Anthony Minessale
930fc4dee4 fix
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3087 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-19 00:26:00 +00:00
Anthony Minessale
70bfba5b63 Christmas Presence
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3083 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-18 22:57:35 +00:00
Anthony Minessale
438cf0327e rpid for sofia
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3058 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-16 04:39:00 +00:00
Michael Jerris
7311675768 add tport_log redirect, fix typo.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3053 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-15 05:20:49 +00:00
Anthony Minessale
277ce65dca work in progress should not seem much different
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3052 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-15 05:10:34 +00:00
Anthony Minessale
a2b11dd93d in the name of interop
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3043 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-12 20:37:08 +00:00
Anthony Minessale
e1125f336c udpate
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3037 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-12 02:26:20 +00:00
Anthony Minessale
ba46200539 refactoring and general improvement (do a make sure)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3035 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-12 00:59:09 +00:00