summaryrefslogtreecommitdiffstats
path: root/include/sccp.hrl
blob: 537ac48f87afcf6f3e87718628cfc575e10a6177 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
% Table 1 / Q.713 - SCCP Message Types
-define(SCCP_MSGT_CR,		1).	% Connection request
-define(SCCP_MSGT_CC,		2).	% Connection confirm
-define(SCCP_MSGT_CREF,		3).	% Connection refused
-define(SCCP_MSGT_RLSD,		4).	% Released
-define(SCCP_MSGT_RLC,		5).	% Release complete
-define(SCCP_MSGT_DT1,		6).	% Data form 1
-define(SCCP_MSGT_DT2,		7).	% Data form 2
-define(SCCP_MSGT_AK,		8).	% Data acknowledgement
-define(SCCP_MSGT_UDT,		9).	% Unitdata
-define(SCCP_MSGT_UDTS,		10).	% Unitdata service
-define(SCCP_MSGT_ED,		11).	% Expedited data
-define(SCCP_MSGT_EA,		12).	% Expedited data ack
-define(SCCP_MSGT_RSR,		13).	% Reset Request
-define(SCCP_MSGT_RSC,		14).	% Reset Confirmation
-define(SCCP_MSGT_ERR,		15).	% Protocol data unit error
-define(SCCP_MSGT_IT,		16).	% Inactivity test
-define(SCCP_MSGT_XUDT,		17).	% Extended unitdata
-define(SCCP_MSGT_XUDTS,	18).	% Extended unitdata service
-define(SCCP_MSGT_LUDT,		19).	% Long unitdata
-define(SCCP_MSGT_LUDTS,	20).	% Long unitdata service

% Table 2 / Q.713 - SCCP parameter name codes
-define(SCCP_PNC_END_OF_OPTIONAL,		0).
-define(SCCP_PNC_DESTINATION_LOCAL_REFERENCE,	1).
-define(SCCP_PNC_SOURCE_LOCAL_REFERENCE,	2).
-define(SCCP_PNC_CALLED_PARTY_ADDRESS,		3).
-define(SCCP_PNC_CALLING_PARTY_ADDRESS,		4).
-define(SCCP_PNC_PROTOCOL_CLASS,		5).
-define(SCCP_PNC_SEGMENTING,			6).
-define(SCCP_PNC_RECEIVE_SEQ_NUMBER,		7).
-define(SCCP_PNC_SEQUENCING,			8).
-define(SCCP_PNC_CREDIT,			9).
-define(SCCP_PNC_RELEASE_CAUSE,			10).
-define(SCCP_PNC_RETURN_CAUSE,			11).
-define(SCCP_PNC_RESET_CAUSE,			12).
-define(SCCP_PNC_ERROR_CAUSE,			13).
-define(SCCP_PNC_REFUSAL_CAUSE,			14).
-define(SCCP_PNC_DATA,				15).
-define(SCCP_PNC_SEGMENTATION,			16).
-define(SCCP_PNC_HOP_COUNTER,			17).
-define(SCCP_PNC_IMPORTANCE,			18).
-define(SCCP_PNC_LONG_DATA,			19).

% According to Q.713 Section 3.4.1
-define(SCCP_GTI_NO_GT,		2#0000).
-define(SCCP_GTI_NAT_ONLY,	2#0001).
-define(SCCP_GTI_TT_ONLY,	2#0010).
-define(SCCP_GTI_TT_NP_ENC,	2#0011).
-define(SCCP_GTI_TT_NP_ENC_NAT,	2#0100).

% According to Q.731 Section 3.4.2.2
-define(SCCP_SSN_UNKNOWN,	2#000000000).
-define(SCCP_SSN_SCCP_MGMT,	2#000000001).
-define(SCCP_SSN_ITU_T,		2#000000010).
-define(SCCP_SSN_ISUP,		2#000000011).
-define(SCCP_SSN_OAM,		2#000000100).
-define(SCCP_SSN_MAP,		2#000000101).
-define(SCCP_SSN_HLR,		2#000000110).
-define(SCCP_SSN_VLR,		2#000000111).
-define(SCCP_SSN_MSC,		2#000001000).
-define(SCCP_SSN_EIR,		2#000001001).
-define(SCCP_SSN_AUC,		2#000001010).
-define(SCCP_SSN_ISDN_SS,	2#000001011).
-define(SCCP_SSN_RES_NAT,	2#000001100).
-define(SCCP_SSN_BISDN,		2#000001101).
-define(SCCP_SSN_TC_TEST,	2#000001110).



% a single parsed SCCP message
-record(sccp_msg, {
	msg_type,
	parameters
	}).


-record(global_title, {
	  gti,
	  nature_of_addr_ind,
	  trans_type,
	  encoding,
	  numbering_plan,
	  phone_number
	}).

-record(sccp_addr, {
	  res_nat_use,
	  route_on_ssn,
	  point_code,		% optional
	  ssn,			% optional
	  global_title		% optional
	}).