# Application Development Guide

# Parlay X 3.0 Interfaces

This chapter describes the supported Parlay X 3.0 interfaces and contains information that is specific for Oracle Communications Services Gatekeeper, and not found in the specifications. For detailed descriptions of the interfaces, methods and parameters, refer to the specifications.

See http://portal.etsi.org/docbox/TISPAN/Open/OSA/ParlayX30.html for links to the specifications.

- Interaction between Audio Call, Third Party Call, and Call Notification
- Parlay X 3.0 Part 2: Third Party Call

- Interface: ThirdPartyCall

- Parlay X 3.0 Part 3: Call Notification

- Interface: CallDirection
- Interface: CallNotification
- Interface: CallNotificationManager
- Interface: CallDirectionManager

- Parlay X 3.0 Part 6: Payment

- Interface: AmountCharging
- Interface: VolumeCharging
- Interface: ReserveAmountCharging
- Interface: ReserveVolumeCharging

- Parlay X 3.0 Part 11: Audio call

- Interface: PlayMedia

## Interaction between Audio Call, Third Party Call, and Call Notification

The Parlay X 3.0 Part 2: Third Party Call, Parlay X 3.0 Part 3: Call Notification, and Parlay X 3.0 Part 11: Audio call interfaces, when used together with the Parlay-type plug-ins, are designed to interact so they can be used to implement, for example, a conference call application using a combination of the services exposed by these interfaces:

- Call setup
- Call redirection and transfer
- Playing of announcements
- Collection of input from participants in the call using DTMF

A call can have several participants.The call as a whole is represented by a callSessionIdentifier, and each participant is identified by its URI (the phone number, with scheme tel:) can be added to the call.

Note: | When the call is initiated from an application, the callSessionIdentifier is returned from Oracle Communications Services Gatekeeper when the call session is established. When the call is initiated from the network, the callSessionIdentifier is provided by Oracle Communications Services Gatekeeper in the requests that report the event.

Application-initiated call setup, tear-down, and transfer is managed using the Parlay X 3.0 Part 2: Third Party Call interfaces.

Subscribing for notification on network-initiated calls, and taking action depending on the events is done using the Parlay X 3.0 Part 3: Call Notification interfaces.

Playing of announcements and initiating collection of input from call participants is done using the Parlay X 3.0 Part 11: Audio call interfaces. Results from the collection of input are reported using Parlay X 3.0 Part 3: Call Notification.

Parlay X 3.0 Part 11: Audio call interfaces must be used together with either Parlay X 3.0 Part 2: Third Party Call or Parlay X 3.0 Part 3: Call Notification since Audio Call does not have any operations to establish a call.

## Parlay X 3.0 Part 2: Third Party Call

This set of interfaces is compliant to ETSI ES 202 504-2 v0.0.5 (2007-06) Open Service Access (OSA); Parlay X Web Services; Part 2: Third Party Call (Parlay X 3).

### Interface: ThirdPartyCall

The endpoint for this interface is: http://<host>:<port>/parlayx30/third_party_call/ThirdPartyCall

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### makeCallSession

Sets up a call between two parties.

The parameter:

- `mediaInfo` must be set to NULL.
- `changeMediaNotAllowed` must be set to false.

Table 10-1 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000001 | Error reported from the telecom network.
SVC0001 | TPC-000002 | Error reported from the telecom network.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OS-A000009 | Error reported from the telecom network.
SVC0001 | OS-A000010 | Error reported from the telecom network.
SVC0001 | OS-A000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OS-A000013 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | Invalid input parameter.
POL0001 |  | Faults related to policies associated with the service, including service level agreements.
POL0008 |  | Charging not supported.
POL0011 |  | Media type not supported.

#### addCallParticipant

Adds a participant to a an existing call session. The call session may have been established using makeCallSession or any of the methods in Interface: CallDirection and Interface: CallNotification.

parameter `mediaInfo` must be set to NULL.

Table 10-2 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000002 | Error reported from the telecom network.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | Call session identifier is null. Or Error reported from the telecom network.
SVC0261 | n/a | The call is already terminated.
POL0001 |  | The application is not the owner of the call. Error reported form the network.
POL0011 | n/a | Media type not supported.
POL0240 | n/a | Too many participants.

#### transferCallParticipant

Transfers a participant from one call session to another call session.

Table 10-3 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000002 | No call leg identifier reported form network. Error reported from the telecom network.
SVC0001 | TPC-000003 | The destination call session reference or call leg reference is null, internal error.
SVC0001 | TPC-000007 | The participant does not belong to this call.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 |  | Error reported from the telecom network. Or Source call session identifier is invalid. Or Destination call session identifier is invalid. Or Participant part is invalid.
SVC0261 | n/a | The call is already terminated.
POL0001 |  | TPC100001
POL0240 | n/a | Too many participants.

#### getCallParticipantInformation

Gets information about a certain participant in a call session.

Table 10-4 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000007 | The participant does not belong to this call.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | Call session identifier is invalid.
SVC0261 | n/a | The call is already terminated.
POL0001 | TPC-100001 | The application is not the owner of the call session.

#### getCallSessionInformation

Displays information about a call session.

Table 10-5 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000007 | The participant does not belong to this call.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | network error. Or Call session identifier is invalid.
SVC0261 | n/a | The call is already terminated.
POL0001 | TPC-100001 | The application is not the owner of the call session.

#### deleteCallParticipant

Deletes a participant from a call session.

Table 10-6 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000006 | There are no participants in this call.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | Network error. Or Call session identifier is invalid. Or Call participant identifier is invalid.
SVC0261 | n/a | The call is already terminated.
POL0001 | TPC-100001 | The application is not the owner of the call session.

#### endCallSession

Ends a call session.

Table 10-7 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | TPC-000005 | The call reference in Oracle Communications Services Gatekeeper storage is invalid.
SVC0001 | TPC-000006 | There are no participants in the call session.
SVC0001 | OSA-000001 | Error reported from the telecom network.
SVC0001 | OSA-000002 | Error reported from the telecom network.
SVC0001 | OSA-000003 | Error reported from the telecom network.
SVC0001 | OSA-000004 | Error reported from the telecom network.
SVC0001 | OSA-000006 | Error reported from the telecom network.
SVC0001 | OSA-000007 | Error reported from the telecom network.
SVC0001 | OSA-000008 | Error reported from the telecom network.
SVC0001 | OSA-000009 | Error reported from the telecom network.
SVC0001 | OSA-000010 | Error reported from the telecom network.
SVC0001 | OSA-000011 | Error reported from the telecom network.
SVC0001 | OSA-000012 | Error reported from the telecom network.
SVC0001 | OSA-000014 | Error reported from the telecom network.
SVC0001 | OSA-000015 | Error reported from the telecom network.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | n/a | Error reported from the telecom network. Or Call session identifier is invalid. Or Call participant identifier is invalid.
SVC0261 | n/a | The call is already terminated.
POL0001 | TPC-100001 | The application is not the owner of the call session.

## Parlay X 3.0 Part 3: Call Notification

This set of interfaces is compliant to ETSI ES 202 504-3 v0.0.3 (2007-06) Open Service Access (OSA); Parlay X Web Services; Part 3: Call Notification (Parlay X 3).

### Interface: CallDirection

This interface is implemented by an application, and the consumer of this interface is Oracle Communications Services Gatekeeper. The WSDL that defines the interface can be downloaded from:

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_direction_service_3_2.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_direction_interface_3_2.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_common_types_3_1.xsd`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_common_faults_3_0.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_notification_types_3_1.xsd`

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### HandleBusy

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party is busy.

#### HandleNotReachable

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party is not reachable.

#### HandleNoAnswer

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party does not answer.

#### HandleCalledNumber

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, prior to call setup.

### Interface: CallNotification

This interface is implemented by an application, and the consumer of this interface is Oracle Communications Services Gatekeeper. The WSDL that defines the interface can be downloaded from:

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_notification_interface_3_2.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_notification_service_3_2.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_common_types_3_1.xsd`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_common_faults_3_0.wsdl`

`http://<host>:<port>/parlayx30/call_notification/wsdls/parlayx_call_notification_types_3_1.xsd`

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### notifyBusy

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party is busy.

#### notifyNotReachable

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party is not reachable.

#### notifyNoAnswer

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party does not answer.

#### notifyCalledNumber

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, prior to call setup.

#### notifyAnswer

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, when the called party answered.

#### notifyPlayAndCollectEvent

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, to provide the result of a media interaction of type play and collect information.

#### notifyPlayAndRecordEvent

Oracle Communications Services Gatekeeper calls this method, which is implemented by an application, to provide the result of a media interaction of type play and record information.

### Interface: CallNotificationManager

The endpoint for this interface is:

http://<host>:<port>/parlayx30/call_notification/CallNotificationManager

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### startCallNotification

Starts a subscription for call notifications.

Table 10-8 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | OSA-000002 | P_INVALID_INTERFACE_TYPE thrown by OSA Gateway. check the interface name
SVC0001 | OSA-000003 | P_INVALID_EVENT_TYPE thrown by OSA Gateway Check the event type
SVC0001 | OSA-000006 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_RESOURCE_UNAVAILABLE (13). Check OSA Gateway status.
SVC0001 | OSA-000007 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_REFUSED(14). Check OSA Gateway status.
SVC0001 | OSA-000008 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_CANCELLED(15). Check invocation parameters of createNotification()
SVC0001 | OSA-000009 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_NO_CALLBACK_ADDRESS_SET (17). Check OSA Gateway.
SVC0001 | OSA-000010 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_METHOD_NOT_SUPPORTED (22). Check OSA Gateway.
SVC0001 | OSA-000011 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_INVALID_STATE (744). Check OSA Gateway.
SVC0001 | OSA-000015 | P_INVALID_CRITERIA thrown by OSA Gateway. Check the criteria
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | reference | Parameter reference is null.
SVC0002 | correlator | Parameter correlator is null.
SVC0002 | endPoint | Parameter endPoint is null or empty String.
SVC0002 | addresses | Parameter reference is null.
SVC0005 | <correlator value>, reference | Correlator %1 specified in message part %2 is a duplicate.
POL0001 | Service contract not found | No Service Level Agreement found for the service provider or application associated with the request.

#### startPlayAndCollectNotification

Starts a subscription for notifications on media interactions of type play and collect.

Table 10-9 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | CN-000001 | Parlay call session does not exist.
SVC0001 | CN-000002 | Parlay call session has terminated.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | reference | Parameter reference is null.
SVC0002 | correlator | Parameter correlator is null.
SVC0002 | endPoint | Parameter endPoint is null or empty String.
SVC0002 | callSessionIdentifier | Parameter callSessionIdentifier is null.
SVC0005 | <correlator value>, reference | Correlator %1 specified in message part %2 is a duplicate.
SVC0005 | callSessionId:<value> | startPlayAndCollectNotification has been invoked earlier on the same callSessionIdentifier or startCallDirection has been invoked earlier with an address that is identical to the address represented by the call session.
POL0001 | Service contract not found | No Service Level Agreement found for the service provider or application associated with the request.

#### startPlayAndRecordNotification

Not supported.

#### stopCallNotification

Stops a subscription for call notifications.

Table 10-10 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | CN-000003 | The requester is not the owner of the notification, that is, did not start the notification.
SVC0001 | CN-000004 | The parameter correlator does not exist.
SVC0001 | OSA-000006 | TpCommonExceptions thrown by OSA GW. Exception type is P_RESOURCE_UNAVAILABLE (13).Check OSA Gateway status.
SVC0001 | OSA-000007 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_REFUSED (14). Check OSA Gateway status.
SVC0001 | OSA-000008 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_CANCELLED (15). Check OSA Gateway status.
SVC0001 | OSA-000009 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_NO_CALLBACK_ADDRESS_SET (17). Check invocation parameters of destroyNotification()
SVC0001 | OSA-000010 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_METHOD_NOT_SUPPORTED (22). Check OSA Gateway.
SVC0001 | OSA-000011 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_INVALID_STATE (744). Check OSA Gateway.
SVC0001 | correlator | The parameter correlator does not exist.
SVC0001 | PLG-000004 | General plug-in routing error.
POL0001 | n/a | No Service Level Agreement found for the service provider or application associated with the request.

#### stopMediaInteractionNotification

Stops a subscription for notifications on media interactions.

Table 10-11 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | CN-000004 | The parameter correlator does not exist.
SVC0001 | CN-000003 | The requester is not the owner of the notification, that is, did not start the notification.
SVC0001 | correlator | The parameter correlator does not exist.
SVC0001 | PLG-000004 | General plug-in routing error.
POL0001 | Service contract not found | No Service Level Agreement found for the service provider or application associated with the request.

### Interface: CallDirectionManager

The endpoint for this interface is:

http://<host>:<port>/parlayx30/call_notification/CallDirectionManager

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### StartCallDirectionNotification

Starts a subscription for call direction notifications.

Table 10-12 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | OSA-000002 | P_INVALID_INTERFACE_TYPE thrown by OSA Gateway. check the interface name
SVC0001 | OSA-000003 | P_INVALID_EVENT_TYPE thrown by OSA Gateway Check the event type
SVC0001 | OSA-000015 | P_INVALID_CRITERIA thrown by OSA Gateway. Check the criteria
SVC0001 | OSA-000006 | TpCommonExceptions thrown by OSA GW. Exception type is P_RESOURCE_UNAVAILABLE (13).Check OSA Gateway status.
SVC0001 | OSA-000007 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_REFUSED(14). Check OSA Gateway status.
SVC0001 | OSA-000008 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_CANCELLED (15). Check OSA Gateway status.
SVC0001 | OSA-000009 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_NO_CALLBACK_ADDRESS_SET (17). Check invocation parameters of createNotification()
SVC0001 | OSA-000010 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_METHOD_NOT_SUPPORTED (22). Check OSA Gateway.
SVC0001 | OSA-000011 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_INVALID_STATE (744). Check OSA Gateway.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | reference | Parameter reference is null.
SVC0002 | correlator | Parameter correlator is null.
SVC0002 | endPoint | Parameter endPoint is null or empty String.
SVC0002 | addresses | Parameter reference is null.
SVC0005 | <correlator value>, reference | Correlator %1 specified in message part %2 is a duplicate.
POL0001 | Service contract not found | No Service Level Agreement found for the service provider or application associated with the request.

#### StopCallDirectionNotification

Stops a subscription for call direction notifications.

Table 10-13 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | CN-000003 | The requester is not the owner of the notification, that is, did not start the notification.
SVC0001 | CN-000004 | The parameter correlator does not exist.
SVC0001 | OSA-000006 | TpCommonExceptions thrown by OSA GW. Exception type is P_RESOURCE_UNAVAILABLE (13).Check OSA Gateway status.
SVC0001 | OSA-000007 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_REFUSED (14). Check OSA Gateway status.
SVC0001 | OSA-000008 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_TASK_CANCELLED (15). Check OSA Gateway status.
SVC0001 | OSA-000009 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_NO_CALLBACK_ADDRESS_SET (17). Check invocation parameters of destroyNotification()
SVC0001 | OSA-000010 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_METHOD_NOT_SUPPORTED (22). Check OSA Gateway.
SVC0001 | OSA-000011 | TpCommonExceptions thrown by OSA Gateway. Exception type is P_INVALID_STATE (744). Check OSA Gateway.
SVC0001 | correlator | The parameter correlator does not exist.
SVC0001 | PLG-000004 | General plug-in routing error.
POL0001 | n/a | No Service Level Agreement found for the service provider or application associated with the request.

## Parlay X 3.0 Part 6: Payment

This set of interfaces is compliant to Draft ETSI ES 202 504-6 v0.0.4 (2007-06), Open Service Access (OSA); Parlay X Web Services; Part 6: Payment (Parlay X 3)

### Interface: AmountCharging

The endpoint for this interface is: http://<host>:<port>/parlayx30/payment/AmountCharging

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### chargeAmount

Charges the account indicated by the end user identifier.

Table 10-14 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

#### refundAmount

Refunds the account indicated by the end user identifier.

Table 10-15 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

#### chargeSplitAmount

Charges multiple end user accounts concurrently.

Table 10-16 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

### Interface: VolumeCharging

Not supported

### Interface: ReserveAmountCharging

The endpoint for this interface is: http://<host>:<port>/parlayx30/payment/ReserveAmountCharging

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### reserveAmount

Reserves a charge for an account indicated by the end user identifier.

Table 10-17 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

#### reserveAdditionalAmount

Adds to or subtracts from a charge to or from an existing reservation.

Table 10-18 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

#### chargeReservation

Charges to a reservation indicated by the reservation ID.

Table 10-19 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

#### releaseReservation

Returns funds left in a reservation to the account from which this reservation was made.

Table 10-20 Exceptions and Error Codes
Exception | Error code | Explanation
--- | --- | ---
Protocol Errors |  |
SVC0001 | PAYMENT000002 | A protocol related error returned from the Diameter server. Make sure the server is running and reachable. Check the log files for more information.
Transient Failures |  |
SVC0001 | PAYMENT000003 | A transient error returned from the Diameter server, such as authentication failure. Make sure the server is reachable and has adequate storage space. Check the log files for more information.
SVC0001 | PLG-000004 | General plug-in routing error.
Permanent Failures |  |
SVC0001 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as invalid data in the AVP. Check the log files for more information.
SVC0270 | PAYMENT000004 | A permanent failure returned from the Diameter server, such as the user could not be authorized. Check the log files for more information.

### Interface: ReserveVolumeCharging

Not supported

## Parlay X 3.0 Part 11: Audio call

This set of interfaces is compliant to ETSI ES 202 504-11 v0.0.3 (2007-06), Open Service Access (OSA); Parlay X Web Services; Part 11: Audio Call (Parlay X 3).

### Interface: PlayMedia

The endpoint for this interface is: http://<host>:<port>/parlayx30/audio_call/AudioCallPlayMedia

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### playTextMessage

Not supported.

#### playAudioMessage

Plays a message to the given destination address. The message is given as a URL to an audio file. The file must be reachable by the underlying telecom network node and the audio-format must be supported by the telecom network.

Table 10-21 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | AC-100001 | Call session has expired.
SVC0001 | AC-100003 | Call state is invalid.
SVC0001 | AC-100004 | Participant is not connected.
SVC0001 | AC-100005 | Not all participants are available. Possibly in already in playing or collecting mode.
SVC0001 | AC-100006 | Could not find callleg session information. Callsession may be empty.
SVC0001 | OSA-000001 | P_INVALID_NETWORK_STATE exception received from OSA Gateway.
SVC0001 | OSA-000011 | EC_OSA_P_INVALID_STATE exception received from OSA Gateway.
SVC0001 | OSA-000012 | TP_COMMON_EXCEPTIONS exception received from OSA Gateway.
SVC0001 | WNG-000002 | Failed to store information in Services Gatekeeper. Contact support.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | callSessionIdentifier | Invalid input value for message part %1
SVC0002 | callParticipants | Invalid input value for message part %1
SVC0002 |  | P_INVALID_SESSION_ID exception received from OSA Gateway.
SVC0261 |  | Call has already been terminated.
POL0001 | Service contract not found | No Service Level Agreement found.
POL0001 | AC-100002 | Application is not the owner of the call.
POL0008 |  | Charging not supported.

#### playVoiceXmlMessage

Not supported.

#### playVideoMessage

Not supported.

#### getMessageStatus

Gets the status of a message, that is, if the message is currently being played, if it is has finished playing and more.

Table 10-22 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | correlator | Invalid input value for message part %1.
POL0001 | Service contract not found | No Service Level Agreement found.
POL0001 | AC-100002 | Application is not the owner of the call.

#### endMessage

Cancel or stops the playing of the message.

Table 10-23 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to fetch information from Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | correlator | Invalid input value for message part %1
POL0001 | Service contract not found | No Service Level Agreement found.
POL0001 | AC-100002 | Application is not the owner of the call.

### Interface: CaptureMedia

The endpoint for this interface is:

http://<host>:<port>/parlayx30/audio_call/AudioCallCaptureMedia

Where values for host and port depend on the Oracle Communications Services Gatekeeper deployment.

#### startPlayAndCollectInteraction

Starts a media interaction with one or all participants in a call session. Plays a media file and collects digits from one or all call participants. The results of the interaction is notified using the operation notifyPlayAndCollectEvent in the Parlay X 3.0 Part 3: Call Notification set of interfaces.

Table 10-24 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
| AC-100001 | Call session has expired.
| AC-100003 | Call state is invalid.
| AC-100004 | Participant is not connected.
| AC-100005 | Not all participants are available. Possibly in already in playing or collecting mode.
SVC0001 | AC-100006 | Could not find callleg session information. Callsession may be empty.
SVC0001 | OSA-000001 | P_INVALID_NETWORK_STATE exception received from OSA Gateway.
SVC0001 | OSA-000011 | EC_OSA_P_INVALID_STATE exception received from OSA Gateway.
SVC0001 | OSA-000012 | TP_COMMON_EXCEPTIONS exception received from OSA Gateway.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | callSessionIdentifier | Invalid input value for message part %1
SVC0002 | callParticipants | Invalid input value for message part %1
SVC0002 | playFileLocation | Invalid input value for message part %1
SVC0002 |  | P_INVALID_SESSION_ID exception received from OSA Gateway.
SVC0261 |  | Call has already been terminated
POL0001 | Service contract not found | No Service Level Agreement found.
POL0001 | AC-100002 | Application is not the owner of the call.
POL0001 | AC-100007 | The value of maxDigits is too big.
POL0001 | AC-100008 | The value of minDigits is too small.

#### startPlayAndRecordInteraction

Not supported.

#### stopMediaInteraction

Explicitly stops an ongoing media interaction session.

Table 10-25 exceptions and error codes
Exception | Error code | Explanation
--- | --- | ---
SVC0001 | OSA-000001 | P_INVALID_NETWORK_STATE exception received from OSA Gateway.
SVC0001 | OSA-000011 | EC_OSA_P_INVALID_STATE exception received from OSA Gateway.
SVC0001 | OSA-000012 | TP_COMMON_EXCEPTIONS exception received from OSA Gateway.
SVC0001 | WNG-000002 | Failed to store information in Oracle Communications Services Gatekeeper. Contact support.
SVC0001 | PLG-000004 | General plug-in routing error.
SVC0002 | mediaIdentifier | Invalid input value for message part %1
SVC0002 |  | P_INVALID_SESSION_ID exception received from OSA Gateway.
POL0001 | Service contract not found | No Service Level Agreement found.
POL0001 | AC-100002 | Application is not the owner of the call.

### Interface: Multimedia

#### addMediaForParticipants

Not supported.

#### deleteMediaForParticipants

Not supported.

#### getMediaForParticipant

Not supported.

#### getMediaForCall

Not supported.

## General Exceptions

This section describes the exception handling for the Parlay X 3.0 interfaces.

These exception types are defined:

- Service Exceptions
- Policy Exceptions

Service Exception are related to the operation of the service itself. The following exceptions are general:

- SVC0001: Service error.
- SVC0002: Invalid input value
- SVC0003: Invalid input value with list of valid values
- SVC0004: No valid addresses
- SVC0005: Duplicate correlator
- SVC0006: Invalid group
- SVC0007: Invalid charging information
- SVC0008: Overlapping Criteria

PolicyExceptions are thrown when a policy has been violated, including violations of a service level agreements. The following general PolicyExceptions are defined:

- POL0001: Policy error
- POL0002: Privacy error
- POL0003: Too many addresses specified
- POL0004: Unlimited notifications not supported
- POL0005: Too many notifications requested
- POL0006: Groups not allowed
- POL0007: Nested groups not allowed
- POL0008: Charging not supported
- POL0009: Invalid frequency requested

Within the exception, an error code is defined. The error code details why the exception was thrown.