-- ********************************************************************* -- CISCO-ANNOUNCEMENT-MIB.my: -- Media Gateway Announcement MIB file -- -- March 2003, Yizhong Shen -- -- Copyright (c) 2003 by Cisco Systems, Inc. -- All rights reserved. -- -- ********************************************************************* CISCO-ANNOUNCEMENT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, Unsigned32 FROM SNMPv2-SMI RowStatus FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF InetAddress, InetAddressType FROM INET-ADDRESS-MIB SnmpAdminString FROM SNMP-FRAMEWORK-MIB cmgwIndex FROM CISCO-MEDIA-GATEWAY-MIB ciscoMgmt FROM CISCO-SMI; ciscoAnnouncementMIB MODULE-IDENTITY LAST-UPDATED "200303250000Z" 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-voice-gateway@cisco.com" DESCRIPTION "This MIB defines the objects for announcement system supported on media gateway. With announcement system setup, media gateway will have the capability to play pre-recorded audio files. The audio files can be played in either direction over existing connections (calls) or towards the Time Division Multiplexed (TDM) network on a TDM endpoint that is terminated on the media gateway. " REVISION "200303250000Z" DESCRIPTION "Initial version of the MIB." ::= { ciscoMgmt 8888 } ciscoAnnouncementMIBNotifs OBJECT IDENTIFIER ::= { ciscoAnnouncementMIB 0 } ciscoAnnouncementMIBObjects OBJECT IDENTIFIER ::= { ciscoAnnouncementMIB 1} ciscoAnnouncementMIBConformance OBJECT IDENTIFIER ::= { ciscoAnnouncementMIB 2} cannoGeneric OBJECT IDENTIFIER ::= { ciscoAnnouncementMIBObjects 1 } cannoControlConfig OBJECT IDENTIFIER ::= { cannoGeneric 1 } cannoAudioFileConfig OBJECT IDENTIFIER ::= { cannoGeneric 2 } -- ********************************************************************* -- -- Announcement Control Table -- -- ********************************************************************* cannoControlTable OBJECT-TYPE SYNTAX SEQUENCE OF CannoControlEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The MIB objects in this table are used to control the announcement system of media gateway. " ::= { cannoControlConfig 1 } cannoControlEntry OBJECT-TYPE SYNTAX CannoControlEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table contains the control parameters of the announcement system on media gateway. " INDEX { cmgwIndex } ::= { cannoControlTable 1 } CannoControlEntry ::= SEQUENCE { cannoAudioFileServerName SnmpAdminString, cannoDnResolution INTEGER, cannoIpAddressType InetAddressType, cannoIpAddress InetAddress, cannoAgeTime Unsigned32, cannoSubDirPath SnmpAdminString, cannoReqTimeout Unsigned32, cannoMaxPermanent Unsigned32 } cannoAudioFileServerName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..64)) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the domain name of an announcement file server that resides in an IP network and is reachable from the media gateway. The default value of this object is NULL string(size is 0). Before using any object in this table, this object should be configured to non NULL. " DEFVAL { "" } ::= { cannoControlEntry 1 } cannoDnResolution OBJECT-TYPE SYNTAX INTEGER{ internalOnly(1), externalOnly(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the domain name resolution for the domain name of the Announcement File server which is specified by the cannoAudioFileServerName object. If this object is set to internalOnly(1), the IP address associated with the file server (cannoAudioFileServerName) will be determined by the cannoIpAddress object. " DEFVAL { internalOnly } ::= { cannoControlEntry 2 } cannoIpAddressType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the IP address type of cannoIpAddress. This object is not applicable when cannoDnResolution is set to externalOnly(2). " DEFVAL { ipv4 } ::= { cannoControlEntry 3 } cannoIpAddress OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the IP address associated with the cannoAudioFileServerName. This object is not applicable when cannoDnResolution is set to externalOnly(2). " DEFVAL { '00000000'h } ::= { cannoControlEntry 4 } cannoAgeTime OBJECT-TYPE SYNTAX Unsigned32 (0..65535) UNITS "minutes" MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the maximum life-span(in minutes) of the dynamic announcement files in the cache. A dynamic announcement file starts aging as soon as it is brought into the cache from the file server. When a dynamic file age crosses the 'cannoAgeTime' threshold, the file will be removed from the cache. The value zero time specifies that 'cannoAgeTime' is disabled. " DEFVAL { 10080 } ::= { cannoControlEntry 5 } cannoSubDirPath OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..255)) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the directory path under the default TFTP directory in the Announcement File server for announcement files. The individual characters in cannoSubDirPath may be alphanumeric characters, forward slashes, backward slashes, periods, dashes, and underscores, but no embedded spaces. The last character of cannoSubDirPath must not be a dash. " DEFVAL { "" } ::= { cannoControlEntry 6 } cannoReqTimeout OBJECT-TYPE SYNTAX Unsigned32 (0..50) UNITS "seconds" MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the time for a play announcement request to be serviced. The cannoReqTimeout is the time within which an announcement must start playing after receiving announcement request. If the announcement system cannot start playing the announcement within cannoReqTimeout seconds since the request was received, the play request will be aborted. The value zero time specifies that 'cannoReqTimeout' is disabled. " DEFVAL { 5 } ::= { cannoControlEntry 7 } cannoMaxPermanent OBJECT-TYPE SYNTAX Unsigned32 (0..500) MAX-ACCESS read-write STATUS current DESCRIPTION "This object specifies the maximum number of permanent announcement files that can be added to the media gateway. The space on media gateway cache is reserved for the cannoMaxPermanent number of permanent announcement files and the permanent announcement files should be stored on media gateway cache forever until to be deleted. The value zero specifies that media gateway only support dynamic announcement file. " DEFVAL { 41 } ::= { cannoControlEntry 8 } -- ********************************************************************* -- -- Announcement AUDIO File Table -- -- ********************************************************************* cannoAudioFileTable OBJECT-TYPE SYNTAX SEQUENCE OF CannoAudioFileEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The MIB objects in this table contain information to manage audio announcement files. " ::= { cannoAudioFileConfig 1 } cannoAudioFileEntry OBJECT-TYPE SYNTAX CannoAudioFileEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Each entry in the cannoAudioFileTable consists of management information for a specific announcement file, which include file descriptor, name, type, age, duration, number of cycles, status. " INDEX { cmgwIndex, cannoAudioFileNumber } ::= { cannoAudioFileTable 1 } CannoAudioFileEntry ::= SEQUENCE { cannoAudioFileNumber Unsigned32, cannoAudioFileDescr SnmpAdminString, cannoAudioFileName SnmpAdminString, cannoAudioFileStatus INTEGER, cannoAudioFileOperStatus INTEGER, cannoAudioFilePlayNoc Unsigned32, cannoAudioFileDuration Unsigned32, cannoAudioFileType INTEGER, cannoAudioFileAge Unsigned32, cannoAudioFileAdminDeletion INTEGER, cannoAudioFileRowStatus RowStatus } cannoAudioFileNumber OBJECT-TYPE SYNTAX Unsigned32 (1..9999) MAX-ACCESS not-accessible STATUS current DESCRIPTION "A unique index to identify announcement file to be used in media gateway. " ::= { cannoAudioFileEntry 1 } cannoAudioFileDescr OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..64)) MAX-ACCESS read-create STATUS current DESCRIPTION "A textual string containing information about the audio file. User can store any information to this object such as which customer using this audio file, usage of the audio file, etc.. " ::= { cannoAudioFileEntry 2 } cannoAudioFileName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (0..64)) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies the name of a valid announcement file which has been stored in cannoAudioFileTable. This file name may include path or subdirectory information. The individual characters in this name may be alphanumeric characters, forward slashes, backward slashes, periods, dashes, and underscores, but no embedded spaces. The last character of the name must not be a dash or a forward slash. " ::= { cannoAudioFileEntry 3 } cannoAudioFileStatus OBJECT-TYPE SYNTAX INTEGER{ cached (1), loading (2), invalidFile (3), loadFailed (4), notCached (5) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the status of the the audio file: cached (1): the file successfully downloaded to media gateway cache cache is the memory on media gateway which is used to store announcement files. loading (2): the file in process of downloading invalidFile(3): the file on Announcement File server is too large or corrupted loadFailed (4): timeout when trying to download the file notCached (5): the file is not in cache Note: The cache is the memory on media gateway which is used to store announcement files. Some of space on the cache is reserved for the permanent announcement files (refer to 'cannoMaxPermanent'), the rest of cache is for the dynamic announcement files. The 'notCached' is applicable only for the dynamic announcement files in the following cases: 1. The dynamic file age reaches to 'cannoAgeTime', the status of the file will be changed from 'cached' to 'notCached'. 2. If the cache is full for the dynamic files, and if user try to add a new dynamic file, the one of the dynamic files on cache will be removed by LRU algorithm. The status of that file will be changed from 'cached' to 'notCached'. 3. If there is no space for the dynamic files (whole cache is reserved for the permanent file), the status of the dynamic files is set to 'notCached'. " ::= { cannoAudioFileEntry 4 } cannoAudioFileOperStatus OBJECT-TYPE SYNTAX INTEGER{ inPlaying (1), notPlaying (2), delPending (3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates the current operational status of the entry: inPlaying (1): the file is in playing notPlaying (2): the file is not in playing delPending (3): deletion is pending because the file is in playing " ::= { cannoAudioFileEntry 5 } cannoAudioFilePlayNoc OBJECT-TYPE SYNTAX Unsigned32 (0..2147483647) MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies number of cycles the announcement file is played. This object is used only when the Play Announcement signal from the MGC does not include a 'cannoAudioFilePlayNoc' parameter. The value zero is used to represent an announcement that continuously plays or loops. " DEFVAL { 1 } ::= { cannoAudioFileEntry 6 } cannoAudioFileDuration OBJECT-TYPE SYNTAX Unsigned32 (0..4294967295) UNITS "10 milliseconds" MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the duration to play the announcement for one cycle, it is applicable only for the fixed announcement play. This object is used only when the Play Announcement signal from the MGC does not include a 'cannoAudioFileDuration' parameter. For the fixed announcement play, the 'cannoAudioFilePlayNoc' and the 'cannoAudioFileDuration' are used together to determine how long the announcement is to be played. The value zero indicates that this is a variable announcement play and only the 'cannoAudioFilePlayNoc' is used to determine the play time. " DEFVAL { 0 } ::= { cannoAudioFileEntry 7 } cannoAudioFileType OBJECT-TYPE SYNTAX INTEGER{ dynamic (1), permanent (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies announcement file type. dynamic(1) : Dynamic file can be removed from cache if file age(cannoAudioFileAge) reaches cannoAgeTime or according to LRU algorithm when cache is full permanent(2): Permanent file should be stored on cache forever except to be deleted. The max number of permanent file can be stored on cache is determined by cannoMaxPermanent. " DEFVAL { dynamic } ::= { cannoAudioFileEntry 8 } cannoAudioFileAge OBJECT-TYPE SYNTAX Unsigned32 (0..65535) UNITS "minutes" MAX-ACCESS read-only STATUS current DESCRIPTION "This object indicates that announcement file age in cache, it is only for dynamic file. A dynamic announcement file starts aging as soon as it is brought into the cache from the Announcement File server. When the 'cannoAudioFileAge' reach to 'cannoAgeTime', then the file will be removed from cache. This object is not applicable for two cases: (1)For the permanent files, because the the permanent files should be stored on cache forever except to be deleted. (2)The 'cannoAgeTime' is set to zero which means the cannoAgeTime is infinite and 'cannoAudioFileAge' can never reach the cannoAgeTime. " ::= { cannoAudioFileEntry 9 } cannoAudioFileAdminDeletion OBJECT-TYPE SYNTAX INTEGER{ gracefully (1), forcefully (2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object specifies entry deletion behavior: gracefully(1): gateway will not stop the current announcement file playing (till it completes) while deleting this entry. forcefully(2): gateway will immediately stop current announcement file playing while deleting this entry " DEFVAL { gracefully } ::= { cannoAudioFileEntry 10 } cannoAudioFileRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to create or delete an entry. The mandatory objects for creating an entry in this table: 'cannoAudioFileName' The following objects are not allowed to be modified after the entry to be added: 'cannoAudioFileName' 'cannoAudioFileType' " ::= { cannoAudioFileEntry 11 } -- ********************************************************************* -- Conformance -- ********************************************************************* cannoMIBCompliances OBJECT IDENTIFIER ::= { ciscoAnnouncementMIBConformance 1} cannoMIBGroups OBJECT IDENTIFIER ::= { ciscoAnnouncementMIBConformance 2} -- -- Conformance and compliance statements statements -- cannoMIBCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION " The compliance statement for Announcement File" MODULE -- this module MANDATORY-GROUPS { cannoControlGroup, cannoAudioFileGroup } ::= { cannoMIBCompliances 1 } -- -- units of conformance -- -- MIB Groups -- cannoControlGroup OBJECT-GROUP OBJECTS { cannoAudioFileServerName, cannoDnResolution, cannoIpAddressType, cannoIpAddress, cannoAgeTime, cannoSubDirPath, cannoReqTimeout, cannoMaxPermanent } STATUS current DESCRIPTION "This group contains objects related to announcement system control on media gateway. " ::= { cannoMIBGroups 1 } cannoAudioFileGroup OBJECT-GROUP OBJECTS { cannoAudioFileDescr, cannoAudioFileName, cannoAudioFileStatus, cannoAudioFileOperStatus, cannoAudioFilePlayNoc, cannoAudioFileDuration, cannoAudioFileType, cannoAudioFileAge, cannoAudioFileAdminDeletion, cannoAudioFileRowStatus } STATUS current DESCRIPTION "This group contains objects related to announcement files on media gateway. " ::= { cannoMIBGroups 2 } END