Commit Graph

92 Commits

Author SHA1 Message Date
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
Anthony Minessale 691a8ac558 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3021 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-10 03:19:59 +00:00
Michael Jerris 8651542608 force sdp to allways be in 200 OK regardless of 100rel and SDP O/A state. Some devices demand it (Cisco 5300 at least).
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3015 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 20:40:46 +00:00
Michael Jerris 42f8237ed1 fix checks in new logger function.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3013 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 20:04:38 +00:00
Anthony Minessale ab65dab071 update sofia
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3012 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 19:30:54 +00:00
Anthony Minessale 071e720f87 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3009 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 17:11:39 +00:00
Anthony Minessale dcdc0cdaac bug pointed out by stkn, thanks\!
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3008 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 14:47:36 +00:00
Anthony Minessale 6a96670267 refine code
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3006 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-09 02:24:43 +00:00
Anthony Minessale d44c204f5b fix goofy 183 madness
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3004 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-08 15:51:10 +00:00
Anthony Minessale bc7a378c4e Modify Originate input syntax
This adds the | to the originate syntax 
making it possible to put a list of urls to call and attempt
to call them one at a time until one of them is successful or there
are none of them left

The original & delimited list is valid for each step in the | separated
list

Example
sofia/test-int/3920@10.3.3.104|sofia/test-int/3910@10.3.3.104&sofia/test-int/3920@10.3.3.104

first call 1 location and if that results in a failure, try 2 at once on the next go



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2996 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-07 22:19:24 +00:00
Anthony Minessale 4ede7f7593 Update to new sofia snapshot, includes fixes for 100 on notify, and for sdp not in 200 after 183 when not using 100rel
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2993 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-07 18:54:29 +00:00
Anthony Minessale 0d23976f2a Insane amounts of yucky satanic code to make transfer and that kind of thing work.
Transfers work better when both legs of the call live in thier own channel eg bridged calls
A -> B where you want a to make B -> C

when you route a call to an IVR or playback app you are not really bridging you have
A all alone executing the script so it's hard to transfer that.

I do have it aparently working but it's goofy and you are better off
putting your IVR on it's own switch so they are all inbound calls
then you have A -> B -> IVR
now A can happily transfer B who can stay on line with IVR without stopping
the execution.  You can also accomplish this by calling in a loop back to the same box
if you dont want to have 2 boxes.


Also the beginning effort at bridging calls with no media is here
set this magic variable in your dialplan to convince mod_sofia
to pass A's sdp as it's own to B and return B's sdp back to A on 200 or 183

<action application="set" data="no_media=true"/>
<action application="bridge" data="sofia/id@host.com"/>

You will need a new sofia tarball for this version


There is a bunch of other odds and ends added like a function or 2 etc
Oh,

And don't be suprised if it introduces all kinds of bugs!



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2992 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-06 22:39:49 +00:00
Anthony Minessale c23c32f013 sofia again
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2981 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 15:07:45 +00:00
Anthony Minessale 9ff8f4d7b0 sigh
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2980 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 14:45:56 +00:00
Michael Jerris bd84b01a4b initialize some vars that might not get initialized in some codepaths.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2979 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 14:29:54 +00:00
Anthony Minessale f993cd6791 more sofia stuff
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2978 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 14:24:25 +00:00
Anthony Minessale 4c6aac4f3f update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2976 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 04:25:32 +00:00
Anthony Minessale 82bb3d2a7c update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2975 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 04:23:13 +00:00
Anthony Minessale 535d4c4d06 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2974 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 04:15:04 +00:00
Anthony Minessale 596b88e584 fix callerid even better!
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2973 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 04:06:07 +00:00
Michael Jerris 4e9be89ad6 update windows sofia build to latest release.
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2972 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 03:11:09 +00:00
Anthony Minessale 26f5e1c6ce fix callerid
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2970 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-05 00:38:45 +00:00
Anthony Minessale 7de068b9ac sip work in progress changes
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2969 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-04 23:11:11 +00:00
Anthony Minessale 513d5dbbdd adding transfer part 1
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2962 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-03 04:08:30 +00:00
Anthony Minessale 5751f1f643 tweak sofia
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2952 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-10-02 17:21:06 +00:00
Anthony Minessale 503d50b16c process reinvite
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2903 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 19:22:53 +00:00
Anthony Minessale c19e1330b1 process reinvite
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2902 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 19:17:35 +00:00
Anthony Minessale 00fa0c6fab remove wtf
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2899 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 17:39:45 +00:00
Anthony Minessale ca7c2168ce update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2897 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 16:30:29 +00:00
Anthony Minessale 4c0d89aace freq 0 means dont reg
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2879 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 01:26:54 +00:00
Anthony Minessale 8d716e6ab9 break everything in sofia as you know it but add in/out reg + auth, look in the default config for the new syntax
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2875 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-09-30 00:00:07 +00:00