1-- *********************************************************************
2-- CISCO-VOICE-CAS-MODULE-MIB.my: MIB for CAS Signaling Bit Translation.
3--
4-- March 2004, Rashmi Purandare, George Ogagan
5--
6-- Copyright (c) 2004 by cisco Systems, Inc.
7-- All rights reserved.
8--
9-- *********************************************************************
10
11CISCO-VOICE-CAS-MODULE-MIB DEFINITIONS ::= BEGIN
12
13IMPORTS
14    MODULE-IDENTITY,
15    OBJECT-TYPE,
16    Unsigned32                     FROM SNMPv2-SMI
17    TEXTUAL-CONVENTION,
18    RowStatus                      FROM SNMPv2-TC
19    MODULE-COMPLIANCE,
20    OBJECT-GROUP                   FROM SNMPv2-CONF
21    SnmpAdminString                FROM SNMP-FRAMEWORK-MIB
22    EntPhysicalIndexOrZero         FROM CISCO-TC
23    ciscoMgmt                      FROM CISCO-SMI;
24
25ciscoVoiceCasModuleMIB  MODULE-IDENTITY
26        LAST-UPDATED    "200403150000Z"
27        ORGANIZATION    "Cisco Systems, Inc."
28        CONTACT-INFO
29                   "    Cisco Systems
30                        Customer Service
31
32                Postal: 170 W Tasman Drive
33                        San Jose, CA 95134
34                        USA
35
36                        Tel: +1 800 553-NETS
37
38                E-mail: cs-voice-gateway@cisco.com"
39
40        DESCRIPTION
41                "This MIB is used to support Programmable
42                 CAS signaling Bit configuration on modules
43                 that support voice traffic.
44
45                 This MIB will enable programming of the CAS
46                 bits in order to translate incoming/outgoing
47                 bit patterns from/to the TDM or packet side
48                 interface.
49
50                 Terminology:
51
52                 ABCD - Signaling bits describing off-hook,
53                        on-hook, idle, flash, etc events.
54
55                 DSP - Digital Signal Processing
56
57                 CAS - Channal Associated Signaling
58
59                 E&M - Ear and Mouth Protocol
60
61                 TDM - Time Division Multiplexed
62                "
63        REVISION        "200403150000Z"
64        DESCRIPTION     "Initial version of the MIB"
65
66        ::= { ciscoMgmt 389 }
67
68ciscoVoiceCasModuleNotifs   OBJECT IDENTIFIER ::=
69                               { ciscoVoiceCasModuleMIB 0 }
70
71ciscoVoiceCasModuleObjects  OBJECT IDENTIFIER ::=
72                               { ciscoVoiceCasModuleMIB 1 }
73
74cvcmCasConfig                  OBJECT IDENTIFIER ::=
75                               { ciscoVoiceCasModuleObjects 1 }
76
77----------------------------------------------------------------
78--TEXTUAL CONVENTIONS
79----------------------------------------------------------------
80
81CvcmCasPatternBitPosition::= TEXTUAL-CONVENTION
82    STATUS current
83    DESCRIPTION
84        "Defines the bit positions for the incoming
85         and outgoing ABCD bit patterns.
86         All positions need to be set to 0 or 1 in
87         order to have the correct pattern.
88
89         dBit : Position of the D bit in the
90                ABCD bit pattern
91         cBit : Position of the C bit in the
92                ABCD bit pattern
93         bBit : Position of the B bit in the
94                ABCD bit pattern
95         aBit : Position of the A bit in the
96                ABCD bit pattern
97        "
98    SYNTAX BITS {
99                  dBit(0),
100                  cBit(1),
101                  bBit(2),
102                  aBit(3)
103                }
104
105CvcmCasBitAction::= TEXTUAL-CONVENTION
106    STATUS      current
107    DESCRIPTION
108        "Defines the actions that can be performed on the
109         CAS ABCD bits.
110
111         casBitNoAction   : No action on the bit specifed.
112                            Maintain incoming bit value.
113         casBitSetToZero  : Set bit to zero
114         casBitSetToOne   : Set bit to one
115         casBitInvertBit  : Invert incoming bit
116         casBitInvertABit : Invert A bit and apply to the
117                            bit location specified
118         casBitInvertBBit : Invert B bit and apply to the
119                            bit location specified
120         casBitInvertCBit : Invert C bit and apply to the
121                            bit location specified
122         casBitInvertDBit : Invert D bit and apply to the
123                            bit location specified
124         casBitABit       : Apply A bit value to the bit
125                            location specified
126         casBitBBit       : Apply B bit value to the bit
127                            location specified
128         casBitCBit       : Apply C bit value to the bit
129                            location specified
130         casBitDBit       : Apply D bit value to the bit
131                            location specified
132       "
133    SYNTAX INTEGER {
134               casBitNoAction(1),
135               casBitSetToZero(2),
136               casBitSetToOne(3),
137               casBitInvertBit(4),
138               casBitInvertABit(5),
139               casBitInvertBBit(6),
140               casBitInvertCBit(7),
141               casBitInvertDBit(8),
142               casBitABit(9),
143               casBitBBit(10),
144               casBitCBit(11),
145               casBitDBit(12)
146              }
147
148
149cvcmABCDBitTemplateConfigTable  OBJECT-TYPE
150    SYNTAX      SEQUENCE OF CvcmABCDBitTemplateConfigEntry
151    MAX-ACCESS  not-accessible
152    STATUS      current
153    DESCRIPTION
154        "This table is used to configure templates
155         on the module/card. These templates provide
156         mapping information between the incoming CAS
157         ABCD signaling bit patterns and the outgoing
158         ABCD signaling bit patterns. The outgoing
159         bit patterns are derived from the incoming
160         bit patterns by applying a set of actions to
161         each incoming bit.
162
163         Thus, this table essentially contains
164         configuration information about CAS ABCD
165         signaling bits.
166
167         The ABCD bit carries signaling information
168         describing off-hook, on-hook event etc on a
169         T1 or E1. The pattern representations
170         differ in CAS variants on a T1 and E1.
171
172         For example:
173         On T1:
174         E&M protocol ABCD seized is 1100
175         On E1:
176         CAS-R2 signaling ABCD seized is 0001
177
178         This table is configured on a per module/ card
179         basis.
180
181         Further, one can have multiple different actions
182         performed on the different bits (A, B, C or D)
183         consecutively for the same incoming ABCD bit
184         index. However, a given bit position can only
185         have one action being performed on it for a given
186         incoming bit pattern.
187
188         For example, for a given incoming bit index,
189         one can define the 'A' bit to be set to 0, the 'B'
190         bit to be swapped with the 'C' bit, the 'C' bit to be
191         swapped with the 'B' bit and the 'D' bit to be inverted.
192         Thus, using this table, the user can create a template
193         with name (cvcmCasTemplateName) 'Template1' where for
194         incoming pattern (cvcmABCDIncomingPattern) '0000',
195         the action on the A bit (cvcmCasABitAction) is
196         'casBitSetToZero', the action on the B bit
197         (cvcmCasBBitAction) is 'casBitCBit', the action on the
198         C bit (cvcmCasCBitAction) is 'casBitBBit' and the action
199         on the D bit (cvcmCasDBitAction) is 'casBitInvertBit'.
200         This will create one entry in 'Template1' where the
201         resultant outgoing pattern (cvcmABCDOutgoingPattern)
202         will be '0001'.
203        "
204    ::= { cvcmCasConfig 1 }
205
206cvcmABCDBitTemplateConfigEntry  OBJECT-TYPE
207    SYNTAX      CvcmABCDBitTemplateConfigEntry
208    MAX-ACCESS  not-accessible
209    STATUS      current
210    DESCRIPTION
211        "An entry in the table. Each entry consists of
212         user defined CAS ABCD bit information to configure
213         a transmit or received signaling channel on a DSP.
214        "
215    INDEX { cvcmModuleIndex,
216            cvcmCasTemplateIndex,
217            cvcmABCDPatternIndex
218          }
219    ::= { cvcmABCDBitTemplateConfigTable 1 }
220
221CvcmABCDBitTemplateConfigEntry ::=
222    SEQUENCE {
223        cvcmModuleIndex          Unsigned32,
224        cvcmCasTemplateIndex     Unsigned32,
225        cvcmABCDPatternIndex     Unsigned32,
226        cvcmModulePhysicalIndex  EntPhysicalIndexOrZero,
227        cvcmCasTemplateName      SnmpAdminString,
228        cvcmABCDIncomingPattern  CvcmCasPatternBitPosition,
229        cvcmABCDOutgoingPattern  CvcmCasPatternBitPosition,
230        cvcmCasABitAction        CvcmCasBitAction,
231        cvcmCasBBitAction        CvcmCasBitAction,
232        cvcmCasCBitAction        CvcmCasBitAction,
233        cvcmCasDBitAction        CvcmCasBitAction,
234        cvcmCasBitRowStatus      RowStatus
235        }
236
237cvcmModuleIndex     OBJECT-TYPE
238    SYNTAX          Unsigned32 (1..2147483647)
239    MAX-ACCESS      not-accessible
240    STATUS          current
241    DESCRIPTION
242        " This object uniquely identifies the card/ module
243          where this table resides. It could be the slot
244          number of the module or be 1 where 'module' is
245          not applicable.
246        "
247    ::= { cvcmABCDBitTemplateConfigEntry 1 }
248
249cvcmCasTemplateIndex  OBJECT-TYPE
250    SYNTAX          Unsigned32 (1..2147483647)
251    MAX-ACCESS      not-accessible
252    STATUS          current
253    DESCRIPTION
254        "This object will index into the template that
255         is configured in this table.
256        "
257    ::= { cvcmABCDBitTemplateConfigEntry 2 }
258
259cvcmABCDPatternIndex   OBJECT-TYPE
260    SYNTAX      Unsigned32 (1..16)
261    MAX-ACCESS  not-accessible
262    STATUS      current
263    DESCRIPTION
264        "Will be used to index into a particular pattern
265         mapping in the template that is configured.
266         Since there are only 4 signaling bits (A, B, C, D),
267         there can only be (2^4) or 16 patterns per
268         template.
269        "
270    ::= { cvcmABCDBitTemplateConfigEntry 3 }
271
272cvcmModulePhysicalIndex  OBJECT-TYPE
273    SYNTAX     EntPhysicalIndexOrZero
274    MAX-ACCESS read-only
275    STATUS     current
276    DESCRIPTION
277        "This object represents the entPhysicalIndex of
278         the module where this table is being configured.
279         If the entPhysicalTable is not supported on the
280         SNMP agent, then the value of this object will
281         be zero.
282        "
283    ::= { cvcmABCDBitTemplateConfigEntry 4 }
284
285cvcmCasTemplateName OBJECT-TYPE
286    SYNTAX      SnmpAdminString
287    MAX-ACCESS  read-create
288    STATUS      current
289    DESCRIPTION
290        "This object identifies the name of the template
291         configured.
292         This object needs to be unique among all the
293         instances of the cvcmABCDBitTemplateConfigTable.
294         The SNMP agent will need to validate this value
295         for uniqueness.
296        "
297    ::= { cvcmABCDBitTemplateConfigEntry 5 }
298
299cvcmABCDIncomingPattern OBJECT-TYPE
300    SYNTAX      CvcmCasPatternBitPosition
301    MAX-ACCESS  read-create
302    STATUS      current
303    DESCRIPTION
304        "This object identifies the ABCD signaling bits
305         that are received by the module. The actions
306         specified in 'cvcmCasABitAction', 'cvcmCasBBitAction',
307         'cvcmCasCBitAction' and 'cvcmCasDBitAction' are applied
308         to this object.
309        "
310    ::= { cvcmABCDBitTemplateConfigEntry 6 }
311
312cvcmABCDOutgoingPattern   OBJECT-TYPE
313    SYNTAX      CvcmCasPatternBitPosition
314    MAX-ACCESS  read-only
315    STATUS      current
316    DESCRIPTION
317        "This object identifies the ABCD signaling bits
318         defined by user, and downloaded to DSP signaling
319         channel.
320         This pattern is derived from the actions specified in
321         'cvcmCasABitAction', 'cvcmCasBBitAction', 'cvcmCasCBitAction'
322         and 'cvcmCasDBitAction'.
323         The same pattern can map to different
324         cvcmABCDIncomingPattern depending on the set of actions.
325         This pattern is mapped to input ABCD bit pattern
326         received and reported to the TDM or network side.
327        "
328    ::= { cvcmABCDBitTemplateConfigEntry 7 }
329
330cvcmCasABitAction  OBJECT-TYPE
331    SYNTAX     CvcmCasBitAction
332    MAX-ACCESS read-create
333    STATUS     current
334    DESCRIPTION
335        "This object identifies the action on the
336         'A' bit of the incoming ABCD bit pattern
337         specified in cvcmABCDIncomingPattern.
338         For this object,
339         'cvcmInvertBit' is same as 'cvcmInvertABit',
340         'cvcmNoAction'  is same as 'cvcmABit'.
341        "
342    DEFVAL { casBitABit }
343    ::= { cvcmABCDBitTemplateConfigEntry 8 }
344
345cvcmCasBBitAction  OBJECT-TYPE
346    SYNTAX     CvcmCasBitAction
347    MAX-ACCESS read-create
348    STATUS     current
349    DESCRIPTION
350        "This object identifies the action on the
351         'B' bit of the incoming ABCD bit pattern
352         specified in cvcmABCDIncomingPattern.
353         For this object,
354         'cvcmInvertBit' is same as 'cvcmInvertBBit',
355         'cvcmNoAction'  is same as 'cvcmBBit'.
356        "
357    DEFVAL { casBitBBit }
358    ::= { cvcmABCDBitTemplateConfigEntry 9 }
359
360cvcmCasCBitAction  OBJECT-TYPE
361    SYNTAX      CvcmCasBitAction
362    MAX-ACCESS  read-create
363    STATUS      current
364    DESCRIPTION
365        "This object identifies the action on the
366         'C' bit of the incoming ABCD bit pattern
367         specified in cvcmABCDIncomingPattern.
368         For this object,
369         'cvcmInvertBit' is same as 'cvcmInvertCBit',
370         'cvcmNoAction'  is same as 'cvcmCBit'.
371        "
372    DEFVAL { casBitCBit }
373    ::= { cvcmABCDBitTemplateConfigEntry 10 }
374
375cvcmCasDBitAction  OBJECT-TYPE
376    SYNTAX      CvcmCasBitAction
377    MAX-ACCESS  read-create
378    STATUS      current
379    DESCRIPTION
380        "This object identifies the action on the
381         'D' bit of the incoming ABCD bit pattern
382         specified in cvcmABCDIncomingPattern.
383         For this object,
384         'cvcmInvertBit' is same as 'cvcmInvertDBit',
385         'cvcmNoAction'  is same as 'cvcmDBit'.
386        "
387    DEFVAL { casBitDBit }
388    ::= { cvcmABCDBitTemplateConfigEntry 11 }
389
390 cvcmCasBitRowStatus OBJECT-TYPE
391    SYNTAX          RowStatus
392    MAX-ACCESS      read-create
393    STATUS          current
394    DESCRIPTION
395        "An entry may be created using the 'createAndGo'
396         option.  When the row is successfully created,
397         the object will be set to 'active' by the agent.
398         An entry may be deleted by setting the object
399         to 'destroy'.
400        "
401    ::= { cvcmABCDBitTemplateConfigEntry 12 }
402
403-- ------------------------------------------------------------
404-- conformance information
405-- ------------------------------------------------------------
406
407cvcmMIBConformance          OBJECT IDENTIFIER ::=
408                             { ciscoVoiceCasModuleMIB 2 }
409
410cvcmMIBGroups OBJECT IDENTIFIER ::=
411                             { cvcmMIBConformance 1 }
412
413cvcmMIBCompliances OBJECT IDENTIFIER ::=
414                             { cvcmMIBConformance 2 }
415
416-- compliance statements
417
418ciscoVoiceCasModuleMIBCompliance MODULE-COMPLIANCE
419     STATUS current
420     DESCRIPTION
421        "Compliance statement for CISCO-VOICE-CAS-MODULE-MIB."
422     MODULE -- this module
423     MANDATORY-GROUPS {
424                       cvcmCasBitGroup
425                      }
426
427     OBJECT     cvcmCasBitRowStatus
428     SYNTAX     INTEGER {
429                  active      (1),
430                  createAndGo (4),
431                  destroy     (6)
432                }
433     DESCRIPTION
434         "The values 'createAndGo', 'destroy' and
435          'active' need to be supported.
436         "
437
438     ::= { cvcmMIBCompliances 1 }
439
440-- units of conformance
441
442cvcmCasBitGroup  OBJECT-GROUP
443    OBJECTS {
444             cvcmModulePhysicalIndex,
445             cvcmCasTemplateName,
446             cvcmABCDIncomingPattern,
447             cvcmABCDOutgoingPattern,
448             cvcmCasABitAction,
449             cvcmCasBBitAction,
450             cvcmCasCBitAction,
451             cvcmCasDBitAction,
452             cvcmCasBitRowStatus
453             }
454    STATUS current
455    DESCRIPTION
456        "A collection of objects used for configuring
457         DSP signaling channel.
458        "
459    ::= { cvcmMIBGroups 1 }
460
461END
462
463
464