SlideShare uma empresa Scribd logo
1 de 39
Collaboration: Instant Messaging ,[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Reference Model for Instant Messaging Presence Service Instant Message Service Presentity Watcher Presence UA Watcher UA Instant Inbox Inbox UA Sender  UA Sender Principal A Principal B Based on RFC 2778 Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Understanding the Model – Agents & Rules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Understanding the model – Presence Service Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Component Function Principal  User – human or program Presence Service “ I am here” Presentity  Provides information about the principal to the presence service Watcher Receives information from the presence service. Can be a  fetcher  (requests presence information) or a  subscriber  (sent notifications). Fetcher that periodically requests information is a  poller. Presence Protocol  Carries precise information between the presentities , the presence service and the watchers Presence Tuples Combines to form presence information. Each tupple includes: - status information (open/closed – ready/not ready to receive messages)  - communication address (includes communication means and contact address)
Understanding– Instant Message Service Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Component Function IM Service Delivers Instant Messages to the correct instant inbox  Sender Provides instant messages for delivery Instant Inbox Receives intsant messages from the service  Instant Message  Protocol  Carries instant messages from the sender thru the service to the instant inbox
Understanding the Model – Agents & Rules ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Common Profile for Presence Defines common semantics and data formats for presence Subscribe  (request from a watcher to a presence service to subscribe to the presence information about a particular presentity) Watcher – specified by a URI Target  - the presentity specified by a URI Duration – maximum number of seconds a subcription should be active (set to zero for a one time fetcher) Subscription ID Transaction ID – used to correlate with response  Response  (response from  presence service to  watcher on receiving subscription request) Status – success/failure TransactionID  - same used in subscribe request Duration – the number of seconds the subcription will be active (may differ from request) e  Notify  (response from  presence service to  watcher to communicate the presence information) Watcher Target TransID Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Presence Information Data Format (PIDF) Defines the XML based format used for expressing presence information Presence element <presence> <entity> - presentity URI <xmlns> - namespace declaration Presence Tuples <identifier> <status> - <open> or <closed> <communication address> <communication means> <contact address> - optional  <relative priority>  - optional of this address relative to other addresses <timestamp> - optional time of status change <note> - presentity human readable comment a free text memo (optional) Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Common Profile for instant messaging (CPIM) Provides a means for preserving end to end features (especially security) as messages pass thru instant messaging interoperability gateways Also provides recommendations for IM document formats  Message  (to send a message to an instant inbox) Source – originator specified by a URI Destination - specified by a URI MaxForwards – a hop counter to avoid loops. Counter decremented by each IM gaeway  Transaction ID – used to correlate with response  Content  Response  (on receipt of a message) Transaction ID – same as in message Status  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
CPIM message format ,[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
A slide on MIME  ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Internet based Instant Messaging  ,[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIMPLE  ,[object Object],[object Object],[object Object],[object Object],[object Object],The full scope of SIP is beyond the session – we will learn some basics Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP Protocol - Basics ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP methods ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP Session : Call Set Up INVITE INVITE INVITE 1 2 4 Bejing.com proxy Barcelona.com proxy 100 Trying 3 Tracy Durga 100 Trying 5 180 Ringing 6 180 Ringing 7 180 Ringing 8 200 OK 9 200 OK 10 200 OK 11 ACK 12 Media Session (independent of SIP BYE 13 OK 14 This is a very simple call set up. The SIP protocol acomodates much more complex situations including security and conferencing  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP Call Session - explained 1 – Tracy invites Durga by addressing her by her SIP identifier. Tracy’s  invitation is sent to the local SIP proxy at Beijing.  2- The beijing.com proxy on receipt of the INVITE determines the IP addresses of barcelona.com and forwards it  3- The beijing.com proxy also sends a code 100 Trying message to Tracy 4- The barcelona.com proxy receives the INVITE  and forwards it to the IP address of Durga’s SIP phone 5 – The barcelona.com proxy also sends a 100 Trying message to the beijing.com proxy  6-  Durga’s phone responds with a  180 Ringing message to the barcelona.com proxy  7-  The 180 Ringing message is forwarded to the beijing.com proxy where  8 -  The 180 Ringing message is forwarded to Tracy’s phone where it can be used to initiate ringback 9-  Durga decides to answer the call.  As she picks it up his SIP phone sends a 200 OK message 10- The 200 OK message is forwarded to the beijing.com proxy 11. The 200 OK message is forwaded to Tracy’s phone which stops the ringback  12  Tracy’s SIP phone sends an ACK (acknowledgement) message directly to Durga’s SIP phone and thwe media session proceeds between the two endpoints without involving the SIP proxies. 13. Durga decides to end the call and when she hangs up a BYE message is sent to Tracy  14.  Tracy responds with OK and the session is terminated.  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP invite message INVITE  sip:durga@barcelona. com SIP/2.0 Via: SIP/2.0/UDP pc33.beijing.com;branch=z9xchk777656ssdhe Max-Forwards: 70 To: Durga < sip:durga@barcelona.com > From Tracy < sip:tracy@beijing.com >; tag=1987634 Call-ID: a06545bnf667pc33.beijing.com Cseq:342356 INVITE Contact: <sip:  [email_address] > Content-Type:application/sdp Content Length: 142  INVITE method  Durga’s SIP URI Protocol Identifier Unique Transaction Identifier Decremented on Each SIP proxy hop Address to respond to sender Identifying Tag Command Sequence incremented for each new dialog request A SIP URI providing a direct route to contact Tracy without requiring SIP proxy servers  Session Descriptor Protocol (explained later) The type of message content Globally Unique Call Identifier Durga and Tracy’s diplay name and SIP URI Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
SIP registration method How is the correct IP address of Durga’s  SIP phone identified in Step 4 ?  REGISTER REGISTER REGISTER Registration Server Location  Server Beijing.com proxy Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Durga’s Cell Phone Durga’s Wireless PDA Durga’s Home PC
SIP Registration method - explained User (Durga) has three phones that she uses in SIP sessions  Each of her phones sends REGISTER messages to the SIP registration server The registration server is addressed within the beijing.com domain but need not be co-located with the beijing.com proxy  Each REGISTER message associates the IP address of her phone with the SIP URI The association between the IP address and the SIP URI is stored by the Location Server and is accessible by the SIP Proxy  Durga may have: - a single URI in which case the most recent phone to be activated will be bound to that URI - several SIP URIs allowing her to maintain association between each of her URIs and phones The signaling protocol allows for serial or parallel forking where her several devices can be alerted sequentially or simultaneously  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Getting Back to IM How can SIP be used to generate presence information? Watcher  (subscriber) Presence Agent Presence UA SIP Proxies Presence Server SUBSCRIBE 200 OK NOTIFY+ PIDF 200 OK NOTIFY+ PIDF 200 OK Presence Status Presence Status Change Definition: Presence Agent Accepts subscriptions, stores subscription requests and generates notifications when there are changes in presence information. The presence agent knows the presence state of each presentity within its scope.  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 2 3 4 5 6
SIMPLE -  generate Presence Information Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 – Subscriber (watcher) creates a SUBSCRIBE request identifying the presentity. The SUBSCRIBE request is carried along by SIP proxies and arrives at the presence server which forwards it to the presence gent serving the identified presentity  2 -If  authorized by presence agent a 200 OK response is returned.  3 – A NOTIFY message is also sent containing presence information in PIDF format. 4 – The watcher acknowledges receipt of the NOTIFY message with a 200 OK message 5 – After some time when the presentity state changes, the presence agent uses a NOTIFY method to send updated presence information in PIDF format  6 – The watcher acknowledges receipt of the notify message with a 200 OK
SIMPLE – implement instant messaging service ,[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Definition: SIP dialog Peer to peer SIP relationship between two user agents that persists for some time
SIMPLE Pager mode Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Sender UA (UAC) Tracy SIP Proxies Inbox UA (UAS) MESSAGE OK OK 1 2 3 4 Durga MESSAGE
SIMPLE Pager mode - explained Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
SIMPLE: Message mode Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com SDP SIP MSRP TCP IP Uses Session Description Protocol (SDP) over SIP to describe the session  Message Session Relay Protocol (MSRP) over TCP to transmit the messages Application Layer Transport Layer Network Layer
Session Description Protocol  ,[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Information used in SDP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Message Session Relay Protocol (MSRP) ,[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
IM with MSRP, SDP over SIP Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Tracy Sender UA, Sender Durga Inbox UA, Receiver SDP/SIP INVITE SDP/SIP 200 OK SIP ACK MSRP SEND 1 2 3 4 MSRP 200 OK 5 MSRP 200 OK 6 MSRP SEND 7 SIP BYE 3 SIP 200 OK 3
IM with MSRP, SDP over SIP - exaplained Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1- Tracy sends a SIP INVITE message with SDP embedded 2- Durga sends a SIP OK and includes the negotiated SDP parmeters 3- Tracy replies with a SIP ACK At this point the connection to the endpoints is established  4- Tracy opens a connection to Durga and uses the MSRP SEND to transmit her first text message  5 –Durga sends a MSRP OK message  6. Now Durga send a text message using MSRP SEND  7. Tracy acknowledges receipt with MSRP OK message  8. Tracy send a SIP BYE to terminate  9. Durga responds with a SIP 200 OK and terminates the session
XMPP and Jabber ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
XMPP Network Architecture Elements ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
XMPP network architecture Server 1 Server 2 Gateway Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Durga’s Cell Phone Client Durga’s Wireless PDA Client Durga’s PC client Tracy’s PC client Brian’s PC client Foreign network
XAMPP uses XML Streams and Stanzas ,[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Basic XMPP instant message session  Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Tracy’s PC  Client Server 1 <stream> 1 3 4 Durga’s PC Client Server 2 <stream> 2 <message> </stream/stream> 5 6 <message> </stream/stream>
Basic XMPP instant message session - explained Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 – Tracy initiates a <stream> towards her XMPP server by opening a TCP connection 2- Her server responds by opening a stream towards Tracy. 3 – Tracy sends a <message> to Durga. She sends the <message stanza> over the connection to her local server including her JID in the “from field” and Durga’s JID in the “to field”. She includes her message inside the <body> element of the stanza 4 – Durga sends her own <message> stanza to her local server including her JID in the from field and Tracy’s JID in the to field. Her server forwards it to Tracy’s server which in turn forwards it to Tracy 5 – Tracy terminates her session by sending </stream:stream> to her local server.  6 – Her local server terminates the stream by sending </stream:stream> to her.
XMPP based presence services Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com <presence> stanzas are used to implement presence services <presence> <type> - describes the client’s presence status <show> - supplements the presence information <status> - contains text and allows presence info to be read by humans <priority> - guide stanza routing to preferred devices  </presence>
Other XMPP features ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
Summary  ,[object Object],[object Object],[object Object],[object Object],Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com

Mais conteúdo relacionado

Mais procurados

Simple chat room using python
Simple chat room using pythonSimple chat room using python
Simple chat room using pythonVISHAL VERMA
 
Communication Protocols And Web Services
Communication Protocols And Web ServicesCommunication Protocols And Web Services
Communication Protocols And Web ServicesOmer Katz
 
Xmpp presentation
Xmpp presentationXmpp presentation
Xmpp presentationJava Pro
 
Simple Object Access Protocol (SOAP)
Simple Object Access Protocol (SOAP)Simple Object Access Protocol (SOAP)
Simple Object Access Protocol (SOAP)Mehul Boricha
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in JavaTushar B Kute
 
Introduction to SOAP
Introduction to SOAPIntroduction to SOAP
Introduction to SOAPSafwan Hashmi
 
Introduction to Remote Procedure Call
Introduction to Remote Procedure CallIntroduction to Remote Procedure Call
Introduction to Remote Procedure CallAbdelrahman Al-Ogail
 
Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Peter R. Egli
 
SOAP - Simple Object Access Protocol
SOAP - Simple Object Access ProtocolSOAP - Simple Object Access Protocol
SOAP - Simple Object Access ProtocolAnushka Patil
 
Simple object access protocol
Simple object access protocolSimple object access protocol
Simple object access protocoldjleis
 
Socket Programming - nitish nagar
Socket Programming - nitish nagarSocket Programming - nitish nagar
Socket Programming - nitish nagarNitish Nagar
 
remote method invocation
remote method invocationremote method invocation
remote method invocationRavi Theja
 
Remote procedure calls
Remote procedure callsRemote procedure calls
Remote procedure callsimnomus
 
Networking Java Socket Programming
Networking Java Socket ProgrammingNetworking Java Socket Programming
Networking Java Socket ProgrammingMousmi Pawar
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in JavaTushar B Kute
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access ProtocolSaatviga Sudhahar
 

Mais procurados (20)

Simple chat room using python
Simple chat room using pythonSimple chat room using python
Simple chat room using python
 
SOAP Overview
SOAP OverviewSOAP Overview
SOAP Overview
 
Communication Protocols And Web Services
Communication Protocols And Web ServicesCommunication Protocols And Web Services
Communication Protocols And Web Services
 
Xmpp presentation
Xmpp presentationXmpp presentation
Xmpp presentation
 
Simple Object Access Protocol (SOAP)
Simple Object Access Protocol (SOAP)Simple Object Access Protocol (SOAP)
Simple Object Access Protocol (SOAP)
 
Drdos
DrdosDrdos
Drdos
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in Java
 
Introduction to SOAP
Introduction to SOAPIntroduction to SOAP
Introduction to SOAP
 
Simple object access protocol(soap )
Simple object access protocol(soap )Simple object access protocol(soap )
Simple object access protocol(soap )
 
Introduction to Remote Procedure Call
Introduction to Remote Procedure CallIntroduction to Remote Procedure Call
Introduction to Remote Procedure Call
 
Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)Sun RPC (Remote Procedure Call)
Sun RPC (Remote Procedure Call)
 
SOAP - Simple Object Access Protocol
SOAP - Simple Object Access ProtocolSOAP - Simple Object Access Protocol
SOAP - Simple Object Access Protocol
 
Simple object access protocol
Simple object access protocolSimple object access protocol
Simple object access protocol
 
Socket Programming - nitish nagar
Socket Programming - nitish nagarSocket Programming - nitish nagar
Socket Programming - nitish nagar
 
Lecture 3 soap
Lecture 3 soapLecture 3 soap
Lecture 3 soap
 
remote method invocation
remote method invocationremote method invocation
remote method invocation
 
Remote procedure calls
Remote procedure callsRemote procedure calls
Remote procedure calls
 
Networking Java Socket Programming
Networking Java Socket ProgrammingNetworking Java Socket Programming
Networking Java Socket Programming
 
Network programming in Java
Network programming in JavaNetwork programming in Java
Network programming in Java
 
Simple Object Access Protocol
Simple Object Access ProtocolSimple Object Access Protocol
Simple Object Access Protocol
 

Destaque

"Web Content Delivery Systems" - Gilbane Boston 2010
"Web Content Delivery Systems" - Gilbane Boston 2010"Web Content Delivery Systems" - Gilbane Boston 2010
"Web Content Delivery Systems" - Gilbane Boston 2010Blend Interactive
 
Secure instant messanger service
Secure instant messanger serviceSecure instant messanger service
Secure instant messanger serviceAditya Gupta
 
Screen Digest Letang Ec Study
Screen Digest  Letang  Ec StudyScreen Digest  Letang  Ec Study
Screen Digest Letang Ec Studyccivicosz
 
Sirous Kavehercy GSM 3G CeeCom Convergence
Sirous Kavehercy GSM 3G CeeCom ConvergenceSirous Kavehercy GSM 3G CeeCom Convergence
Sirous Kavehercy GSM 3G CeeCom ConvergenceSirous Kavehercy
 
Mwlug 2016 BP108 The state of Instant Messaging Connectivity
Mwlug 2016 BP108 The state of Instant Messaging ConnectivityMwlug 2016 BP108 The state of Instant Messaging Connectivity
Mwlug 2016 BP108 The state of Instant Messaging ConnectivityAndy Higgins
 
LOLER Regulations 1998
LOLER Regulations 1998LOLER Regulations 1998
LOLER Regulations 1998mrmichaelcarr
 
Instant SMS: Bringing SMS to the next phase and increasing service revenues
Instant SMS: Bringing SMS to the next phase and increasing service revenuesInstant SMS: Bringing SMS to the next phase and increasing service revenues
Instant SMS: Bringing SMS to the next phase and increasing service revenuesRaúl Castañón Martínez
 
Machine Learning Travel Industry
Machine Learning   Travel IndustryMachine Learning   Travel Industry
Machine Learning Travel IndustryVijay PG
 
Instant messaging-final
Instant messaging-finalInstant messaging-final
Instant messaging-finalroutbisu
 
Mobile Instant Messaging
Mobile Instant MessagingMobile Instant Messaging
Mobile Instant Messagingroute79
 
XMPP In Real Time
XMPP In Real TimeXMPP In Real Time
XMPP In Real Timeguest488a24
 
Instant Messaging apps market analysis
Instant Messaging apps market analysisInstant Messaging apps market analysis
Instant Messaging apps market analysisCorentin Metgy
 
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...Karen Church
 
Negative Effects Of Technology On Children
Negative Effects Of Technology On ChildrenNegative Effects Of Technology On Children
Negative Effects Of Technology On Childrenguest2630606
 
Let's Chat about Chat - RICON 2014
Let's Chat about Chat - RICON 2014 Let's Chat about Chat - RICON 2014
Let's Chat about Chat - RICON 2014 Michał Ptaszek
 

Destaque (20)

"Web Content Delivery Systems" - Gilbane Boston 2010
"Web Content Delivery Systems" - Gilbane Boston 2010"Web Content Delivery Systems" - Gilbane Boston 2010
"Web Content Delivery Systems" - Gilbane Boston 2010
 
Secure instant messanger service
Secure instant messanger serviceSecure instant messanger service
Secure instant messanger service
 
Instant messaging
Instant messaging Instant messaging
Instant messaging
 
Screen Digest Letang Ec Study
Screen Digest  Letang  Ec StudyScreen Digest  Letang  Ec Study
Screen Digest Letang Ec Study
 
Sirous Kavehercy GSM 3G CeeCom Convergence
Sirous Kavehercy GSM 3G CeeCom ConvergenceSirous Kavehercy GSM 3G CeeCom Convergence
Sirous Kavehercy GSM 3G CeeCom Convergence
 
Mwlug 2016 BP108 The state of Instant Messaging Connectivity
Mwlug 2016 BP108 The state of Instant Messaging ConnectivityMwlug 2016 BP108 The state of Instant Messaging Connectivity
Mwlug 2016 BP108 The state of Instant Messaging Connectivity
 
LOLER Regulations 1998
LOLER Regulations 1998LOLER Regulations 1998
LOLER Regulations 1998
 
Instant SMS: Bringing SMS to the next phase and increasing service revenues
Instant SMS: Bringing SMS to the next phase and increasing service revenuesInstant SMS: Bringing SMS to the next phase and increasing service revenues
Instant SMS: Bringing SMS to the next phase and increasing service revenues
 
Next-Gen Event Apps with AI Powered B2B Matchmaking
Next-Gen Event Apps with AI Powered B2B MatchmakingNext-Gen Event Apps with AI Powered B2B Matchmaking
Next-Gen Event Apps with AI Powered B2B Matchmaking
 
Machine Learning Travel Industry
Machine Learning   Travel IndustryMachine Learning   Travel Industry
Machine Learning Travel Industry
 
Instant messaging-final
Instant messaging-finalInstant messaging-final
Instant messaging-final
 
Instant Messaging Trends & Practice
Instant Messaging Trends & PracticeInstant Messaging Trends & Practice
Instant Messaging Trends & Practice
 
Mobile Instant Messaging
Mobile Instant MessagingMobile Instant Messaging
Mobile Instant Messaging
 
XMPP 101
XMPP 101XMPP 101
XMPP 101
 
XMPP In Real Time
XMPP In Real TimeXMPP In Real Time
XMPP In Real Time
 
Instant Messaging apps market analysis
Instant Messaging apps market analysisInstant Messaging apps market analysis
Instant Messaging apps market analysis
 
Instant Messaging
Instant MessagingInstant Messaging
Instant Messaging
 
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...
WhatsUp With WhatsApp? Comparing Mobile Instant Messaging Behaviors with Trad...
 
Negative Effects Of Technology On Children
Negative Effects Of Technology On ChildrenNegative Effects Of Technology On Children
Negative Effects Of Technology On Children
 
Let's Chat about Chat - RICON 2014
Let's Chat about Chat - RICON 2014 Let's Chat about Chat - RICON 2014
Let's Chat about Chat - RICON 2014
 

Semelhante a Instant Messaging and Presence Model Reference Guide

Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...
Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...
Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...Oliver Pfaff
 
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...ALTANAI BISHT
 
Sinnreich Henry Johnston Alan Pt 1
Sinnreich Henry Johnston Alan   Pt 1Sinnreich Henry Johnston Alan   Pt 1
Sinnreich Henry Johnston Alan Pt 1Carl Ford
 
Tor: How it works to keep you safe online. PhutureCon 2014
Tor: How it works to keep you safe online. PhutureCon 2014Tor: How it works to keep you safe online. PhutureCon 2014
Tor: How it works to keep you safe online. PhutureCon 2014IceQUICK
 
1 VoIP Overview[1]
1 VoIP Overview[1]1 VoIP Overview[1]
1 VoIP Overview[1]William Giba
 
Funambol Server Architecture
Funambol Server ArchitectureFunambol Server Architecture
Funambol Server ArchitectureFunambol
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIPMahmoud Abudaqa
 
Review of SIP based DoS attacks
Review of SIP based DoS attacksReview of SIP based DoS attacks
Review of SIP based DoS attacksEditor IJCATR
 
Authenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlAuthenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlWarren Bent
 
Presentation To Vo Ip Round Table V2
Presentation To Vo Ip Round Table V2Presentation To Vo Ip Round Table V2
Presentation To Vo Ip Round Table V2Warren Bent
 

Semelhante a Instant Messaging and Presence Model Reference Guide (20)

Introduction To SIP
Introduction  To  SIPIntroduction  To  SIP
Introduction To SIP
 
Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...
Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...
Real-Time-Communications Security-How to Deploy Presence and Instant Messagin...
 
Sip events presence
Sip events presenceSip events presence
Sip events presence
 
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
Sip Detailed , Call flows , Architecture descriptions , SIP services , sip se...
 
Sip crash course
Sip crash courseSip crash course
Sip crash course
 
Sinnreich Henry Johnston Alan Pt 1
Sinnreich Henry Johnston Alan   Pt 1Sinnreich Henry Johnston Alan   Pt 1
Sinnreich Henry Johnston Alan Pt 1
 
Tor: How it works to keep you safe online. PhutureCon 2014
Tor: How it works to keep you safe online. PhutureCon 2014Tor: How it works to keep you safe online. PhutureCon 2014
Tor: How it works to keep you safe online. PhutureCon 2014
 
Session intiation protocol tk
Session intiation protocol tkSession intiation protocol tk
Session intiation protocol tk
 
Sip Protocol
Sip ProtocolSip Protocol
Sip Protocol
 
Sip Paper
Sip PaperSip Paper
Sip Paper
 
1 VoIP Overview[1]
1 VoIP Overview[1]1 VoIP Overview[1]
1 VoIP Overview[1]
 
1 Vo Ip Overview
1 Vo Ip Overview1 Vo Ip Overview
1 Vo Ip Overview
 
Dalton Jim
Dalton JimDalton Jim
Dalton Jim
 
Funambol Server Architecture
Funambol Server ArchitectureFunambol Server Architecture
Funambol Server Architecture
 
session initiation protocol - SIP
session initiation protocol - SIPsession initiation protocol - SIP
session initiation protocol - SIP
 
Indroduction to SIP
Indroduction to SIPIndroduction to SIP
Indroduction to SIP
 
Sip summary
Sip summarySip summary
Sip summary
 
Review of SIP based DoS attacks
Review of SIP based DoS attacksReview of SIP based DoS attacks
Review of SIP based DoS attacks
 
Authenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call ControlAuthenticated Identites in VoIP Call Control
Authenticated Identites in VoIP Call Control
 
Presentation To Vo Ip Round Table V2
Presentation To Vo Ip Round Table V2Presentation To Vo Ip Round Table V2
Presentation To Vo Ip Round Table V2
 

Mais de sanjoysanyal

Windindustryin India
Windindustryin IndiaWindindustryin India
Windindustryin Indiasanjoysanyal
 
Solar Industryin India
Solar Industryin IndiaSolar Industryin India
Solar Industryin Indiasanjoysanyal
 
Bio Fuel Industryin India
Bio Fuel Industryin IndiaBio Fuel Industryin India
Bio Fuel Industryin Indiasanjoysanyal
 
Introduction to Carbon Markets
Introduction to Carbon Markets Introduction to Carbon Markets
Introduction to Carbon Markets sanjoysanyal
 
Virtualization VMWare technology
Virtualization VMWare technologyVirtualization VMWare technology
Virtualization VMWare technologysanjoysanyal
 
Microsoft Virtualization View
Microsoft Virtualization View Microsoft Virtualization View
Microsoft Virtualization View sanjoysanyal
 
Introductionto Solar
Introductionto SolarIntroductionto Solar
Introductionto Solarsanjoysanyal
 
Introductionto Solar
Introductionto SolarIntroductionto Solar
Introductionto Solarsanjoysanyal
 
Topic6 Basic Web Services Technology
Topic6 Basic Web Services TechnologyTopic6 Basic Web Services Technology
Topic6 Basic Web Services Technologysanjoysanyal
 
Topic5 Web Services
Topic5 Web ServicesTopic5 Web Services
Topic5 Web Servicessanjoysanyal
 
Topic4 Application Servers
Topic4 Application ServersTopic4 Application Servers
Topic4 Application Serverssanjoysanyal
 
Topic3 Enterprise Application Integration
Topic3 Enterprise Application IntegrationTopic3 Enterprise Application Integration
Topic3 Enterprise Application Integrationsanjoysanyal
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middlewaresanjoysanyal
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systemssanjoysanyal
 
Content Navigation
Content NavigationContent Navigation
Content Navigationsanjoysanyal
 
Peerto Peer Networks
Peerto Peer NetworksPeerto Peer Networks
Peerto Peer Networkssanjoysanyal
 
Caching Techniquesfor Content Delivery
Caching Techniquesfor Content DeliveryCaching Techniquesfor Content Delivery
Caching Techniquesfor Content Deliverysanjoysanyal
 
Streaming Media Protocols
Streaming Media ProtocolsStreaming Media Protocols
Streaming Media Protocolssanjoysanyal
 

Mais de sanjoysanyal (20)

business
businessbusiness
business
 
Solar
SolarSolar
Solar
 
Windindustryin India
Windindustryin IndiaWindindustryin India
Windindustryin India
 
Solar Industryin India
Solar Industryin IndiaSolar Industryin India
Solar Industryin India
 
Bio Fuel Industryin India
Bio Fuel Industryin IndiaBio Fuel Industryin India
Bio Fuel Industryin India
 
Introduction to Carbon Markets
Introduction to Carbon Markets Introduction to Carbon Markets
Introduction to Carbon Markets
 
Virtualization VMWare technology
Virtualization VMWare technologyVirtualization VMWare technology
Virtualization VMWare technology
 
Microsoft Virtualization View
Microsoft Virtualization View Microsoft Virtualization View
Microsoft Virtualization View
 
Introductionto Solar
Introductionto SolarIntroductionto Solar
Introductionto Solar
 
Introductionto Solar
Introductionto SolarIntroductionto Solar
Introductionto Solar
 
Topic6 Basic Web Services Technology
Topic6 Basic Web Services TechnologyTopic6 Basic Web Services Technology
Topic6 Basic Web Services Technology
 
Topic5 Web Services
Topic5 Web ServicesTopic5 Web Services
Topic5 Web Services
 
Topic4 Application Servers
Topic4 Application ServersTopic4 Application Servers
Topic4 Application Servers
 
Topic3 Enterprise Application Integration
Topic3 Enterprise Application IntegrationTopic3 Enterprise Application Integration
Topic3 Enterprise Application Integration
 
Topic2 Understanding Middleware
Topic2 Understanding MiddlewareTopic2 Understanding Middleware
Topic2 Understanding Middleware
 
Topic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information SystemsTopic1 Understanding Distributed Information Systems
Topic1 Understanding Distributed Information Systems
 
Content Navigation
Content NavigationContent Navigation
Content Navigation
 
Peerto Peer Networks
Peerto Peer NetworksPeerto Peer Networks
Peerto Peer Networks
 
Caching Techniquesfor Content Delivery
Caching Techniquesfor Content DeliveryCaching Techniquesfor Content Delivery
Caching Techniquesfor Content Delivery
 
Streaming Media Protocols
Streaming Media ProtocolsStreaming Media Protocols
Streaming Media Protocols
 

Último

Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesKeppelCorporation
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfJos Voskuil
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03DallasHaselhorst
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Riya Pathan
 
International Business Environments and Operations 16th Global Edition test b...
International Business Environments and Operations 16th Global Edition test b...International Business Environments and Operations 16th Global Edition test b...
International Business Environments and Operations 16th Global Edition test b...ssuserf63bd7
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessSeta Wicaksana
 
Future Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionFuture Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionMintel Group
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...lizamodels9
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...lizamodels9
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africaictsugar
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...ictsugar
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...lizamodels9
 
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckPitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckHajeJanKamps
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCRashishs7044
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdfKhaled Al Awadi
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaoncallgirls2057
 
The CMO Survey - Highlights and Insights Report - Spring 2024
The CMO Survey - Highlights and Insights Report - Spring 2024The CMO Survey - Highlights and Insights Report - Spring 2024
The CMO Survey - Highlights and Insights Report - Spring 2024christinemoorman
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Seta Wicaksana
 

Último (20)

Annual General Meeting Presentation Slides
Annual General Meeting Presentation SlidesAnnual General Meeting Presentation Slides
Annual General Meeting Presentation Slides
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdf
 
Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03Cybersecurity Awareness Training Presentation v2024.03
Cybersecurity Awareness Training Presentation v2024.03
 
Corporate Profile 47Billion Information Technology
Corporate Profile 47Billion Information TechnologyCorporate Profile 47Billion Information Technology
Corporate Profile 47Billion Information Technology
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737
 
International Business Environments and Operations 16th Global Edition test b...
International Business Environments and Operations 16th Global Edition test b...International Business Environments and Operations 16th Global Edition test b...
International Business Environments and Operations 16th Global Edition test b...
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful Business
 
Future Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted VersionFuture Of Sample Report 2024 | Redacted Version
Future Of Sample Report 2024 | Redacted Version
 
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
Lowrate Call Girls In Sector 18 Noida ❤️8860477959 Escorts 100% Genuine Servi...
 
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
Call Girls In Sikandarpur Gurgaon ❤️8860477959_Russian 100% Genuine Escorts I...
 
Kenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby AfricaKenya’s Coconut Value Chain by Gatsby Africa
Kenya’s Coconut Value Chain by Gatsby Africa
 
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...Global Scenario On Sustainable  and Resilient Coconut Industry by Dr. Jelfina...
Global Scenario On Sustainable and Resilient Coconut Industry by Dr. Jelfina...
 
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
Call Girls In Radisson Blu Hotel New Delhi Paschim Vihar ❤️8860477959 Escorts...
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deckPitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
Pitch Deck Teardown: Geodesic.Life's $500k Pre-seed deck
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
 
The CMO Survey - Highlights and Insights Report - Spring 2024
The CMO Survey - Highlights and Insights Report - Spring 2024The CMO Survey - Highlights and Insights Report - Spring 2024
The CMO Survey - Highlights and Insights Report - Spring 2024
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...
 

Instant Messaging and Presence Model Reference Guide

  • 1.
  • 2. Reference Model for Instant Messaging Presence Service Instant Message Service Presentity Watcher Presence UA Watcher UA Instant Inbox Inbox UA Sender UA Sender Principal A Principal B Based on RFC 2778 Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 3.
  • 4. Understanding the model – Presence Service Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Component Function Principal User – human or program Presence Service “ I am here” Presentity Provides information about the principal to the presence service Watcher Receives information from the presence service. Can be a fetcher (requests presence information) or a subscriber (sent notifications). Fetcher that periodically requests information is a poller. Presence Protocol Carries precise information between the presentities , the presence service and the watchers Presence Tuples Combines to form presence information. Each tupple includes: - status information (open/closed – ready/not ready to receive messages) - communication address (includes communication means and contact address)
  • 5. Understanding– Instant Message Service Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Component Function IM Service Delivers Instant Messages to the correct instant inbox Sender Provides instant messages for delivery Instant Inbox Receives intsant messages from the service Instant Message Protocol Carries instant messages from the sender thru the service to the instant inbox
  • 6.
  • 7. Common Profile for Presence Defines common semantics and data formats for presence Subscribe (request from a watcher to a presence service to subscribe to the presence information about a particular presentity) Watcher – specified by a URI Target - the presentity specified by a URI Duration – maximum number of seconds a subcription should be active (set to zero for a one time fetcher) Subscription ID Transaction ID – used to correlate with response Response (response from presence service to watcher on receiving subscription request) Status – success/failure TransactionID - same used in subscribe request Duration – the number of seconds the subcription will be active (may differ from request) e Notify (response from presence service to watcher to communicate the presence information) Watcher Target TransID Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 8. Presence Information Data Format (PIDF) Defines the XML based format used for expressing presence information Presence element <presence> <entity> - presentity URI <xmlns> - namespace declaration Presence Tuples <identifier> <status> - <open> or <closed> <communication address> <communication means> <contact address> - optional <relative priority> - optional of this address relative to other addresses <timestamp> - optional time of status change <note> - presentity human readable comment a free text memo (optional) Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 9. Common Profile for instant messaging (CPIM) Provides a means for preserving end to end features (especially security) as messages pass thru instant messaging interoperability gateways Also provides recommendations for IM document formats Message (to send a message to an instant inbox) Source – originator specified by a URI Destination - specified by a URI MaxForwards – a hop counter to avoid loops. Counter decremented by each IM gaeway Transaction ID – used to correlate with response Content Response (on receipt of a message) Transaction ID – same as in message Status Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. SIP Session : Call Set Up INVITE INVITE INVITE 1 2 4 Bejing.com proxy Barcelona.com proxy 100 Trying 3 Tracy Durga 100 Trying 5 180 Ringing 6 180 Ringing 7 180 Ringing 8 200 OK 9 200 OK 10 200 OK 11 ACK 12 Media Session (independent of SIP BYE 13 OK 14 This is a very simple call set up. The SIP protocol acomodates much more complex situations including security and conferencing Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 17. SIP Call Session - explained 1 – Tracy invites Durga by addressing her by her SIP identifier. Tracy’s invitation is sent to the local SIP proxy at Beijing. 2- The beijing.com proxy on receipt of the INVITE determines the IP addresses of barcelona.com and forwards it 3- The beijing.com proxy also sends a code 100 Trying message to Tracy 4- The barcelona.com proxy receives the INVITE and forwards it to the IP address of Durga’s SIP phone 5 – The barcelona.com proxy also sends a 100 Trying message to the beijing.com proxy 6- Durga’s phone responds with a 180 Ringing message to the barcelona.com proxy 7- The 180 Ringing message is forwarded to the beijing.com proxy where 8 - The 180 Ringing message is forwarded to Tracy’s phone where it can be used to initiate ringback 9- Durga decides to answer the call. As she picks it up his SIP phone sends a 200 OK message 10- The 200 OK message is forwarded to the beijing.com proxy 11. The 200 OK message is forwaded to Tracy’s phone which stops the ringback 12 Tracy’s SIP phone sends an ACK (acknowledgement) message directly to Durga’s SIP phone and thwe media session proceeds between the two endpoints without involving the SIP proxies. 13. Durga decides to end the call and when she hangs up a BYE message is sent to Tracy 14. Tracy responds with OK and the session is terminated. Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 18. SIP invite message INVITE sip:durga@barcelona. com SIP/2.0 Via: SIP/2.0/UDP pc33.beijing.com;branch=z9xchk777656ssdhe Max-Forwards: 70 To: Durga < sip:durga@barcelona.com > From Tracy < sip:tracy@beijing.com >; tag=1987634 Call-ID: a06545bnf667pc33.beijing.com Cseq:342356 INVITE Contact: <sip: [email_address] > Content-Type:application/sdp Content Length: 142 INVITE method Durga’s SIP URI Protocol Identifier Unique Transaction Identifier Decremented on Each SIP proxy hop Address to respond to sender Identifying Tag Command Sequence incremented for each new dialog request A SIP URI providing a direct route to contact Tracy without requiring SIP proxy servers Session Descriptor Protocol (explained later) The type of message content Globally Unique Call Identifier Durga and Tracy’s diplay name and SIP URI Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 19. SIP registration method How is the correct IP address of Durga’s SIP phone identified in Step 4 ? REGISTER REGISTER REGISTER Registration Server Location Server Beijing.com proxy Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Durga’s Cell Phone Durga’s Wireless PDA Durga’s Home PC
  • 20. SIP Registration method - explained User (Durga) has three phones that she uses in SIP sessions Each of her phones sends REGISTER messages to the SIP registration server The registration server is addressed within the beijing.com domain but need not be co-located with the beijing.com proxy Each REGISTER message associates the IP address of her phone with the SIP URI The association between the IP address and the SIP URI is stored by the Location Server and is accessible by the SIP Proxy Durga may have: - a single URI in which case the most recent phone to be activated will be bound to that URI - several SIP URIs allowing her to maintain association between each of her URIs and phones The signaling protocol allows for serial or parallel forking where her several devices can be alerted sequentially or simultaneously Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com
  • 21. Getting Back to IM How can SIP be used to generate presence information? Watcher (subscriber) Presence Agent Presence UA SIP Proxies Presence Server SUBSCRIBE 200 OK NOTIFY+ PIDF 200 OK NOTIFY+ PIDF 200 OK Presence Status Presence Status Change Definition: Presence Agent Accepts subscriptions, stores subscription requests and generates notifications when there are changes in presence information. The presence agent knows the presence state of each presentity within its scope. Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 2 3 4 5 6
  • 22. SIMPLE - generate Presence Information Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 – Subscriber (watcher) creates a SUBSCRIBE request identifying the presentity. The SUBSCRIBE request is carried along by SIP proxies and arrives at the presence server which forwards it to the presence gent serving the identified presentity 2 -If authorized by presence agent a 200 OK response is returned. 3 – A NOTIFY message is also sent containing presence information in PIDF format. 4 – The watcher acknowledges receipt of the NOTIFY message with a 200 OK message 5 – After some time when the presentity state changes, the presence agent uses a NOTIFY method to send updated presence information in PIDF format 6 – The watcher acknowledges receipt of the notify message with a 200 OK
  • 23.
  • 24. SIMPLE Pager mode Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Sender UA (UAC) Tracy SIP Proxies Inbox UA (UAS) MESSAGE OK OK 1 2 3 4 Durga MESSAGE
  • 25.
  • 26. SIMPLE: Message mode Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com SDP SIP MSRP TCP IP Uses Session Description Protocol (SDP) over SIP to describe the session Message Session Relay Protocol (MSRP) over TCP to transmit the messages Application Layer Transport Layer Network Layer
  • 27.
  • 28.
  • 29. IM with MSRP, SDP over SIP Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Tracy Sender UA, Sender Durga Inbox UA, Receiver SDP/SIP INVITE SDP/SIP 200 OK SIP ACK MSRP SEND 1 2 3 4 MSRP 200 OK 5 MSRP 200 OK 6 MSRP SEND 7 SIP BYE 3 SIP 200 OK 3
  • 30. IM with MSRP, SDP over SIP - exaplained Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1- Tracy sends a SIP INVITE message with SDP embedded 2- Durga sends a SIP OK and includes the negotiated SDP parmeters 3- Tracy replies with a SIP ACK At this point the connection to the endpoints is established 4- Tracy opens a connection to Durga and uses the MSRP SEND to transmit her first text message 5 –Durga sends a MSRP OK message 6. Now Durga send a text message using MSRP SEND 7. Tracy acknowledges receipt with MSRP OK message 8. Tracy send a SIP BYE to terminate 9. Durga responds with a SIP 200 OK and terminates the session
  • 31.
  • 32.
  • 33. XMPP network architecture Server 1 Server 2 Gateway Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Durga’s Cell Phone Client Durga’s Wireless PDA Client Durga’s PC client Tracy’s PC client Brian’s PC client Foreign network
  • 34.
  • 35. Basic XMPP instant message session Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com Tracy’s PC Client Server 1 <stream> 1 3 4 Durga’s PC Client Server 2 <stream> 2 <message> </stream/stream> 5 6 <message> </stream/stream>
  • 36. Basic XMPP instant message session - explained Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com 1 – Tracy initiates a <stream> towards her XMPP server by opening a TCP connection 2- Her server responds by opening a stream towards Tracy. 3 – Tracy sends a <message> to Durga. She sends the <message stanza> over the connection to her local server including her JID in the “from field” and Durga’s JID in the “to field”. She includes her message inside the <body> element of the stanza 4 – Durga sends her own <message> stanza to her local server including her JID in the from field and Tracy’s JID in the to field. Her server forwards it to Tracy’s server which in turn forwards it to Tracy 5 – Tracy terminates her session by sending </stream:stream> to her local server. 6 – Her local server terminates the stream by sending </stream:stream> to her.
  • 37. XMPP based presence services Sanjoy Sanyal:www.itforintelligentfolks.blogspot.com <presence> stanzas are used to implement presence services <presence> <type> - describes the client’s presence status <show> - supplements the presence information <status> - contains text and allows presence info to be read by humans <priority> - guide stanza routing to preferred devices </presence>
  • 38.
  • 39.