1-- 3GPP TS 29.078 11.0.0 (2011-09)
2-- 7	SMS Control
3-- 7.1	SMS operations and arguments
4CAP-SMS-ops-args {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) umts-network(1) modules(3) cap-SMS-ops-args(105) version8(7)}
5-- The module CAP-SMS-ops-args is updated to version8(7) for Rel-6. The OPERATION definitions
6-- are not modified.
7
8DEFINITIONS IMPLICIT TAGS::= BEGIN
9
10-- This module contains the operations and operation arguments used for the
11-- smsSSF? gsmSCF interface, for the control of MO-SMS and MT-SMS.
12
13-- The table in subclause 2.1 lists the specifications that contain the modules
14-- that are used by CAP.
15
16IMPORTS
17
18	errortypes,
19	datatypes,
20	operationcodes,
21	classes,
22	ros-InformationObjects,
23	tc-Messages
24FROM CAP-object-identifiers {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0)
25umts-network(1) modules(3) cap-object-identifiers(100) version8(7)}
26
27	OPERATION
28FROM Remote-Operations-Information-Objects ros-InformationObjects
29
30	ServiceKey
31FROM CS1-DataTypes {itu-t(0) identified-organization(4) etsi(0) inDomain(1) in-network(1)
32modules(0) cs1-datatypes(2) version1(0)}
33
34	MiscCallInfo
35FROM CS2-datatypes {itu-t(0) identified-organization(4) etsi(0) inDomain(1) in-network(1)
36cs2(20) modules(0) in-cs2-datatypes (0) version1(0)}
37
38	IMEI,
39	IMSI,
40	ISDN-AddressString
41FROM MAP-CommonDataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0)
42gsm-Network(1) modules(3) map-CommonDataTypes(18) version12(12)}
43
44	GPRSMSClass,
45	LocationInformation,
46	MS-Classmark2
47FROM MAP-MS-DataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0)
48gsm-Network(1) modules(3) map-MS-DataTypes(11) version12(12)}
49
50	PARAMETERS-BOUND
51FROM CAP-classes classes
52
53	opcode-connectSMS,
54	opcode-continueSMS,
55	opcode-eventReportSMS,
56	opcode-furnishChargingInformationSMS,
57	opcode-initialDPSMS,
58	opcode-releaseSMS,
59	opcode-requestReportSMSEvent,
60	opcode-resetTimerSMS
61FROM CAP-operationcodes operationcodes
62-- The CAP Operation identifiers for CAP V3 and CAP V4 for SMS in Rel-6 are the same as in Rel-5.
63
64	CalledPartyBCDNumber {},
65	EventSpecificInformationSMS,
66	EventTypeSMS,
67	Extensions {},
68	FCISMSBillingChargingCharacteristics,
69	LocationInformationGPRS,
70	RPCause,
71	SMS-AddressString,
72	SMSEvent,
73	TimeAndTimezone {},
74	TimerID,
75	TimerValue,
76	TPDataCodingScheme,
77	TPProtocolIdentifier,
78	TPShortMessageSpecificInfo,
79	TPValidityPeriod
80FROM CAP-datatypes datatypes
81-- For Rel-6, the CAP-datatypes module is updated to version8(7); Object Identifier 'datatypes'
82-- is also updated to version8(7). As a result, the present module uses Rel-6 data type definitions.
83
84	missingCustomerRecord,
85	missingParameter,
86	parameterOutOfRange,
87	systemFailure,
88	taskRefused,
89	unexpectedComponentSequence,
90	unexpectedDataValue,
91	unexpectedParameter
92FROM CAP-errortypes errortypes
93-- For Rel-6, the CAP-errortypes module is updated to version8(7); Object Identifier
94-- 'errortypes' is also updated to version8(7). As a result, the present module uses Rel-6
95-- error type definitions.
96
97	CallReferenceNumber
98FROM MAP-CH-DataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0)
99gsm-Network(1) modules(3) map-CH-DataTypes(13) version12(12)}
100
101;
102
103connectSMS {PARAMETERS-BOUND : bound} OPERATION ::= {
104	ARGUMENT		ConnectSMSArg {bound}
105	RETURN RESULT	FALSE
106	ERRORS			{missingParameter |
107					parameterOutOfRange |
108					systemFailure |
109					taskRefused |
110					unexpectedComponentSequence |
111					unexpectedDataValue |
112					unexpectedParameter}
113	CODE			opcode-connectSMS}
114--  Direction: gsmSCF -> gsmSSF or gprsSSF, Timer: Tconsms
115--  This operation is used to request the smsSSF to perform the SMS processing
116--  actions to route or forward a short message to a specified destination.
117
118ConnectSMSArg {PARAMETERS-BOUND : bound} ::= SEQUENCE {
119	callingPartysNumber					[0] SMS-AddressString						OPTIONAL,
120	destinationSubscriberNumber			[1] CalledPartyBCDNumber {bound}			OPTIONAL,
121	sMSCAddress							[2] ISDN-AddressString						OPTIONAL,
122	extensions							[10] Extensions {bound}						OPTIONAL,
123	...
124	}
125
126continueSMS OPERATION ::= {
127	RETURN RESULT	FALSE
128	ALWAYS RESPONDS	FALSE
129	CODE			opcode-continueSMS}
130-- Direction: gsmSCF -> smsSSF, Timer: Tcuesms
131-- This operation is used to request the smsSSF to proceed with
132-- Short Message processing at the DP at which it previously suspended
133-- Short Message processing to await gsmSCF instructions (i.e. proceed
134-- to the next Point in Association in the SMS FSM). The smsSSF
135-- continues SMS processing without substituting new data from the gsmSCF.
136
137eventReportSMS {PARAMETERS-BOUND : bound} OPERATION ::= {
138	ARGUMENT		EventReportSMSArg {bound}
139	RETURN RESULT	FALSE
140	ALWAYS RESPONDS	FALSE
141	CODE			opcode-eventReportSMS}
142--  Direction: gsmSSF or gprsSSF -> gsmSCF, Timer: Terbsms
143--  This operation is used to notify the gsmSCF of a Short Message related event (FSM events
144--  such as submission, delivery or failure) previously requested by the gsmSCF in a
145--  RequestReportSMSEvent operation.
146
147EventReportSMSArg {PARAMETERS-BOUND : bound} ::= SEQUENCE {
148	eventTypeSMS						[0] EventTypeSMS,
149	eventSpecificInformationSMS			[1] EventSpecificInformationSMS				OPTIONAL,
150	miscCallInfo						[2] MiscCallInfo DEFAULT {messageType request},
151	extensions							[10] Extensions {bound}						OPTIONAL,
152	...
153	}
154
155furnishChargingInformationSMS {PARAMETERS-BOUND : bound} OPERATION ::= {
156	ARGUMENT		FurnishChargingInformationSMSArg {bound}
157	RETURN RESULT	FALSE
158	ERRORS			{missingParameter |
159					taskRefused |
160					unexpectedComponentSequence |
161					unexpectedDataValue |
162					unexpectedParameter}
163	CODE			opcode-furnishChargingInformationSMS}
164--  Direction: gsmSCF ?? gsmSSF or gprsSSF, Timer: Tfcisms
165--  This operation is used to request the smsSSF to generate, register a charging record
166--  or to include some information in the default SM record. The registered charging record is
167--  intended for off line charging of the Short Message.
168
169FurnishChargingInformationSMSArg {PARAMETERS-BOUND : bound} ::=
170	FCISMSBillingChargingCharacteristics {bound}
171
172initialDPSMS {PARAMETERS-BOUND : bound} OPERATION ::= {
173	ARGUMENT		InitialDPSMSArg {bound}
174	RETURN RESULT	FALSE
175	ERRORS			{missingCustomerRecord |
176					missingParameter |
177					parameterOutOfRange |
178					systemFailure |
179					taskRefused |
180					unexpectedComponentSequence |
181					unexpectedDataValue |
182					unexpectedParameter}
183	CODE			opcode-initialDPSMS}
184--  Direction: gsmSSF or gprsSSF -> gsmSCF, Timer: Tidpsms
185--  This operation is used after a TDP to indicate request for service.
186
187InitialDPSMSArg {PARAMETERS-BOUND : bound} ::= SEQUENCE {
188	serviceKey							[0] ServiceKey,
189	destinationSubscriberNumber			[1] CalledPartyBCDNumber {bound}			OPTIONAL,
190	callingPartyNumber					[2] SMS-AddressString						OPTIONAL,
191	eventTypeSMS						[3] EventTypeSMS							OPTIONAL,
192	iMSI								[4] IMSI									OPTIONAL,
193	locationInformationMSC				[5] LocationInformation						OPTIONAL,
194	locationInformationGPRS				[6] LocationInformationGPRS					OPTIONAL,
195	sMSCAddress							[7] ISDN-AddressString						OPTIONAL,
196	timeAndTimezone						[8] TimeAndTimezone {bound}					OPTIONAL,
197	tPShortMessageSpecificInfo			[9] TPShortMessageSpecificInfo				OPTIONAL,
198	tPProtocolIdentifier				[10] TPProtocolIdentifier					OPTIONAL,
199	tPDataCodingScheme					[11] TPDataCodingScheme						OPTIONAL,
200	tPValidityPeriod					[12] TPValidityPeriod						OPTIONAL,
201	extensions							[13] Extensions {bound}						OPTIONAL,
202	...,
203	smsReferenceNumber					[14] CallReferenceNumber					OPTIONAL,
204	mscAddress							[15] ISDN-AddressString						OPTIONAL,
205	sgsn-Number							[16] ISDN-AddressString						OPTIONAL,
206	ms-Classmark2						[17] MS-Classmark2							OPTIONAL,
207	gPRSMSClass 						[18] GPRSMSClass							OPTIONAL,
208	iMEI								[19] IMEI									OPTIONAL,
209	calledPartyNumber					[20] ISDN-AddressString						OPTIONAL
210	}
211
212--  The UserCSGInformation is conveyed in the LocationInformation for CS and LocationInformationGPRS
213--  for GPRS. The encoding of the parameter is as defined in 3GPP TS 29.002 [11].
214
215releaseSMS OPERATION ::= {
216	ARGUMENT		ReleaseSMSArg
217	RETURN RESULT	FALSE
218	ALWAYS RESPONDS	FALSE
219	CODE			opcode-releaseSMS}
220--  Direction: gsmSCF -> gsmSSF or gprsSSF, Timer: Trelsms
221--  This operation is used to prevent an attempt to submit or deliver a short message.
222
223ReleaseSMSArg ::= RPCause
224
225requestReportSMSEvent {PARAMETERS-BOUND : bound} OPERATION ::= {
226	ARGUMENT		RequestReportSMSEventArg {bound}
227	RETURN RESULT	FALSE
228	ERRORS			{missingParameter |
229					parameterOutOfRange |
230					systemFailure |
231					taskRefused |
232					unexpectedComponentSequence |
233					unexpectedDataValue |
234					unexpectedParameter}
235	CODE			opcode-requestReportSMSEvent}
236--  Direction: gsmSCF -> gsmSSF or gprsSSF, Timer: Trrbsms
237--  This operation is used to request the gsmSSF or gprsSSF to monitor for a
238--  Short Message related event (FSM events such as submission, delivery or failure)
239--  and to send a notification to the gsmSCF when the event is detected.
240
241RequestReportSMSEventArg {PARAMETERS-BOUND : bound} ::= SEQUENCE {
242	sMSEvents							[0] SEQUENCE SIZE (1..bound.&numOfSMSEvents) OF SMSEvent,
243	extensions							[10] Extensions {bound}						OPTIONAL,
244	...
245	}
246--  Indicates the Short Message related events(s) for notification.
247
248resetTimerSMS {PARAMETERS-BOUND : bound} OPERATION ::= {
249	ARGUMENT		ResetTimerSMSArg {bound}
250	RETURN RESULT	FALSE
251	ERRORS			{missingParameter |
252					parameterOutOfRange |
253					taskRefused |
254					unexpectedComponentSequence |
255					unexpectedDataValue |
256					unexpectedParameter}
257	CODE			opcode-resetTimerSMS}
258-- Direction: gsmSCF -> smsSSF, Timer: Trtsms
259-- This operation is used to request the smsSSF to refresh an application
260-- timer in the smsSSF.
261
262ResetTimerSMSArg {PARAMETERS-BOUND : bound} ::= SEQUENCE {
263	timerID								[0] TimerID	DEFAULT tssf,
264	timervalue							[1] TimerValue,
265	extensions							[2] Extensions {bound} 						OPTIONAL,
266	...
267	}
268
269END
270