aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/asn1/h450/Call-Diversion-Operations.asn
blob: 90430820767c367d50da1abb180c2293c397a7b3 (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
-- Call-Diversion-Operations.asn
--
-- Taken from ITU ASN.1 database
-- http://www.itu.int/ITU-T/asn1/database/itu-t/h/h450.3/1998/Call-Diversion-Operations.asn
--

-- Module Call-Diversion-Operations (H.450.3:02/1998)
Call-Diversion-Operations {itu-t recommendation h 450 3 version1(0)
  call-diversion-operations(0)} DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

IMPORTS
  OPERATION, ERROR
    FROM Remote-Operations-Information-Objects {joint-iso-itu-t
      remote-operations(4) informationObjects(5) version1(0)}
  EXTENSION, Extension{}
    FROM Manufacturer-specific-service-extension-definition {itu-t
      recommendation h 450 1 version1(0) msi-definition(18)}
  H225InformationElement
    FROM H225-generic-parameters-definition {itu-t recommendation h 450 
      1 version1(0) h225-generic-parameters(6)}
  NonStandardParameter
    FROM H323-MESSAGES
  EndpointAddress, PartySubaddress, PresentationAllowedIndicator
    FROM Addressing-Data-Elements {itu-t recommendation h 450 1 version1(0)
      addressing-data-elements(9)}
  userNotSubscribed, notAvailable, invalidServedUserNumber,
    basicServiceNotProvided, resourceUnavailable,
    supplementaryServiceInteractionNotAllowed
    FROM H4501-General-Error-List {itu-t recommendation h 450 1 version1(0)
      general-error-list(1)};

H323CallDiversionOperations OPERATION ::=
  {activateDiversionQ | deactivateDiversionQ | interrogateDiversionQ |
   checkRestriction | callRerouting | divertingLegInformation1 |
   divertingLegInformation2 | divertingLegInformation3 |
   divertingLegInformation4 | cfnrDivertedLegFailed}

activateDiversionQ OPERATION ::=
  { -- sent from the activating h.323-endpoint to the served h.323-endpoint
  ARGUMENT
    SEQUENCE {procedure          Procedure,
              basicService       BasicService,
              divertedToAddress  EndpointAddress,
              servedUserNr       EndpointAddress,
              activatingUserNr   EndpointAddress,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RESULT
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter}
  OPTIONAL  TRUE
  ERRORS
    {userNotSubscribed | notAvailable | invalidServedUserNumber |
      basicServiceNotProvided | resourceUnavailable | invalidDivertedNumber |
      specialServiceNumber | diversionToServedUserNumber |
      temporarilyUnavailable | notAuthorized | unspecified}
  CODE      local:15
}

deactivateDiversionQ OPERATION ::=
  { -- sent from the deactivating h.323-endpoint to the served h.323-endpoint
  ARGUMENT
    SEQUENCE {procedure           Procedure,
              basicService        BasicService,
              servedUserNr        EndpointAddress,
              deactivatingUserNr  EndpointAddress,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RESULT
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter}
  OPTIONAL  TRUE
  ERRORS
    {userNotSubscribed | notAvailable | invalidServedUserNumber |
      temporarilyUnavailable | notAuthorized | unspecified}
  CODE      local:16
}

interrogateDiversionQ OPERATION ::=
  { -- sent from the interrogating h.323-endpoint to the served h.323-endpoint
  ARGUMENT
    SEQUENCE {procedure            Procedure,
              basicService         BasicService DEFAULT allServices,
              servedUserNr         EndpointAddress,
              interrogatingUserNr  EndpointAddress,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RESULT    IntResultList
  ERRORS
    {userNotSubscribed | notAvailable | invalidServedUserNumber |
      temporarilyUnavailable | notAuthorized | unspecified}
  CODE      local:17
}

checkRestriction OPERATION ::=
  { -- sent from the served h.323-endpoint to the diverted-to h.323-endpoint
  ARGUMENT
    SEQUENCE {servedUserNr  EndpointAddress,
              basicService  BasicService,
              divertedToNr  EndpointAddress,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RESULT
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter}
  OPTIONAL  TRUE
  ERRORS
    {notAvailable | invalidServedUserNumber | invalidDivertedNumber |
      specialServiceNumber | unspecified}
  CODE      local:18
}

callRerouting OPERATION ::=
  { -- sent from the served h.323-endpoint to the rerouting h.323-endpoint
  ARGUMENT
    SEQUENCE {reroutingReason          DiversionReason,
              originalReroutingReason  DiversionReason OPTIONAL,
              calledAddress            EndpointAddress,
              diversionCounter         INTEGER(1..15),
              h225InfoElement          H225InformationElement,
              -- The H.225 information elements Bearer capability, 
              -- High layer compatibility, Low layer compatibility and 
              -- Progress Indicator information element may  be embedded 
              -- in the h225InfoElement in accordance with H.450.1. 
              lastReroutingNr          EndpointAddress,
              subscriptionOption       SubscriptionOption,
              callingPartySubaddress   PartySubaddress OPTIONAL,
              callingNumber            EndpointAddress,
              callingInfo              BMPString(SIZE (1..128)) OPTIONAL,
              originalCalledNr         EndpointAddress OPTIONAL,
              redirectingInfo          BMPString(SIZE (1..128)) OPTIONAL,
              originalCalledInfo       BMPString(SIZE (1..128)) OPTIONAL,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RESULT
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter}
  OPTIONAL  TRUE
  ERRORS
    {userNotSubscribed | notAvailable | resourceUnavailable |
      invalidDivertedNumber | specialServiceNumber |
      diversionToServedUserNumber | numberOfDiversionsExceeded |
      supplementaryServiceInteractionNotAllowed | unspecified}
  CODE      local:19
}

divertingLegInformation1 OPERATION ::=
  { -- sent from the re-routing h.323-endpoint to the originating h.323-endpoint  
  -- if the re-routing endpoint equals the originating endpoint, this operation 

  -- is not applicable; may also be sent from the rerouting endpoint to other 
  -- members of a conference, if subscription option allows. 
  ARGUMENT
    SEQUENCE {diversionReason     DiversionReason,
              subscriptionOption  SubscriptionOption,
              nominatedNr         EndpointAddress,
              nominatedInfo       BMPString(SIZE (1..128)) OPTIONAL,
              redirectingNr       EndpointAddress OPTIONAL,
              redirectingInfo     BMPString(SIZE (1..128)) OPTIONAL,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:20
}

divertingLegInformation2 OPERATION ::=
  { --sent from the re-routing h.323-endpoint to the diverted-to h.323-endpoint 
  ARGUMENT
    SEQUENCE {diversionCounter         INTEGER(1..15),
              diversionReason          DiversionReason,
              originalDiversionReason  DiversionReason OPTIONAL,
              divertingNr              EndpointAddress OPTIONAL,
              originalCalledNr         EndpointAddress OPTIONAL,
              redirectingInfo          BMPString(SIZE (1..128)) OPTIONAL,
              originalCalledInfo       BMPString(SIZE (1..128)) OPTIONAL,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  -- The divertingNr element is mandatory except in the case of interworking
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:21
}

divertingLegInformation3 OPERATION ::= {
  --sent from the diverted-to h.323-endpoint to the originating h.323-endpoint
  ARGUMENT
    SEQUENCE {presentationAllowedIndicator  PresentationAllowedIndicator,
              redirectionNr                 EndpointAddress OPTIONAL,
              redirectionInfo               BMPString(SIZE (1..128)) OPTIONAL,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:22
}

divertingLegInformation4 OPERATION ::= {
  -- If call diversion in not performed by the forwarding terminal but by a
  --  gatekeeper, the gatekeeper may send divertingLegInformation4 apdu to the 
  -- forwarding terminal. 
  ARGUMENT
    SEQUENCE {diversionReason     DiversionReason,
              subscriptionOption  SubscriptionOption,
              callingNr           EndpointAddress,
              callingInfo         BMPString(SIZE (1..128)) OPTIONAL,
              nominatedNr         EndpointAddress,
              nominatedInfo       BMPString(SIZE (1..128)) OPTIONAL,
              extension
                CHOICE {extensionSeq     ExtensionSeq,
                        nonStandardData  NonStandardParameter} OPTIONAL,
              ...}
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:100
}

cfnrDivertedLegFailed OPERATION ::=
  { -- sent from the rerouting h.323-terminal to the served  h.323-endpoint
  ARGUMENT
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter}
  OPTIONAL         TRUE
  RETURN RESULT    FALSE
  ALWAYS RESPONDS  FALSE
  CODE             local:23
}

-- This indicates that the diverted-to leg has been cleared during SS-CFNR execution.
-- Definitions of general used data types:
DiversionReason ::= ENUMERATED {unknown(0), cfu(1), cfb(2), cfnr(3), ...
                                }

-- The value unknown is only used if received from another network when interworking.
IntResultList ::= SET SIZE (0..29) OF IntResult

IntResult ::= SEQUENCE {
  servedUserNr       EndpointAddress,
  basicService       BasicService,
  procedure          Procedure,
  divertedToAddress  EndpointAddress,
  remoteEnabled      BOOLEAN DEFAULT FALSE,
  extension
    CHOICE {extensionSeq     ExtensionSeq,
            nonStandardData  NonStandardParameter} OPTIONAL,
  ...
}

Procedure ::= ENUMERATED {cfu(0), cfb(1), cfnr(2), ...
                          }

SubscriptionOption ::= ENUMERATED {
  noNotification(0), notificationWithoutDivertedToNr(1),
  notificationWithDivertedToNr(2), ...
  }

invalidDivertedNumber ERROR ::= {CODE  local:12
}

specialServiceNumber ERROR ::= {CODE  local:14
}

diversionToServedUserNumber ERROR ::= {CODE  local:15
}

numberOfDiversionsExceeded ERROR ::= {CODE  local:24
}

temporarilyUnavailable ERROR ::= {CODE  local:1000
}

notAuthorized ERROR ::= {CODE  local:1007
}

unspecified ERROR ::= {
  PARAMETER
    CHOICE {extension    Extension{{ExtensionSet}},
            nonStandard  NonStandardParameter}
  CODE       local:1008
}

BasicService ::= ENUMERATED {
  allServices(0),
  -- speech (1),
  -- unrestrictedDigitalInformation (2),
  -- audio3.1KHz (3),
  -- telephony (32),
  -- teletex (33),
  -- telefaxGroup4Class1 (34),
  -- videotexSyntaxBased (35),
  -- videotelephony (36), 
  ...
  }

-- For multimedia calls the value "allServices" shall be used only. 
-- The usage of the other codepoints for multimedia calls is for further study.
ExtensionSeq ::= SEQUENCE OF Extension{{ExtensionSet}}

ExtensionSet EXTENSION ::=
  {...}

-- Actual values defined by individual manufacturers
END -- of Call-Diversion-Operations

-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D