Platform Toolkit (PTK) Methods

AddInteraction

This Platform Toolkit (PTK) request adds an interaction, such as a callback, to the On-Premise Callback platform.

Use AddInteraction to:

  • Add a first available interaction or a scheduled interaction.
  • Define a Source Application (PTK v4 or higher).
  • Attach screen-pop data when using the UserData element.
  • In Callback versions 8.3-8.10, this request requires a valid Mindful license. The request decrements from the number of non-voice licenses.
  • In Callback versions 8.11 or later, this request requires a valid Mindful license.
    • If the source application is VXML Interaction Server (case sensitive), the request decrements from the number of inbound licenses.
    • If the source application is your own voice application (such as Globex Voice Application, case sensitive), the request decrements from the number of inbound licenses.

Contact Mindful Support to add a custom application to the list of valid voice applications.

  • An additional level of Callback licensing must be purchased in order to submit a scheduled interaction.
  • UU_DATA must be used as the key for attaching UUI data using TIAL Genesys PSDK.
  • When using TIAL Avaya TSAPI:
    • with GlobalCallIVR, Avaya_UUI must be used as the key for attaching UUI data, and the data value must be provided in hexadecimal format.
    • with AVP, Avaya_UUI must be used as the key for attaching UUI data, and the data value must be provided in hexadecimal format.
  • Pass Peripheral Variables and Extended Call Context Variables to add user data to callbacks when using Cisco with TIAL ICM.

Parameters

This request uses the following parameters:

ParameterValid elementsTypeRequired or optional
TenantN/AStringRequired
SegmentN/AString
ContactN/AString
OptionsClientIdStringOptional
AppointmentTimeString

Required for scheduled callbacks; otherwise, optional.

If you do not use this element, the interaction is added as a first-available callback.

Source Application (PTK v4 or higher)String

Optional. Use this parameter to record which application requested the callback to the Callback reporting database. If not submitted (Callback 8.2 - 8.10), PTK adds Platform Toolkit as the default source application. If not submitted (Callback 8.11 or later), Conversation Bridge is listed as the default source application.

Values for Source Application are case sensitive in Callback versions 8.11 or later.

UserData

  • Name
  • Value
  • DataType
  • String
  • String
  • UserDataTypes (string, number, bulkdata, list)
Optional

ASAP Callback request

<soap12:Envelope
   
   
    xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AddInteraction
           >
            <data>
                <Tenant>VHTLab</Tenant>
                <Segment>PTK_VHT_TEST</Segment>
                <Contact>80001</Contact>
                <Options>
                    <UserDataContainer />
                </Options>
            </data>
        </AddInteraction>
    </soap12:Body>
</soap12:Envelope>

Scheduled Callback request

<soap12:Envelope
    xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance"
   
    xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
    <soap12:Body>
        <AddInteraction
           >
            <data>
                <Tenant>VHTLab</Tenant>
                <Segment>PTK_VHT_TEST</Segment>
                <Contact>8000</Contact>
                <Options>
                    <AppointmentTime>2011-10-11T22:00:00Z</AppointmentTime>
                    <UserDataContainer></UserDataContainer>
                </Options>
            </data>
        </AddInteraction>
    </soap12:Body>
</soap12:Envelope>

ASAP Callback response

<PlatformToolkitResponse>
    <Header>
        <ClientID></ClientID>
        <Id>38e3786b-648c-4a3a-9a46-f809ed48313b</Id>
        <Status>
            <Code>107000</Code>
            <Description>The platform completed the request.</Description>
            <ErrorMessage></ErrorMessage>
            <Result>RequestCompleted</Result>
        </Status>
    </Header>
    <Data>
        <Interactions>
            <Interaction
                    Contact="80001"
                    Id="V0001000000000104102011155559508"
                    InteractionType=FIFO
                    Queue="VHT_Test"
                    Segment="PTK_VHT_TEST"
                    Tenant="VHTLab">
                <Information></Information>
            </Interaction>
        </Interactions>
    </Data>
</PlatformToolkitResponse>

Scheduled Callback response

<PlatformToolkitResponse>
    <Header>
        <ClientID></ClientID>
        <Id>bfdb9123-5674-4779-b266-03cfeeff10ee</Id>
        <Status>
            <Code>107000</Code>
            <Description>The platform completed the request.</Description>
            <ErrorMessage></ErrorMessage>
            <Result>RequestCompleted</Result>
        </Status>
    </Header>
    <Data>
        <Interactions>
            <Interaction
                    Contact="8000"
                    Id="V0000000000000002102011184429873"
                    InteractionType=Appointment
                    Queue="VHT_Test"
                    Segment="PTK_VHT_TEST"
                    Tenant="VHTLab">
                <Information></Information>
            </Interaction>
        </Interactions>
    </Data>
</PlatformToolkitResponse>

Response parameters

AddInteraction can return the following items:

ParameterResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataInteractionsIdString
Tenant
Queue
Segment
InteractionType
ContactI

Status codes

The response can return the following status codes.

NumberNameDescription
107000RequestCompletedThe platform completed the request.
107005RequestRefusedDueToOperationModeThe current Operation Mode cannot accept this interaction. Change the Operation Mode and retry the request.
107007AppointmentsDisabledAppointment interactions are disabled in the platform. Enable appointment interactions and retry the request.
107009DuplicateContactInQueueThe platform could not complete the request because callback double check detected another interaction with this contact in this queue. Change the contact and retry the request.
107010AppointmentTimeAfterHoursThe appointment time that you submitted is outside of the business hours.
107011AppointmentTimeBeforeEWTThe appointment time that you submitted is before the estimated wait time for this queue.
107014AppointmentTimeFullNo appointments are available for the specified times.
107019InvalidSourceApplicationFormatThe Source Application specified is in an invalid format and cannot be processed. Check the data value and resubmit the request. This return is only applicable for the Add Interaction and Create Interaction methods.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108001InvalidSegmentThe segment is not valid for the specified tenant.
108004InvalidDateTimeThe date or time that you submitted is not valid. Verify that the date or time is in the following format: yyyy-mm-ddTHH:mm:ssZ. The hours must be in 24-hour format.
108005InvalidContactThe contact that you provided is not valid. Verify that the contact meets the phone number validation requirements in Callback and then resubmit the request.
108009ContactRequiredYou must submit a contact for this request.
108016QueueIdRequiredYou must submit a QueueID for this request.
108022SegmentRequiredYou must submit a segment for this request.
108037AppointmentTimeAfterAppointmentTimesRangeThe appointment time that you provided is after the valid appointment time range.
108040UserDataFailedValidationThe user data entered is not in the correct format.
108054InvalidCallTypeThe call type must be valid (ASAP or Callback)
109000UnexpectedErrorThe request could not be completed because the server encountered an unexpected condition. Try the request again. If this error continues, contact your support representative.
109003ResourcesUnavailable

The request could not be completed. A Callback resource might be down or unavailable. Submit your request again.

In PTK versions 1 through 4, if this code is returned because a license was not available for the request, the description "A license for this request is not available" will be used instead.

109004PlatformUnavailableThe request could not be completed. The platform is not available and cannot process requests. Submit your request again.
109005LicenseUnavailableA license for this request is not available.
109009AppointmentErrorAn error occurred when making the interaction appointment. Verify that you have scheduling enabled and then try your request again.
109030InvalidModeStatusForInteractionThe request to add an interaction failed because the mode status was not valid.
109032InvalidLicenseResultThe license availability request returned an invalid result.
109033FeatureUnavailableThe feature for this request is not available for Site or Queue.
109034NoValidLicenseFileThe license file is missing, invalid, or expired.
109035BandwidthExceededTotal number of requests from the previous time period (specified in license file, default = 15 minutes) is greater than the allowed bandwidth for this group.

AssociateInteractionWithExternalTrackingID

This Platform Toolkit (PTK) request is used to associate an outbound call with an external tracking ID. It consists of an Interaction ID for the interaction being managed by the On-Premise Callback system and an External Tracking ID. The External Tracking ID is an identifier from the system performing the call routing that Callback uses to match a call appearing in a queue.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
Interaction IDN/A
External Tracking IDN/A

Example response

AssociateInteractionWithExternalTrackingID returns a status code.

Status codes

The response can return the following status codes.

Status codeConditionDescription
17002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108007InvalidInteractionIdThe interaction ID that you submitted is not valid. Revise the interaction ID and resubmit the request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108041ExternalTrackingIdMissingThe external tracking id is missing or invalid.
108042DuplicateExternalTrackingIdFoundThe external tracking id passed in already exists in our system.

CreateInteraction

This Platform Toolkit (PTK) interaction is used by the VXML Interaction Server. It allows you to add a new interaction to the On-Premise Callback system. You can map an External Tracking ID with this interaction and define a Source Application. This method does not advance a call through the system.

  • In On-Premise Callback versions 8.3 to 8.9, this request requires a valid On-Premise Callback license.
    • If the Source Application element is VXML or voice (case insensitive), the request decrements the number of available voice licenses. Otherwise, the request will decrement the number of non-voice licenses
  • In On-Premise Callback version 8.10 or later, this request requires a valid On-Premise Callback license.
    • If the source application is VXML Interaction Server (case sensitive), the request decrements the number of inbound licenses.
    • If the source application is your own voice application (such as Globex Voice Application, case sensitive), the request decrements the number of inbound licenses.

Contact Mindful Support to add a custom application to the list of valid voice applications.

If no license is available, status code 109003 ResourcesUnavailable (PTK v1-4) or 109005 LicenseUnavailable (PTK v5) is returned. Status codes 109032, 109033, and 109034 can also be returned by this request when using PTK v5.

  • CreateInteraction will not create an interaction when the queue is in Shutdown operation mode. The message Request refused due to Operation Mode is returned when an attempt is made.
  • UU_DATA must be used as the key for attaching UUI data when using TIAL Genesys PSDK.
  • When using TIAL Avaya TSAPI:
    • with GlobalCallIVR, Avaya_UUI must be used as the key for attaching UUI data
    • with AVP, Avaya_UUI must be used as the key for attaching UUI data
    • UUI format being passed needs to match what is required by business requirements
  • Pass Peripheral Variables and Extended Call Context Variables to add user data to callbacks when using Cisco with TIAL ICM.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired. Must pass a NULL value if not using a valid value for these parameters.
SegmentN/AString
External Tracking IDN/AString
Source ApplicationN/AString

Optional. Use this parameter to record which application requested the callback to the On-Premise Callback reporting database.

Required. Use this parameter to record which application requested the callback to the Callback reporting database.

  • The following will be considered a voice interaction for licensing:
    • vxml (On-Premise Callback 8.3 - 8.10)
    • voice (On-Premise Callback 8.3 - 8.10)
    • VXML Interaction Server (On-Premise Callback 8.11 or later)
    • VIS - Second Chance (On-Premise Callback 8.11 or later)
    • 800-Intercept (On-Premise Callback 8.13 or later)
  • If the value is Messaging (On-Premise Callback 8.13 or later), the interaction will be considered a Conversation Bridge interaction for licensing.
  • If no value is submitted in On-Premise Callback versions 8.3 to 8.10.0, PTK assigns "Platform Toolkit" as the default source application.
  • If no value is submitted in On-Premise Callback version 8.11 or later, PTK assigns "Conversation Bridge" as the default source application.

In On-Premise Callback version 7.6.24 and later, only voice channel source applications allow for updating a new interaction to an ASAP callback when the operation mode changes from Normal to either Standby or Purge. These will be indicated in the report database with the following numerical representations:

  • 3 = VXML Interaction Server
  • 4 = GlobalCall IVR
  • 5 = Legacy GVP

Non-voice channel source applications (ACD, WebConnect API, and Platform Toolkit API) do not allow the state of the call to be updated to a callback and will use the current operation mode.

Values for Source Application are case sensitive in Callback versions 8.11 or later.

IMPORTANT

Source Application does not accept a pipe | as a valid character.

UserDataUserDataAssignmentStringRequired. Must pass a NULL value if not using a valid value for these parameters.
--KeyString
--ValueS

Example request

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <CreateInteraction>
      <Tenant>Portree</Tenant>
      <Segment>VHT_Test</Segment>
      <ExternalTrackingId>TE2KGMTIF56DL6J1ILRU2TPIS800004J</ExternalTrackingId>
      <SourceApplication>Mobile Application</SourceApplication>
    </CreateInteraction>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Example response

< xml version="1.0" encoding="utf-8" >
<soap:Envelope>
  <soap:Body>
    <CreateInteractionResponse>
      <CreateInteractionResult>
        <ResultCode>107000</ResultCode>
        <Result>RequestCompleted</Result>
        <Description>The platform completed the request.</Description>
        <Guid>84a7bc7a-b6d5-4960-8bcb-8b6dc5464f6a</Guid>
        <InteractionId>V0014000000001917072015093838470</InteractionId>
      </CreateInteractionResult>
    </CreateInteractionResponse>
  </soap:Body>
</soap:Envelope>

Status codes

The response can return the following status codes.

Status codeConditionDescription
107000RequestCompletedThe platform completed the request
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107004InvalidOperationModeReturnedThe Operation Mode that this request returned is either missing or not valid.
107019InvalidSourceApplicationFormatThe Source Application specified is in an invalid format and cannot be processed. Check the data value and resubmit the request. This return is only applicable for the Add Interaction and Create Interaction methods.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108001InvalidSegmentThe segment is not valid for the specified tenant.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108022SegmentRequiredYou must submit a segment for this request.
108040UserDataFailedValidationThe user data entered is not in the correct format.
108041ExternalTrackingIdMissingThe external tracking id is missing or invalid.
108042DuplicateExternalTrackingIdFoundThe external tracking id passed in already exists in our system.
108054InvalidCallTypeThe call type must be valid (ASAP or Callback)
109001MethodNotImplementedThe request could not be completed because the server does not support the functionality required to do so.
109005LicenseUnavailableA license for this request is not available.
109010UnableToCreateInteractionCallback was unable to create the interaction because an error occurred in a Callback component.
109032InvalidLicenseResultThe license availability request returned an invalid result.
109033FeatureUnavailableThe feature for this request is not available for Site or Queue.
109034NoValidLicenseFileThe license file is missing, invalid, or expired.
109035BandwidthExceededTotal number of requests from the previous time period (specified in license file, default = 15 minutes) is greater than the allowed bandwidth for this group.

FindInteraction

This Platform Toolkit (PTK) request retrieves data about a pending interaction, such as a pending callback, from the On-Premise Callback platform. You might use this request, for example, to identify an interaction so that you can cancel it, to look for duplicate interaction requests, or to check the status of the interaction.

This request retrieves the following information by default:

  • Interaction ID
  • Tenant
  • Segment
  • Phone number
  • Type of interaction (first-available or appointment)
  • Queue
  • Remaining wait time for a first-available interaction
  • Appointment time for an appointment

It can also retrieve the following information if you request it:

  • Status of the call (for example, whether the call was successful or not and whether the call was cancelled).
  • Which script number, or collection of prompts, the caller heard or would hear.
  • Location of the .vox file.
  • Call ID for the ACD where the call originated, if applicable.

Parameters

This request uses the following parameters:

ParameterValid elementsTypeRequired or Optional
TenantNAStringRequired
OptionsClientIDStringOptional
ContactEither Contact or InteractionID is required.
SegmentOptional
InteractionIDEither InteractionID or Contact is required.
OptionsData values
  • Callback_Failed
  • Callback_Cancelled
  • Phone_Number
  • Projected_Agent_Answer_Time
  • Scriptnumber
  • Voxfile
  • ACDCallID
  • Callback_Successful
--Optional

Example response

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataInteractionsInteractionInformation (name/value pairs)
  • Name: RemainingEWT or AppointmentTime
  • Value: String
  • Name: "QueuePosition" (PTK v5+)
  • Value: String - ("1", "5", "N/A" etc.)
  • Name: "SourceApplication" (PTK v4+)
  • Value: String - ("VXML Interaction Server", etc.)
IdString
Tenant
Queue
Segment
InteractionType
Contact

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108026InvalidSearchParametersOne or more of the search parameters is not valid.
109016QueueIdNotFoundThe Queue ID could not be found.
109021ContactNotFoundThe contact that you submitted does not exist in Callback.

GetInteractionData

This Platform Toolkit (PTK) method makes a request for all outbound variables for an interaction and gets this information using the Interaction ID.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
Interaction IDN/A
OptionsClientIdOptional

Example response

Response parameters

GetInteractionData can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataInteraction

Information

  • AppointmentTime
  • RemainingEWT
  • QueuePosition
  • Phone Number
  • Dial_Suffix
  • Dial_Prefix
  • Scriptnumber
  • Voxfile
  • QueueID
  • Holding_Queue_Transfer_Device
  • Callback_Queue_Transfer_Device
  • AnnouncedEWT
  • Upper_EWT
  • Callback_Attempts
  • No_Answer_Attempts
  • Busy_Attempts
  • Try_Again_Attempts
  • Callback_Failed_Count
  • Answering_Machine_Attempts
  • Is_Last_Answering_Machine_Attempt
  • Notify_Callback_Attempts
  • State
  • SourceApplication
---
DataInteractionUserData
UserDataAssignment
--KeyString
--Value
----String ValueString
----IntegerValueNumber
----BinaryValueHexadecimal Number
----ListValue
------UserDataAssignment
--------KeyString
--------Value
----------String ValueString
----------IntegerValueNumber
----------BinaryValueHexadecimal Number
----------ListValue
DataInteractionIdString
Tenant
Queue
Segment
InteractionType
Contact

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108007InvalidInteractionIdThe interaction ID that you submitted is not valid. Revise the interaction ID and resubmit the request.

GetNextAvailableAppointmentTime

This Platform Toolkit (PTK) request retrieves the available time slots, or appointment times, for scheduled interactions.

  • You must have the appropriate On-Premise Callback license to submit a scheduled interaction.
  • GetNextAvailableAppointmentTimes will not return any appointment times that fall on a holiday.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/A--Required
SegmentN/AOptional
OptionsClientId
NumberofAppointmentsInteger

Optional

If you do not use this element, the request submits the default value of 4.

AppointmentTimeDateTime

Optional

If you do not use this element, the request submits the default value which is the Queue Manager server time.

Example response

Response parameters

GetNextAvailableAppointmentTimes can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataAppointmentTimesN/AString

Status codes

The response can return the following status codes.

Status codeConditionDescription
107012AppointmentSlotsNotFoundNo appointments are available for the specified times.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108004InvalidDateTimeThe date or time that you submitted is not valid. Verify that the date or time is in the following format: yyyy-mm-ddTHH:mm:ssZ. The hours must be in 24-hour format.
108016QueueIdRequiredYou must submit a QueueID for this request.

GetSegments

This Platform Toolkit (PTK) request retrieves the segments that are configured in the VHT Callback®platform.

Use this request to verify that your application uses the same segments as Callback and as your telephony system.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
OptionsTenantStringOptional
ClientId

Example response

Response parameters

GetSegments can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataSegmentsTenantString

Status codes

The response can return the following status codes.

Status codeConditionDescription
107003SegmentsNotFoundThe platform cannot find any segments. Set up segments for the tenant or tenants and retry the request.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.

GetSegmentState

GetSegmentState request returns the information from the On-Premise Callback platform to the application. The application uses this information to determine how to process an interaction.

The response includes the following information in the StateData element:

  • Operation mode
  • Estimated Wait Time
  • Destination where Queue Manager recommends you route the interaction

GetSegmentState also tells your application whether it should offer the customer a callback. To make this decision, the request uses Queue Manager to evaluate the Callback settings, including Smart Purge.

  • In Callback version 8.3 or later, the response considers whether or not a license is available for the segment and source application.
  • In Callback version 8.11 or later, the response considers whether or not the minimum number of licenses is available for the segment and sources application.

Parameters

This request uses the following parameters:

ParameterRequired (Y/N)DescriptionExample
TenantYName of the tenantVHT
SegmentYName of the segmentVHT_Test
OptionsNClientID
Source Application(On-Premise Conversation Bridge v5 or later)N

Records which application requested the callback to the VHT_RPT database.

Voice interactions:

  • vxml (On-Premise Callback 8.3 - 8.10)
  • voice (On-Premise Callback 8.3 - 8.10)
  • VXML Interaction Server (On-Premise Callback 8.11 or later)
  • VIS - Second Chance (On-Premise Callback 8.11 or later)
  • If not submitted, Platform Toolkit is added as the default source application (On-Premise Callback 8.3 - 8.10).
  • If not submitted, Conversation Bridge is added as the default source application (On-Premise Callback 8.11 or later).
VXML Interaction Server

In On-Premise Callback releases 7.6.24 and later and 8.0.6.1075 or later, only voice channel source applications can update a new interaction to an ASAP callback when the Operation Mode changes from Normal to either Standby or Purge. These are indicated in the report database with the following numerical representations:

  • 3 = VXML Interaction Server
  • 4 = GlobalCall IVR
  • 5 = Legacy GVP

Non-voice channel source applications (ACD, WebConnect API and Platform Toolkit API) do not allow the state of the call to be updated to a callback, and use the current Operation Mode.

Example request

<GetSegmentState>
  <data>
    <Tenant>Portree</Tenant>
    <Segment>VHT_Test</Segment>
  </data>
</GetSegmentState>

Example response

<GetSegmentStateResponse>
      <GetSegmentStateResult>
        <Header>
          <Status>
            <Code>107000</Code>
            <Result>RequestCompleted</Result>
            <Description>The platform completed the request.</Description>
          </Status>
          <Id>efdf50ee-0004-4543-b7ab-9ce198279254</Id>
        </Header>
        <Data>
          <Segments>
            <Segment Tenant="Portree" Queue="VHT_Test" Name="VHT_Test">
              <StateData>
                <StateData Name="OperationMode" Value="Normal" />
                <StateData Name="EWT" Value="30" />
                <StateData Name="OfferTreatment" Value="1" />
                <StateData Name="ModeStatus" Value="" />
                <StateData Name="RecommendedDestination" Value="10000" />
                <StateData Name="QueueMode" Value="AgentPriority" />
              </StateData>
            </Segment>
          </Segments>
        </Data>
      </GetSegmentStateResult>
    </GetSegmentStateResponse>

Response parameters

The response can return the following items:

ResponseElementsDescription
ClientIDClientIDID of the client.
SegmentsSegment NameName of the segment.
QueueName of the queue.
TenantName of the tenant.
StateData

List of segment state data such as:

  • OperationMode
  • EWT
  • OfferTreatment
  • ModeStatus
  • RecommendedDestination
  • AreLicensesAvailable
  • QueueMode

Status codes

The response can return the following status codes.

Status codeNameDescription
107004InvalidOperationModeReturnedThe Operation Mode that this request returned is either missing or not valid.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108001InvalidSegmentThe segment is not valid for the specified tenant.
109003ResourcesUnavailableThe request could not be completed. A Callback resource might be down or unavailable. Submit your request again.
109005LicenseUnavailableA license for this request is not available.
109012InvalidEWTReturnedA request to retrieve the estimated wait time returned a value that is not valid.
109015InvalidOfferTreatmentThe offer treatment is not valid.
109024InvalidModeStatusReturnedA request for treatment data returned a mode status that is not valid.
109025InvalidRecommendedDestinationReturnedA request for treatment data returned a recommended destination that is not valid.
109036QueueModeInvalidOrMissingThe queue mode is invalid or missing.

GetSegmentVariables

This Platform Toolkit (PTK) request retrieves the VHT Callback®system values for the selected Queue Variables and for the specified segment.

Use this request to verify that your application provides the same user experience as the Callback system.

GetSegmentVariables can retrieve values for any VHT Callback queue variable. It also retrieves the CountryCode value associated with the specified segment.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
SegmentN/AStringOptional
OptionsClientIdStringOptional
VariableString

Optional. Use this element to specify the Queue Variables that you want values for.

If you don't use this element, the request returns the values for all of the variables.

Example request

<soap12:Envelope xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
   <soap12:Body>
      <GetSegmentVariables>
         <data>
            <Tenant>VHT</Tenant>
            <Segment>VHT_Test</Segment>
         </data>
      </GetSegmentVariables>
   </soap12:Body>
</soap12:Envelope>

Example response

<PlatformToolkitResponse>
    <Header>
        <ClientID></ClientID>
        <Id>2a9200b8-0c33-4c51-8dd9-c9e5c0c96614</Id>
        <Status>
            <Code>107000</Code>
            <Description>The platform completed the request.</Description>
            <ErrorMessage></ErrorMessage>
            <Result>RequestCompleted</Result>
        </Status>
    </Header>
    <Data>
        <Segments>
            <Segment Name="VHT_Test" Queue="VHT_Test" Tenant="VHT">
                <Variables>
                    <Variable Name="INBOUNDMAINMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="INBOUNDINVALIDMAXPHONENUMBER" Value="4" />
                    <Variable Name="OUTBOUNDMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="OUTBOUNDHAILINGMAXINVALIDRESPONSE" Value="6" />
                    <Variable Name="SCHEDULEDDAYMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="SCHEDULETIMEMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="SCHEDULEAMPMMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="SCHEDULEMAXINVALIDENTRY" Value="2" />
                    <Variable Name="ACCEPTSCHEDMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="VALIDATEUSERIDMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="VALIDATEPASSWORDMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="INBOUNDFURTHERMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="INBOUNDPOSTDESCMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="INBOUNDREENTERMAXPHONENUMBER" Value="3" />
                    <Variable Name="VALIDATESCRIPTMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="VALIDATEFILEMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="INBOUNDPHONEOKMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="ACCEPTSCHEDMENUFURTHERMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="SCHEDULEDCALLBACKON" Value="TRUE" />
                    <Variable Name="MAINMENUCHOOSEHOLD" Value="FALSE" />
                    <Variable Name="MAINMENUZEROHOLD" Value="FALSE" />
                    <Variable Name="MAINMENUSCHEDULE" Value="FALSE" />
                    <Variable Name="EUROPEAN" Value="FALSE" />
                    <Variable Name="MAINMENUSPEAKEWT" Value="TRUE" />
                    <Variable Name="QSPEAKSPEAKEWT" Value="TRUE" />
                    <Variable Name="HOLDTRANSFERSPEAKEWT" Value="TRUE" />
                    <Variable Name="FIFOTRANSFERSPEAKEWT" Value="TRUE" />
                    <Variable Name="INVALIDRESPONSESPEAKEWT" Value="TRUE" />
                    <Variable Name="INBOUNDMAINMENUMAXNORESPONSE" Value="2" />
                    <Variable Name="RESCHEDULEDCALLBACKON" Value="FALSE" />
                    <Variable Name="STRIPLEADINGZEROFROMPHONENUM" Value="FALSE" />
                    <Variable Name="AFTERHOURSMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="QSPEAKUNDERTHRESHOLD" Value="FALSE" />
                    <Variable Name="QSPEAKUNDERTHRESHOLDMINIMUMSECONDS" Value="0" />
                    <Variable Name="SPEAKMAXEWT" Value="TRUE" />
                    <Variable Name="SPEAKMAXEWTTIME" Value="03:00" />
                    <Variable Name="NORMALEWTPHRASE" Value="NormalEWTPhrase.vox" />
                    <Variable Name="RANGEEWTPHRASE" Value="RangeEWTPhrase.vox" />
                    <Variable Name="MAXEWTPHRASE" Value="MaxEWTPhrase.vox" />
                    <Variable Name="EXTRAEWTPHRASE" Value="" />
                    <Variable Name="TURNONTHRESHOLD" Value="0" />
                    <Variable Name="ALWAYSQUOTEUNITSINEWT" Value="FALSE" />
                    <Variable Name="AVOIDAMBIGUOUSHOURSINEWT" Value="TRUE" />
                    <Variable Name="BETWEENRANGESEWTPHRASE" Value="BetweenRangesEWTPhrase.vox" />
                    <Variable Name="VIRTUALQMENUZEROHOLD" Value="FALSE" />
                    <Variable Name="VIRTUALQMAXTRYDISCONNECT" Value="FALSE" />
                    <Variable Name="VIRTUALQMENUSCHEDULE" Value="FALSE" />
                    <Variable Name="VIRTUALQMENUSPEAKEWT" Value="TRUE" />
                    <Variable Name="MAXANSMACHNORESPONSE" Value="1" />
                    <Variable Name="MAXANSMACHATTEMPTS" Value="2" />
                    <Variable Name="MAXATTEMPTS" Value="5" />
                    <Variable Name="BUSYATTEMPTS" Value="3" />
                    <Variable Name="NOANSATTEMPTS" Value="3" />
                    <Variable Name="TRYAGAINATTEMPTS" Value="3" />
                    <Variable Name="QUEUESPEAK_ROUTEDESTINATION" Value="UnderThreshold" />
                    <Variable Name="DIALEXTENSION_DIALDELAY" Value="3" />
                    <Variable Name="DIALEXTENSION_HAILDELAY" Value="3" />
                    <Variable Name="DIALEXTENSION_REENTERLIMIT" Value="3" />
                    <Variable Name="DIALEXTENSION_TERMINATORDIGIT" Value="#" />
                    <Variable Name="DIALEXTENSION_GETMAXNORESPONSE" Value="1" />
                    <Variable Name="DIALEXTENSION_INCLUDETERMINATOR" Value="FALSE" />
                    <Variable Name="DIALEXTENSION_REQUESTMAXNORESPONSE" Value="1" />
                    <Variable Name="DIALEXTENSION_VALIDATEMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="DIALEXTENSION_HAILINGMAXINVALIDRESPONSE" Value="10" />
                    <Variable Name="DIALEXTENSION_HAILMENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="DATEBOOK_MENUMAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="CBDC_MAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="CBDC_TIME_REMAINING_THRESHOLD" Value="120" />
                    <Variable Name="UPPEREWTRANGE" Value="0" />
                    <Variable Name="LOWEREWTRANGE" Value="0" />
                    <Variable Name="SMARTVIRTUALQTHRESHOLD" Value="" />
                    <Variable Name="SMARTCALLBLOCKTHRESHOLD" Value="" />
                    <Variable Name="NOTIFY_ATTEMPTPERIODTIME" Value="00:05:00" />
                    <Variable Name="NOTIFY_INBOUNDTREATMENT" Value="Normal" />
                    <Variable Name="NOTIFY_INTERVALTIME" Value="00:15:00" />
                    <Variable Name="NOTIFY_MAXANSMACHATTEMPTS" Value="1" />
                    <Variable Name="NOTIFY_MAXCALLATTEMPTS" Value="3" />
                    <Variable Name="NOTIFY_MAXINVALIDRESPONSE" Value="2" />
                    <Variable Name="NOTIFY_HAILINGMAXINVALIDRESPONSE" Value="6" />
                    <Variable Name="NOTIFY_MODESLEEPTIME" Value="00:00:05" />
                    <Variable Name="NOTIFY_OFFERDATEBOOK" Value="TRUE" />
                    <Variable Name="NOTIFY_OFFERREMAININQUEUE" Value="TRUE" />
                    <Variable Name="NOTIFY_PLAYINBOUNDPROMPTS" Value="TRUE" />
                    <Variable Name="NOTIFY_POSTPONECALLBACK" Value="FALSE" />
                    <Variable Name="NOTIFY_CALLLIST" Value="FALSE" />
                    <Variable Name="NOTIFY_SPEAKWINDOW" Value="FALSE" />
                    <Variable Name="NOTIFY_TIMEEXPIREOPMODE" Value="Notify" />
                    <Variable Name="NOTIFY_VIRTUALQUEUELIST" Value="TRUE" />
                    <Variable Name="NOTIFY_REMAININGTIME" Value="" />
                    <Variable Name="RECALLAGENTSAVAILMODE" Value="1" />
                    <Variable Name="RECALLALLOWSCHEDULING" Value="FALSE" />
                    <Variable Name="RECALLIVRID" Value="ALL" />
                    <Variable Name="RECALLMAXANSWERINGMACHINEATTEMPTS" Value="2" />
                    <Variable Name="RECALLMAXANSWERINGMACHINENORESPONSE" Value="1" />
                    <Variable Name="RECALLMAXBUSYATTEMPTS" Value="2" />
                    <Variable Name="RECALLMAXBUSYPERIOD" Value="" />
                    <Variable Name="RECALLMAXCOMBOATTEMPTS" Value="2" />
                    <Variable Name="RECALLMAXHAILINGINVALIDRESPONSE" Value="5" />
                    <Variable Name="RECALLMAXINVALIDRESPONSE" Value="5" />
                    <Variable Name="RECALMAXNOANSWERATTEMPTS" Value="2" />
                    <Variable Name="RECALLMAXTRYAGAINATTEMPTS" Value="2" />
                    <Variable Name="RECALLMAXTRYAGAINPERIOD" Value="00:15:00" />
                    <Variable Name="RECALLNAMEREQUIRED" Value="FALSE" />
                    <Variable Name="RECALLNUMAGENTSAVAILBEFORERECALL" Value="5" />
                    <Variable Name="RECALLNUMPRIORITYQUEUETOPAUSERECALL" Value="5" />
                    <Variable Name="RECALLSTATE" Value="1" />
                    <Variable Name="RECALLXFERMODE" Value="1" />
                    <Variable Name="RECALLMINOBPORTS" Value="4" />
                    <Variable Name="MAINMENUFURTHEROPTION" Value="TRUE" />
                    <Variable Name="DATEBOOK_CHOOSEHOLD" Value="FALSE" />
                    <Variable Name="FASTFWD_TIMESLOTSUGGESTMAXENTRY" Value="2" />
                    <Variable Name="FASTFWD_TIMESLOTSUGGEST" Value="FALSE" />
                    <Variable Name="FASTFWD_MAIN_MAXENTRY" Value="2" />
                    <Variable Name="DATEBOOK_ENDCALL" Value="TRUE" />
                    <Variable Name="SPEAKMINEWT" Value="FALSE" />
                    <Variable Name="SPEAKMINEWTTIME" Value="00:02:00" />
                    <Variable Name="MINEWTPHRASE" Value="MinEWTPhrase.vox" />
                    <Variable Name="USEINTERNATIONALPROMPTS" Value="FALSE" />
                    <Variable Name="ANIPLAYBACKENABLED" Value="FALSE" />
                    <Variable Name="SPEAKEWTUNDERTHRESHOLDINQSPEAKMODE" Value="FALSE" />
                    <Variable Name="CDBC_ENABLED" Value="TRUE" />
                    <Variable Name="SECONDCHANCE_ENABLED" Value="FALSE" />
                    <Variable Name="SECONDCHANCE_THRESHOLD" Value="120" />
                    <Variable Name="SECONDCHANCE_SPEAKEWT" Value="FALSE" />
                    <Variable Name="CallbackQueueID" Value="1000" />
                    <Variable Name="CallbackQueueDevice" Value="1000" />
                    <Variable Name="HoldingQueueID" Value="1000" />
                    <Variable Name="HoldingQueueDevice" Value="1000" />
                    <Variable Name="UnderThresholdQueueID" Value="1000" />
                    <Variable Name="UnderThresholdQueueDevice" Value="1000" />
                    <Variable Name="SCRIPTNUMBER" Value="1" />
                    <Variable Name="CountryCode" Value="1" />
                    <Variable Name="MainMenuMessaging" Value="FALSE" />
                    <Variable Name="DatebookMessaging" Value="FALSE" />
                    <Variable Name="VirtualQMessaging" Value="FALSE" />
                    <Variable Name="MessagingHandle" Value="" />         
                    <Variable Name="MessagingTags" Value="" />
                    <Variable Name="MessagingOverrideCountryCode" Value="" />
                    <Variable Name="MessagingOfferMessage" Value="This is the message you requested" />
                </Variables>
            </Segment>
        </Segments>
    </Data>
</PlatformToolkitResponse>

Status codes

The response can return the following status codes.

Status codeConditionDescription
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
1080001InvalidSegmentThe segment is not valid for the specified tenant.

<HR---->

GetStatus

This Platform Toolkit (PTK) request returns the status of the VHT Callback® platform.

It tells you whether the Callback Platform can process requests from the Platform Toolkit.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
OptionsClientIdStringOptional
Tenant

Example response

Response parameters

GetStatus can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataTenant

Tenant Name

  • Status
String

Status codes

The response can return the following status codes.

Status codeConditionDescription
106000PlatformAvailableThe platform for the tenant can process requests now
109004PlatformUnavailableThe request could not be completed. The platform is not available and cannot process requests. Submit your request again.
109006TenantsNotFoundNo tenants were found.

GetSystemVariables

Use this Platform Toolkit (PTK) method to retrieve all configured system variables. This request returns only the variables and corresponding values configured in the SystemVariables table in the VHT_Config database.

Changes made to any System Variables require a restart of Queue Manager.

Parameters

This request uses the following parameter:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired

Example response

Response parameters

This request returns the following:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataVariablesResultCodeString
Result
Description
Guid
VariablesList

Status codes

The response can return the following status codes.

Status codeConditionDescription
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.

<HR---->

GetVersion

This Platform Toolkit (PTK) request returns the version of the WSDL in the form of integer.integer (major.minor).

  • A major increment to the version is when there is a change to the WSDL.
  • A minor increment to the version:
    • does not change the WSDL
    • occurs when the Platform Toolkit has incidental changes to functionality, or
    • internally changes to maintain its inter-operation with VHT Callback® software.

Parameters

This request uses the following parameter:

ParameterValid ElementsTypeRequired or Optional
OptionsClientIdStringOptional

Example response

Response parameters

GetVersion returns the following item:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataDataPlatformToolkitVersionInteger

Status codes

The response can return the following status codes.

Status codeConditionDescription
07000RequestCompletedThe platform completed the request.

InteractionCancelled

This Platform Toolkit (PTK) method is used to notify Queue Manager about the caller canceling a callback. This method also supports canceling callbacks from EyeQueue or Configuration.

If a call was created by CreateInteraction for a VXML (voice) call, and a license was reserved, this method will release the license back to License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
TenantStringRequired
InteractionIdStringRequired

CancelledBy

  • Caller
  • Administrator
  • CBDC
  • ChoseMessaging
  • RejectMessaging
EnumerationRequired

ChoseMessaging and RejectMessaging are used by the 800Intercept application.

Example response

Response parameters

The response can return the following items:

InteractionCancelled can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataInteractionStatus CodeString
Status Message
Description
GUID

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108029InteractionCannotBeCancelledAn interaction can only be cancelled if it is a callback and if that callback has not been accepted by the caller. The interaction was not cancelled.
108031CancelledByRequiredThe cancelling party must be included in the CancelledBy field.

<HR---->

InteractionDequeued

This Platform Toolkit (PTK) method is used to notify Queue Manager that an interaction has departed a skill queue or was abandoned while in queue. This must be invoked with a valid Tenant, InteractionId or ExternalTrackingId, and Reason.

Use the InteractionDequeued method when:

  • An Interaction has departed the Queue due to Agent availability. When invoked for an inbound call, the Interaction State changes to Complete Hold Call, Complete Under Threshold or Complete Force Hold.
  • An Interaction has departed the Queue because the caller has Abandoned it. If this is invoked for an inbound call, the Interaction State will be changed to Abandon on Hold Queue. When invoked for an outbound call, then the Interaction State changes to Abandon On Callback Queue.
  • An interaction has departed the Queue because the caller accepted the second chance callback offer. When invoked for an inbound call, the Interaction State changes to "Accept Second Chance Offer".

A new interaction is created to register the second chance callback.

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
TenantStringRequired
InteractionIdStringEither InteractionId or ExternalTrackingId is required.
ExternalTrackingIdStringEither InteractionId or ExternalTrackingId is required.

Reason

  • AgentAnswered
  • Abandoned
  • ChoseSecondChance
EnumerationRequired

Example response

Response parameters

InteractionDequeued can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataCompleteStatus MessageString
Code

Status codes

InteractionDequeued can return the following status codes:

NumberNameDescription
107002InteractionNotFound1The platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107018InteractionStatePreventsRequestedAction4The Interaction is currently in a state the prevents the requested action from being performed. The action is not appropriate at this time.
108000InvalidTenant1The tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108046InteractionIDOrExternalTrackingID Required4The interaction is missing an Interaction ID and external tracking ID.
108047DequeuedReasonMissing4Reason for dequeue is blank.
108048DequeuedReasonInvalid4When reason provided is something other than AgentAnswered or Abandoned

InteractionDisconnectedByApplication

This Platform Toolkit (PTK) method is used to notify Queue Manager that the call is being disconnected by the client application (e.g., the VXML Interaction Server). Use AfterHours reason for AfterHours scenarios, SmartCallBlock reason in SmartCallBlock scenarios and Other reason in all other scenarios.

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
InteractionIdStringRequired

Reason

  • AfterHours
  • SmartCallBlock
  • Other
EnumerationRequired
TenantStringRequired

Example response

Response parameters

InteractionDisconnectedByApplication returns the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataSuccess or FailureInteractionDisconnectedByApplication ResponseString

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108038InvalidDataNameYou must submit a valid data name for this request.
109028DataNameUnavailableWhen requesting a private data name

InteractionDisconnectedByCaller

This Platform Toolkit (PTK) method is used to notify QueueManager about caller abandons while in an inbound or outbound callflow or while in queue.

If the call was created by the CreateInteraction method for a VXML (voice) call and a license was reserved, this method will release the license back to License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
InteractionIdStringRequired
TenantStringRequired

Reason

  • Abandon
  • CBDCDisconnectAndKeepPendingCallback
  • CBDCDisconnectAndCancelPendingCallback
  • CBDCMaxInvalidResponse
  • ChoseMessaging
EnumerationRequired

InteractionDisconnectedByCallerReason Parameter

One of the following reasons must be passed by client applications while invoking the InteractionDisconnectedByCaller method in order to generate accurate reporting data. The explanations below outline the scenarios and/or use cases for all the currently supported reasons:

  • Abandon - Use this reason if the caller abandoned the call while in a holding or callback queue.
  • CBDCDisconnectAndKeepPendingCallback - Use this reason if the caller chose to disconnect and keep their pending callback after hearing Callback DoubleCheck prompts.
  • CBDCDisconnectAndCancelPendingCallback - Use this reason if the caller chose to disconnect and cancel their pending callback after hearing Callback DoubleCheck prompts.
  • CBDCMaxInvalidResponse - Use this reason if the caller reached the maximum number of invalid responses while responding to Callback DoubleCheck prompts.
  • ChoseMessaging - Use this reason if the caller accepted a Mindful Messaging offer.

Example response

Response parameters

InteractionDisconnectedByCaller returns the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataSuccess or FailureInteractionDisconnectedByCaller ResponseString

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108055InteractionCannotBeDisconnectedThe interaction must be receiving inbound treatment or be in a queue for an agent in order to be disconnected. Interaction was not disconnected.

InteractionOutboundAttemptFailed

This Platform Toolkit (PTK) method is used to notify QueueManager that a callback attempt failed and gives the reason for the failure so that the system can make the correct decision on handling the call. The system may either reschedule or mark the interaction as completed, depending on the configuration of the system. This method is also utilized for notifying abandons on Outbound attempts.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
InteractionIdStringRequired

Reason

  • Busy
  • NoAnswer
  • Abandon
  • InvalidResponseForceDisconnected
  • NoResponse
  • NoIvrResponse
  • NoResponseFromDial
  • NoRingBack
  • FaxTone
  • AnsweringMachine
  • Other
EnumerationRequired
TenantStringRequired

Status codes

The response can return the following status codes.

Status codeConditionDescription
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108027ReasonRequiredYou must submit a reason code for this request.
109028DataNameUnavailableWhen requesting a private data name
109029DataRequiredAll data is missing when sending request

InteractionOutboundConnected

This Platform Toolkit (PTK) method is used to notify Queue Manager when the On-Premise Callback system launches the callback and the caller is connected.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
InteractionIdStringRequired
Tenant

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107018InteractionStatePreventsRequestedActionThe Interaction is currently in a state the prevents the requested action from being performed. The action is not appropriate at this time.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.

InteractionQueued

This Platform Toolkit (PTK) method is used to notify Queue Manager that an interaction has been queued to a skill, where the Skill can be either a Holding Queue or Callback Queue.

This must be invoked with a valid Tenant, SkillId, and ExternalTrackingId or InteractionId.

If the requested InteractionId or ExternalTrackingId is not found in the system, then the On-Premise Callback software will create a new interaction and set the state appropriately.

Use the InteractionQueued method when:

  • A new or existing interaction arrives in the Holding Queue. This will result in changing the internal Interaction State to "Queued to Hold Queue."
  • An existing interaction is queued to the Callback Queue. This will result in changing the Interaction State to "Queued to Callback Queue."

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
InteractionIdStringEither InteractionId or ExternalTrackingId is required.
TenantStringRequired
ExternalTrackingIdStringEither InteractionId or ExternalTrackingId is required.
SkillIdStringRequired

Example response

Response parameters

InteractionQueued returns the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataSuccessStatus CodeString
Status Message
InteractionId

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107005RequestRefusedDueToOperationModeThe current Operation Mode cannot accept this interaction. Change the Operation Mode and retry the request.
107018InteractionStatePreventsRequestedActionThe Interaction is currently in a state the prevents the requested action from being performed. The action is not appropriate at this time.
107100RequestCompletedWithInteractionIdThe platform completed the request and returned an interaction id.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108001InvalidSegmentThe segment is not valid for the specified tenant.
108041ExternalTrackingIdMissingThe external tracking id is missing or invalid.
108042DuplicateExternalTrackingIdFoundThe external tracking id passed in already exists in our system.
108045SkillIdNotFoundThe skill id submitted was not found.
109010UnableToCreateInteractionCallback was unable to create the interaction because an error occurred in a Callback component.
109016QueueIdNotFoundThe Queue ID could not be found.

InteractionRequestContact

This Platform Toolkit (PTK) method supports the need of ASAP and Appointment (up to version 8.11.1) or Scheduled (version 8.11.2 or later) callbacks.

If a caller chooses an ASAP or Appointment / Scheduled callback, then the application developer uses this method to convert the existing interaction to a callback.

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
TenantStringRequired
InteractionIdStringRequired
ContactURIStringRequired

Example request

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
    <InteractionRequestContact>
      <Tenant>Portree</Tenant>
      <InteractionId>V0001000000000107082015130324798</InteractionId>
      <ContactURI>voice://8001/</ContactURI>
    </InteractionRequestContact>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Example response

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope>
  <soap:Body>
    <InteractionRequestContactResponse>
      <InteractionRequestContactResult>
        <ResultCode>107000</ResultCode>
        <Result>RequestCompleted</Result>
        <Description>The platform completed the request.</Description>
        <Guid>57469184-5c29-4dd3-b24d-3709fc76ffd7</Guid>
      </InteractionRequestContactResult>
    </InteractionRequestContactResponse>
  </soap:Body>
</soap:Envelope>

Response parameters

InteractionRequestContact can return the following items:

ResponseElementsType
Client IDID of Client
Status CodeRefer to Status Codes, below
DataInteractionStatus CodeString
Status Message
Description
Guid

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107005RequestRefusedDueToOperationModeThe current Operation Mode cannot accept this interaction. Change the Operation Mode and retry the request.
107007AppointmentsDisabledAppointment interactions are disabled in the platform. Enable appointment interactions and retry the request.
107009DuplicateContactInQueueThe platform could not complete the request because Callback Double Check detected another interaction with this contact in this queue. Change the contact and retry the request.
107010AppointmentTimeAfterHoursThe appointment time that you submitted is outside of the business hours.
107011AppointmentTimeBeforeEWTThe appointment time that you submitted is before the estimated wait time for this queue.
107014AppointmentTimeFullNo appointments are available for the specified times.
107017InvalidContactURIFormatThe Contact URI you submitted is not valid. Either the phone number is not valid or the date is not in the correct format: yyyy-mm-ddTHH:mm:ssZ.
107020SegmentNotSet
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108004InvalidDateTimeThe date or time that you submitted is not valid. Verify that the date or time is in the following format: yyyy-mm-ddTHH:mm:ssZ. The hours must be in 24-hour format.
108005InvalidContactThe contact that you provided is not valid. Verify that the contact meets the phone number validation requirements in Callback and then resubmit the request.
108007InvalidInteractionIdThe interaction ID that you submitted is not valid. Revise the interaction ID and resubmit the request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108019AppointmentTimeInThePastThe time that you submitted for the appointment is before the current time. Submit a valid time and retry the request.
108037AppointmentTimeAfterAppointmentTimesRangeThe appointment time that you provided is after the valid appointment time range.
108054InvalidCallTypeThe call type must be valid (ASAP or Callback)
109009AppointmentErrorAn error occurred when making the interaction appointment. Verify that you have scheduling enabled and then try your request again.
109016QueueIdNotFoundThe Queue ID could not be found.
109030InvalidModeStatusForInteractionThe request to add an interaction failed because the mode status was not valid.

InteractionSendToQueue

This Platform Toolkit (PTK) method supports the need of transferring the calls to Queue, whether it is inbound (i.e., Chose Hold, Under Threshold) or outbound (the caller presses '1' to talk to an agent).

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterTypeRequired or Optional
TenantStringRequired
InteractionIdStringRequired

Reason

  • ChoseHold
  • ForceHold
  • MaxInvalidResponse
  • QueueSpeak
  • SpeakToAgent
  • TroubleTransfer
  • UnderThreshold
  • CBDCSendToHoldingQueue
  • CBDCSendToPriorityQueue
EnumerationRequired

InteractionSendToQueue Reason Parameter

One of the following reasons must be passed by client applications while invoking the InteractionSendToQueue method in order to generate accurate reporting data. The explanations below outline the scenarios and/or use cases for all the currently supported reasons:

  • ChoseHold - Use this reason if the caller chose to remain on hold by making the proper selection.
  • ForceHold - Use this reason if the On-Premise Callbacksystem is in After Hours mode, or if Call Block is enabled.
  • MaxInvalidResponse - Use this reason if the caller has exceeded the maximum number of invalid attempts or responses.
  • QueueSpeak - Use this reason if the Callback system is in QueueSpeak mode.
  • SpeakToAgent - Use this reason when the caller receives a callback and presses 1 to speak to an agent. This is mostly used with outbound calls.
  • TroubleTransfer - Use this reason during any kind of trouble scenarios; e.g., the Callback system is unresponsive, or the client application is down, etc.
  • UnderThreshold - Use this reason when the EWT is below the Callback Turn-on Threshold. The caller is not offered Callback treatment and is sent directly to the queue. Also, this reason must be used for Standby, Purge Mode or Smart Purge.
  • CBDCSendToHoldingQueue - Use this reason when a caller transfers to hold in a callback double situation.
  • CNDCSendToPriorityQueue - Use this reason when a caller transfers to priority queue in a callback double situation.

Example response

Response parameters

InteractionSendToQueue can return the following items:

ResponseElementsType
Client IDId of Client
Status CodeRefer to Status Codes, below
DataInteractionStatus CodeString

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108038InvalidDataNameYou must submit a valid data name for this request.
108039DataValueRequiredYou must submit a data value for this request.
109028DataNameUnavailableWhen requesting a private data name

<HR---->

ModifyInteraction

For a pending interaction, or callback, this Platform Toolkit (PTK) request can change the following values:

  • Appointment time
  • Callback result code that is sent to Queue Manager
  • Client ID
  • Data Name (PTK v2 or higher)
  • Data Value (PTK v2 or higher)

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
InteractionIdN/A

Action

  • AppointmentTime
  • Result
  • Abandon (PTK v2+)
  • Set Data Value (PTK v2+)
N/AEnumerationRequired
OptionsClientIdStringRequired when the action that you want to modify is ClientId.

Result1

  • SUCCESS
  • CANCELLED
  • NO ANSWER
  • Busy
  • No Response
  • Answering Machine
  • 200
  • 300
  • 409
StringRequired when the action that you want to modify is Result.
AppointmentTimeDateTimeRequired when the action that you want to modify is AppointmentTime.
Data Name (PTK v2+)StringRequired when the action that you want to modify is Data Name.
Data Value (PTK v2+)Required when the action that you want to modify is Data Value.

1. When calling the Action of Result, a result code matching one of the result codes configured in the CallInfos section of VHT_Message_Bus.exe.config must be entered. This is located under Virtual Hold Technology\PlatformToolKit. Note: Type must be one of the following: CALLINFO_CALLBACK_FAILED, CALLINFO_CALLBACK_SUCCESSFUL, CALLINFO_CALLBACK_CANCELLED.

Example response

Response parameters

ModifyInteraction returns a status message

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107010The platform cannot find the interaction. The system is no longer tracking interactions for this ID.The appointment time that you submitted is outside of the business hours.
107011AppointmentTimeBeforeEWTThe appointment time that you submitted is before the estimated wait time for this queue.
107014AppointmentTimeFullNo appointments are available for the specified times.
107015InteractionStatePreventsModifyingAppointmentTimeYou cannot change the appointment time because the interaction is already active.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108004InvalidDateTimeThe date or time that you submitted is not valid. Verify that the date or time is in the following format: yyyy-mm-ddTHH:mm:ssZ. The hours must be in 24-hour format.
108010AppointmentTimeRequiredYou must submit an appointment time for this request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108019AppointmentTimeInThePastThe time that you submitted for the appointment is before the current time. Submit a valid time and retry the request.
108028InvalidInteractionReasonYou must submit a valid reason for the interaction that you want to remove. Valid reasons are Web Canceled and Admin Canceled.
108030InvalidActionThe action that you selected to modify the interaction is invalid.
108033InvalidResultThe result code for the attempt to modify the interaction is not valid.
108037AppointmentTimeAfterAppointmentTimesRangeThe appointment time that you provided is after the valid appointment time range.
108038InvalidDataNameYou must submit a valid data name for this request.
108039DataValueRequiredYou must submit a data value for this request.
109009AppointmentErrorAn error occurred when making the interaction appointment. Verify that you have scheduling enabled and then try your request again.
109016QueueIdNotFoundThe Queue ID could not be found.
109020InvalidResultConfigurationThe configuration for interaction results is incorrect. Revise your configuration file and retry your request.
109028DataNameUnavailableWhen requesting a private data name

RemoveInteraction

This Platform Toolkit (PTK) request deletes an interaction such as a callback.

Use this request to remove the interaction from the VHT Callback® system when a customer cancels their callback.

If the call was created by a CreateInteraction method for a VXML (voice) call, and a license was reserved, this method will release the license back to the License Manager.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
InteractionIdN/AStringRequired
ReasonN/AStringRequired
OptionsClientIdStringOptional

Example response

Response parameters

RemoveInteraction returns a status message.

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108007InvalidInteractionIdThe interaction ID that you submitted is not valid. Revise the interaction ID and resubmit the request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108027ReasonRequiredYou must submit a reason code for this request.
108028InvalidInteractionReasonYou must submit a valid reason for the interaction that you want to remove. Valid reasons are Web Canceled and Admin Canceled.

<HR---->

UpdateInteractionData

This Platform Toolkit (PTK) method allows client applications to modify any interaction related data such as phone number, appointment time, external tracking ID, etc.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
Interaction IDN/AStringRequired
Interaction Key Value Pair
  • Data Name
    • ExternalTrackingID
    • AppointmentTime
    • Phone Number
  • Data Value
  • Enumeration
  • String
Required

Example response

UpdateInteractionData returns a status message.

After modifying an interaction, it is possible that it will only partially succeed if multiple interactions are changed at once. If more than one of the values fail, no indication is returned of which one fails, only that the error message states that two or more data values failed to update. If one failure occurs, it returns the actual reason why the request failed. If all of them succeed, a generic success message returned by other PTK methods is returned.

It is recommended to update only one item at a time with this method since that is guaranteed to give meaningful error messages. There will be ambiguity in the failure returned if more than one of the items fail. Successful modifications will be carried out even if one or more of the changes in the request fail.

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
107009DuplicateContactInQueueThe platform could not complete the request because Callback Double Check detected another interaction with this contact in this queue. Change the contact and retry the request.
107010AppointmentTimeAfterHoursThe appointment time that you submitted is outside of the business hours.
107011AppointmentTimeBeforeEWTThe appointment time that you submitted is before the estimated wait time for this queue.
107014AppointmentTimeFullNo appointments are available for the specified times.
107015InteractionStatePreventsModifyingAppointmentTimeYou cannot change the appointment time because the interaction is already active.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108004InvalidDateTimeThe date or time that you submitted is not valid. Verify that the date or time is in the following format: yyyy-mm-ddTHH:mm:ssZ. The hours must be in 24-hour format.
108005InvalidContactThe contact that you provided is not valid. Verify that the contact meets the phone number validation requirements in Callback and then resubmit the request.
108009ContactRequiredYou must submit a contact for this request.
108010AppointmentTimeRequiredYou must submit an appointment time for this request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108019AppointmentTimeInThePastThe time that you submitted for the appointment is before the current time. Submit a valid time and retry the request.
108037AppointmentTimeAfterAppointmentTimesRangeThe appointment time that you provided is after the valid appointment time range.
108039DataValueRequiredYou must submit a data value for this request.
108041ExternalTrackingIdMissingThe external tracking id is missing or invalid.
108042DuplicateExternalTrackingIdFoundThe external tracking id passed in already exists in our system.
108043KeyNotSupportedUpdatingDataThe key used to update the interaction is not supported or invalid.
109009AppointmentErrorAn error occurred when making the interaction appointment. Verify that you have scheduling enabled and then try your request again.
109016QueueIdNotFoundThe Queue ID could not be found.
109031UpdateInteractionDataFailedTwo or More Data Values failed to update.

UpdateUserData

This Platform Toolkit (PTK) method is used to add or modify UserData related to an Interaction. A new value or list will replace an old value or list. When two items are lists, the lists will be merged.For example:

OldUserData merge NewUserData -> result

("a"=1) merge ("a"=2) -> ("a"=2)("b"=("a"=2)) merge ("b"=("b"=2)) -> ("b"=("a"=2,"b"=2))("b"=("a"=2)) merge ("b"=("a"=3)) -> ("b"=("a"=3))("b"=5) merge ("b"=("a"=3)) -> ("b"=("a"=3))("b"=("a"=3)) merge ("b"=5) -> ("b"=5)

  • If the data is UUI related:
    • "UU_DATA" must be used as the key for attaching UUI data when using TIAL Genesys PSDK.
  • When using Avaya:
    • with GlobalCallIVR, "Avaya_UUI" must be used as the key for attaching UUI data, and the data value must be provided in hexadecimal format.
    • with AVP, "Avaya_UUI" must be used as the key for attaching UUI data, and the data value must be provided in hexadecimal format.
  • Pass Peripheral Variables and Extended Call Context Variables to add user data to callbacks when using Cisco with TIAL ICM.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
InteractionId
UserDataUserDataAssignmentMust pass a NULL value if not using a valid value for this parameter.
--KeyString
--Value
UserDataAssignment
--KeyString
--Value

Example response

Response parameters

UpdateUserData returns a status message.

Status codes

The response can return the following status codes.

Status codeConditionDescription
107002InteractionNotFoundThe platform cannot find the interaction. The system is no longer tracking interactions for this ID.
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108011UserDataRequiredYou must submit user data for this request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108040UserDataFailedValidationThe user data entered is not in the correct format.

<HR---->

ValidateContact

This Platform Toolkit (PTK) request validates the contact information that the caller submits against the information in the Phone Number Validation Settings in the VHT Callback® platform.

Parameters

This request uses the following parameters:

ParameterValid ElementsTypeRequired or Optional
TenantN/AStringRequired
SegmentN/AStringOptional
ContactN/AStringRequired
OptionsClientIdStringOptional

Example response

Response parameters

ValidateContact returns a status message.

Status codes

The response can return the following status codes.

Status codeConditionDescription
108000InvalidTenantThe tenant name that you submitted is not valid. Try another tenant name and resubmit your request.
108001InvalidSegmentThe segment is not valid for the specified tenant.
108005InvalidContactThe contact that you provided is not valid. Verify that the contact meets the phone number validation requirements in Callback and then resubmit the request.
108009ContactRequiredYou must submit a contact for this request.
108014InteractionIdRequiredYou must submit an interaction ID for this request.
108022SegmentRequiredYou must submit a segment for this request.
108027ReasonRequiredYou must submit a reason code for this request.