[Automatic update for 2016-03-13]
[metze/wireshark/wip.git] / asn1 / inap / IN-SCF-SRF-datatypes.asn
1 -- Module IN-SCF-SRF-datatypes (Q.1248.3:07/2001)
2 IN-SCF-SRF-datatypes {itu-t recommendation q 1248 modules(1)
3   in-scf-srf-datatypes(10) version1(0)} DEFINITIONS IMPLICIT TAGS ::=
4 BEGIN
5
6 IMPORTS
7   tc-Messages, common-classes, common-datatypes, ssf-scf-classes,
8     scf-srf-classes, ssf-scf-datatypes, ros-InformationObjects
9     FROM IN-object-identifiers {itu-t recommendation q 1248 modules(1)
10       in-object-identifiers(0) version1(0)}
11   EXTENSION, SupportedExtensions, COMMON-BOUNDS
12     FROM IN-common-classes common-classes
13   Integer4
14     FROM IN-common-datatypes common-datatypes
15   Code
16     FROM Remote-Operations-Information-Objects ros-InformationObjects
17   Digits{}, DisplayInformation{}, SDSSinformation{}
18     FROM IN-SSF-SCF-datatypes ssf-scf-datatypes
19   SCF-SSF-BOUNDS
20     FROM IN-SSF-SCF-Classes ssf-scf-classes
21   SCF-SRF-BOUNDS
22     FROM IN-SCF-SRF-Classes scf-srf-classes;
23
24 -- The following three definitions are local short-hand notation for convenience.
25 B1 ::=
26   COMMON-BOUNDS -- defined in Q.1248.1 (Part 1 of Recommendation Q.1248)
27
28 B2 ::= SCF-SSF-BOUNDS -- defined in Q.1248.2 (Part 2 of Recommendation Q.1248)
29
30 B3 ::= SCF-SRF-BOUNDS -- defined in this Recommendation (Q.1248.3)
31
32 CollectedDigits ::= SEQUENCE {
33   minimumNbOfDigits    [0]  INTEGER(1..127) DEFAULT 1,
34   maximumNbOfDigits    [1]  INTEGER(1..127),
35   endOfReplyDigit      [2]  OCTET STRING(SIZE (1..2)) OPTIONAL,
36   cancelDigit          [3]  OCTET STRING(SIZE (1..2)) OPTIONAL,
37   startDigit           [4]  OCTET STRING(SIZE (1..2)) OPTIONAL,
38   firstDigitTimeOut    [5]  INTEGER(1..127) OPTIONAL,
39   interDigitTimeOut    [6]  INTEGER(1..127) OPTIONAL,
40   errorTreatment       [7]  ErrorTreatment DEFAULT reportErrorToScf,
41   interruptableAnnInd  [8]  BOOLEAN DEFAULT TRUE,
42   voiceInformation     [9]  BOOLEAN DEFAULT FALSE,
43   voiceBack            [10]  BOOLEAN DEFAULT FALSE,
44   detectModem          [11]  BOOLEAN DEFAULT FALSE,
45   ...
46 }
47
48 -- The use of voiceBack is network operator specific.
49 -- The endOfReplyDigit, cancelDigit, and startDigit parameters have been designated as OCTET STRING, 
50 -- and are to be encoded as BCD, one digit per octet only, contained
51 -- in the four least significant bits of each OCTET. The usage is service dependent.
52 CollectedInfo ::= CHOICE {
53   collectedDigits  [0]  CollectedDigits,
54   iA5Information   [1]  BOOLEAN,
55   detectModem      [2]  BOOLEAN
56 }
57
58 ElementaryMessageID ::= Integer4
59
60 ErrorTreatment ::= ENUMERATED {reportErrorToScf(0), help(1), repeatPrompt(2)}
61
62 -- reportErrorToScf means returning the "ImproperCallerResponse" error in the event of an error
63 -- condition during collection of user info.
64 GapOnResource ::=
65   Code
66
67 InbandInfo{B2:b2, B3:b3} ::= SEQUENCE {
68   messageID            [0]  MessageID{b2, b3},
69   numberOfRepetitions  [1]  INTEGER(1..127) OPTIONAL,
70   duration             [2]  INTEGER(0..32767) OPTIONAL,
71   interval             [3]  INTEGER(0..32767) OPTIONAL,
72   preferredLanguage    [4]  Language OPTIONAL,
73   ...
74 }
75
76 -- Interval is the time in seconds between each repeated announcement. Duration is the total
77 -- amount of time in seconds, including repetitions and intervals.
78 -- The end of announcement is either the end of duration or numberOfRepetitions, whatever comes first.
79 -- duration with value 0 indicates infinite duration
80 InformationToRecord{B3:b3} ::= SEQUENCE {
81   messageID               [0]  ElementaryMessageID OPTIONAL,
82   messageDeletionTimeOut  [1]  INTEGER(1..3600) OPTIONAL,
83   --Time units = hours
84   timeToRecord            [3]  INTEGER(0..b3.&maxRecordingTime) OPTIONAL,
85   --Time units = seconds
86   controlDigits
87     [4]  SEQUENCE {endOfRecordingDigit
88                      [0]  OCTET STRING(SIZE (1..2)) OPTIONAL,
89                    cancelDigit
90                      [1]  OCTET STRING(SIZE (1..2)) OPTIONAL,
91                    replayDigit
92                      [2]  OCTET STRING(SIZE (1..2)) OPTIONAL,
93                    restartRecordingDigit
94                      [3]  OCTET STRING(SIZE (1..2)) OPTIONAL,
95                    restartAllowed         [4]  BOOLEAN DEFAULT FALSE,
96                    replayAllowed          [5]  BOOLEAN DEFAULT FALSE,
97                    ...},
98   ...
99 }
100
101 InformationToSend{B2:b2, B3:b3} ::= CHOICE {
102   inbandInfo          [0]  InbandInfo{b2, b3},
103   tone                [1]  Tone,
104   displayInformation  [2]  DisplayInformation{b2},
105   sDSSinformation     [3]  SDSSinformation{b2}
106 }
107
108 Language ::= PrintableString(SIZE (3)) -- ISO 639 codes only;
109                             
110
111 MailBoxID{B3:b3} ::=
112   OCTET STRING(SIZE (b3.&minMailBoxIDLength..b3.&maxMailBoxIDLength))
113
114 Media ::= ENUMERATED {voiceMail(0), faxGroup3(1), faxGroup4(2)}
115
116 MessageID{B2:b2, B3:b3} ::= CHOICE {
117   elementaryMessageID   [0]  Integer4,
118   text
119     [1]  SEQUENCE {messageContent
120                      [0]  IA5String
121                             (SIZE (b3.&minMessageContentLength..
122                                      b3.&maxMessageContentLength)),
123                    attributes
124                      [1]  OCTET STRING
125                             (SIZE (b3.&minAttributesLength..
126                                      b3.&maxAttributesLength)) OPTIONAL,
127                    ...},
128   elementaryMessageIDs
129     [29]  SEQUENCE SIZE (1..b3.&numOfMessageIDs) OF Integer4,
130   variableMessage
131     [30]  SEQUENCE {elementaryMessageID  [0]  Integer4,
132                     variableParts
133                       [1]  SEQUENCE SIZE (1..b3.&maxVariableParts) OF
134                              VariablePart{b2},
135                     ...}
136 }
137
138 -- OPTIONAL denotes network operator specific use.
139 ReceivedStatus ::= ENUMERATED {
140   messageComplete(0), messageInterrupted(1), messageTimeOut(2)}
141
142 RecordedMessageID ::= Integer4
143
144 SRFGapCriteria{B2:b2} ::= CHOICE {
145   iPAddressValue        [1]  Digits{b2},
146   gapOnResource         [2]  GapOnResource,
147   iPAddressAndresource
148     [3]  SEQUENCE {iPAddressValue  [1]  Digits{b2},
149                    gapOnResource   [2]  GapOnResource,
150                    ...}
151 }
152
153 Tone ::= SEQUENCE {
154   toneID    [0]  Integer4,
155   duration  [1]  Integer4 OPTIONAL,
156   ...
157 }
158
159 -- The duration specifies the length of the tone in seconds, value 0 indicates infinite duration.
160 VariablePart{B2:b2} ::= CHOICE {
161   integer  [0]  Integer4,
162   number   [1]  Digits{b2}, -- Generic digits
163   time     [2]  OCTET STRING(SIZE (2)), -- HH:MM, BCD coded
164   date     [3]  OCTET STRING(SIZE (3)), -- YYMMDD, BCD coded
165   price    [4]  OCTET STRING(SIZE (4))
166 }
167
168 -- Indicates the variable part of the message.
169 -- BCD coded variable parts are encoded as described in the examples below.
170 -- For example, time = 12:15 would be encoded as:
171 --      Bits                                    HGFE            DCBA
172 --      leading octet   2       1
173 --                      5       1
174 -- date = 1993 September 30th would be encoded as:
175 --      Bits                                    HGFE            DCBA
176 --      leading octet   3       9
177 --                      9       0
178 --                      0       3 
179 -- For a system operating when or after this Recommendation is released, the 2-digit value
180 -- representing a Year shall be interpreted as follows:
181 --    - If the two-digits value is 00 through 49 inclusive, it shall be interpreted as representing 
182 --     year 2000 through 2049.
183 --    - If the two-digits value is 50 through 99 inclusive, it shall be interpreted as representing
184 --     year 1950 through 1999.
185 END
186
187 -- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D
188