PresenceV2

Presence interface (Version 2)

Module description

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)
  • Calendar
  • Audio/Video
  • Softphone
  • 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

Functionalities

  • 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

Events

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

uml diagram

Operations:

Name Description
asnGetAndSubscribePresence

Operation to retrieve contact data and to subscribe to events when these data will change.

asnUnsubscribePresence

Operation to end subscriptions on contacts on the ucserver.

asnSetDynamicRights

Operation to set access rights for another contact on contact data and contcat service information.

asnRemoveDynamicRights

This operation is used for removing access rights to contact data and service states between contacts.

asnRequestLargeProfileImage

Request an large image of a contact.

asnRequestContactImage

Request an image of a contact

Version 7