- Allow Jingle users to join conference rooms with audio
- Added support for XEP-298 (coin)
- Improved logging for incoming sessions
- Fixed sending JingleSessionDidStart too early
- Prevent real RTP from leaking until we get session-accept
- Partial nickname support for IRC conference application
- Set version attribute on conference-info payloads
Sylkserver version 2.4.0 has now been released with a major milestone, namely VoIP translation between SIP and XMPP (Jingle). Complete interoperability for multimedia sessions including Presence, Session based Chat, wide-band Audio and multi-party conferencing for all supported media is now possible using user@domain addressing for both SIP and XMPP protocols. There is no configuration needed beyond the Internet domains for which the translation should take place. Blink on the SIP side and Jitsi on the XMPP side have been used to test the calls flows involved.
The software is GPL licensed, available as a free download and provided as a service by SIP2SIP. To test you can use SIP accounts from sip2sip.info and XMPP accounts from jit.si using the latest builds of the above mentioned clients.
- Added VoIP translation for SIP/XMPP gateway (Jingle)
- Added Presence to Bonjour conference rooms (XEP-0174)
- Added support for XMPP software version (XEP-0092)
- Added support for XMPP ping (XEP-0199)
- Reply with service-unavailable to unsupported XMPP IQ stanzas
- Improved XMPP service discovery support (XEP-0115)
- Fixed a race condition related to SIP subscriptions
- Improved description of XMPP related settings
SylkServer version 2.3.0 has been released with state-of-the-art cross-protocol SIP/XMPP multi-party conferencing capabilities. This is done by bridging MUC functionality from XMPP with MSRP-Switch functionality using SIP.
- SIP users can create ad-hoc conference rooms using SylkServer MSRP chat and invite users from both SIP and XMPP domains
- XMPP users can create multiparty conferences using SylkServer MUC capability and invite users from both XMPP and SIP worlds
- XMPP Multi-User Chat http://xmpp.org/extensions/xep-0045.html
- SIP MSRP-Switch http://tools.ietf.org/id/draft-ietf-simple-chat-17.html
- Added SIP/XMPP gateway ability to invite participants to a multiparty chat
- Added support for XEP-0030 (service discovery)
- Added RTP audio and MSRP chat 'echo' application
- Added timestamp to generated PIDF documents
- Improved logging when adding participants to a conference
- Improved logging for the XMPP gateway application
- Removed extended-away state handling as it no longer exists in the SDK
- Made several improvements to XMPP stanza parsing
- Fixed detecting MSRP Nickname collision
- Fixed handling presence stanzas without a resource part in the from
- Fixed translating resource IDs for presence
- Fixed leaking session objects if session fails while joining a conference
- Fixed mapping room URI for received REFER requests
The SIP/XMPP multi-party conferencing is documented here
The following clients have been successfully tested against this functionality: iChat, Jitsi, PSI, Adium (XMPP) and Blink Cocoa (SIP). Any client following same standards should be able to interoperate.
In the good tradition of 'just-works' there is nothing to configure, the functionality is made possible by just using drag in drop in the respective clients.
SIP2SIP.info domain can be used as a multi-party inter-domain SIP/XMPP bridge. Just create a requested from either SIP or XMPP to firstname.lastname@example.org.
Work is in progress for adding Jingle audio and File Transfer support.
With SylkServer installed on any Mac on the same LAN, using Blink client with Bonjour account enabled one can create with just one mouse click multiparty conferences with wideband audio, IM, File Transfer and ScreenSharing.
SylkServer as well as every new room appears in Bonjour Neighborhood. This way anyone can with a single click join a conference. Using drag-and-drop, any Blink contact can be added or removed from the conference.
There is a new release of SylkServer with a new application, SIP/XMPP gateway. By pointing the correspondent DNS records for SIP or XMPP services of a given Internet domain to the address of this gateway, any packet sent to or connection established to the gateway by one of the protocols is transparently translated into the other. The only setting required is the XMPP domain and its DNS entries.
The gateway can translate Presence, Short Messages, Chat Sessions and handle MUC sessions. This means that is possible to make a multi-party conference where SIP and XMPP end-points can join and see the participants list. The functionality is described in detail here here
- Added XMPP gateway application
- Added Bonjour support
- Added support for MSRP NICKNAME
- Added ability to map applications by RURI, domain or username
- Added ability to select desired application with X-Sylk-App header
- Added ApplicationLogger, in order to prefix each application's log lines
- Added start/stop methods to applications
- Added ability to specify more attributes when sending MSRP messages
- Allow applications to handle the 'presence' event on incoming
- Patch sipsimple.session to use ServerSession objects
- Modified ChatStream to send MSRP REPORT chunks manually
- Made contact_header optional in ServerSession.connect
- Use received reason when notifyig about REFER request progress
Installation and upgrade instructions are found here.
The development for SIP/XMPP gateway was sponsored by NLnet http://nlnet.nl
Support for Jingle Audio and File Transfers will be added in a future release.
SIP/XMPP gateway application (5 comments)
SylkServer can now act as a transparent gateway between SIP and XMPP protocols. This functionality can be used by a SIP service provider to bridge out to XMPP domains or to receive incoming requests from XMPP domains for its local SIP users. In a similar fashion, a XMPP service provider can use the gateway to bridge out to SIP domains and handle incoming requestes from SIP domains to the XMPP users it serves.
A chat media session or a presence dialog initiated by an incoming connection on the XMPP side is translated into an outgoing request on the SIP side and the other way around. To make this possible, proper SIP or XMPP records must exists into the DNS zone for the domain that needs the gateway service.
A complete description of the gateway design and its implementation can be found here: DesignXMPP
The following gateway features have been implemented, click on their name to see a full description:
- Instant Messaging (Chat sessions and Single messages)
- Presence translation (SIMPLE)
- Multi-party conferencing for chat (XMPP MUC and MSRP switch) - 2013-02-13
The software is now available as source code download. To use the software you also need the latest development branch of SIP SIMPLE Client SDK. You can manually build a Debian package from the sources http://projects.ag-projects.com/projects/documentation/wiki/Repositories#Manual-Installation
SylkServer has been integrated with SIP2SIP service
Using a sip2sip.info account, one can start a MSRP chat session to a @gmail.com or @jabber.org address or from these XMPP domain to any @sip2sip.info user. The SIP server will route the session request through the SylkServer XMPP gateway application and chat sessions can be established between the SIP users of sip2sip domain and XMPP users of gmail.com and jabber.com domains.
For testing Presence functionality you can use any SIP SIMPLE client or the command line tools sip-subscribe-presence, sip-subscribe-winfo and sip-publish-presence from the sipclients package
- Public release as a Debian package
- Jingle audio and video sessions
- File transfers
Also available in: Atom