PRESENCE can be defined as the willingness and ability of a user to communicate with other users on the network.  In modern communications, this information can allow users to have more seamless and effortless communications, regardless of their location.

SIP provides support for Presence based on RFC 2778, RFC 3856, RFC 3857, and RFC 3859. Being a signaling protocol for real-time communication, SIP can benefit from knowing the availability of both the agents involved in a potential communication. The availability of agents, along with the states, mood, and policies of the UAs can help ensure a successful call is made. Additionally, a given user may have many devices, such as a mobile phone, laptop, wired phone or personal digital assistant (PDA),  any of which may be in a fixed or mobile location. This presents a challenge communicating in real-time with a user unless one knows which device needs to be dialed in order to reach the user at a given time.

PRESENCE is the key functionality which helps to solve this problem for real-time communication when using SIP. This is accomplished through the use of Publications, Subscriptions, and Notifications about the users detailed information; which includes location, preferred communication mode, current mood and activity. RFC 2778 defines the model for providing presence information. The model introduces a presence service which is a system that accepts, stores and distributes presence information to interested parties, called WATCHERS. RFC 3856 extends SIP for providing the presence service, while RFC 3857 extends the event package for WATCHER.

A Presentity (presence identity) represents a user, or a group of users or programs, that are the source of presence information. WATCHER defines the requester of presence information about a presentity.

The PRESENCE information Data Format (PIDF) is the basic format of representing PRESENCE information for a presentity. It includes a textual note, an indication of availability and a URI for communication. Rich PIDF provides additional information about the presentity and its contacts.

In this example (RFC 3863), it is shown how the presence server can be responsible for sending notifications for a presentity. It is assumed that the WATCHER has been previously authorized to subscribe to this resource at the server. The PRESENCE User Agent (PUA) informs the server about the updated presence information through some non-SIP means.

Presence Call Flow

Presence Call Flow

More Information


VOCAL Technologies has been in business for over 30 years and is an engineering design house that can provide a custom solution that meets your unique communication requirements.

Please contact us to discuss your communication application requirements.