aboutsummaryrefslogtreecommitdiffstats
path: root/asn1/gsmmap/SS-DataTypes.asn
blob: f9f763ab0e018e8f82527709a8e79a36bac3fd09 (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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
-- $Id$
-- 4.4.2	ASN.1 data types
SS-DataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Access (2) modules (3)
   ss-DataTypes (2) version10 (10)}

DEFINITIONS

IMPLICIT TAGS ::=

BEGIN

-- exports all data types defined in this module

IMPORTS

SS-Code
FROM MAP-SS-Code {
   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
   map-SS-Code (15) version10 (10)}

-- imports MAP-SS-DataTypes
SS-Status, USSD-DataCodingScheme, USSD-String, CCBS-Feature
-- USSD-DataCodingScheme, USSD-String were introduced because of CNAP.
FROM MAP-SS-DataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
   map-SS-DataTypes (14) version10 (10)}

GSN-Address,
CUG-Index,
NotificationToMSUser
FROM MAP-MS-DataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
   map-MS-DataTypes (11) version10 (10)}

maxSignalInfoLength,
ISDN-AddressString,
ISDN-SubaddressString,
AlertingPattern,
LCSClientExternalID,
AddressString,
LCSServiceTypeID,
AgeOfLocationInformation
FROM MAP-CommonDataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
   map-CommonDataTypes (18) version10 (10)}

LocationType,
DeferredLocationEventType,
LCSClientName,
LCS-QoS,
Horizontal-Accuracy,
ResponseTime,
Ext-GeographicalInformation, 
VelocityEstimate,
SupportedGADShapes,
Add-GeographicalInformation,
LCSRequestorID,
LCS-ReferenceNumber,
LCSCodeword,
AreaEventInfo,
ReportingPLMNList,
PeriodicLDRInfo,
SequenceNumber

FROM MAP-LCS-DataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0)
   gsm-Network (1) modules (3) map-LCS-DataTypes (25) version10 (10)}

;

-- data types definition

SS-UserData ::= IA5String (SIZE (1.. maxSignalInfoLength))

NotifySS-Arg ::= SEQUENCE{
	ss-Code						[1]		SS-Code OPTIONAL,
	ss-Status					[4]		SS-Status OPTIONAL,
	ss-Notification				[5]		SS-Notification OPTIONAL,
	callIsWaiting-Indicator		[14]	NULL OPTIONAL,
	callOnHold-Indicator		[15]	CallOnHold-Indicator OPTIONAL,
	mpty-Indicator				[16]	NULL OPTIONAL,
	cug-Index					[17]	CUG-Index OPTIONAL,
	clirSuppressionRejected		[18]	NULL OPTIONAL,
	... ,
	ect-Indicator				[19]	ECT-Indicator OPTIONAL,
	nameIndicator				[20]	NameIndicator OPTIONAL,
	ccbs-Feature				[21]	CCBS-Feature OPTIONAL,
	alertingPattern				[22]	AlertingPattern OPTIONAL,
	multicall-Indicator			[23]	Multicall-Indicator OPTIONAL}

--  The nameIndicator is defined because of CNAP.

Multicall-Indicator	::= ENUMERATED {
		nbr-SNexceeded (0),
		nbr-Userexceeded (1)}

ForwardChargeAdviceArg ::= SEQUENCE{
	ss-Code						[0]		SS-Code,
	chargingInformation			[1]		ChargingInformation,
	...}

SS-Notification ::= OCTET STRING (SIZE (1))

--	  Bit 8 7 6 5 4	00000 (Unused)

--	Bit 3	Call is forwarded indication to A-subscriber
--		(calling subscriber)
--	0	No information content
--	1	Outgoing call has been forwarded to C

--	Bit 2	Call is forwarded indication to B-subscriber
--		(forwarding subscriber)
--	0	No information content
--	1	Incoming call has been forwarded to C

--	Bit 1	Call is forwarded indication to C-subscriber
--		(forwarded-to subscriber)
--	0	No information content
--	1	Incoming call is a forwarded call

ChargingInformation ::= SEQUENCE{
	e1	[1] E1 OPTIONAL,
	e2	[2] E2 OPTIONAL,
	e3	[3] E3 OPTIONAL,
	e4	[4] E4 OPTIONAL,
	e5	[5] E5 OPTIONAL,
	e6	[6] E6 OPTIONAL,
	e7	[7] E7 OPTIONAL,
	...}

E1 ::= INTEGER (0..max10TimesUnitsPerTime)
max10TimesUnitsPerTime INTEGER ::= 8191

E2 ::= INTEGER (0..max10TimesTimeInterval)
max10TimesTimeInterval INTEGER ::= 8191

E3 ::= INTEGER (0..max100TimesScalingFactor)
max100TimesScalingFactor INTEGER ::= 8191

E4 ::= INTEGER (0..max10TimesIncrement)
max10TimesIncrement INTEGER ::= 8191

E5 ::= INTEGER (0..max10TimesIncrementPerDataInterval)
max10TimesIncrementPerDataInterval INTEGER ::= 8191

E6 ::= INTEGER (0..maxNumberOfSegmentsPerDataInterval)
maxNumberOfSegmentsPerDataInterval INTEGER ::= 8191

E7 ::= INTEGER (0..max10TimesInitialTime)
max10TimesInitialTime INTEGER ::= 8191

CallOnHold-Indicator	::= ENUMERATED {
			callRetrieved (0),
			callOnHold (1)}

ForwardCUG-InfoArg ::= SEQUENCE {
	cug-Index			[0]	CUG-Index OPTIONAL,
	suppressPrefCUG		[1]	NULL OPTIONAL,
	suppressOA			[2]	NULL OPTIONAL,
	...}

ECT-Indicator	::= SEQUENCE {
	ect-CallState		[0]	ECT-CallState,
	rdn	[1]	RDN OPTIONAL,
	...}

ECT-CallState	::= ENUMERATED {
		alerting (0),
		active (1)}

	NameIndicator ::= SEQUENCE {
		callingName		[0] Name OPTIONAL,
		...}

	Name ::= CHOICE {
		namePresentationAllowed		[0] NameSet,
		presentationRestricted		[1] NULL,
		nameUnavailable				[2] NULL,
		namePresentationRestricted	[3] NameSet}

	NameSet ::= SEQUENCE {
		dataCodingScheme 		[0] USSD-DataCodingScheme,
		lengthInCharacters 		[1] INTEGER,
		nameString				[2] USSD-String,
		...}

-- NameIndicator, Name and NameSet are defined because of CNAP.
-- The USSD-DataCodingScheme shall indicate use of the default alphabet through the
-- following encoding:
--    bit  7   6   5   4   3   2   1   0
--       | 0   0   0   0 | 1   1   1   1|

RDN	::= CHOICE {
	presentationAllowedAddress				[0]	RemotePartyNumber,
	presentationRestricted					[1]	NULL,
	numberNotAvailableDueToInterworking		[2]	NULL,
	presentationRestrictedAddress			[3]	RemotePartyNumber}

RemotePartyNumber	::= SEQUENCE {
	partyNumber				[0]	ISDN-AddressString,
	partyNumberSubaddress	[1]	ISDN-SubaddressString OPTIONAL,
	...}

AccessRegisterCCEntryArg	::= SEQUENCE {
	...}

CallDeflectionArg	::= SEQUENCE {
	deflectedToNumber		[0]	AddressString,
	deflectedToSubaddress	[1]	ISDN-SubaddressString OPTIONAL,
	...}

UserUserServiceArg ::= SEQUENCE {
	uUS-Service		[0]	UUS-Service,
	uUS-Required	[1]	BOOLEAN,
	... }

UUS-Service ::= ENUMERATED {
	uUS1 (1),
	uUS2 (2),
	uUS3 (3),
	... }

-- exception handling:
-- In case of UUS-Service with any other value, indicated as "UUS required",
-- but not understood by the MS, the call will be cleared.

LocationNotificationArg	::= SEQUENCE {
	notificationType	[0]	NotificationToMSUser,
	locationType		[1]	LocationType,
	lcsClientExternalID	[2] LCSClientExternalID		OPTIONAL,
	lcsClientName		[3]	LCSClientName			OPTIONAL,
	... ,
	lcsRequestorID		[4] LCSRequestorID			OPTIONAL,
	lcsCodeword			[5]	LCSCodeword				OPTIONAL,
	lcsServiceTypeID	[6]	LCSServiceTypeID		OPTIONAL }
-- exception handling:
-- At reception of an unrecognised notificationType value the receiver shall reject the 
-- operation with a return error cause of unexpected data value.
-- At reception of an unrecognised locationType value the receiver shall reject the
-- operation with a return error cause of unexpected data value.


LocationNotificationRes	::= SEQUENCE {
	verificationResponse		[0]	VerificationResponse OPTIONAL,
	...}

VerificationResponse::= ENUMERATED {
	permissionDenied	(0),
	permissionGranted	(1),
	... }

-- exception handling:
-- an unrecognized value shall be treated the same as value 0 (permissionDenied)

LCS-MOLRArg	::= SEQUENCE {
	molr-Type			[0]	MOLR-Type,
	locationMethod		[1]	LocationMethod			OPTIONAL,
	lcs-QoS				[2]	LCS-QoS					OPTIONAL,
	lcsClientExternalID	[3] LCSClientExternalID		OPTIONAL,
	mlc-Number			[4]	ISDN-AddressString		OPTIONAL,
	gpsAssistanceData	[5]	GPSAssistanceData		OPTIONAL,
	...,
	supportedGADShapes	[6]	SupportedGADShapes		OPTIONAL,
	lcsServiceTypeID	[7]	LCSServiceTypeID		OPTIONAL,
	ageOfLocationInfo	[8]	AgeOfLocationInformation	OPTIONAL,
	locationType		[9]	LocationType			OPTIONAL,
	pseudonymIndicator	[10]	NULL					OPTIONAL,
	h-gmlc-address 		[11] GSN-Address			OPTIONAL,
	locationEstimate	[12] Ext-GeographicalInformation		OPTIONAL,
	velocityEstimate	[13] VelocityEstimate		OPTIONAL,
	referenceNumber 	[14] LCS-ReferenceNumber 	OPTIONAL,
	periodicLDRInfo		[15] PeriodicLDRInfo		OPTIONAL,
	locationUpdateRequest	[16]	NULL				OPTIONAL,
	sequenceNumber 		[17] SequenceNumber 		OPTIONAL,
	terminationCause 	[18] TerminationCause 		OPTIONAL,
	mo-lrShortCircuit	[19]	NULL				OPTIONAL }
-- The parameter locationMethod shall be included if and only if the molr-Type is set to value 
-- deCipheringKeys or assistanceData.
-- The parameter gpsAssistanceData shall be included if and only if the molr-Type is set to value 
-- assistanceData and locationMethod is set to value assistedGPS.
-- supportedGADShapes shall not be included for deferred MO-LR initiation or deferred MO-LR or MT-LR
-- responses 

MOLR-Type::= ENUMERATED {
	locationEstimate			(0),
	assistanceData				(1),
	deCipheringKeys				(2),
	... ,
	deferredMo-lrTTTPInitiation	(3),
	deferredMo-lrSelfLocationInitiation (4),
	deferredMt-lrOrmo-lrTTTPLocationEstimate (5),
	deferredMt-lrOrmo-lrCancellation (6)}
-- exception handling:
-- an unrecognized value shall be rejected by the receiver with a return error cause of
-- unexpected data value.

LocationMethod::= ENUMERATED {
	msBasedEOTD			(0),
	msAssistedEOTD		(1),
	assistedGPS			(2), 
	...,
	msBasedOTDOA		(3)
	}
-- exception handling:
-- When this parameter is received with value msBasedEOTD or msAssistedEOTD and the MS 
-- is camped on an UMTS Service Area then the receiver shall reject it 
-- with a return error cause of unexpected data value.
-- When this parameter is received with value msBasedOTDOA and the MS 
-- is camped on a GSM Cell then the receiver shall reject it with a return error cause of
-- unexpected data value.
-- an unrecognized value shall be rejected by the receiver with a return error cause of
-- unexpected data value.

GPSAssistanceData::= OCTET STRING (SIZE (1..38))
-- Octets 1 to 38 are coded in the same way as the octets 3 to 7+2n of Requested GPS Data IE
-- in 3GPP TS 49.031.

TerminationCause ::= ENUMERATED {
	subscriberTermination  (0),
	uETermination     (1),
	...} 


LCS-MOLRRes::= SEQUENCE {
	locationEstimate		[0]	Ext-GeographicalInformation		OPTIONAL,
	decipheringKeys			[1] DecipheringKeys					OPTIONAL,
	...,
	add-LocationEstimate	[2]	Add-GeographicalInformation 		OPTIONAL,
	velocityEstimate		[3] VelocityEstimate		OPTIONAL,
	referenceNumber 		[4] LCS-ReferenceNumber 	OPTIONAL,
	h-gmlc-address			[5]	GSN-Address				OPTIONAL,
	mo-lrShortCircuit		[6]	NULL					OPTIONAL,
	reportingPLMNList		[7]	ReportingPLMNList		OPTIONAL
	 }
-- Parameters locationEstimate or add-LocationEstimate (one but not both) 
-- shall be included if and only if the 
-- molr-Type in LocationRequestArg was set to value locationEstimate.
-- Parameter add-LocationEstimate shall not be included if the supportedGADShapes 
-- parameter was not received in the LCS-MOLRArg.
-- The locationEstimate and the add-locationEstimate parameters shall not be sent if
-- the supportedGADShapes parameter has been received in LCS-MOLRArg
-- and the shape encoded in locationEstimate or add-LocationEstimate is not marked
-- as supported in supportedGADShapes. In such a case LCS-MOLRArg
-- shall be rejected with error FacilityNotSupported with additional indication
-- shapeOfLocationEstimateNotSupported.
-- Parameter decipheringKeys shall be included if and only if the molr-Type
-- in LocationRequestArg was set to value deCipheringKeys.
-- Parameter velocityEstimate may only be included if the lcs-QoS in LCS-MOLRarg includes
-- velocityRequest


DecipheringKeys::= OCTET STRING (SIZE (15))
-- Octets in DecipheringKeys are coded in the same way as the octets 3 to 17 of Deciphering Key IE
-- in 3GPP TS 49.031. I.e. these octets contain Current Deciphering Key, Next Deciphering Key and 
-- Ciphering Key Flag.
LCS-AreaEventRequestArg	::= SEQUENCE {
	referenceNumber				[0]	LCS-ReferenceNumber,
	h-gmlc-address				[1]	GSN-Address,
	deferredLocationEventType	[3] DeferredLocationEventType,
	areaEventInfo				[4]	AreaEventInfo,
	... }

-- the msAvailableValue in the DeferredLocationEventType is not applicable for this procedure 

LCS-AreaEventReportArg	::= SEQUENCE {
	referenceNumber				[0]	LCS-ReferenceNumber,
	h-gmlc-address				[1]	GSN-Address,
	... }

LCS-AreaEventCancellationArg	::= SEQUENCE {
	referenceNumber				[0]	LCS-ReferenceNumber,
	h-gmlc-address				[1]	GSN-Address,
	... }


LCS-PeriodicLocationRequestArg	::= SEQUENCE {
	referenceNumber		[0] LCS-ReferenceNumber,
	periodicLDRInfo		[1]	PeriodicLDRInfo,
	lcsClientExternalID	[2] LCSClientExternalID,
	qoS					[3] LCS-QoS					OPTIONAL,
	h-gmlc-address		[4]	GSN-Address				OPTIONAL,
	mo-lrShortCircuit	[5]	NULL					OPTIONAL,
	reportingPLMNList	[6]	ReportingPLMNList		OPTIONAL,
	... }


LCS-PeriodicLocationRequestRes	::= SEQUENCE {
	mo-lrShortCircuit	[0]	NULL					OPTIONAL,
	... }


LCS-LocationUpdateArg	::= SEQUENCE {
	referenceNumber		[0] LCS-ReferenceNumber		OPTIONAL,
	add-LocationEstimate[1] Add-GeographicalInformation 		OPTIONAL,
	velocityEstimate	[2] VelocityEstimate		OPTIONAL,
	sequenceNumber		[3]	SequenceNumber			OPTIONAL,
	... }
-- add-LocationEstimate shall be included if and only if a location estimate was successfully
-- transferred towards an External LCS Client or was successfully obtained for UE self location
-- velocityEstimate may only be included if add-LocationEstimate is included

LCS-LocationUpdateRes	::= SEQUENCE {
	terminationCause 	[0] TerminationCause 		OPTIONAL,
	... }

LCS-PeriodicLocationCancellationArg	::= SEQUENCE {
	referenceNumber		[0] LCS-ReferenceNumber,
	h-gmlc-address		[1]	GSN-Address				OPTIONAL,
	... }


END