1%%<copyright>
2%% <year>2004-2008</year>
3%% <holder>Ericsson AB, All Rights Reserved</holder>
4%%</copyright>
5%%<legalnotice>
6%% Licensed under the Apache License, Version 2.0 (the "License");
7%% you may not use this file except in compliance with the License.
8%% You may obtain a copy of the License at
9%%
10%%     http://www.apache.org/licenses/LICENSE-2.0
11%%
12%% Unless required by applicable law or agreed to in writing, software
13%% distributed under the License is distributed on an "AS IS" BASIS,
14%% WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15%% See the License for the specific language governing permissions and
16%% limitations under the License.
17%%
18%% The Initial Developer of the Original Code is Ericsson AB.
19%%</legalnotice>
20%%
21%%----------------------------------------------------------------------
22%% Generated by the Erlang ASN.1 compiler version:1.2.7
23%% Purpose: Erlang record definitions for each named and unnamed
24%%          SEQUENCE and SET in module MEDIA-GATEWAY-CONTROL
25%%----------------------------------------------------------------------
26
27-record('MegacoMessage',
28	{
29	  authHeader = asn1_NOVALUE,
30	  mess
31	 }).
32
33-record('AuthenticationHeader',
34	{
35	  secParmIndex,
36	  seqNum,
37	  ad
38	 }).
39
40-record('Message',
41	{
42	  version,
43	  mId,
44	  messageBody
45	 }). % with extension mark
46
47-record('DomainName',
48	{
49	  name,
50	  portNumber = asn1_NOVALUE
51	 }).
52
53-record('IP4Address',
54	{
55	  address,
56	  portNumber = asn1_NOVALUE
57	 }).
58
59-record('IP6Address',
60	{
61	  address,
62	  portNumber = asn1_NOVALUE
63	 }).
64
65-record('TransactionRequest',
66	{
67	  transactionId,
68	  actions = []
69	 }). % with extension mark
70
71-record('TransactionPending',
72	{
73	  transactionId
74	 }). % with extension mark
75
76-record('TransactionReply',
77	{
78	  transactionId,
79	  immAckRequired = asn1_NOVALUE,
80	  transactionResult,
81
82	  %% with extension mark -- prev3a --
83
84	  %% Erlang Note: NOT REALLY PART OF THIS IMPLEMENTATION
85	  %% Erlang Note: The only reason why we need to include
86	  %% Erlang Note: these definitions in this version is
87	  %% Erlang Note: that we cannot distinguish between v3
88	  %% Erlang Note: versions in the megaco_messenger module
89	  segmentNumber        = asn1_NOVALUE,
90	  segmentationComplete = asn1_NOVALUE
91	 }).
92
93%% SegmentReply only used internally (in the engine)
94
95-record('TransactionAck',
96	{
97	  firstAck,
98	  lastAck = asn1_NOVALUE
99	 }).
100
101-record('ErrorDescriptor',
102	{
103	  errorCode,
104	  errorText = asn1_NOVALUE
105	 }).
106
107-record('ActionRequest',
108	{
109	  contextId,
110	  contextRequest = asn1_NOVALUE,
111	  contextAttrAuditReq = asn1_NOVALUE,
112	  commandRequests = []
113	 }).
114
115-record('ActionReply',
116	{
117	  contextId,
118	  errorDescriptor = asn1_NOVALUE,
119	  contextReply = asn1_NOVALUE,
120	  commandReply = []
121	 }).
122
123-record('ContextRequest',
124	{
125	  priority = asn1_NOVALUE,
126	  emergency = asn1_NOVALUE,
127	  topologyReq = asn1_NOVALUE,
128
129	  %% with extension mark -- prev3a --
130
131	  iepsCallind = asn1_NOVALUE,  % V3 Fixed
132	  contextProp = asn1_NOVALUE
133	 }).
134
135-record('ContextAttrAuditRequest',
136	{
137	  topology = asn1_NOVALUE,
138	  emergency = asn1_NOVALUE,
139	  priority = asn1_NOVALUE,
140
141	  %% with extension mark -- prev3a --
142
143	  iepsCallind = asn1_NOVALUE,  % V3 Fixed
144	  contextPropAud = asn1_NOVALUE
145	 }).
146
147-record('CommandRequest',
148	{
149	  command,
150	  optional = asn1_NOVALUE,
151	  wildcardReturn = asn1_NOVALUE
152	 }). % with extension mark
153
154-record('TopologyRequest',
155	{
156	  terminationFrom,
157	  terminationTo,
158	  topologyDirection,
159
160	  %% After extension mark
161	  streamID = asn1_NOVALUE  %% Only in ASN.1
162	 }).
163
164-record('AmmRequest',
165	{
166	  terminationID = [],
167	  descriptors = []
168	 }). % with extension mark
169
170-record('AmmsReply',
171	{
172	  terminationID = [],
173	  terminationAudit = asn1_NOVALUE
174	 }). % with extension mark
175
176-record('SubtractRequest',
177	{
178	  terminationID = [],
179	  auditDescriptor = asn1_NOVALUE
180	 }). % with extension mark
181
182-record('AuditRequest',
183	{
184	  terminationID,
185	  auditDescriptor
186	 }). % with extension mark
187
188-record('AuditResult',
189	{
190	  terminationID,
191	  terminationAuditResult = []
192	 }).
193
194-record('AuditDescriptor',
195	{
196	  auditToken         = asn1_NOVALUE,
197	  %% with extensions
198	  auditPropertyToken = asn1_NOVALUE
199	 }).
200
201
202%% --- v2 start ---
203
204-record('IndAudMediaDescriptor',
205	{
206	  termStateDescr = asn1_NOVALUE,
207	  streams        = asn1_NOVALUE
208	}). % with extension mark
209
210-record('IndAudStreamDescriptor',
211	{
212	  streamID,
213	  streamParms
214	}). % with extension mark
215
216-record('IndAudStreamParms',
217	{
218	  localControlDescriptor = asn1_NOVALUE,
219	  localDescriptor        = asn1_NOVALUE, %% NOTE: NOT IN TEXT
220	  remoteDescriptor       = asn1_NOVALUE, %% NOTE: NOT IN TEXT
221
222	  %% with extension mark -- prev3a --
223
224	  statisticsDescriptor   = asn1_NOVALUE
225	}).
226
227-record('IndAudLocalControlDescriptor',
228	{
229	  streamMode    = asn1_NOVALUE,
230	  reserveValue  = asn1_NOVALUE,
231	  reserveGroup  = asn1_NOVALUE,
232	  propertyParms = asn1_NOVALUE
233	}). % with extension mark
234
235-record('IndAudPropertyParm',
236	{
237	  name
238	}). % with extension mark
239
240-record('IndAudLocalRemoteDescriptor',
241	{
242	  propGroupID = asn1_NOVALUE,
243	  propGrps
244	}). % with extension mark
245
246%% BUGBUG
247%% In text, it can only be one of them in each record.
248%% So, in case it's eventBufferControl or serviceState
249%% propertyParms will be an empty list.
250-record('IndAudTerminationStateDescriptor',
251	{
252	  propertyParms = [],  %% Optional in text...
253	  eventBufferControl = asn1_NOVALUE,
254	  serviceState       = asn1_NOVALUE
255	}). % with extension mark
256
257-record('IndAudEventsDescriptor',
258	{
259	  requestID = asn1_NOVALUE,  %% Only optional in ASN.1
260	  pkgdName,
261	  streamID  = asn1_NOVALUE
262	}). % with extension mark
263
264-record('IndAudEventBufferDescriptor',
265	{
266	  eventName,
267	  %% This is an ugly hack to allow the eventParameterName
268	  %% which only exist in text!!
269	  %% streamID = asn1_NOVALUE | integer() |
270	  %%            {eventParameterName, Name}  <- BUGBUG: ONLY IN TEXT
271	  %% Note that the binary codecs will fail to encode
272	  %% if the streamID is not aither asn1_NOVALUE or an integer()
273	  %% So it is recommended to refrain from using this text feature...
274	  streamID = asn1_NOVALUE
275
276	  %% eventParameterName = asn1_NOVALUE %% BUGBUG: ONLY IN TEXT
277
278	}). % with extension mark
279
280-record('IndAudSeqSigList',
281	{
282	  id,
283	  signalList  = asn1_NOVALUE  %% Only in ASN1
284	}). % with extension mark
285
286-record('IndAudSignal',
287	{
288	  signalName,
289	  streamID = asn1_NOVALUE %% Optional in ASN1 & non-existent in text
290	}). % with extension mark
291
292-record('IndAudDigitMapDescriptor',
293	{
294	  digitMapName = asn1_NOVALUE  %% OPTIONAL in ASN.1 but not in text
295	}).
296
297-record('IndAudStatisticsDescriptor',
298	{
299	  statName
300	}).
301
302-record('IndAudPackagesDescriptor',
303	{
304	  packageName,
305	  packageVersion
306	}). % with extension mark
307
308
309%% --- v2 end   ---
310
311
312-record('NotifyRequest',
313	{
314	  terminationID = [],
315	  observedEventsDescriptor,
316	  errorDescriptor = asn1_NOVALUE
317	 }). % with extension mark
318
319-record('NotifyReply',
320	{
321	  terminationID   = [],
322	  errorDescriptor = asn1_NOVALUE
323	 }). % with extension mark
324
325-record('ObservedEventsDescriptor',
326	{
327	  requestId,
328	  observedEventLst = []
329	 }).
330
331-record('ObservedEvent',
332	{
333	  eventName,
334	  streamID = asn1_NOVALUE,
335	  eventParList = [],
336	  timeNotation = asn1_NOVALUE
337	 }). % with extension mark
338
339%% This value field of this record is already encoded and will
340%% be inserted as is.
341%% This record could be used either when there is a bug in the
342%% encoder or if an "external" package, unknown to the megaco app,
343%% where the value part requires a special encode.
344-record(megaco_event_parameter,
345	{
346	  name,
347	  value
348	 }).
349
350-record('EventParameter',
351	{
352	  eventParameterName,
353	  value,
354	  extraInfo = asn1_NOVALUE
355	 }). % with extension mark
356
357-record('ServiceChangeRequest',
358	{
359	  terminationID = [],
360	  serviceChangeParms
361	 }). % with extension mark
362
363-record('ServiceChangeReply',
364	{
365	  terminationID = [],
366	  serviceChangeResult = []
367	 }). % with extension mark
368
369-record('TerminationID',
370	{
371	  wildcard,
372	  id
373	 }). % with extension mark
374
375-record('MediaDescriptor',
376	{
377	  termStateDescr = asn1_NOVALUE,
378	  streams        = asn1_NOVALUE
379	 }). % with extension mark
380
381-record('StreamDescriptor',
382	{
383	  streamID,
384	  streamParms
385	 }).
386
387-record('StreamParms',
388	{
389	  localControlDescriptor = asn1_NOVALUE,
390	  localDescriptor = asn1_NOVALUE,
391	  remoteDescriptor = asn1_NOVALUE,
392
393	  %% with extension mark -- prev3a --
394
395	  statisticsDescriptor   = asn1_NOVALUE
396	 }).
397
398-record('LocalControlDescriptor',
399	{
400	  streamMode   = asn1_NOVALUE,
401	  reserveValue = asn1_NOVALUE,
402	  reserveGroup = asn1_NOVALUE,
403	  propertyParms = []
404	 }). % with extension mark
405
406-record('PropertyParm',
407	{
408	  name,
409	  value,
410	  extraInfo = asn1_NOVALUE
411	 }). % with extension mark
412
413-record('LocalRemoteDescriptor',
414	{
415	  propGrps = []
416	 }). % with extension mark
417
418-record('TerminationStateDescriptor',
419	{
420	  propertyParms = [],
421	  eventBufferControl = asn1_NOVALUE,
422	  serviceState = asn1_NOVALUE
423	 }). % with extension mark
424
425-record('MuxDescriptor',
426	{
427	  muxType,
428	  termList = [],
429	  nonStandardData = asn1_NOVALUE
430	 }). % with extension mark
431
432-record('EventsDescriptor',
433	{
434	  requestID,
435	  %% BUGBUG: IG 6.82 was withdrawn
436	  %% requestID = asn1_NOVALUE,
437	  eventList = []
438	 }). % with extension mark
439
440-record('RequestedEvent',
441	{
442	  pkgdName,
443	  streamID = asn1_NOVALUE,
444	  eventAction = asn1_NOVALUE,
445	  evParList = []
446	 }). % with extension mark
447
448-record('RequestedActions',
449	{
450	  keepActive = asn1_NOVALUE,
451	  eventDM = asn1_NOVALUE,
452	  secondEvent = asn1_NOVALUE,
453	  signalsDescriptor = asn1_NOVALUE
454	 }). % with extension mark
455
456-record('SecondEventsDescriptor',
457	{
458	  requestID,
459	  %% BUGBUG: IG 6.82 was withdrawn
460	  %% requestID = asn1_NOVALUE,
461	  eventList = []
462	 }). % with extension mark
463
464-record('SecondRequestedEvent',
465	{
466	  pkgdName,
467	  streamID = asn1_NOVALUE,
468	  eventAction = asn1_NOVALUE,
469	  evParList = []
470	 }). % with extension mark
471
472-record('SecondRequestedActions',
473	{
474	  keepActive = asn1_NOVALUE,
475	  eventDM = asn1_NOVALUE,
476	  signalsDescriptor = asn1_NOVALUE
477	 }). % with extension mark
478
479-record('EventSpec',
480	{
481	  eventName,
482	  streamID = asn1_NOVALUE,
483	  eventParList = []
484	 }). % with extension mark
485
486-record('SeqSigList',
487	{
488	  id,
489	  signalList = []
490	 }).
491
492-record('Signal',
493	{
494	  signalName,
495	  streamID = asn1_NOVALUE,
496	  sigType = asn1_NOVALUE,
497	  duration = asn1_NOVALUE,
498	  notifyCompletion = asn1_NOVALUE,
499	  keepActive = asn1_NOVALUE,
500	  sigParList = [],
501
502	  %% with extension mark -- prev3a --
503
504	  direction = asn1_NOVALUE,
505	  requestID = asn1_NOVALUE
506	 }).
507
508-record('SigParameter',
509	{
510	  sigParameterName,
511	  value,
512	  extraInfo = asn1_NOVALUE
513	 }). % with extension mark
514
515-record('ModemDescriptor',
516	{
517	  mtl,
518	  mpl,
519	  nonStandardData = asn1_NOVALUE
520	 }).
521
522-record('DigitMapDescriptor',
523	{
524	  digitMapName = asn1_NOVALUE,
525	  digitMapValue = asn1_NOVALUE
526	 }).
527
528-record('DigitMapValue',
529	{
530	  startTimer = asn1_NOVALUE,
531	  shortTimer = asn1_NOVALUE,
532	  longTimer = asn1_NOVALUE,
533	  digitMapBody,
534	  %% with extensions
535	  durationTimer = asn1_NOVALUE
536	 }).
537
538-record('ServiceChangeParm',
539	{
540	  serviceChangeMethod,
541	  serviceChangeAddress = asn1_NOVALUE,
542	  serviceChangeVersion = asn1_NOVALUE,
543	  serviceChangeProfile = asn1_NOVALUE,
544	  serviceChangeReason,
545	  serviceChangeDelay = asn1_NOVALUE,
546	  serviceChangeMgcId = asn1_NOVALUE,
547	  timeStamp = asn1_NOVALUE,
548	  nonStandardData = asn1_NOVALUE,
549
550	  %% with extension mark -- prev3a (serviceChangeIncompleteFlag) --
551
552	  serviceChangeInfo = asn1_NOVALUE,
553	  serviceChangeIncompleteFlag = asn1_NOVALUE
554	 }).
555
556-record('ServiceChangeResParm',
557	{
558	  serviceChangeMgcId = asn1_NOVALUE,
559	  serviceChangeAddress = asn1_NOVALUE,
560	  serviceChangeVersion = asn1_NOVALUE,
561	  serviceChangeProfile = asn1_NOVALUE,
562	  timeStamp = asn1_NOVALUE
563	 }). % with extension mark
564
565
566%% This is the actual ASN.1 type and it is as this it will
567%% be represented if the encoding config [native] is chosen.
568%% %% String of at least 1 character and at most 67 characters (ASN.1).
569%% %% 64 characters for name, 1 for "/", 2 for version to match ABNF
570%% -record('ServiceChangeProfile',
571%% 	{
572%% 	  profileName
573%% 	 }
574%%        ).
575
576-record('ServiceChangeProfile',
577	{
578	  profileName,
579	  version
580	 }).
581
582
583-record('PackagesItem',
584	{
585	  packageName,
586	  packageVersion
587	 }). % with extension mark
588
589-record('StatisticsParameter',
590	{
591	  statName,
592	  statValue = asn1_NOVALUE
593	 }).
594
595-record('TimeNotation',
596	{
597	  date,
598	  time
599	 }).
600
601