XX1 Client Development Concepts

This chapter discusses important base concepts that apply to all client libraries and interfaces.

Methods

XX1 Server always provides only 3 interface methods

  • GetSession
  • Transaction
  • ReleaseSession

Method Parameters

All method parameters are expected to be in XML format. The parameters for the Transaction method are

  • Transaction Control Data (TC)
  • Request Message
  • Response Message

GetSession and ReleaseSession usually only take Transaction Control Data parameters. The use of GetSession and ReleaseSession is optional and should be applied only when it becomes necessary to lock a session context or resource of the provider system.

Transaction Control Data (TC)

The transaction control data (TC) XML is part of each transaction, is located in the SOAP header and allows you to control the underlying provider the message is to be routed to. It is also used for user authentication on transaction level.

<tc>
<iden u="YOURUSERNAME" p="YOURPASSWORD"/>
<provider session="AB12_PROD" group="XY89">SabreWS</provider>
<requestID>9ABD-4D9D-80C7-02AF85C822A8</requestID>
<trace>YOURTRACENAME</trace>
</tc>

 

Element/AttributeDescription
/tc/iden

User authentication.

Required if security filter is configured on XX1.

/tc/iden/@uUser ID
/tc/iden/@pUser Password
/tc/providerIdentifies provider system by logical system name as configured on XX1.

Example: AmadeusWS
/tc/provider/@session

Logical session name as configured within provider adaptor set-up on XX1. Not needed for transactions which do not require resources on provider systems.

Example: ABCD_PROD

/tc/provider/@systemIn addition to the provider name this attribute can be used to identify the provider by its code. As a provider adapter can be used with more than one provider system in some cases (e.g. GalileoWS adapter can be used for ApolloWS and GalileoWS systems) this attribute is required to clearly identify the actual system. Handling could be however implementation specific - contact XX1-Team for details.
/tc/provider/@groupUsed to specify target PCC/OfficeID/SID for emulation in case the transaction should be executed in a different agency environment than the one that is currently used as configured by /tc/provider/@session
/tc/provider/@resetIdentifier flag. If set to 'yes' causes server to send an "ignore" or in general refresh a context on the target before execution of the payload message. Except if you know what you aim for you should not set this attribute but rely on the default settings that are set for each message in the transactionmaps for each adapter.
/tc/POSThis structure and its subelements can be necessary for some adapters e.g. to override the default configuration or to specify required details for point of sale definition.
/tc/requestID

An optional identifier created by the client application to identify a specific request or series of requests to XX1. The requestID is part of the records written to the transaction log file (if configured) or CSV-logs and can be a very helpful tool to identify client workflow and requests that belong together within a longer workflow.

We definitly recommend to set this parameter. It is in the responsibility to set values, that are unique. We recommend to generate GUIDs here.

The maximum length for this value can be 32 chars.

Example: 9ABD-4D9D-80C7-02AF85C822A8

/tc/traceXXTraceConsole identification key.  Is used to identify the XX1 traffic that should be shown in the XXTraceConsole.

Request Message

XML document with request data and parameters. The root node of the request XML identifies the message, and hence the business function or procedure to be invoked.

XX1 Travel SDK Message Reference

Response Message

XML document with result data.

XX1 Travel SDK Message Reference