Features

Version 8 (Adrian Georgescu, 01/30/2013 10:31 am)

1 1 Tijmen de Mes
h1. Description
2 1 Tijmen de Mes
3 1 Tijmen de Mes
SylkServer is a SIP application server based on SIP SIMPLE Client SDK that can be programmed to perform SIP end-point applications. Examples of such server applications are conferencing, media offline storage, playing voice prompts, IVR, or gateway to other protocols like XMPP. The server supports SIP signaling over TLS, TCP and UDP transports, RTP and MSRP media planes, has built in capabilities for creating ad-hoc SIP multimedia conferences with HD Audio, IM and File Transfer and can be easily extended with other applications by using Python language.
4 1 Tijmen de Mes
5 1 Tijmen de Mes
h2. Deployment
6 1 Tijmen de Mes
7 1 Tijmen de Mes
SylkServer is not designed to transparently route packets, authorization, accounting and handle NAT traversal for signaling or media. Performing applications like SIP Proxy, Registrar, or Presence Agent are out of its scope. SylkServer must be typically deployed behind a SIP Proxy for providing such functions.
8 1 Tijmen de Mes
9 1 Tijmen de Mes
SylkServer is horizontally scalable with the amount of available hardware by using SIP Thor, a P2P based self-organizing network technology.
10 1 Tijmen de Mes
11 1 Tijmen de Mes
12 1 Tijmen de Mes
h2. Implemented Standards
13 1 Tijmen de Mes
14 1 Tijmen de Mes
* MSRP protocol RFC4975
15 1 Tijmen de Mes
* MSRP relay extension RFC4976
16 1 Tijmen de Mes
* MSRP File Transfer RFC5547
17 1 Tijmen de Mes
* MSRP Alternative Connection Model RFC6135
18 2 Tijmen de Mes
* MSRP switch draft-ietf-simple-chat-10
19 1 Tijmen de Mes
* Indication of Message Composition RFC3994
20 1 Tijmen de Mes
* CPIM Message Format RFC3862
21 2 Tijmen de Mes
* Conference event package RFC4575
22 2 Tijmen de Mes
* A Framework for Conferencing with SIP RFC4353
23 2 Tijmen de Mes
* Conferencing for User Agents RFC4579
24 1 Tijmen de Mes
* 5.1 INVITE: Joining a Conference Using the Conference URI - Dial-In
25 2 Tijmen de Mes
* 5.2 INVITE: Adding a Participant by the Focus - Dial-Out
26 2 Tijmen de Mes
* 5.5 REFER: Requesting a Focus to Add a New Resource to a Conference
27 2 Tijmen de Mes
* 5.11 REFER with BYE: Requesting a Focus to Remove a Participant from a Conference
28 2 Tijmen de Mes
29 7 Adrian Georgescu
h3. Implemented Standards
30 1 Tijmen de Mes
31 7 Adrian Georgescu
The server implements relevant features from the following standards:
32 7 Adrian Georgescu
33 7 Adrian Georgescu
* SIP (RFC3261) and related RFCs for DNS, ICE and RTP
34 7 Adrian Georgescu
* MSRP protocol RFC4975
35 7 Adrian Georgescu
* MSRP relay extension RFC4976
36 7 Adrian Georgescu
* MSRP File Transfer RFC5547
37 7 Adrian Georgescu
* MSRP switch draft-ietf-simple-chat-12
38 7 Adrian Georgescu
* MSRP Alternative Connection Model RFC6135
39 7 Adrian Georgescu
* Indication of Message Composition RFC3994
40 7 Adrian Georgescu
* CPIM Message Format RFC3862
41 7 Adrian Georgescu
* Conference event package RFC4575
42 7 Adrian Georgescu
* A Framework for Conferencing with SIP RFC4353
43 7 Adrian Georgescu
* Conferencing for User Agents RFC4579
44 7 Adrian Georgescu
* Conferencing for User Agents RFC4579 5.1 INVITE: Joining a Conference Using the Conference URI Dial-In 5.2 INVITE: Adding a Participant by the Focus - Dial-Out 5.5 REFER: Requesting a Focus to Add a New Resource to a * * * * Conference 5.11 REFER with BYE: Requesting a Focus to Remove a Participant from a Conference
45 7 Adrian Georgescu
* XMPP core (RFC 6120) http://xmpp.org/rfcs/rfc6120.html
46 7 Adrian Georgescu
* XMPP extensions http://xmpp.org/xmpp-protocols/xmpp-extensions
47 1 Tijmen de Mes
* Instant Messaging and Presence http://xmpp.org/rfcs/rfc6121.html
48 1 Tijmen de Mes
* Interworking between the Session Initiation Protocol (SIP) and the Extensible Messaging and Presence Protocol (XMPP): http://xmpp.org/internet-drafts/draft-saintandre-sip-xmpp-presence-02.html
49 1 Tijmen de Mes
* Interworking between the Session Initiation Protocol (SIP) and the Extensible Messaging and Presence Protocol (XMPP): http://xmpp.org/internet-drafts/draft-saintandre-sip-xmpp-im-01.html
50 1 Tijmen de Mes
* Interworking between the Session Initiation Protocol (SIP) and the Extensible Messaging and Presence Protocol (XMPP): http://xmpp.org/internet-drafts/draft-saintandre-sip-xmpp-chat-03.html
51 1 Tijmen de Mes
52 7 Adrian Georgescu
h4. SIP-XMPP Gateway specifications (roadmap)
53 7 Adrian Georgescu
54 7 Adrian Georgescu
* Google Talk
55 7 Adrian Georgescu
* File Transfers XEP-0096
56 7 Adrian Georgescu
* Jingle XEP-0166
57 7 Adrian Georgescu
* Jingle RTP Sessions XEP-0167
58 7 Adrian Georgescu
* Jingle ICE-UDP Transport Method XEP-0176
59 7 Adrian Georgescu
* Locating IM and Pres services with different protocols
60 8 Adrian Georgescu
* http://tools.ietf.org/html/rfc3861
61 8 Adrian Georgescu
* http://www.iana.org/assignments/pres-srv-labels/pres-srv-labels.xml
62 8 Adrian Georgescu
* http://tools.ietf.org/html/rfc5509
63 8 Adrian Georgescu
* SRV for SIP _im._sip.example.com _pres._sip.example.com
64 8 Adrian Georgescu
* SRV for XMPP _im._xmpp.example.com _pres._xmpp.example.com