SIPping from the Open Source Well. Matthew Bynum UC Architect



Similar documents
SIP Basics. CSG VoIP Workshop. Dennis Baron January 5, Dennis Baron, January 5, 2005 Page 1. np119

Internet Voice, Video and Telepresence Harvard University, CSCI E-139. Lecture #5

SIP for Voice, Video and Instant Messaging

SIP Essentials Training

Session Initiation Protocol (SIP)

Media Gateway Controller RTP

Three-Way Calling using the Conferencing-URI

Multimedia & Protocols in the Internet - Introduction to SIP

Session Initiation Protocol (SIP) 陳 懷 恩 博 士 助 理 教 授 兼 計 算 機 中 心 資 訊 網 路 組 組 長 國 立 宜 蘭 大 學 資 工 系 TEL: # 340

SIP : Session Initiation Protocol

EE4607 Session Initiation Protocol

NTP VoIP Platform: A SIP VoIP Platform and Its Services

Part II. Prof. Ai-Chun Pang Graduate Institute of Networking and Multimedia, Dept. of Comp. Sci. and Info. Engr., National Taiwan University

Session Initiation Protocol and Services

Voice over IP & Other Multimedia Protocols. SIP: Session Initiation Protocol. IETF service vision. Advanced Networking

Formación en Tecnologías Avanzadas

Session Initiation Protocol

SIP: Protocol Overview

SIP and ENUM. Overview DENIC. Introduction to SIP. Addresses and Address Resolution in SIP ENUM & SIP

SIP Session Initiation Protocol Nicolas Montavont

Voice over IP (SIP) Milan Milinković

Session Initiation Protocol (SIP) The Emerging System in IP Telephony

Session Initiation Protocol (SIP)

Voice over IP Fundamentals

NTP VoIP Platform: A SIP VoIP Platform and Its Services 1

Request for Comments: August 2006

SIP: Session Initiation Protocol. Copyright by Elliot Eichen. All rights reserved.

SIP Trunking. Service Guide. Learn More: Call us at

How To Understand The Purpose Of A Sip Aware Firewall/Alg (Sip) With An Alg (Sip) And An Algen (S Ip) (Alg) (Siph) (Network) (Ip) (Lib

SIP Introduction. Jan Janak

TECHNICAL SUPPORT NOTE. 3-Way Call Conferencing with Broadsoft - TA900 Series

SIP OVER NAT. Pavel Segeč. University of Žilina, Faculty of Management Science and Informatics, Slovak Republic

SIP ALG - Session Initiated Protocol Applications- Level Gateway

How To Send A Connection From A Proxy To A User Agent Server On A Web Browser On A Pc Or Mac Or Ipad (For A Mac) On A Network With A Webmail Web Browser (For Ipad) On An Ipad Or

3.1 SESSION INITIATION PROTOCOL (SIP) OVERVIEW

ARCHITECTURES TO SUPPORT PSTN SIP VOIP INTERCONNECTION

Internet Engineering Task Force (IETF) Request for Comments: 7088 Category: Informational February 2014 ISSN:

SIP A Technology Deep Dive

SIP Session Initiation Protocol

AGILE SIP TRUNK IP-PBX Connection Manual (Asterisk)

internet technologies and standards

FOSDEM 2007 Brussels, Belgium. Daniel Pocock B.CompSc(Melbourne)

SIP and Mobility: IP Multimedia Subsystem in 3G Release 5

OpenSIPS For Asterisk Users

TSIN02 - Internetworking

For internal circulation of BSNL only

Session Initiation Protocol

VoIP. What s Voice over IP?

SIP Trunking & Peering Operation Guide

802.11: Mobility Within Same Subnet

How to make free phone calls and influence people by the grugq

Internet Technology Voice over IP

NAT TCP SIP ALG Support

Avaya IP Office 4.0 Customer Configuration Guide SIP Trunking Configuration For Use with Cbeyond s BeyondVoice with SIPconnect Service

CommuniGate Pro Real-Time Features. CommuniGate Pro Internet Communications VoIP, , Collaboration, IM

SIP Tutorial. VoIP Workshop Terena 2005 Poznan Poland. By Stephen Kingham

OSSIR, November /45

Session Initiation Protocol (SIP) Chapter 5

Telecommunication Services Engineering (TSE) Lab. Chapter V. SIP Technology For Value Added Services (VAS) in NGNs

White paper. SIP An introduction

Advanced Networking Voice over IP & Other Multimedia Protocols

How To Use A Microsoft Vc.Net (Networking) On A Microsatellite (Netnet) On An Ipod Or Ipod (Netcom) On Your Computer Or Ipad (Net) (Netbook) On The

Application Notes for IDT Net2Phone SIP Trunking Service with Avaya IP Office Issue 1.0

Adaptation of TURN protocol to SIP protocol

Dialogic Diva SIPcontrol Software

Application Note. Firewall Requirements for the Onsight Mobile Collaboration System and Hosted Librestream SIP Service v5.0

Chapter 10 Session Initiation Protocol. Prof. Yuh-Shyan Chen Department of Computer Science and Information Engineering National Taipei University

IP Office 4.2 SIP Trunking Configuration Guide AT&T Flexible Reach and AT&T Flexible Reach with Business in a Box (SM)

VoIP and NAT/Firewalls: Issues, Traversal Techniques, and a Real-World Solution

Application Notes for Configuring SIP Trunking between McLeodUSA SIP Trunking Solution and an Avaya IP Office Telephony Solution 1.

Session Initiation Protocol (SIP)

SIP - QUICK GUIDE SESSION INITIATION PROTOCOL - INTRODUCTION

Alcatel OmniPCX Enterprise R11 Supported SIP RFCs

VoIP Fundamentals. SIP In Depth

VoIP with SIP. Session Initiation Protocol RFC-3261/RFC

The SIP School- 'Mitel Style'

IP-Telephony SIP & MEGACO

AGILE SIP TRUNK IP- PBX Connection Manual (Asterisk, Trixbox)

Application Note. Onsight Connect Network Requirements V6.1

This specification this document to get an official version of this User Network Interface Specification

Firewall Support for SIP

The SIP School- 'Mitel Style'

Voice over IP (VoIP) Part 2

NAT Traversal in SIP. Baruch Sterman, Ph.D. Chief Scientist David Schwartz Director, Telephony Research

Denial of Services on SIP VoIP infrastructures

SIP: Ringing Timer Support for INVITE Client Transaction

NAT and Firewall Traversal. VoIP and MultiMedia /77

3GPP TS V8.1.0 ( )

Network Convergence and the NAT/Firewall Problems

SIP PBX TRUNKING WITH SIP-DDI 1.0

Internet Working 15th lecture (last but one) Chair of Communication Systems Department of Applied Sciences University of Freiburg 2005

SIP Trunking and Voice over IP

Man-in-the-Middle Attack on T-Mobile Wi-Fi Calling

BROADWORKS SIP ACCESS SIDE EXTENSIONS INTERFACE SPECIFICATIONS RELEASE Version 1

Transcription:

SIPping from the Open Source Well Matthew Bynum UC Architect

A little about me Matthew Bynum Dabbler in Unified Communications for 12 years CCIE Voice #21753 Installed my first Linux distro at age 17 (RedHat 5.0) Open Source lover, amateur maker, forestry nerd http://gplus.to/mbynum http://www.linkedin.com/in/mattbynum/

Agenda SIP History Why SIP matters (SIP and DNS) Inside the SIP spec Open Source (and one proprietary) SIP options What the future entails

SIP is a protocol for establishing sessions in an IP network.

SIP History Glory is fleeting, but obscurity is forever. - Napoleon Bonaparte

Setting the Stage The Internet Engineering Task Force first met in 1986. The mission of the IETF is to make the Internet work better by producing high quality, relevant technical documents that influence the way people design, use, and manage the Internet. - http://www.ietf.org/about/mission.html dhcp TCP UDP TELNET IGMP ICMP FTP ECHO POP3 OSPF RIP http://tools.ietf.org/html/rfc5000

IETF Meetings The First IETF Audiocast occurred in 1992. A method was needed to disseminate the meeting invites. Create 1 Descr.: DNS Discussion San Fran Orig.: John Doe j.doe@com.com Info: http://www.com.com Start: 04.04.2001 / 09.30 End: 04.20.2001 / 16:30 Media: Audio GSM 224.1.6.7/49000 Media: Video H.263 224.1.6.8/49100 Disseminate 2 SAP/NNTP/HTTP Invite SMTP/SIP Join 3 PC/Telephone Media 4 PC/Telephone

Session Invitation Protocol by Mark Handley and Eve Schooler Simple Conference Invitation Protocol by Henning Schulzrinne SUCCESS UNSUCCESSFUL BUSY DECLINE RINGING TRYING REDIRECT ALTERNATIVE UNKNOWN FAILED FORBIDDEN RINGING NEGOTIATE CALL CHANGE CLOSE 1xx 2xx 3xx 4xx 5xx UDP/SDP TCP/SCIP

Session Invitation Protocol SIP/1.0 REQ PA=128.16.65.19 16 AU=none ID=128.16.65.19/32492374 FR=M.Handley@cs.ucl.ac.uk TO=J.Crowcroft@cs.ucl.ac.uk v=0 o=van 2353644765 2353687637 IN IP4 128.3.4.5 s=mbone Audio i=discussion of Mbone Engineering Issues e=van@ee.lbl.gov (Van Jacobsen c=in IP4 224.2.0.1/127 t=0 0 m=audio 3456 RTP PCMU Simple Conference Invitation Protocol SCIP/1.0 302 Callee has moved temporarily Location: jones@salt.lab3.company.com Location: jones@pepper.lab3.company.com CALL hgs@lupus.fokus.gmd.de 1.0 User-Agent: coco/1.3 From: Christian Zahl <cz@cs.tu-berlin.de> To: Henning Schulzrinne <schulzrinne@fokus.gmd.de> Call-Id: 9510021900.AA07734@lion.cs.tuberlin.de Referer: ceres.fokus.gmd.de Expires: Mon, 02 Oct 1995 18:44:11 GMT Required: fc99cb08 audio/pcmu; port=3456; transport=rtp; rate=16000; channels=1; pt=97; net=224.2.0.1; ttl=128, audio/gsm; port=3456; transport=rtp; rate=8000; channels=1, audio/lpc; port=3456; transport=rtp; rate=8000; channels=1

Papa SIP Personal Mobility for Multimedia Services in the Internet by Henning Schulzrinne, March 1996 http://www.cs.columbia.edu/~hgs/papers/schu9603_personal.pdf Creator of RTP http://www.cs.columbia.edu/~hgs/

The Internet Architect SIP (RFC 2543, RFC 3261); SDP (RFC 2327; SAP, RFC 2974); Protocol Independent Multicast-Sparse Mode (PIM-SM, RFC 2362), TCP-Friendly Rate Control (TFRC, RFC 3448), Multicast-Scope Zone Announcement Protocol (MZAP, RFC 2776), Multicast Address Allocation (RFC 2908, RFC 2909), TCP Congestion Window Validation ( RFC 2861), Reliable Multicast ( RFC 3451, RFC 3452, RFC 3453, RFC 3048), Datagram Congestion Control Protocol ( RFC 4340, RFC 4336). Mark Handley Founder of XORP (www.xorp.org) Creator of SDP http://www.cs.ucl.ac.uk/staff/m.handley/

SIP Drafts http://www.cs.columbia.edu/sip/history.html Date Draft Name December 2, 1996 draft-ietf-mmusic-sip-01 March 27, 1997 draft-ietf-mmusic-sip-02 July 31, 1997 draft-ietf-mmusic-sip-03 November 11, 1997 draft-ietf-mmusic-sip-04 May 14, 1998 draft-ietf-mmusic-sip-05 June 17, 1998 draft-ietf-mmusic-sip-06 July 16, 1998 draft-ietf-mmusic-sip-07 August 7, 1998 draft-ietf-mmusic-sip-08 September 18, 1998 draft-ietf-mmusic-sip-09 September 28, 1998 Last call November 12, 1998 draft-ietf-mmusic-sip-10 December 15, 1998 draft-ietf-mmusic-sip-11 January 16, 1999 draft-ietf-mmusic-sip-12 February 2, 1999 Approved March 17, 1999 RFC 2543

SIP Today http://tools.ietf.org/html/rfc5411 RFC 3261 (SIP: Session Initiation Protocol) RFC 3263 (Session Initiation Protocol (SIP): Locating SIP Servers) RFC 3264 (An Offer/Answer Don t Model with Session Description Protocol (SDP)) RFC 3265 (Session Initiation Protocol (SIP)-Specific Event Notification) RFC 3325 (Private Extensions to SIP for Asserted Identity within Trusted Networks) RFC 3327 (SIP Extension Header Field for Registering Non-Adjacent Contacts) RFC 3581 (An Extension to SIP for Symmetric Response Routing) RFC 3840 (Indicating User Agent Capabilities in SIP) RFC 4320 (Actions Addressing Issues Identified with the Non-INVITE Transaction in SIP) RFC 4474 (Enhancements for Authenticated Identity Management in SIP) GRUU (Obtaining Panic! and Using Globally Routable User Agent Identifiers (GRUU) in SIP) OUTBOUND (Managing Client Initiated Connections through SIP) RFC 4566 (Session Description Protocol) SDP-CAP (SDP Capability Negotiation) ICE (Interactive Connectivity Establishment) RFC 3605 (Real Time Control Protocol (RTCP) Attribute in the Session Description Protocol) RFC 4916 (Connected Identity in the Session Initiation Protocol (SIP)) RFC 3311 (The SIP UPDATE Method) SIPS-URI (The Use of the SIPS URI Scheme in the Session Initiation Protocol (SIP)) RFC 3665 (Session Initiation Protocol (SIP) Basic Call Flow Examples) A Hitchhiker's Guide to the Session Initiation Protocol (SIP)

Alternative protocols Q.931 (TDM) H.323 (IP)

Why SIP is kind of a big deal

It s all about the decentralization 2. Where is the SIP server for linuxcon.com? 20.20.20.20 and port 5061 DNS 1. Alice places call to bob@linuxcon.com. alice@atlanta.com atlanta.com SIP Proxy Internet 3. INVITE is sent to 20.20.20.20 addressed to bob@linuxcon.com linuxcon.com 20.20.20.20 SIP Proxy 4. INVITE is forwarded to the user bob, who answers, and the media is established between Alice and Bob. bob@linuxcon.com SIP DNS Media

SIP and DNS (RFC 3263) Use DNS SRV records for determining what servers provide SIP services for a domain (internal and external) sipserver A 10.0.0.1 ; SRV s _sips._tcp IN SRV 50 1 5061 sipserver.yourdomain.com. _sip._tcp IN SRV 90 1 5060 sipserver.yourdomain.com. _sip._udp IN SRV 100 1 5060 sipserver.yourdomain.com. ; NAPTR IN NAPTR 50 50 "s" "SIPS+D2T" "" _sips._tcp.yourdomain.com. IN NAPTR 90 50 "s" "SIP+D2T" "" _sip._tcp.yourdomain.com. IN NAPTR 100 50 "s" "SIP+D2U" "" _sip._udp.yourdomain.com.

SIP and DNS (cont.) Use ENUM records for determining what URI a full E.164 number should map to Politics restrict this from being a viable option. Screenshot from the ITU website: ; NAPTR for calling +12561234567 $ORIGIN 7.6.5.4.3.2.1.6.5.2.1.e164.arpa. IN NAPTR 100 10 u" "E2U+sip"!^.*$!sip:bob@linuxcon.com!.

Inside SIP

User Agents Client Server TCP or UDP port 5060 TLS on port 5061

SIP Methods METHOD INVITE ACK BYE CANCEL REGISTER OPTIONS INFO PRACK UPDATE REFER SUBSCRIBE NOTIFY MESSAGE PUBLISH DESCRIPTION Session setup Acknowledgement of final response to INVITE Session termination Pending session cancellation Registration of a user s URI Query of options and capabilities Mid-call signaling transport Provisional response acknowledgement Update session information Transfer user to a URI Request notification of an event Transport of subscribed event notification Transport of an instant message body Upload presence state to a server

SIP Responses CLASS 1xx 2xx 3xx 4xx 5xx 6xx DESCRIPTION Provisional or Informational Success Redirection Client Error Server Error Global Failure Status Message 100 Trying 180 Ringing 183 Session Progress 200 OK 300 Multiple Choices 302 Moved Temporarily 305 Use Proxy 400 Bad Request 401 Unauthorized 402 Payment Required 403 Forbidden 404 Not Found 500 Internal Server Error 501 Not Implemented 502 Bad Gateway

SIP Roles Element Proxy Function Responsible for routing Registrar Accepts REGISTER request from endpoints Redirect Back to Back User Agent (B2BUA) Session Border Controller (SBC) Media Gateway Generates 3xx responses Terminates SIP dialogs from UAC and creates new dialog to end destination Demarcation between disparate networks Media translation

SIP Element Examples Service Provider SBC Proxy Registrar/B2BUA SIP TDM Redirect Media Gateway

Basic Call Flow Phone A Phone B INVITE 180 Ringing 200 OK ACK Media BYE 200 OK

Call Flow with Proxy Phone (Client) Proxy (Server/Client) Phone (Server) INVITE 100 Trying 180 Ringing 200 OK ACK INVITE 180 Ringing 200 OK Media BYE 200 OK

Example SIP INVITE INVITE <sip:bob@linuxcon.com> SIP/2.0 Via: SIP/2.0/UDP pc33.atlanta.com;branch=z9hg4bk776asdhds Max-Forwards: 70 To: Bob <sip:bob@linuxcon.com> From: Alice <sip:alice@atlanta.com>;tag=1928301774 Call-ID: a84b4c76e66710@pc33.atlanta.com CSeq: 314159 INVITE Contact: <sip:alice@pc33.atlanta.com> Content-Type: application/sdp Content-Length: 142 v=0 o=alice 2890844526 2890844526 IN IP4 linuxcon.com s=sip Call c=in IP4 216.81.194.139 t=0 0 m=audio 32894 RTP/AVP 0 101 a=rtpmap: 0 PCMU/8000 a=rtpmap: 101 ilbc/8000

Example SIP OK SIP/2.0 200 OK Via: SIP/2.0/UDP server10.linuxcon.com ;branch=z9hg4bknashds8;received= 216.81.194.139 To: Bob <sip:bob@linuxcon.com>;tag=a6c85cf From: Alice <sip:alice@atlanta.com>;tag=1928301774 Call-ID: a84b4c76e66710@pc33.atlanta.com CSeq: 314159 INVITE Contact: <sip:bob@192.0.2.4> Content-Type: application/sdp Content-Length: 131 v=0 o=alice 7844 125 IN IP4 10.0.0.1 s=sip Call c=in IP4 10.0.0.1 t=0 0 m=audio 43588 RTP/AVP 0 a=sendrecv a=rtpmap: 0 PCMU/8000

Presence Real-time indicator of a person s willingness and availability to communicate Blends communication methods together, allows for designating preferred contact method

SIMPLE Powering Presence in SIP Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions Uses the SIP methods of PUBLISH, SUBSCRIBE, and NOTIFY, defined in RFC s 3903, 3265, and 3856 http://datatracker.ietf.org/wg/simple/

XMPP Powering Presence in SIP EXtensible Messaging and Presence Protocol Uses XML messages and a Publisher/Subscriber model for messages, defined in RFC s 6120, 6121, and 6122 http://datatracker.ietf.org/wg/xmpp/

Open Source (and one proprietary) SIP Server Options Knowledge without practice is useless. Practice without knowledge is dangerous. - Confucius

Two main types of SIP servers Back-to-Back User Agent (B2BUA) owns each leg of call as a separate dialog Stateful inter-work SIP with other protocols, including TDM and analog interfaces More like traditional telephony Doesn t scale as well as a Proxy Proxy Relays messages between UACs and other SIP entities Stateless option SIP-only (with some exceptions) some trouble exists with the way endpoints implement some features (like transfers) Future proof

Asterisk B2BUA/Media Server B2BUA so it stays in the signaling (and media) path Provides ACD, Voicemail, and IVR functionality Most popular VoIP project in the world Backed by Digium in Huntsville, AL Rooted in traditional telephony Struggles with NAT traversal

FreeSWITCH B2BUA, stays in the signaling (and media) path Provides ACD, Voicemail, and IVR functionality Used by other projects for its media processing capabilities Geared for replacing a PBX

sipxecs Composed of sipx (Proxy), FreeSWITCH (media), OpenFire (IM & Presence) Backed by ezuce in Andover, MA; but run by SIPfoundry Biggest user is Amazon with 5,000 users Marketed as an open source Unified Communications solution

Kamailio Registrar, Redirect, Proxy 1&1 uses Kamailio and has 1 billion minutes per month of usage through the platform Frequently used to front-end other SIP servers such as Asterisk or FreeSWITCH Kamailio does NOT handle media (relies on Asterisk or FreeSWITCH for that)

OpenSIPS Registrar, Redirect, Proxy Fork of what Kamailio came from (SIP Express Router or SER) Frequently used to front-end other SIP servers such as Asterisk or FreeSWITCH OpenSIPS does NOT handle media (relies on Asterisk or FreeSWITCH for that)

resiprocate Proxy, Location, STUN/TURN Initial VOCAL stack started by Vovida Networks back in the day, then was acquired by Cisco resiprocate founded in 2002, moved to SIPfoundry, then went independent in 2006 resiprocate stacks used by commercial products(through a BSD-like license) from Cisco, Avaya, LifeSize, Plantronics, Motorola, Ericsson, and more

STUN and TURN and ICE, oh my! NAT traversal for endpoints is troublesome Kamailio or OpenSIPS with RTPproxy or MediaProxy resiprocate (repro + return) (STUN and TURN but no RFC ICE support)

Proprietary: Cisco CallManager (CUCM) B2BUA for all types of SIP calls (trunk and line) Cisco s implementation is 100% standards compatible SIP except when it s not. There are extensions to SIP implemented in CUCM for Cisco s SCCP protocol feature parity to handsets Leads to two modes of SIP support for phones, basic and advanced. Basic is no bueno.

Open Source SIP Client Options Product Version Linux Win Mac Android ios SIP XMPP NAT Traversal Jitsi 2.2 X X X X X TURN Blink 0.5.0 X X Pro X ICE Empathy 3.8.4 X X X ICE Linphone 3.6.0 X X X X (2.0) X (2.0) X ICE csipsimple 1.01 X X ICE

Future of SIP How does this get me my flying car? - Me, a child of the 80 s

SIP-based UC is spreading

P2P SIP Decentralized SIP Services Uses overlay networks and Distributed Hash Tables REsource LOcation And Discovery (RELOAD) No RFCs, only drafts C A B http://datatracker.ietf.org/wg/p2psip/

WebRTC sipml5.org HTML5 Web-based SIP clients Enables future B2C, B2B, P2P, and any other acronym you can think of

Where do we go now?

Q&A Questions?

The End Due to technological advances, changes in consumer preference, and market forces, the question is when, not if, POTS service and the PSTN over which it is provided will become obsolete. - AT&T Response to FCC on PSTN Evolution, Dec 2009

Appendix Additional Reference Slides

Offer/Answer Model INVITE w/sdp (offer) 200 OK w/sdp (answer) ACK INVITE w/o SDP 200 OK w/sdp (offer) ACK w/sdp (answer) Early Offer Delayed Offer

REFER (Transfer) Phone A Phone B Phone C INVITE 200 OK ACK Media Session REFER (Refer-To: C) 202 Accepted NOTIFY 200 OK BYE 200 OK INVITE 200 OK ACK Media Session

PRACK (Provisional Acknowledgement) INVITE 100 Trying 183 Session Progress PRACK 200 OK (PRACK) 200 OK ACK PRACK sip:8000@172.16.184.83:5060 SIP/2.0 Via: SIP/2.0/UDP 172.16.13.87:5060 ;branch=z9hg4bkc384 From: <sip:9000@172.16.13.87>;tag=1edc10-2436 To: <sip:8000@172.16.184.83>;tag=85e9c7c8-a4c Date: Fri, 01 Mar 2002 00:33:42 GMT Call-ID: D110EA36-2BE211D6-801CEF21- DD62106B@172.16.13.87 CSeq: 102 PRACK RAck: 3696 101 INVITE Max-Forwards: 70 Content-Length: 0

OPTIONS Ping OPTIONS 200 OK OPTIONS sip:8000@172.16.184.83:5060 SIP/2.0 Via: SIP/2.0/UDP 172.16.13.87:5060;branch=z9hG4bKC384 From: <sip:9000@172.16.13.87>;tag=1edc10-2436 To: <sip:8000@172.16.184.83>;tag=85e9c7c8-a4c Call-ID: D110EA36-2BE211D6-801CEF21- DD62106B@172.16.13.87 CSeq: 100 OPTIONS Contact: <sip:9000@172.16.13.87> Accept: application/sdp Max-Forwards: 70 Content-Length: 0

SIMPLE Presence Example On Hook / Off Hook SUBSCRIBE NOTIFY PUBLISH SIMPLE Server IP PBX

XMPP Presence Example On Hook / Off Hook Presence Stanza Presence Stanza XMPP Server IP PBX <presence xml:lang="en"> <show>on hook</show> </presence>