Host ALC Message Formats

This docuement describes the general format of ALC (Airline Link Control) Messages.

ALC Protocol

ALC stands for "Airline Link Control", and is often refered to as Host ALC and P1024B in Europe. Several standards compliance documents exist, the cheif of which is SITA P1024B Doc 100/LP-SN-047. This protocol is widely used throughout the retail travel industry to connnect travel agent CRT's to airline reservation system mainframes.

ALC is a synchronous 6-bit polling protocol. That is, the mainframe host polls an ALC controller device repeatedly to determine if data has to tbe exchanged. Exchanged data is represented with a 6-bit character set (the actual encoding from this 6-bit character set to ASCII varies from one reservation system to another).

There are three generic types of messages:
Poll
Poll messages are sent from the host to the device
Data
Data messages (aka segments) can travel in both directions. "Inbound" refers to messages from device to host, "outbound" from host to device.
EOT
End-of-Traffic message, send from device to host.
When the device receives a poll, it responds by sending all data messages which are queued for sending, up to a system-dependent maximum (typically, 1K characters or 5 messages). This is followed by an EOT message. If the device has no data to send, it responds with an EOT message alone. The maximum allowed time between poll and response typically varies between 5 and 50 millisecs, and depends on the particular host installation. Typically, there are ten polls per second.

The Data Message can be broken down into several subtypes.

Inbound Data Message
Data Message sent to the airline host
Outbound Data Message
Data message received from the host.
Outbound Data Message for Printer
Data message from airline host to printer
Printer Reset Mesage
Reset the printer
Request Unsolicited Message
This message is sent to the host, to retreive an unsolicted message waiting at the host. Normally, this message should not be sent unless the unsolicited message indicator light is on.
Set Unsolicited Message Indicator
This message indicates that the host has unsolicted messages that it wants to send. This message is normally used to turn on the "unsolicited message" light on the keyboard.
TCU Reset Message
Received from the host, the Terminal Control Unit (TCU) reset message can be interpreted as a command to clear the screen of all terminals attached to this TCU.

Message Formats

There is some variation in message formats from one airline system to another, but the following details are common:
Poll
S1, S2, IA, EOMC, CCC
Inbound Data Messages
S1, S2,IA,TA,Text EOM CCC
Outbound Data Messages
S1, S2, IA, TA, CMD1, CMD2, Text, EOM, CCC
Outbound Data Message To Printer
S1, S2, IA, TA, Text, EOM-C, CCC
Printer Reset Message
S1, S2, IA, TCU-TA, Reset, Printer-TA, EOM-C, CCC
Request Unsolicited Message
S1, S2, IA, TA, U, EOM-C, CCC
S1, S2, IA, TA, H, EOM-PB CCC
Set Unsolicited Messsage Indicator
S1, S2, IA, TA, UMSG, UMSG2, EOM-C, CCC
TCU Reset Message
S1, S2, IA, Reset, EOM-C, CCC
EOT
GA, G

Data messages with invalid EOM or CCC should ask for retransmit.

Field Description

The fields above have the following meanings and values:
S1
Sync 1 character, ALC Hex 0x3f
S2
Sync 2 character, ALC Hex 0x3e
IA
Interchange Address. Installation dependent, assigned by reservation system to travel agency during installation & configuration. Usually, there is one IA per controller card, with the first card being 01, the second 02, etc..
TA
Terminal Address. Installation dependent; assigned by reservation system to each travel agency screeen/CRT/"head" during installation & configuration. Each screen/CRT has its own unique ID number.
TCU-TA
The terminal address of the TCU (Terminal Control Unit). Usually ALC hex 0x1f.
Printer TA
The terminal address of teh printer
CMD1
Command , one of the following
Write
ALC Hex 0x3d
Erase/Write
ALC Hex 0x1d. Shoudl be interpreted as an erase all characters from the position referenced by "position" to the end of the screen before displaying the message. The screen is normally a 64 column by 15 line display
CMD2
Some documents recfer to this as "Position". It normally takes one of the following values:
NoOp
Output starts at the position of the cursor.
NL
Output starts at the first position of the next new-line following the cursor
LA
The output starts at the first position of the line address contained in the message
Text
The actual text message, consisting of a sequence of 6-bit chracters.
EOM
EOM (End Of Message), can be one of four different EOM's: EOMi, EOMc, EOMu, EOMpb, depending on the particular message and situation. Usually, EOMi and EOMpb are used to terminate "intermediate segments" (message segments that are part of a compound message), while EOMc and EOMu are used to terminate "final segments" (the last message part of a compound message). (EOMpb is often mapped to the keyboard alt-enter combo).
EOM-C
Message Is Complete EOM Character
EOM-PB
End of Message Push Button EOM Character
CCC
Cyclic Check Character
GA
Go Ahead. ALC Hex 0x0f
G
Letter G, ALC Hex 0x37
H
Letter H, ALC Hex 0x38
Reset
Reset Character, ALC Hex 0x20
U
Letter U, ALC Hex 0x35 ??? 0x14
UMSG
UMSG Character, ALC Hex 0x2A
UMSG2
UMSG2 character, ALC Hex 0x17


Host Types

Details of message formats and character translation tables depend on the actual host. Below follows a partial listing of host types.
ABACUS           (asia)
AC100 
AMADEUS          (europe)
ANA 
APOLLO 
BABS 
CODACOM 
CPARS 
DATAS 
EGYPT 
GALILEO          (europe)
JAL 
KLM 
KOREAN 
OLYMPIC 
PARS         1P   Worldspan 
SABRE        AA   (American Airlines)
SHARES 
SINGAPORE 
SITACARGO 
SWISSAIR 
SODA