#ifndef __iptel_q931defs_h #define __iptel_q931defs_h // This module contains constants and enumerated types for values used in the Q.931 protocol. // It does not contain any structures, definitions, or APIs relevant to any implementation. // Q931_PROTOCOL_DISCRIMINATOR identifies Q.931 PDUs on links that may carry // PDUs from more than one protocol, such as LAPD D-channel links on PRI. #define Q931_PROTOCOL_DISCRIMINATOR 0x08 // the well-known Q.931 TSAP for TCP on IP is TCP port 1720 #define Q931_TSAP_IP_TCP 1720 #define Q931_TSAP_IP_TCP_SECURE 1300 enum Q931_MESSAGE_TYPE { // Call Establishment Message (000-----) Q931_MESSAGE_TYPE_ALERTING = 0x01, Q931_MESSAGE_TYPE_CALL_PROCEEDING = 0x02, Q931_MESSAGE_TYPE_CONNECT = 0x07, Q931_MESSAGE_TYPE_CONNECT_ACKNOWLEDGE = 0x0F, Q931_MESSAGE_TYPE_PROGRESS = 0x03, Q931_MESSAGE_TYPE_SETUP = 0x05, Q931_MESSAGE_TYPE_SETUP_ACKNOWLEDGE = 0x0E, Q931_MESSAGE_TYPE_FACILITY = 0x1C, // Call Information Phase message (001-----) Q931_MESSAGE_TYPE_RESUME = 0x26, Q931_MESSAGE_TYPE_RESUME_ACKNOWLEDGE = 0x2E, Q931_MESSAGE_TYPE_RESUME_REJECT = 0x22, Q931_MESSAGE_TYPE_SUSPEND = 0x25, Q931_MESSAGE_TYPE_SUSPEND_ACKNOWLEDGE = 0x2D, Q931_MESSAGE_TYPE_SUSPEND_REJECT = 0x21, Q931_MESSAGE_TYPE_USER_INFORMATION = 0x20, // Call Clearing Messages (010-----) Q931_MESSAGE_TYPE_DISCONNECT = 0x45, Q931_MESSAGE_TYPE_RELEASE = 0x4D, Q931_MESSAGE_TYPE_RELEASE_COMPLETE = 0x5A, Q931_MESSAGE_TYPE_RESTART = 0x46, Q931_MESSAGE_TYPE_RESTART_ACKNOWLEDGE = 0x4E, // Miscellaneous Message (011-----) Q931_MESSAGE_TYPE_SEGMENT = 0x60, Q931_MESSAGE_TYPE_CONGESTION_CONTROL = 0x79, Q931_MESSAGE_TYPE_INFORMATION = 0x7B, Q931_MESSAGE_TYPE_NOTIFY = 0x6E, Q931_MESSAGE_TYPE_STATUS = 0x7D, Q931_MESSAGE_TYPE_STATUS_ENQUIRY = 0x75, }; enum Q931_IE_IDENTIFIER { // Single-Octet Information Elements Q931_IE_SHIFT = 0x90, // 1001---- Q931_IE_RESERVED = 0x80, // 1000---- Q931_IE_MORE_DATA = 0xA0, // 11000000 Q931_IE_SENDING_COMPLETE = 0xA1, // 11000001 Q931_IE_CONGESTION_CONTROL = 0xB0, // 1011---- Q931_IE_REPEAT_INDICATOR = 0xD0, // 1101---- // Variable-Length Information Elements Q931_IE_SEGMENTED_MESSAGE = 0x00, Q931_IE_BEARER_CAPABILITY = 0x04, Q931_IE_CAUSE = 0x08, Q931_IE_CALL_IDENTITIY = 0x10, Q931_IE_CALL_STATE = 0x14, Q931_IE_CHANNEL_IDENTIFICATION = 0x18, Q931_IE_PROGRESS_INDICATOR = 0x1E, Q931_IE_NETWORK_SPECIFIC_FACILITIES = 0x20, Q931_IE_NOTIFICATION_INDICATOR = 0x27, Q931_IE_DISPLAY = 0x28, Q931_IE_DATE_TIME = 0x29, Q931_IE_KEYPAD_FACILITY = 0x2A, Q931_IE_SIGNAL = 0x34, Q931_IE_INFORMATION_RATE = 0x40, Q931_IE_END_TO_END_TRANSIT_DELAY = 0x42, Q931_IE_TRANSIT_DELAY_SELECTION = 0x43, Q931_IE_PACKET_LAYER_BINARY_PARAMETERS = 0x44, Q931_IE_PACKET_LAYER_WINDOW_SIZE = 0x45, Q931_IE_PACKET_SIZE = 0x46, Q931_IE_CLOSED_USER_GROUP = 0x47, Q931_IE_REVERSE_CHARGE_INDICATION = 0x4A, Q931_IE_CALLING_PARTY_NUMBER = 0x6A, Q931_IE_CALLING_PARTY_SUBADDRESS = 0x6B, Q931_IE_CALLED_PARTY_NUMBER = 0x70, Q931_IE_CALLED_PARTY_SUBADDRESS = 0x71, Q931_IE_REDIRECTING_NUMBER = 0x74, Q931_IE_TRANSIT_NETWORK_SELECTION = 0x78, Q931_IE_RESTART_INDICATOR = 0x79, Q931_IE_LOW_LAYER_COMPATIBILITY = 0x7C, Q931_IE_HIGH_LAYER_COMPATIBILITY = 0x7D, Q931_IE_USER_TO_USER = 0x7E, Q931_IE_ESCAPE_FOR_EXTENSION = 0x7F, }; enum Q931_UUIE_TYPE { Q931_UUIE_USER_SPECIFIC = 0x00, Q931_UUIE_OSI = 0x01, Q931_UUIE_X244 = 0x02, Q931_UUIE_IA5_TEXT = 0x04, Q931_UUIE_X208 = 0x05, Q931_UUIE_V120_RATE_ADAPTION = 0x07, Q931_UUIE_UNI_CALL_CONTROL = 0x08, }; #endif // __iptel_q931defs_h