9 State Transition Diagrams

29.198-053GPPOpen Service Access (OSA) Application Programming Interface (API)Part 5: User interaction Service Capability Feature (SCF)Release 9TS

9.1 Generic and Call User Interaction State Transition Diagrams

9.1.1 State Transition Diagrams for IpUIManager

Figure : Application view on the UI Manager

9.1.1.1 Active State

In this state a relation between the Application and a User Interaction Service Capability Feature (Generic User Interaction or Call User Interaction) has been established. The application is now able to request creation of UI and/or UICall objects.

9.1.1.2 Notification Terminated State

When the UI manager is in the Notification terminated state, events requested with createNotification()/enableNotifications() will not be forwarded to the application. There can be multiple reasons for this: for instance it might be that the application receives more notifications than defined in the Service Level Agreement. Another example is that the SCS has detected it receives no notifications from the network due to e.g. a link failure. In this state no requests for new notifications will be accepted.

9.1.2 State Transition Diagrams for IpUI

The state transition diagram shows the application view on the User Interaction object.

Figure : Application view on the UI object

9.1.2.1 Active State

In this state the UI object is available for requesting messages to be sent to the network.

In case a fault is detected on the user interaction (e.g. a link failure to the IVR system), userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

9.1.2.2 Release Pending State

A transition to this state is made when the Application has indicated that after a certain message no further messages need to be sent to the end-user. There are, however, still a number of messages that are not yet completed. When the last message is sent or when the last user interaction has been obtained, the UI object is destroyed.

In case the final request failed or the application requested to abort the final request, a transition is made back to the Active state.

In case a fault is detected on the user interaction (e.g. a link failure to the IVR system), userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

9.1.2.3 Finished State

In this state the user interaction has ended. The application can only release the UI object. Note that the application has to release the object itself as good Object Oriented practice requires that when an object is created on behalf of a certain entity, this entity is also responsible for destroying it when the object is no longer needed.

9.1.3 State Transition Diagrams for IpUICall

The state transition diagram shows the application view on the Call User Interaction object.

Figure : Application view on the UICall object

9.1.3.1 Active State

In this state a UICall object is available for announcements to be played to an end-user or obtaining information from the end-user.

When the application de-assigns the related Call or CallLeg object, a transition is made to the Finished state. However, all requested announcements will continue, even when the application releases the UICall object.

When the related call or call leg is terminated due to some reason, a transition is made to the Finished state, the operation userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

In case a fault is detected on the user interaction (e.g. a link failure to the IVR system), userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

9.1.3.2 Release Pending State

A transition to this state is made when the Application has indicated that after a certain announcement no further announcements need to be played to the end-user. There are, however, still a number of announcements that are not yet completed. When the last announcement is played or when the last user interaction has been obtained, the UICall object is destroyed. In case the final request failed or the application requested to abort the final request, a transition is made back to the Active state.

When the application de-assigns the related Call or CallLeg object, the UICall object is destroyed. However, all requested announcements will continue.

When the related call or call leg is terminated due to some reason, a transition is made to the Finished state, the operation userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

In case a fault is detected on the user interaction (e.g. a link failure to the IVR system), userInteractionFaultDetected() will be invoked on the application and an error will be reported on all outstanding requests.

9.1.3.3 Finished State

In this state the user interaction has ended. The application can only release the UICall object. Note that the application has to release the object itself as good Object Oriented practice requires that when an object is created on behalf of a certain entity, this entity is also responsible for destroying it when the object is no longer needed.

9.2 Generic User Interaction Administration State Transition Diagrams

9.2.1 State Transition Diagrams for IpUIAdminManager

Figure : State Transition Diagram for User Interaction Administration

9.2.1.1 Active State

In this state, a relation between the Application and the Generic User Interaction Administration Service Capability Feature has been established. It allows the application to make specific requests of the service.