You are here:

MonitorTools.com > Technical documentation > SNMP > MIB > Cisco > CISCO-CALLHOME-MIB
ActiveXperts Network Monitor 2019##AdminFavorites

CISCO-CALLHOME-MIB by vendor Cisco

CISCO-CALLHOME-MIB file content

The SNMP protocol is used to for conveying information and commands between agents and managing entities. SNMP uses the User Datagram Protocol (UDP) as the transport protocol for passing data between managers and agents. The reasons for using UDP for SNMP are, firstly it has low overheads in comparison to TCP, which uses a 3-way hand shake for connection. Secondly, in congested networks, SNMP over TCP is a bad idea because TCP in order to maintain reliability will flood the network with retransmissions.

Management information (MIB) is represented as a collection of managed objects. These objects together form a virtual information base called MIB. An agent may implement many MIBs, but all agents must implement a particular MIB called MIB-II [16]. This standard defines variables for things such as interface statistics (interface speeds, MTU, octets sent, octets received, etc.) as well as various other things pertaining to the system itself (system location, system contact, etc.). The main goal of MIB-II is to provide general TCP/IP management information.

Use ActiveXperts Network Monitor 2019 to import vendor-specific MIB files, inclusing CISCO-CALLHOME-MIB.


Vendor: Cisco
Mib: CISCO-CALLHOME-MIB  [download]  [view objects]
Tool: ActiveXperts Network Monitor 2019 [download]    (ships with advanced SNMP/MIB tools)
-- *********************************************************************
-- CISCO-CALLHOME-MIB.my: Call Home Mib
--
-- October 2002, Vinay Gaonkar, Dipesh Gorashia
--
-- Copyright (c) 2002, 2003, 2004 by cisco Systems, Inc.
-- All rights reserved.
-- 
-- *********************************************************************

CISCO-CALLHOME-MIB DEFINITIONS ::= BEGIN

IMPORTS        
     MODULE-IDENTITY, OBJECT-TYPE, 
     NOTIFICATION-TYPE,
     Unsigned32,
     Counter32
                                            FROM SNMPv2-SMI
     MODULE-COMPLIANCE, OBJECT-GROUP,
     NOTIFICATION-GROUP                     FROM SNMPv2-CONF 
     TEXTUAL-CONVENTION, TruthValue, 
     RowStatus,TimeStamp                    FROM SNMPv2-TC
     SnmpAdminString                        FROM SNMP-FRAMEWORK-MIB    
     InetAddressType, InetAddress
                                            FROM INET-ADDRESS-MIB	 
     SyslogSeverity                         FROM CISCO-SYSLOG-MIB
     ciscoMgmt                              FROM CISCO-SMI;        

ciscoCallHomeMIB MODULE-IDENTITY
        LAST-UPDATED "200408020000Z"
        ORGANIZATION "Cisco Systems Inc. "
        CONTACT-INFO
                "     Cisco Systems
                      Customer Service
                Postal: 170 W Tasman Drive
                      San Jose, CA  95134
                      USA
                Tel: +1 800 553 -NETS
                E-mail: cs-san@cisco.com, cs-lan-switch-snmp@cisco.com"
        DESCRIPTION
               "The MIB module for the management of Call Home feature
               within the frame  work of Cisco's Call Home 
               architecture.
               Customers deploying solutions to run mission critical
               applications such as storage solutions demand very high
               availability and Serviceability from their products
               and/or support partners.
               To meet these requirements, a feature called 
               'CallHome' is provided which allows the system
               experiencing Hardware/Software problems to 
               automatically send the relevant failure information 
               back to the Support Center at the Support Partners for 
               troubleshooting or to get replacement hardware 
               dispatched. This feature also provides advanced
               features that allow storage systems to send 
               performance, accounting and system health information 
               in addition to just the fault information." 
        REVISION    "200408020000Z"
        DESCRIPTION
               "Added new compliance section 'chMIBCompliance3'."
        REVISION    "200402110000Z"
        DESCRIPTION
               "New Table 'callHomeSwInventoryTable' has been added 
                to provide the callhome inventory information about 
                the software services. 
                New objects 'ccmPeriodicSwInventoryMsgEnable', 
                'ccmPeriodicSwInventoryTimeFrame' and
                'ccmMsgThrottlingEnable' has been added."
        REVISION    "200402090000Z"
        DESCRIPTION
               "Max size of 'callHomeDestProfileName' has been
                changed to 31 chars."
        REVISION    "200310300000Z"
        DESCRIPTION
               "New object 'callHomeDestProfileAlertGroups' has been 
               added to the callHomeDestProfileTable.
               Row creation support has been added in the 
               callHomeDestProfileTable. 
               New Table 'callHomeAlertGroupTypeTable' has been added."
        REVISION    "200305200000Z"
        DESCRIPTION
               "New object 'callHomeDestProfileMsgLevel' has been 
               added to the callHomeDestProfileTable."
        REVISION   "200210280000Z"
        DESCRIPTION
            "Initial version of this MIB module."
        ::= { ciscoMgmt 300 }

ccmCallHomeNotifications OBJECT IDENTIFIER
                                   ::= { ciscoCallHomeMIB 0 }
ciscoCallHomeMIBObjects OBJECT IDENTIFIER ::= { ciscoCallHomeMIB 1 }
chMIBConformance OBJECT IDENTIFIER        ::= { ciscoCallHomeMIB 2 }
ccmCallHomeConfiguration OBJECT IDENTIFIER 
                                   ::= { ciscoCallHomeMIBObjects 1 }
ccmCallHomeStats OBJECT IDENTIFIER ::= { ciscoCallHomeMIBObjects 2 }
                 
-- Textual Conventions                 
CallHomeAlert ::= TEXTUAL-CONVENTION
        STATUS   current
        DESCRIPTION
               "The type of the CallHome alert. 
                   noOp (1)      - no alert             
                   test (2)      - alert name 'Test'
                   inventory (3) - alert name 'Inventory'
               ."
        SYNTAX    INTEGER { 
                   noOp (1),
                   test (2),
                   inventory (3)
                   }

CallHomeMsgFormat ::= TEXTUAL-CONVENTION
        STATUS   current
        DESCRIPTION
               "CallHome Message format. 
                   xml (1)       - XML (Extensible Markup Language) 
                                 - encoded.            
                   fullText (2)  - Plain text without any encoding.
                   shortText (3) - Short text without any encoding

                The context of the CallHome message depends on the 
                message. In general, all the CallHome message is sent 
                with following information : 
 
               'Subject : System Notification from <device-name>'
               'TimeStamp :' 
               'Message Name :' 
               'Message Type :' 
               'Level :'  
               'Message Device ID :'  
               'Customer ID :' (optional) 
               'Contract ID :' (optional) 
               'Site ID :'     (optional) 
               'Server ID :'  
               'Message Description :' 
               'Device Name :' 
               'Contact Name :'  
               'Contact email :'  
               'Contact Phone :' (optional) 
               'Street Address :'  (optional) 
               'Model Name :' 
               'Serial Number :' 
               'Part Number :' 
               'Chassis Hardware Version :' 
               'Supervisor Software Version :' 

               Following information are required only if a hardware 
               event caused the CallHome message : 
               'Affected FRU' 
               'Affected FRU Serial Number' 
               'Affected FRU Slot :'  
               'Affected FRU Hardware Version :' 
               'Affected FRU Software Version :' 
              
               Following is required for all the messages : 
               'Command Output :'
              
               The command output may depend on the implementation and
               severity of the CallHome message. But at minimum, 
               following information which are contained in the output
               of the CLI commands must be included.
               - Hardware model
               - software version
               - context information explaining the state of the device.
               - uptime
               - brief inventory information

               The exact format depends on the format type chosen.
               For 'xml', the above information is encoded in the XML
               format. For 'fullText', above information is sent out in
               plain text. For 'shortText', only following information 
               is provided in plain text:
                  'Subject : System Notification from <device-name> '
                  'Device Id : ' 
                  'TimeStamp : ' 
                  'Error Message : ' 
                  'Severity Level :'  
               ."
        REFERENCE
               "For more information on the XML, refer to RFC3023."
        SYNTAX    INTEGER { 
                   xml (1),
                   fullText (2),
                   shortText (3)
                   }
                                                           
CallHomeTransportMethod ::= TEXTUAL-CONVENTION
        STATUS   current
        DESCRIPTION
               "CallHome transport mechanism used to deliver the alert 
               messages.
                  email (1) - via email
                  ftp (2),  - via ftp
                  http (3)  - via http
               ."
        SYNTAX    INTEGER { 
                   email (1),
                   ftp (2),
                   http (3)
                   }

CallHomeMsgLevel ::= TEXTUAL-CONVENTION
        STATUS   current
        DESCRIPTION
               "This object contains the severity level for use as a
               threshold for filtering the alerts sent to a destination 
               profile. 
               It ranges from 1 to 10, with 10 being highest severity." 
        SYNTAX    INTEGER {
                   debug          (1),
                   normal       (2),
                   notification (3),
                   warning  (4),
                   minor    (5),
                   major    (6),
                   critical (7),
                   fatal    (8),
                   disaster  (9),
                   catastrophic (10)
                   }

AlertGroupList ::= TEXTUAL-CONVENTION
        STATUS  current
        DESCRIPTION
            "AlertGroups are a pre-defined set of call-home alerts.
            Users can specify these alert groups for a destination
            profile, to choose the call-home alerts messages to be
            sent out to the destination. This object represents 
            the list of alert groups (alert group types)
            configured for a destination profile.

            Each 'bit' within the value of an object of this type,
            specifies a configured alertgroup type.
            Bit position '0' ( most significant bit) in the value 
            of this object is reserved.

            The value of each 'bit' (set/reset) represents whether 
            an alert group type is configured or not for a 
            particular destination profile.

            Bit position 1, represents whether the 
            'callHomeAlertGroupName' corresponding to the 
            'callHomeAlertGroupTypeIndex' 1 in the 
            'callHomeAlertGroupTypeTable' is configured or
            not for a particular destination profile.

            Bit position 2, represents whether the 
            'callHomeAlertGroupName' corresponding to the 
            'callHomeAlertGroupTypeIndex' 2 in the 
            'callHomeAlertGroupTypeTable' is configured or
            not for a particular destination profile.

            If there is no entry in the 'alertGroupTypeTable',
            with 'alertGroupTypeIndex' 'n', then
            bit position 'n' in the value of this object is
            irrelevant. 
                                                                                    
            If the length of an object of this type is less
            than 8 bytes, then the alert group types which are 
            not represented are not considered to be part of this
            list, i.e., effectively, the string is extended to
            be of length 8 bytes by appending bytes
            containing x'00'. Note that this means that the
            zero length string represents the 'list is empty'
            value."
       SYNTAX   OCTET STRING (SIZE (0..8))

--
-- CallHome MIB objects
--
                 
callHomeEnable    OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
           "This object enables/disables the CallHome infrastructure 
           on the local device."
    ::= { ccmCallHomeConfiguration 1 }        
    
sysContactPhoneNumber OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE (0|12|13..17))
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The phone number of the contact person for this managed 
            node. The phone number must start with '+' and contains 
            only numeric characters except for space and '-'.
            Some valid phone numbers are 
               +44 20 8332 9091
               +45 44886556
               +81-46-215-4678
               +1-650-327-2600
            A set operation on this object with a invalid format will
            result in an error."
    ::= { ccmCallHomeConfiguration 2 }

sysContactEmailAddress OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The email address of the contact person for this managed
           node. The format of this object is an an e-mail address
           which conforms to RFC822 and RFC1123 'addr-spec'
           syntax.
           Some valid Email Addresses are
                          raj@helpme.com,
                          bob@service.com,
                          mtom@abc.caview.ca.us
 
           A set operation on this object with a invalid format will
           result in an error."
    ::= { ccmCallHomeConfiguration 3 }

sysStreetAddress OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The mailing address of this managed node."
    ::= { ccmCallHomeConfiguration 4 }                    

callHomeCustomerId OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "A string, in whatever format is appropriate, to identify
           the customer."
    ::= { ccmCallHomeConfiguration 5 }                    

callHomeContractId OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "A string, in whatever format is appropriate, to identify 
           the support contract between the customer and support 
           partner."
    ::= { ccmCallHomeConfiguration 6 }                    

callHomeSiteId OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "A location identifier of this device."
    ::= { ccmCallHomeConfiguration 7 }                    


callHomeDeviceServicePriority OBJECT-TYPE
    SYNTAX       SyslogSeverity
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The service priority of the device.
           This determines how fast the device has to be serviced."
    DEFVAL      { debug }
    ::= { ccmCallHomeConfiguration 8 }                    

callHomeAlertAction    OBJECT-TYPE
    SYNTAX           CallHomeAlert
    MAX-ACCESS read-write
    STATUS current
    DESCRIPTION
           "This object acts as a trigger by which the generation of
           a particular type of alert can be verified.  Specifically,
           setting this object to a type of alert triggers the
           sending of a callhome message for the specified type
           so that the call home backend is activated.

           No action is taken if this object is set to 'noOp'.
           The value of the object when read is always 'noOp'."
    ::= { ccmCallHomeConfiguration 9 }                    
                              

callHomeAlertActionStatus    OBJECT-TYPE
    SYNTAX           INTEGER {  
                        unknown (1),
                        successful (2),
                        inprogress (3),
                        failed (4)
                     }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
           "This object provides the status of the last callhome action 
           invocation. 
              unknown (1)     - unknown
              successful (2)  - successful 
              inprogress (3)  - action in progress
              failed (4)      - failed

           If the value of this object is 'failed', then the 
           callHomeAlertActionFailureCause provides the cause for the 
           failure.

           Management stations could read value of this object after a 
           successful set to the callHomeAlertAction object to find
           out the result of the test."
    ::= { ccmCallHomeConfiguration 10 }                    

callHomeAlertActionFailureCause    OBJECT-TYPE
    SYNTAX           SnmpAdminString
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
           "This object provides the failure cause for the last 
           callhome test invocation. 

           Note that this object is valid only if value of 
           callHomeAlertActionStatus is 'failed'."
    ::= { ccmCallHomeConfiguration 11 }                    
                              
--
-- callHomeDestProfileTable
--

                                     
callHomeDestProfileTable  OBJECT-TYPE
    SYNTAX     SEQUENCE OF CallHomeDestProfileEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "This table contains destination profiles.
           The CallHome feature requires the destination profiles to be
           setup to be able to send the CallHome messages to 
           destinations configured.
           By default there will be 3 entries in this table with 
           callHomeDestProfileName 'xml', 'full_txt' and 'short_txt'.
           User can't delete these 3 entries, but can modify the
           values of callHomeDestProfileMaxMsgSize and 
           callHomeDestProfileMsgLevel in these entries. However, the
           user can create/delete/modify entries with other 
           callHome profile names."
    ::= { ccmCallHomeConfiguration 12 }

callHomeDestProfileEntry OBJECT-TYPE
    SYNTAX     CallHomeDestProfileEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "An entry containing information about a CallHome 
           destination."
    INDEX {callHomeDestProfileName}
    ::= { callHomeDestProfileTable 1 }

CallHomeDestProfileEntry ::= SEQUENCE {
        callHomeDestProfileName        SnmpAdminString,
        callHomeDestProfileMsgFormat   CallHomeMsgFormat,
        callHomeDestProfileMaxMsgSize  Unsigned32,
        callHomeDestProfileTrnsprtMthd CallHomeTransportMethod,
        callHomeDestProfileStatus      RowStatus,
        callHomeDestProfileMsgLevel    CallHomeMsgLevel,
        callHomeDestProfileAlertGroups  AlertGroupList 
}

callHomeDestProfileName OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE (1..31))
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
           "Name of the destination profile."
    ::= { callHomeDestProfileEntry 1 }             

callHomeDestProfileMsgFormat OBJECT-TYPE
    SYNTAX       CallHomeMsgFormat                                 
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "The CallHome format used with profile while sending
           the message."
     DEFVAL { xml }
    ::= { callHomeDestProfileEntry 2 }       

callHomeDestProfileMaxMsgSize OBJECT-TYPE
    SYNTAX       Unsigned32 (0..1000000)
    UNITS        "bytes"
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "Maximum message size that can be sent to destination
           pointed to by this destination profile.
           If the 'callHomeDestProfileMsgFormat' is set to 
           'xml' or 'full_txt' then the default value for this 
           object is '500,000'.
           If the ''callHomeDestProfileMsgFormat' is 'short_txt'
           then the default value for this object is '4000'.   

           A value of 0 for this object indicates no limitation
           on maximum message size that can be sent to destination
           pointed to by this destination profile."
    ::= { callHomeDestProfileEntry 3 }       

callHomeDestProfileTrnsprtMthd OBJECT-TYPE
    SYNTAX       CallHomeTransportMethod
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "CallHome transport method used to deliver the alert 
           messages."
    DEFVAL    {email}
    ::= { callHomeDestProfileEntry 4 }       
         
callHomeDestProfileStatus OBJECT-TYPE
    SYNTAX       RowStatus                                 
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "Status of this row."
    ::= { callHomeDestProfileEntry 5 }                

callHomeDestProfileMsgLevel OBJECT-TYPE
    SYNTAX      CallHomeMsgLevel
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "This object contains the threshold level, used for 
           filtering alert messages sent to a destination. 
           Callhome alert message with severity level lower than 
           the configured threshold level would not be sent. 
           The default threshold level is debug (1), which means 
           all the alert messages will be sent."
    DEFVAL    {debug}
    ::= { callHomeDestProfileEntry 6 }

callHomeDestProfileAlertGroups OBJECT-TYPE
    SYNTAX     AlertGroupList 
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
            "This object represent the list of configured alert 
            groups for this destination profile.
            User can modify the configured alert groups, by 
            Setting/Resetting the appropriate bits in this 
            object. Resetting all the bits to '0' means no alert
            group is configured, hence no alert would be sent 
            to the destination profile. 

            If the existing value of this object has all bits
            'set' , corresponding to all the 
            'callhomeAlertGroupTypeIndex' in the
            'callHomeAlertGroupTypeTable', then the user can
            either 'reset all' or 'set all' of the above 
            configured bits. User can't choose to modify only
            few bits in this case.
                
            However if the existing value of this object,
            has not have 'all bits set' corresponding 
            to the all 'callHomeAlertGroupTypeIndex' in the 
            'callHomeAlertGroupTypeTable', then user can
            choose to modify only few or all the bits."
    ::= { callHomeDestProfileEntry 7 }

callHomeEmailAddrTblMaxEntries OBJECT-TYPE
    SYNTAX        Unsigned32 (0..65535)
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION   
           "The maximum number of entries that the agent supports in 
           the callHomeDestEmailAddressTable."
    ::= { ccmCallHomeConfiguration 13 }

--                                  
-- callHomeDestEmailAddressTable
--

callHomeDestEmailAddressTable  OBJECT-TYPE
    SYNTAX     SEQUENCE OF CallHomeDestEmailAddressEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "This table contains email addresses for the destination 
           profiles. Each destination profile could contain one or more
           email addresses associated with it."
    ::= { ccmCallHomeConfiguration 14 }

callHomeDestEmailAddressEntry OBJECT-TYPE
    SYNTAX     CallHomeDestEmailAddressEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "An entry containing information about a CallHome 
           destination email address.

           An entry cannot made 'active' until corresponding instance 
           of 'callHomeDestEmailAddress' is created.

           Also, 'callHomeDestEmailAddress' cannot be modified when 
           'callHomeDestEmailAddressStatus' is 'active'.
           To modify 'callHomeDestEmailAddress', the entry must be 
           deleted and re-created with the new value of it."
    INDEX {callHomeDestProfileName, 
           callHomeDestEmailAddressIndex}

    ::= { callHomeDestEmailAddressTable 1 }

CallHomeDestEmailAddressEntry ::= SEQUENCE {
        callHomeDestEmailAddressIndex     Unsigned32,
        callHomeDestEmailAddress          SnmpAdminString,
        callHomeDestEmailAddressStatus    RowStatus
}

callHomeDestEmailAddressIndex OBJECT-TYPE
    SYNTAX       Unsigned32 (1..65535)
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
           "An arbitrary integer value, greater than zero, and less 
           than and equal to callHomeEmailAddrTblMaxEntries, which 
           identifies an Email address. 
           These integer values should be non-volatile."
    ::= { callHomeDestEmailAddressEntry 1 }

callHomeDestEmailAddress OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "The email address associated this destination profile. The 
           format of this object is an an e-mail address which conforms
           to RFC822 and RFC1123 'addr-spec' syntax. Some examples are
                          raj@helpme.com,
                          bob@service.com,
                          mtom@abc.caview.ca.us.
           A set operation on this object with a invalid format will
           result in an error."
    ::= { callHomeDestEmailAddressEntry 2 }             

callHomeDestEmailAddressStatus OBJECT-TYPE
    SYNTAX       RowStatus                                 
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "Status of this row."
    ::= { callHomeDestEmailAddressEntry 3 }                


-- 
-- Transport configurations
--

callHomeEmailFrom OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The email address that is to be used in the 'From' field 
           when sending the email using SMTP. The format of this object
           is an e-mail address which conforms to RFC822 and RFC1123 
           'addr-spec' syntax.
           Some examples are
                          raj@helpme.com,
                          bob@service.com,
                          mtom@abc.caview.ca.us.
           A set operation on this object with a invalid format will
           result in an error."
    REFERENCE 
           "RFC 2821 - Simple Mail Transfer Protocol and 
           RFC822 - Standard for the Format of Arpa Internet Text 
           Messages."
    ::= { ccmCallHomeConfiguration 15 }                    

callHomeEmailReplyTo OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The email address that is to be used in the 'Reply-To' 
           field when sending the email using SMTP. The format of 
           this object is an e-mail address which conforms to RFC822 
           and RFC1123 'addr-spec' syntax.
           Some examples are
                          raj@helpme.com,
                          bob@service.com,
                          mtom@abc.caview.ca.us.
           A set operation on this object with a invalid format will
           result in an error."
    REFERENCE 
           "RFC 2821 - Simple Mail Transfer Protocol and 
           RFC822 - Standard for the Format of Arpa Internet Text 
           Messages."
    ::= { ccmCallHomeConfiguration 16 }                    

callHomeEmailMsgDispNotification OBJECT-TYPE
    SYNTAX       SnmpAdminString
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "The email address to which the Message Disposition 
           Notification (also called 'Return Receipt') sent when the 
           email sent from this device is read by the receiver. The 
           format of this object is an an e-mail address which conforms
           to RFC822 and RFC1123 'addr-spec' syntax.
           Some examples are
                          raj@helpme.com,
                          bob@service.com,
                          mtom@abc.caview.ca.us.
           A set operation on this object with a invalid format will
           result in an error."
    REFERENCE 
           "RFC 2298 - An Extensible Message Format
           for Message Disposition Notifications."
    ::= { ccmCallHomeConfiguration 17 }                    

callHomeSmtpServerAddrType OBJECT-TYPE
    SYNTAX       InetAddressType
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "Address Type of the SMTP server."
    ::= { ccmCallHomeConfiguration 18 }

callHomeSmtpServerAddr OBJECT-TYPE
    SYNTAX       InetAddress
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "Address of the SMTP server."
    REFERENCE
           "RFC 2821 - Simple Mail Transfer Protocol."
    ::= { ccmCallHomeConfiguration 19 }

callHomeSmtpServerPort OBJECT-TYPE
    SYNTAX       Unsigned32 (1..65535)
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
           "Port of the SMTP server."
    REFERENCE
           "RFC 2821 - Simple Mail Transfer Protocol."
    DEFVAL { 25 }
    ::= { ccmCallHomeConfiguration 20 }

---
--- CallHome multiple smtp server configuration
---

ccmSmtpServersTblMaxEntries OBJECT-TYPE
    SYNTAX     Unsigned32 (0..65535)
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
         "Indicates the maximum number of SMTP servers supported by
         this device.  A value of zero indicates no limitation on
         the number of SMTP servers."
    ::= { ccmCallHomeConfiguration 21 }

ccmSmtpServersTable OBJECT-TYPE
    SYNTAX SEQUENCE OF CcmSmtpServersEntry
    MAX-ACCESS      not-accessible
    STATUS current
    DESCRIPTION
         "This table contains entries that identify lists of
         SMTP servers that may be used by system to send out
         e-mail notification to addresses configured in
         callHomeDestEmailAddressTable.

         The maximum number of entries that can be created for
         for this table is limited by the scalar object
         ccmSmtpServersTblMaxEntries.

         The device sequentially tries all the entries in this
         table until it successfully sends out an email notification."

    ::= { ccmCallHomeConfiguration 22 }

ccmSmtpServersEntry OBJECT-TYPE
    SYNTAX     CcmSmtpServersEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
           "An entry containing information about a SMTP server.

           An entry cannot made 'active' until corresponding instance
           of all objects in the same conceptual row are created.

           Any object in the entry can not be modified if the value
           of ccmSmtpServersStatus is 'active'."
    INDEX { ccmSmtpServersAddrType,
            ccmSmtpServersAddr }
    ::= { ccmSmtpServersTable 1 }

CcmSmtpServersEntry ::= SEQUENCE {
    ccmSmtpServersAddrType   InetAddressType,
    ccmSmtpServersAddr       InetAddress,
    ccmSmtpServersPort       Unsigned32,
    ccmSmtpServersStatus     RowStatus
    }

ccmSmtpServersAddrType OBJECT-TYPE
    SYNTAX       InetAddressType
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
           "Address Type of the SMTP server."
    ::= { ccmSmtpServersEntry 1 }                    

ccmSmtpServersAddr OBJECT-TYPE
    SYNTAX       InetAddress
    MAX-ACCESS   not-accessible
    STATUS       current
    DESCRIPTION
           "Address of the SMTP server."
    REFERENCE 
           "RFC 2821 - Simple Mail Transfer Protocol."
    ::= { ccmSmtpServersEntry 2 }                    

ccmSmtpServersPort OBJECT-TYPE
    SYNTAX       Unsigned32 (1..65535)
    MAX-ACCESS   read-create
    STATUS       current
    DESCRIPTION
           "Port of the SMTP server."
    REFERENCE 
           "RFC 2821 - Simple Mail Transfer Protocol."
    DEFVAL { 25 }
    ::= { ccmSmtpServersEntry 3 }

ccmSmtpServersStatus OBJECT-TYPE
    SYNTAX     RowStatus
    MAX-ACCESS read-create
    STATUS     current
    DESCRIPTION
         "The status object used to manage the rows in this table."
    ::= { ccmSmtpServersEntry 4 }

--
-- CallHome statistics
--

callHomeLastAlertSent OBJECT-TYPE
    SYNTAX       TimeStamp
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
           "The value of sysUpTime when the last CallHome alert
           was sent."
    ::= { ccmCallHomeStats 1}                    

callHomeAlerts OBJECT-TYPE
    SYNTAX       Counter32
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
           "The number of  CallHome alerts sent."
    ::= { ccmCallHomeStats 2}                    

ccmSysLogSeverity OBJECT-TYPE
    SYNTAX         SyslogSeverity
    MAX-ACCESS     read-write
    STATUS         current
    DESCRIPTION
            "Different devices implementing this mib may use
            different criteria for issuing call home alerts.

            For the devices that issue call home alerts based on
            severity level of the syslog messages generated on
            the device, this object determines syslog severity
            levels beyond which a call home alert message will be
            issued.

            Any syslog message with a severity value greater than
            the value set for this object will be ignored by the agent.
            Note: severity numeric values increase as their
            severity decreases, e.g. error(4) is more severe
            than debug(8).

            For the devices that do not issue call home alerts based
            on syslog severity levels this object has no effect."
    ::= { ccmCallHomeConfiguration 23 }

ccmEnableSmtpServerNotif OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
            "This variable indicates whether the system produces
            the ccmSmtpServerFailNotif.

            A false value for this object will prevent
            ccmSmtpServerFailNotif notification being generated
            by the device."
    ::= { ccmCallHomeConfiguration 24 }


--
-- callHome AlertGroup Type Table
--

callHomeAlertGroupTypeTable  OBJECT-TYPE
    SYNTAX     SEQUENCE OF CallHomeAlertGroupTypeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "This table contains information about all the 
            alert groups types supported in the system. 
            Whenever the system opts not to support a
            particular alert group type, the corresponding 
            entry in this table will be removed, and a
            'ccmAlertGroupTypeDeletedNotif' will be sent.
            Whenever the system opts to support a new
            alert group type,  a new entry into this table 
            will be added, and a 
           'ccmAlertGroupTypeAddedNotif' will be sent."
    ::= { ccmCallHomeConfiguration 25 }

callHomeAlertGroupTypeEntry OBJECT-TYPE
    SYNTAX     CallHomeAlertGroupTypeEntry
    MAX-ACCESS not-accessible
    STATUS     current
    DESCRIPTION
            "An entry containing information about a
            particular callHome alert group type 
            in the system."
    INDEX {callHomeAlertGroupTypeIndex}
    ::= { callHomeAlertGroupTypeTable 1 }

CallHomeAlertGroupTypeEntry ::= SEQUENCE {
        callHomeAlertGroupTypeIndex   Unsigned32, 
        callHomeAlertGroupName        SnmpAdminString 
}


callHomeAlertGroupTypeIndex  OBJECT-TYPE
    SYNTAX       Unsigned32 (1..256)
    MAX-ACCESS   not-accessible 
    STATUS       current
    DESCRIPTION
            "This object represent the index corresponds 
            to the particular alert group type configured 
            in the system."
    ::= { callHomeAlertGroupTypeEntry 1 }


callHomeAlertGroupName OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE(0..255)) 
    MAX-ACCESS   read-only
    STATUS       current
    DESCRIPTION
            "This object represents the name of 
            alert group configured in the system."
    ::= { callHomeAlertGroupTypeEntry 2 }

--
-- callHome Software Inventory Table
--

callHomeSwInventoryTable  OBJECT-TYPE
    SYNTAX       SEQUENCE OF CallHomeSwInventoryEntry
    MAX-ACCESS   not-accessible
    STATUS       current 
    DESCRIPTION
            "This table contains inventory information about all the
            software services currently enabled in the system.
            When a software service is disabled from the system, all
            the entries corresponds to that software service will be
            deleted automatically from the table."
    ::= { ccmCallHomeConfiguration 26 }

callHomeSwInventoryEntry OBJECT-TYPE
    SYNTAX     CallHomeSwInventoryEntry
    MAX-ACCESS not-accessible
    STATUS     current 
    DESCRIPTION
            "An entry containing information about the name value
            pair for a particular software service enabled in the
            system."
    INDEX {callHomeSwServiceName, callHomeInventoryNVPairIndex}
    ::= { callHomeSwInventoryTable 1 }

CallHomeSwInventoryEntry ::= SEQUENCE {
        callHomeSwServiceName SnmpAdminString,
        callHomeInventoryNVPairIndex  Unsigned32,
        callHomeInventoryInfoName  OCTET STRING,
        callHomeInventoryInfoValue OCTET STRING  

}
callHomeSwServiceName OBJECT-TYPE
    SYNTAX       SnmpAdminString (SIZE(1..32))
    MAX-ACCESS   not-accessible
    STATUS       current 
    DESCRIPTION
            "This object represents the name of software service
            enabled in the system." 
    ::= { callHomeSwInventoryEntry 1 }

callHomeInventoryNVPairIndex  OBJECT-TYPE
    SYNTAX       Unsigned32 (1..256)
    MAX-ACCESS   not-accessible
    STATUS       current 
    DESCRIPTION
            "This object represents the index corresponds to the name
            value pair for a particular software service enabled in
            the system. 
            The name value pair is a 'tuple' of (inventory info-name, 
            and inventory info-value) and this object uniquely 
            identifies a value of the tuple, for a particular
            software service enabled in the system." 
    ::= { callHomeSwInventoryEntry 2 }

callHomeInventoryInfoName OBJECT-TYPE
    SYNTAX       OCTET STRING (SIZE (1..1024)) 
    MAX-ACCESS   read-only
    STATUS       current 
    DESCRIPTION
            "This object represents the name of a feature , for a
            particular software service enabled in the system.
            For example, the value of this object could be
            'number of VSAN' for the software service 'vsan_manager'."
    ::= { callHomeSwInventoryEntry 3 }


callHomeInventoryInfoValue OBJECT-TYPE
    SYNTAX       OCTET STRING (SIZE(1..1024))
    MAX-ACCESS   read-only
    STATUS       current 
    DESCRIPTION
            "This object represents the value for the feature name
            specified in the corresponding instance of
            'callHomeInventroyInfoName' object.
            For example, the value of this object could be '10' for
            the corresponding instance of 'callHomeInventroyInfoName'
            object with value 'number of VSAN'."
    ::= { callHomeSwInventoryEntry 4 }


--
-- Objects for Enabling Periodic Software Inventory 
-- Callhome Messages
--

ccmPeriodicSwInventoryMsgEnable OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
            "This object enables/disables the sending of periodic
            software inventory callhome message on the system."
    DEFVAL      { true }
    ::= { ccmCallHomeConfiguration 27 }

ccmPeriodicSwInventoryTimeFrame OBJECT-TYPE
    SYNTAX       Unsigned32 (1..30)
    UNITS        "days"
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
            "This object represents the time frame for sending the
             periodic software inventory callhome message, if the
             periodic software inventory is enabled on the system
             ie., the value of 'ccmPeriodicSwInventoryMsgEnable'
             object  is set to 'true'."
    DEFVAL      { 7 }
    ::= { ccmCallHomeConfiguration 28 }

--
-- Object to Enable Message Throttling Mechanism.
--

ccmMsgThrottlingEnable OBJECT-TYPE
    SYNTAX       TruthValue
    MAX-ACCESS   read-write
    STATUS       current
    DESCRIPTION
            "This object enables/disables the message throttling 
            mechanism implemented on the system.
   
            The message throttling mechanism limits the number
            of callhome messages for a alert type, sent with in  
            a time frame. The maximum number of callhome alert
            messages that can be sent out for a particular alert 
            type is '30' in a time frame of 2 hours.

            That means, if the number of message sent exceeds the 
            maximum limit (30), with in the given time frame 
            (2 hours) then any further messages for that alert type 
            will be discarded within that time frame. 

            Only 30 messages for each alert type will be sent until 
            2 hours from the time the first message was sent. In case 
            2 hours has already elapsed since the first such message 
            was sent, then time frame and the count for the number of 
            messages will be reset to '0'."
    DEFVAL      { true }
    ::= { ccmCallHomeConfiguration 29 }


-- Notifications

ccmSmtpServerFailNotif NOTIFICATION-TYPE
    OBJECTS {
             ccmSmtpServersPort
    }
    STATUS  current
    DESCRIPTION
         "A ccmSmtpServerFailNotif is sent if the device fails on
         sending an e-mail notification to SMTP server in
         ccmSmtpServersTable."
    ::= { ccmCallHomeNotifications 1 }

ccmAlertGroupTypeAddedNotif NOTIFICATION-TYPE
    OBJECTS {
             callHomeAlertGroupName
    }
    STATUS  current
    DESCRIPTION
         "A ccmAlertGroupTypeAddedNotif is sent, when 
         a new entry corresponds to the 
         'callHomealertGroupName' object in this 
         notification is added into the 
         callHomeAlertGroupTypeTable."
    ::= { ccmCallHomeNotifications 2 }

ccmAlertGroupTypeDeletedNotif NOTIFICATION-TYPE
    OBJECTS {
             callHomeAlertGroupName
    }
    STATUS  current
    DESCRIPTION
         "A ccmAlertGroupTypeAddedNotif is sent, when an
         entry corresponds to 'callHomeAlertGroupName'
         object in this notification is deleted 
         from the callHomeAlertGroupTypeTable."
    ::= { ccmCallHomeNotifications 3 }

-- Conformance


chMIBCompliances
        OBJECT IDENTIFIER ::= { chMIBConformance 1 }
chMIBGroups
        OBJECT IDENTIFIER ::= { chMIBConformance 2 }

chMIBCompliance MODULE-COMPLIANCE
        STATUS deprecated 
        DESCRIPTION
                "The compliance statement for entities which 
                implement the CallHome feature.

                OBJECT ccmSmtpServersAddrType 
                SYNTAX  INTEGER { ipv4(1) }
                DESCRIPTION
                        An implementation is only required to 
                        support IPv4 addresses.

                OBJECT callHomeDestProfileName
                SYNTAX  SnmpAdminString (SIZE (1..11))
                DESCRIPTION
                        An implementation is only required to
                        support a profile name of size 1 to 11
                        octets."

        MODULE MANDATORY-GROUPS { chConfigurationGroup,
                                  chStatisticsGroup }

        GROUP chSystemInformationGroup
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chEmailMsgDispGroup
        DESCRIPTION
                "Implementation of this group is optional."

        GROUP chSingleSmtpServerGroup 
        DESCRIPTION   
                "This group is mandatory for devices which support
                single SMTP server."

        GROUP chMultipleSmtpServersGroup 
        DESCRIPTION
                "This group is mandatory for devices which support
                multiple SMTP servers."

        GROUP ccmSysLogSeverityGroup
        DESCRIPTION
                "This group is mandatory for devices that issue
                call home alerts based on  severity level of the 
                syslog messages generated on the device."

        GROUP ccmMIBNotificationsConfigGroup
        DESCRIPTION
               "The ccmMIBNotificationsConfigGroup is optional."

        GROUP ccmMIBNotificationsGroup
        DESCRIPTION
                "The ccmMIBNotificationsGroup is optional."

        OBJECT callHomeDestProfileTrnsprtMthd             
        SYNTAX     INTEGER {             
                     email (1)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'email' needs to be supported."

        OBJECT callHomeDestProfileMsgFormat
        SYNTAX    INTEGER {
                    shortText (3)
                  }
        MIN-ACCESS read-only
        DESCRIPTION
                "Only 'shortText' needs to be supported."

        OBJECT callHomeDestProfileStatus             
        SYNTAX     INTEGER {             
                     active (1)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'active' needs to be supported."

        OBJECT callHomeDestEmailAddress
        SYNTAX  SnmpAdminString (SIZE(1..63))
        DESCRIPTION
                "An implementation is only required to
                support an address of size 1 to 63
                octets."

        OBJECT callHomeDestEmailAddressStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION 
                "Only 'active', 'createAndGo' and 'destroy' needs 
                to be supported."

        OBJECT ccmSmtpServersPort
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access is not required."

        OBJECT ccmSmtpServersStatus
        SYNTAX     INTEGER {
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION
                "Only 'active', 'createAndGo' and 'destroy' needs
                to be supported."

        OBJECT callHomeEmailFrom
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octets."

        OBJECT callHomeEmailReplyTo 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailMsgDispNotification 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        ::= { chMIBCompliances 1 }


chMIBCompliance1 MODULE-COMPLIANCE
        STATUS  deprecated 
        DESCRIPTION
                "The compliance statement for entities which 
                implement the CallHome feature.

                OBJECT ccmSmtpServersAddrType 
                SYNTAX  INTEGER { ipv4(1) }
                DESCRIPTION
                        An implementation is only required to 
                        support IPv4 addresses.

                OBJECT callHomeDestProfileName
                SYNTAX  SnmpAdminString (SIZE (1..31))
                DESCRIPTION
                        An implementation is only required to
                        support a profile name of size 1 to 31
                        octets."

        MODULE MANDATORY-GROUPS { chConfigurationGroup1,
                                  chStatisticsGroup }

        GROUP chSystemInformationGroup
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chEmailMsgDispGroup
        DESCRIPTION
                "Implementation of this group is optional."

        GROUP chSingleSmtpServerGroup 
        DESCRIPTION   
                "This group is mandatory for devices which support
                single SMTP server."

        GROUP chMultipleSmtpServersGroup 
        DESCRIPTION
                "This group is mandatory for devices which support
                multiple SMTP servers."

        GROUP ccmSysLogSeverityGroup
        DESCRIPTION
                "This group is mandatory for devices that issue
                call home alerts based on  severity level of the 
                syslog messages generated on the device."

        GROUP ccmMIBNotificationsConfigGroup
        DESCRIPTION
               "The ccmMIBNotificationsConfigGroup is optional."

        GROUP ccmMIBNotificationsGroup1
        DESCRIPTION
                "The ccmMIBNotificationsGroup is optional."

        OBJECT callHomeDestProfileTrnsprtMthd             
        SYNTAX     INTEGER {             
                     email (1)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'email' needs to be supported."

        OBJECT callHomeDestProfileMsgFormat
        SYNTAX    INTEGER {
                    shortText (3)
                  }
        MIN-ACCESS read-only
        DESCRIPTION
                "Only 'shortText' needs to be supported."

        OBJECT callHomeDestProfileStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'active' needs to be supported."

        OBJECT callHomeDestEmailAddress
        SYNTAX  SnmpAdminString (SIZE(1..63))
        DESCRIPTION
                "An implementation is only required to
                support an address of size 1 to 63
                octets."

        OBJECT callHomeDestEmailAddressStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION 
                "Only 'active', 'createAndGo' and 'destroy' needs 
                to be supported."

        OBJECT ccmSmtpServersPort
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access is not required."

        OBJECT ccmSmtpServersStatus
        SYNTAX     INTEGER {
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION
                "Only 'active', 'createAndGo' and 'destroy' needs
                to be supported."

        OBJECT callHomeEmailFrom
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailReplyTo 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailMsgDispNotification 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."
        
        ::= { chMIBCompliances 2 }

chMIBCompliance2 MODULE-COMPLIANCE
        STATUS  deprecated 
        DESCRIPTION
                "The compliance statement for entities which 
                implement the CallHome feature.

                OBJECT ccmSmtpServersAddrType 
                SYNTAX  INTEGER { ipv4(1) }
                DESCRIPTION
                        An implementation is only required to 
                        support IPv4 addresses.

                OBJECT callHomeDestProfileName
                SYNTAX  SnmpAdminString (SIZE (1..31))
                DESCRIPTION
                        An implementation is only required to
                        support a profile name of size 1 to 31
                        octets."

        MODULE MANDATORY-GROUPS { chConfigurationGroup2,
                                  chStatisticsGroup ,
                                  chSwInventoryInfoGroup }

        GROUP chSystemInformationGroup
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chEmailMsgDispGroup
        DESCRIPTION
                "Implementation of this group is optional."

        GROUP chSingleSmtpServerGroup 
        DESCRIPTION   
                "This group is mandatory for devices which support
                single SMTP server."

        GROUP chMultipleSmtpServersGroup 
        DESCRIPTION
                "This group is mandatory for devices which support
                multiple SMTP servers."

        GROUP ccmSysLogSeverityGroup
        DESCRIPTION
                "This group is mandatory for devices that issue
                call home alerts based on  severity level of the 
                syslog messages generated on the device."

        GROUP ccmMIBNotificationsConfigGroup
        DESCRIPTION
               "The ccmMIBNotificationsConfigGroup is optional."

        GROUP ccmMIBNotificationsGroup1
        DESCRIPTION
                "The ccmMIBNotificationsGroup is optional."

        OBJECT callHomeDestProfileTrnsprtMthd             
        SYNTAX     INTEGER {             
                     email (1)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'email' needs to be supported."

        OBJECT callHomeDestProfileMsgFormat
        SYNTAX    INTEGER {
                    shortText (3)
                  }
        MIN-ACCESS read-only
        DESCRIPTION
                "Only 'shortText' needs to be supported."

        OBJECT callHomeDestProfileStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'active' needs to be supported."

        OBJECT callHomeDestEmailAddress
        SYNTAX  SnmpAdminString (SIZE(1..63))
        DESCRIPTION
                "An implementation is only required to
                support an address of size 1 to 63
                octets."

        OBJECT callHomeDestEmailAddressStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION 
                "Only 'active', 'createAndGo' and 'destroy' needs 
                to be supported."

        OBJECT ccmSmtpServersPort
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access is not required."

        OBJECT ccmSmtpServersStatus
        SYNTAX     INTEGER {
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION
                "Only 'active', 'createAndGo' and 'destroy' needs
                to be supported."

        OBJECT callHomeEmailFrom
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailReplyTo 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailMsgDispNotification 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."
        
        ::= { chMIBCompliances 3 }


chMIBCompliance3 MODULE-COMPLIANCE
        STATUS  current 
        DESCRIPTION
                "The compliance statement for entities which 
                implement the CallHome feature.

                OBJECT ccmSmtpServersAddrType 
                SYNTAX  INTEGER { ipv4(1) }
                DESCRIPTION
                        An implementation is only required to 
                        support IPv4 addresses.

                OBJECT callHomeDestProfileName
                SYNTAX  SnmpAdminString (SIZE (1..31))
                DESCRIPTION
                        An implementation is only required to
                        support a profile name of size 1 to 31
                        octets."

        MODULE MANDATORY-GROUPS { chConfigurationGroup2,
                                  chStatisticsGroup 
                                }

        GROUP chSystemInformationGroup
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chEmailMsgDispGroup
        DESCRIPTION
                "Implementation of this group is optional."

        GROUP chSwInventoryInfoGroup1
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chPeriodicSwInventoryInfoGroup
        DESCRIPTION
                "Implementation of this group is optional." 

        GROUP chSingleSmtpServerGroup 
        DESCRIPTION   
                "This group is mandatory for devices which support
                single SMTP server."

        GROUP chMultipleSmtpServersGroup 
        DESCRIPTION
                "This group is mandatory for devices which support
                multiple SMTP servers."

        GROUP ccmSysLogSeverityGroup
        DESCRIPTION
                "This group is mandatory for devices that issue
                call home alerts based on  severity level of the 
                syslog messages generated on the device."

        GROUP ccmMIBNotificationsConfigGroup
        DESCRIPTION
               "The ccmMIBNotificationsConfigGroup is optional."

        GROUP ccmMIBNotificationsGroup1
        DESCRIPTION
                "The ccmMIBNotificationsGroup is optional."

        OBJECT callHomeDestProfileTrnsprtMthd             
        SYNTAX     INTEGER {             
                     email (1)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'email' needs to be supported."

        OBJECT callHomeDestProfileMsgFormat
        SYNTAX    INTEGER {
                    shortText (3)
                  }
        MIN-ACCESS read-only
        DESCRIPTION
                "Only 'shortText' needs to be supported."

        OBJECT callHomeDestProfileStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        MIN-ACCESS read-only
        DESCRIPTION 
                "Only 'active' needs to be supported."

        OBJECT callHomeDestEmailAddress
        SYNTAX  SnmpAdminString (SIZE(1..63))
        DESCRIPTION
                "An implementation is only required to
                support an address of size 1 to 63
                octets."

        OBJECT callHomeDestEmailAddressStatus             
        SYNTAX     INTEGER {             
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION 
                "Only 'active', 'createAndGo' and 'destroy' needs 
                to be supported."

        OBJECT ccmSmtpServersPort
        MIN-ACCESS read-only
        DESCRIPTION
                "Write access is not required."

        OBJECT ccmSmtpServersStatus
        SYNTAX     INTEGER {
                     active (1),
                     createAndGo (4),
                     destroy (6)
                   }
        DESCRIPTION
                "Only 'active', 'createAndGo' and 'destroy' needs
                to be supported."

        OBJECT callHomeEmailFrom
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailReplyTo 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."

        OBJECT callHomeEmailMsgDispNotification 
        SYNTAX  SnmpAdminString (SIZE(0..63))
        DESCRIPTION
                "An implementation is only required to
                 support an address of size 0 to 63 
                 octests."
        
        ::= { chMIBCompliances 4 }

-- Units of Conformance

chSystemInformationGroup OBJECT-GROUP
        OBJECTS  { sysContactPhoneNumber,
                   sysContactEmailAddress,
                   sysStreetAddress,
                   callHomeCustomerId,
                   callHomeContractId,
                   callHomeSiteId,
                   callHomeDeviceServicePriority
                   }
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying and
                configuring system information pertaining to
                CallHome."
        ::= { chMIBGroups 1 }

chConfigurationGroup OBJECT-GROUP
        OBJECTS  { callHomeEnable, 
                   callHomeAlertAction,
                   callHomeAlertActionStatus,
                   callHomeAlertActionFailureCause,
                   callHomeDestProfileMsgFormat,
                   callHomeDestProfileMaxMsgSize,
                   callHomeDestProfileTrnsprtMthd,
                   callHomeDestProfileStatus,
                   callHomeEmailAddrTblMaxEntries,
                   callHomeDestEmailAddress,
                   callHomeDestEmailAddressStatus,
                   callHomeEmailFrom,
                   callHomeEmailReplyTo
                   }          
        STATUS deprecated 
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome parameters."
        ::= { chMIBGroups 2 }

chEmailMsgDispGroup OBJECT-GROUP
        OBJECTS  { callHomeEmailMsgDispNotification
                   }
        STATUS   current
        DESCRIPTION
                "A collection of object(s) for displaying and
                configuring e-mail address to which the
                e-mail disposition notification should be sent."
        ::= { chMIBGroups 3 }

chSingleSmtpServerGroup OBJECT-GROUP
        OBJECTS  { callHomeSmtpServerAddrType,
                   callHomeSmtpServerAddr,
                   callHomeSmtpServerPort
                   }       
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome SMTP server on the devices which
                support only one SMTP server."
        ::= { chMIBGroups 4 }

chMultipleSmtpServersGroup OBJECT-GROUP
        OBJECTS  { ccmSmtpServersTblMaxEntries,
                   ccmSmtpServersPort,
                   ccmSmtpServersStatus
                   }       
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome SMTP server on the devices which
                support on one SMTP server."
        ::= { chMIBGroups 5 }

chStatisticsGroup OBJECT-GROUP
        OBJECTS  { callHomeLastAlertSent, 
                   callHomeAlerts
                 }
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying 
                CallHome statistics."
        ::= { chMIBGroups 6 }

ccmSysLogSeverityGroup OBJECT-GROUP
        OBJECTS  { ccmSysLogSeverity
                 }
        STATUS   current
        DESCRIPTION
                "A collection of object(s) for displaying and
                configuring CallHome syslog severity based on which
                call home alerts may be issued."
        ::= { chMIBGroups 7 }

ccmMIBNotificationsConfigGroup OBJECT-GROUP
        OBJECTS  { ccmEnableSmtpServerNotif 
                 }
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome notifications." 
        ::= { chMIBGroups 8 }

ccmMIBNotificationsGroup NOTIFICATION-GROUP
        NOTIFICATIONS  { ccmSmtpServerFailNotif 
                       }
        STATUS deprecated
        DESCRIPTION
                "A collection of notifications."
        ::= { chMIBGroups 9 }


chConfigurationGroup1 OBJECT-GROUP
        OBJECTS  { callHomeEnable, 
                   callHomeAlertAction,
                   callHomeAlertActionStatus,
                   callHomeAlertActionFailureCause,
                   callHomeDestProfileMsgFormat,
                   callHomeDestProfileMaxMsgSize,
                   callHomeDestProfileTrnsprtMthd,
                   callHomeDestProfileStatus,
                   callHomeDestProfileMsgLevel,
                   callHomeDestProfileAlertGroups,
                   callHomeEmailAddrTblMaxEntries,
                   callHomeDestEmailAddress,
                   callHomeDestEmailAddressStatus,
                   callHomeEmailFrom,
                   callHomeEmailReplyTo,
                   callHomeAlertGroupName
                   }          
        STATUS   deprecated 
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome parameters."
        ::= { chMIBGroups 10 }


ccmMIBNotificationsGroup1 NOTIFICATION-GROUP
        NOTIFICATIONS  { ccmSmtpServerFailNotif, 
                         ccmAlertGroupTypeAddedNotif, 
                         ccmAlertGroupTypeDeletedNotif 
                       }
        STATUS current
        DESCRIPTION
                "A collection of notifications."
        ::= { chMIBGroups 11 }

chConfigurationGroup2 OBJECT-GROUP
        OBJECTS  { callHomeEnable, 
                   callHomeAlertAction,
                   callHomeAlertActionStatus,
                   callHomeAlertActionFailureCause,
                   callHomeDestProfileMsgFormat,
                   callHomeDestProfileMaxMsgSize,
                   callHomeDestProfileTrnsprtMthd,
                   callHomeDestProfileStatus,
                   callHomeDestProfileMsgLevel,
                   callHomeDestProfileAlertGroups,
                   callHomeEmailAddrTblMaxEntries,
                   callHomeDestEmailAddress,
                   callHomeDestEmailAddressStatus,
                   callHomeEmailFrom,
                   callHomeEmailReplyTo,
                   callHomeAlertGroupName,
                   ccmMsgThrottlingEnable
                   }          
        STATUS   current 
        DESCRIPTION
                "A collection of objects for displaying and
                configuring CallHome parameters."
        ::= { chMIBGroups 12 }

chSwInventoryInfoGroup OBJECT-GROUP
        OBJECTS  { callHomeInventoryInfoName,
                   callHomeInventoryInfoValue,
                   ccmPeriodicSwInventoryMsgEnable,
                   ccmPeriodicSwInventoryTimeFrame
                   }
        STATUS   deprecated 
        DESCRIPTION
                "A collection of objects for displaying and
                configuring software inventory information."
        ::= { chMIBGroups 13 }

chPeriodicSwInventoryInfoGroup OBJECT-GROUP
        OBJECTS  { ccmPeriodicSwInventoryMsgEnable,
                   ccmPeriodicSwInventoryTimeFrame
                   }
        STATUS   current
        DESCRIPTION
                "A collection of objects for configuring 
                periodic software inventory information."
        ::= { chMIBGroups 14 }

chSwInventoryInfoGroup1 OBJECT-GROUP
        OBJECTS  { callHomeInventoryInfoName,
                   callHomeInventoryInfoValue 
                   }
        STATUS   current
        DESCRIPTION
                "A collection of objects for displaying 
                software inventory information."
        ::= { chMIBGroups 15 }

END