Parlay X Call Notification over SIP/IMS notifies
Web clients of specific call events for a specific called party.
Parlay X Call Notification over SIP/IMS defines
interfaces for CallNotificationManager, CallNotification, CallDirectionManager,
and CallDirection interfaces. However, this implementation of Parlay X Call Notification over SIP/IMS implements
only the CallNotificationManager and CallNotification interfaces.
Parlay X Call Notification over SIP/IMS
is a Parlay X Web services application that provides notification
for calls established through the SIP protocol and supports both regular
SIP and IMS call flows. This service provides application developers
with the ability to handle call notification to other service implementations
using simple functions. Through the CallNotificationManager interface
of the Parlay X Call Notification over SIP/IMS,
the application can register or unregister notifications whenever
a network call event occurs for an interested called party. Then,
the CallNotification interface is used to provide notification service
when a network call event occurs. The type of events that can be reported
on by the CallNotification interface include: the called party is
on the phone and is busy (NotifyBusy), the called party can be reached
but does not answer the phone (NotifyNoAnswer), or the called party
is unreachable (NotifyNotReachable). Parlay X Call Notification over SIP/IMS can
also report that a call was attempted (NotifyCalledNumber).
Call flows
The following is an example
call flow showing how the CallNotification interface is invoked. In
this example the call flow begins when the SIP Servlet (the part of
the code implementing the CallNotification interface) gets a SIP Invite
message from the network. The servlet will access the database to
get the application addresses that is requesting to be notified for
the network call events on the called party. A caller places a call
to a callee and the callee is busy (SIP response code 486 Busy Here).
The following steps show how the CallNotification would be invoked:
- The SIP Servlet receives the SIP Invite message from the caller
through the network.
- The SIP Servlet accesses the database to get the list of all applications
registered for notifications regarding the callee. Assuming that
Application_1 has been registered for the callee, the database returns
the search result: Application_1.
- The SIP Servlet sends an asynchronous notification (NotifyCalledNumber)
through PX Notification to Application_1 indicating that a call is
attempted for the callee.
- The SIP Servlet then proxies the Invite message request following
the normal call flow to the callee.
- The SIP Servlet receives 486 (busy) response from the callee through
the network.
- The SIP Servlet sends the busy notification (NotifyBusy) to Application_1.
- The response follows the normal call flow to the caller.
Interfaces
- CallNotificationManager
- startCallNotification
- Enables an application to register a subscription: a request to
be notified when a network event occurs for an interested called party.
- stopCallNotification
- Enables an application to unregister an existing subscription.
- CallNotification
- notifyBusy
- Notifies the registered application for a called party that the
called party is busy. The notification is in the form of a network
call event notification, as is the case with all operations for the
CallNotification interface.
- notifyNoAnswer
- Notifies the registered application that the called party has
failed to answer.
- notifyNotReachable
- Notifies the registered application that the called party cannot
be reached.
- notifyCalledNumber
- Notifies the registered application that a call was attempted
to the callee.