Presence interface (Version 2)
This module defines structures and operations for the presence V2 interface.
A version 2 of the presence interface was necessary to improve the amount of contact and service data.
The presence shows at any time the current availability of the person you wish to communicate with. For a detailed description see the help of the UCClient.
The following presence states are available:
- Available (green)
- Busy (red)
- Absent (yellow)
- Inactive (green/yellow)
- Don't disturb (red with a white stripe)
- Offline (gray)
Additionally the API delivers information in form of contact data, service states and much more.
With all these infromations, it is possible to create an application, which give user the ability to see a detailed picture of a contact enriched with live state changes.
The live changes are results of the different services the UCServer combines the presence state of the user:
- Telephone (via CTI)
- Bluetooth device (locally attached to a client of the user).
- Manual input of the user
Prerequisite for using the interface
- The client needs a socket for secure data Transmission between client-server and vise versa.
- Installation of ProCall Software in advance
- Then create a user for testing purposes
- login in this user name and check the functionality of this interface practically
- The status for client will be driven from various sources like:
- Digital Telephone, Mobile, Calender(ms outlook), Audio/Video Chat, Manually changing Status and Computer system(login/logout).
- The user has the permission to manually change the status
- The user can set a user-defined status (ex: Coffee Break)
- The user can set a couple of notices (ex: listing the daily appointments)
- The user can change status and notice
- The user can remove status and notice
The Events that the client receives from the server are:
- asnUpdatePresence :
- It delivers the responses from Server to Client as per Client request
- The Server receives the specific request like asnCustomNote from Client
- The Client reciprocally receives an asnUpdatePresence from Server
- The Update-Event will also be sent to those clients who are in touch with this client in the same Server
- It receives the Event from server in two forms whether an Argument or an Error
- As Argument: It handles the Presence and iChangedFlags events
- Presence : it shows updated data of the present-contact.
- iChangedFlags : it indicates that which area triggers the event and it's included because later on the server fills the fields
* check the AsnPresence(Active details) for more details
- asnRemovePresence :
- It needs a contact id to remove the presence state
- It has an optionalParams for further implementation
How the API works
Here is a very simple diagram of how the presence API works
Event from the server to the client about presence updates
Event from the server tzhat the contact has been removed from the presence system.