Commit Graph

18 Commits

Author SHA1 Message Date
Michael Jerris 44649c70b4 Add magic comments for emacs and vi in source and header files to properly format and display tabs vs. spaces in those editors:
/* For Emacs:
 * Local Variables:
 * mode:c
 * indent-tabs-mode:nil
 * tab-width:4
 * c-basic-offset:4
 * End:
 * For VIM:
 * vim:set softtabstop=4 shiftwidth=4 tabstop=4 expandtab:
 */


git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3462 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-27 22:30:48 +00:00
Anthony Minessale 9415cdcacb update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3385 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-16 16:10:39 +00:00
Anthony Minessale 6013035a6c update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3380 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-15 20:21:29 +00:00
Anthony Minessale 3c20f80991 dox
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@3292 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-11-09 06:55:18 +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 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
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 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 89e62d8c56 google part 1000
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2330 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-18 21:02:40 +00:00
Anthony Minessale 47192db741 Upgrade Dingaling to meet new googletalk spec upgrade your client if you have issues.
codecs need more work...

Expose events into javascript so you can create and fire events and 
and pick up chat events with chat-enabled clients like googletalk
EXAMPLE:

session.answer();

e = new Event("custom", "JS::Custom");
e.addHeader("subject", "cool");
e.addBody("hello this is a test");
e.fire;

while(session.ready()) {
    session.execute("sleep", "1000");
    event = session.getEvent();
    if (event) {
      str = event.serialize(); // or ("xml")
      console_log("debug", "Dump Event:\n" + str + "\n");


        e = new Event("custom", "JS::Chat");
        e.addHeader("works", "yes");
        e.addBody("you said: " + event.getBody());
        session.sendEvent(e);
      event.destroy();
    }
}





git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2323 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-18 01:28:50 +00:00
Anthony Minessale 07a7b6e54a update dingaling to be able to use TLS jabber servers such as googletalk
see sample config for new options.

the dingaling library has changed so you must rebuild it 
rm libs/libdingaling/.complete
make installall



git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@2251 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-08-11 00:24:38 +00:00
Anthony Minessale 988841611a dingaling tweak
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1660 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-06-22 21:57:40 +00:00
Anthony Minessale 49e7b1bbca update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1344 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-04 14:37:11 +00:00
Anthony Minessale 397bf1bffc change dingaling to break everybody
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1318 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-02 16:43:13 +00:00
Anthony Minessale 607109bfaa update to dingaling (rm ./libs/libdingaling/.complete
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1312 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-05-01 18:55:04 +00:00
Anthony Minessale cb28473398 add logger
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@1147 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-04-14 02:05:29 +00:00
Anthony Minessale 2e02468fa3 update
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@997 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-31 21:42:36 +00:00
Anthony Minessale a3e7b59de6 Addition of libdingaling and mod_dingaling to enable jingle support
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@995 d0543943-73ff-0310-b7d9-9358b9ac24b2
2006-03-31 19:38:09 +00:00