Actions

Difference between revisions of "Application Layer (AlphaCom Data Protocol)"

From Zenitel Wiki

(SNMP-like class messages)
m (AlphaCom class messages)
 
(16 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 +
{{A}}
 
== Application Data ==
 
== Application Data ==
  
The application part of the information message has the general format: <br\>
+
The application part of the information message has the general format: <br />
 
:'''<message class> <message data…….>'''  
 
:'''<message class> <message data…….>'''  
  
Line 8: Line 9:
 
::identifying class of message:  
 
::identifying class of message:  
 
:::65 (0x41) ‘A’  = AlphaCom
 
:::65 (0x41) ‘A’  = AlphaCom
:::66 (0x42) ‘B’ = SNMP­Like
+
:::66 (0x42) ‘B’ = unused (intended for SNMP­Like)
 
:::67 (0x43) ‘C’ = TouchLine
 
:::67 (0x43) ‘C’ = TouchLine
 
:::68 (0x44) ‘D’ = Site specific (engineering use)
 
:::68 (0x44) ‘D’ = Site specific (engineering use)
Line 25: Line 26:
 
- Broadcast messages are numbered sequentially by the exchange (pr. device).  
 
- Broadcast messages are numbered sequentially by the exchange (pr. device).  
 
:<'''message id'''> UINT2   
 
:<'''message id'''> UINT2   
::Value identifying the message, i.e. the message number.  See details on page 18.
+
::Value identifying the message, i.e. the message number.  See [[Message Formats (Sortable)]].
 
::Range 0x0000-0x6FFF: Standard application messages
 
::Range 0x0000-0x6FFF: Standard application messages
 
::Range 0x7000-0x7BFF: Site specific (engineering use) values
 
::Range 0x7000-0x7BFF: Site specific (engineering use) values
::Range 0x7C00-0x7FFF: Site specific values for Colsys (Mr. Guard, Colnod)
+
::Range 0x7C00-0x7FFF: Reserved
 
::Range 0x8000-0x8FFF: AlphaNet audio control messages
 
::Range 0x8000-0x8FFF: AlphaNet audio control messages
 
:<'''parameters'''> is a variable length string  
 
:<'''parameters'''> is a variable length string  
Line 35: Line 36:
  
 
All the following descriptions apply to the AlphaCom class message format.
 
All the following descriptions apply to the AlphaCom class message format.
 +
 +
See also: [[AlphaNet Data Protocol]].
  
 
=== TouchLine class messages ===
 
=== TouchLine class messages ===
Line 40: Line 43:
 
For TouchLine class messages, the <message data> part of the message is the text part of a TouchLine Data Protocol Input Message in ASCII format. The messages must be addressed to the TouchLine Data Gateway Device Number (206). This Gateway process the enclosed messages as if they had come from a TouchLine Data Serial Port Input. The gateway is present in the TouchLine AlphaNet Software (from version TAC.01.40).
 
For TouchLine class messages, the <message data> part of the message is the text part of a TouchLine Data Protocol Input Message in ASCII format. The messages must be addressed to the TouchLine Data Gateway Device Number (206). This Gateway process the enclosed messages as if they had come from a TouchLine Data Serial Port Input. The gateway is present in the TouchLine AlphaNet Software (from version TAC.01.40).
  
=== SNMP-like class messages ===
 
  
For SNMP­Like class messages, the format of the <message data> part of the message is not determined yet.  SNMP (Simple Network Management Protocol) is used in computer networks to access configuration and system metering information in a standardized way.
+
=== Site specific (engineering use) class messages ===
  
=== Site specific (engineering use) class messages ===
+
For “site specific” class messages, the format of the <message data> part of the message is up to the system integrator to define.  The idea here is that an external computer can receive messages in a suitable, private, format sent either from an AlphaCom’s [[Event Handler]], or another external computer connected to same AlphaCom/AlphaNet.  As the [[network layer]] must be according to the AlphaNet protocol, it’s possible to forward these messages through AlphaNet.  But it’s up to the receiving computer to interpret the rest of the message. 
 +
(An alternative to use a completely private format is to use the AlphaNet protocol, but using private message numbers in the 0x7000 area for special purpose messages.)
 +
<br><br>
  
 
== Data Types ==
 
== Data Types ==
 +
''See also:'' [[Stentofon_Simple_Link_Layer#Data_type_encoding|Data type encoding in Simple Link Layer]]<br>
  
 
The following table identifies the data types used in the [[Application Layer (AlphaCom Data Protocol)|application data]] of the [[AlphaNet Data Protocol]]:
 
The following table identifies the data types used in the [[Application Layer (AlphaCom Data Protocol)|application data]] of the [[AlphaNet Data Protocol]]:
Line 62: Line 67:
 
|UINT4||4­byte unsigned integer. MSB first  
 
|UINT4||4­byte unsigned integer. MSB first  
 
|-
 
|-
|BITMAP[1..n]||n­bits bitmap (multiple of 8). Always fills whole bytes. <br\>- Unused bits in last byte is set to 0. <br\>- First bit is the most significant (leftmost) bit in first byte.<br\>- Bits are numbered from 1, a byte contains bits 1..8.  
+
|BITMAP[1..n]||n­bits bitmap (multiple of 8). Always fills whole bytes. <br />- Unused bits in last byte is set to 0. <br />- First bit is the most significant (leftmost) bit in first byte.<br />- Bits are numbered from 1, a byte contains bits 1..8.  
 
|-
 
|-
 
|VBITMAP[1..n]||Variable length bitmap with n bits. (n is a multiple of 8.)   
 
|VBITMAP[1..n]||Variable length bitmap with n bits. (n is a multiple of 8.)   
Structure:<br\>UINT1  - containing the number of bytes in the following bitmap. <br\>bitmap  - always fills whole bytes. <br\>- Unused bits in last byte is set to 0. <br\>- First bit is the most significant (leftmost) bit in first byte.  
+
Structure:<br />UINT1  - containing the number of bytes in the following bitmap. <br />bitmap  - always fills whole bytes. <br />- Unused bits in last byte is set to 0. <br />- First bit is the most significant (leftmost) bit in first byte.  
 
|-
 
|-
|TEXT16||16 characters (bytes) of text. Padded with spaces. <br\>ASCII values >= 32 (0x20) only.  
+
|TEXT16||16 characters (bytes) of text. Padded with spaces. <br />ASCII values >= 32 (0x20) only.  
 
|-
 
|-
|CLOCK||Date & time structure:<br\>UINT2 Year (yyyy)<br\>UINT1 Month (mm)<br\>UINT1 Day (dd)<br\>UINT1 Hour (hh)<br\>UINT1 Minutes (mm)<br\>UINT1 Seconds (ss)
+
|CLOCK||Date & time structure:<br />UINT2 Year (yyyy)<br />UINT1 Month (mm)<br />UINT1 Day (dd)<br />UINT1 Hour (hh)<br />UINT1 Minutes (mm)<br />UINT1 Seconds (ss)
 
|-
 
|-
|[[NET_OBJ_REF]]||AlphaCom Intercom Object Reference. <br\>Can both encode directory numbers and physical numbers
+
|[[NET_OBJ_REF]]||AlphaCom Intercom Object Reference. <br />Can both encode directory numbers and physical numbers
 
|-
 
|-
 
|}
 
|}
 
<br><br>
 
<br><br>
=== Network Object Reference (NET_OBJ_REF) ===
+
[[Category:Protocols]]
 
 
''Further information: [[Network Object Reference]]''
 
 
 
The NET_OBJ_REF is a “variant record” which has a header with byte count plus a type field.
 

Latest revision as of 07:23, 10 June 2020

AlphaCom icon 300px.png

Application Data

The application part of the information message has the general format:

<message class> <message data…….>

where:

<message class> UINT1
identifying class of message:
65 (0x41) ‘A’ = AlphaCom
66 (0x42) ‘B’ = unused (intended for SNMP­Like)
67 (0x43) ‘C’ = TouchLine
68 (0x44) ‘D’ = Site specific (engineering use)
<message data> is a application level data in a format depending on <message class>.

The use of message class means that the AlphaNet protocol is prepared to transport and/or use messages with very different structure than the AlphaCom / Intercom related message formats used today.


AlphaCom class messages

For AlphaCom class messages, the message has the format:

<message class> <reference> <message id> <parameters>

where:

<reference> UINT2
Value identifying receivers’ reference. The purpose of this field is that an external system shall be able to recognise responses to data commands. The external system can select any suitable reference code, and all messages returned from the exchange will contain this reference.

We often use the notation aabb for the reference field, where aa may be used for sub­routing (software process) and bb as sequential numbering. - Broadcast messages are numbered sequentially by the exchange (pr. device).

<message id> UINT2
Value identifying the message, i.e. the message number. See Message Formats (Sortable).
Range 0x0000-0x6FFF: Standard application messages
Range 0x7000-0x7BFF: Site specific (engineering use) values
Range 0x7C00-0x7FFF: Reserved
Range 0x8000-0x8FFF: AlphaNet audio control messages
<parameters> is a variable length string
Parameters for the message.
The messages parameters always are byte­aligned, and fill a whole number of bytes.

All the following descriptions apply to the AlphaCom class message format.

See also: AlphaNet Data Protocol.

TouchLine class messages

For TouchLine class messages, the <message data> part of the message is the text part of a TouchLine Data Protocol Input Message in ASCII format. The messages must be addressed to the TouchLine Data Gateway Device Number (206). This Gateway process the enclosed messages as if they had come from a TouchLine Data Serial Port Input. The gateway is present in the TouchLine AlphaNet Software (from version TAC.01.40).


Site specific (engineering use) class messages

For “site specific” class messages, the format of the <message data> part of the message is up to the system integrator to define. The idea here is that an external computer can receive messages in a suitable, private, format sent either from an AlphaCom’s Event Handler, or another external computer connected to same AlphaCom/AlphaNet. As the network layer must be according to the AlphaNet protocol, it’s possible to forward these messages through AlphaNet. But it’s up to the receiving computer to interpret the rest of the message. (An alternative to use a completely private format is to use the AlphaNet protocol, but using private message numbers in the 0x7000 area for special purpose messages.)

Data Types

See also: Data type encoding in Simple Link Layer

The following table identifies the data types used in the application data of the AlphaNet Data Protocol:

Data Type Definition
UINT1 8 bits (one byte)
SINT1 1-­byte signed integer
UINT2 2­byte unsigned integer. MSB first
UINT4 4­byte unsigned integer. MSB first
BITMAP[1..n] n­bits bitmap (multiple of 8). Always fills whole bytes.
- Unused bits in last byte is set to 0.
- First bit is the most significant (leftmost) bit in first byte.
- Bits are numbered from 1, a byte contains bits 1..8.
VBITMAP[1..n] Variable length bitmap with n bits. (n is a multiple of 8.)

Structure:
UINT1 - containing the number of bytes in the following bitmap.
bitmap - always fills whole bytes.
- Unused bits in last byte is set to 0.
- First bit is the most significant (leftmost) bit in first byte.

TEXT16 16 characters (bytes) of text. Padded with spaces.
ASCII values >= 32 (0x20) only.
CLOCK Date & time structure:
UINT2 Year (yyyy)
UINT1 Month (mm)
UINT1 Day (dd)
UINT1 Hour (hh)
UINT1 Minutes (mm)
UINT1 Seconds (ss)
NET_OBJ_REF AlphaCom Intercom Object Reference.
Can both encode directory numbers and physical numbers