The server retrieves the presence / status of MSISDN (a number uniquely identifying a subscriber) from the mobile networks. Then, it delivers this information to be displayed in the communication and presence solutions. This enables users to see the MSISDN status of their colleagues and other contacts directly from the IM client on the computer. The server currently provides connectors to four major communication solutions: Cisco Unified Personal Communicator, Microsoft OCS (Microsoft Office Communication Server 2007 R2, Microsoft Lync), and Lotus Sametime.
In addition to the standard status messages (Out of coverage, Busy, Idle, Calling), the solution can publish rich presence messages (e.g., “Busy on mobile, available on computer”).
The customer is a Norwegian company that offers mobile apps and server applications for handling presence information and Internet services availability. The company turned to Altoros to develop a highly available, reliable, and scalable solution that should serve multiple clients. The solution has to provide an ability to add new presence providers and presence publishers.
The team had to build the SIP stack to enable the interaction with Microsoft OCS. It was challenging to create the SIP session management solution due to the synchronization of resources, including authorization management via the Kerberos schema, session support, etc.
To create the SIP stack for interaction with Microsoft Office Communication Server 2007 R2 and Microsoft Lync, the team used JSR 32–compatible library JAIN SIP. We also used different web services (e.g., SOAP for Cisco UPC) to synchronize resources with communication and presence solutions. MySQL was used for internal management of tenants and customers, as well as for auditing and billing purposes.
The customer was able to launch a new service in a short period of time. The solution is already leveraged in Norway, providing the status information of Telenor (the large Scandinavian mobile operator) subscribers. The server is a highly available and scalable solution that increases the effectiveness of communications and reduces the latency of interactions.