Skip to content
Snippets Groups Projects
asterisk.ldap-schema 28.2 KiB
Newer Older
  • Learn to ignore specific revisions
  • Gavin Henry's avatar
    Gavin Henry committed
    # Copyright (c) 2007-2009 Suretec Systems Ltd. - <http://www.suretecsystems.com/>
    
    Gavin Henry's avatar
    Gavin Henry committed
    # Version: 3.2.2
    
    #
    # Changes:
    
    Gavin Henry's avatar
    Gavin Henry committed
    
    # - Added AsteriskDialplan, AsteriskAccount and AsteriskMailbox objectClasses
    #   to allow standalone dialplan, account and mailbox entries (STRUCTURAL)
    # - Added new Fields
    #   * AstAccountLanguage, AstAccountTransport, AstAccountPromiscRedir, 
    #   * AstAccountAccountCode, AstAccountSetVar, AstAccountAllowOverlap,
    #   * AstAccountVideoSupport, AstAccountIgnoreSDPVersion    
    #   Removed redundant IPaddr (there's already IPAddress)
    
    Gavin Henry's avatar
    Gavin Henry committed
    # - Fixed typo - 13/08/2009
    
    # - https://issues.asterisk.org/view.php?id=13725 - 12/08/2009
    
    # - Added AsteriskVoiceMail Object class and AstAccountCallLimit attribute - 28/05/2009
    #   https://issues.asterisk.org/view.php?id=15155
    
    Gavin Henry's avatar
    Gavin Henry committed
    # - Added AstAccountLastQualifyMilliseconds - 28/05/2009
    #   https://issues.asterisk.org/view.php?id=15156
    
    # - https://issues.asterisk.org/view.php?id=12860 - 04/07/2008
    
    # - Fixed wrong DESC - 07/05/2008
    #
    # Author: Gavin Henry - <ghenry@suretecsystems.com>
    
    Gavin Henry's avatar
    Gavin Henry committed
    #         Michael Kromer - <medozas@medozas.de>
    
    #
    # Asterisk LDAP Schema
    #
    # Digium root OID (http://www.iana.org/assignments/enterprise-numbers)
    #
    #  1.3.6.1.4.1.22736
    #  1.3.6.1.4.1.22736.5      LDAP elements
    #  1.3.6.1.4.1.22736.5.4    Attribute Types
    #  1.3.6.1.4.1.22736.5.5    Object Classes
    #
    objectIdentifier AsteriskRoot 1.3.6.1.4.1.22736
    objectIdentifier AsteriskLDAP AsteriskRoot:5
    
    #############################################################################
    # Attribute group OIDs.  e.g.: objectIdentifier AstAttrType AsteriskLDAP:4
    #############################################################################
    objectIdentifier AstAttrType AsteriskLDAP:4
    
    #############################################################################
    # Attribute OIDs e.g.: objectIdentifier AstContext AstAttrType:1
    #############################################################################
    objectIdentifier AstContext AstAttrType:1
    objectIdentifier AstExtension AstAttrType:2
    objectIdentifier AstPriority AstAttrType:3
    objectIdentifier AstApplication AstAttrType:4
    objectIdentifier AstApplicationData AstAttrType:5
    objectIdentifier AstAccountAMAFlags AstAttrType:6
    objectIdentifier AstAccountCallerID AstAttrType:7
    objectIdentifier AstAccountContext AstAttrType:8
    objectIdentifier AstAccountMailbox AstAttrType:9
    objectIdentifier AstMD5secret AstAttrType:10
    objectIdentifier AstAccountDeny AstAttrType:11
    objectIdentifier AstAccountPermit AstAttrType:12
    objectIdentifier AstAccountQualify AstAttrType:13
    objectIdentifier AstAccountType AstAttrType:14
    objectIdentifier AstAccountDisallowedCodec AstAttrType:15
    objectIdentifier AstAccountExpirationTimestamp AstAttrType:16
    objectIdentifier AstAccountRegistrationContext AstAttrType:17
    objectIdentifier AstAccountRegistrationExten AstAttrType:18
    objectIdentifier AstAccountNoTransfer AstAttrType:19
    objectIdentifier AstAccountCallGroup AstAttrType:20
    objectIdentifier AstAccountCanReinvite AstAttrType:21
    objectIdentifier AstAccountDTMFMode AstAttrType:22
    objectIdentifier AstAccountFromUser AstAttrType:23
    objectIdentifier AstAccountFromDomain AstAttrType:24
    objectIdentifier AstAccountFullContact AstAttrType:25
    objectIdentifier AstAccountHost AstAttrType:26
    objectIdentifier AstAccountInsecure AstAttrType:27
    objectIdentifier AstAccountNAT AstAttrType:28
    objectIdentifier AstAccountPickupGroup AstAttrType:29
    objectIdentifier AstAccountPort AstAttrType:30
    objectIdentifier AstAccountRestrictCID AstAttrType:31
    objectIdentifier AstAccountRTPTimeout AstAttrType:32
    objectIdentifier AstAccountRTPHoldTimeout AstAttrType:33
    objectIdentifier AstAccountRealmedPassword AstAttrType:34
    objectIdentifier AstAccountAllowedCodec AstAttrType:35
    objectIdentifier AstAccountMusicOnHold AstAttrType:36
    objectIdentifier AstAccountCanCallForward AstAttrType:37
    objectIdentifier AstAccountSecret AstAttrType:38
    objectIdentifier AstAccountName AstAttrType:39
    objectIdentifier AstConfigFilename AstAttrType:40
    objectIdentifier AstConfigCategory AstAttrType:41
    objectIdentifier AstConfigCategoryMetric AstAttrType:42
    objectIdentifier AstConfigVariableName AstAttrType:43
    objectIdentifier AstConfigVariableValue AstAttrType:44
    objectIdentifier AstConfigCommented AstAttrType:45
    
    Tilghman Lesher's avatar
    Tilghman Lesher committed
    objectIdentifier AstAccountIPAddress AstAttrType:46
    objectIdentifier AstAccountDefaultUser AstAttrType:47
    objectIdentifier AstAccountRegistrationServer AstAttrType:48
    
    Gavin Henry's avatar
    Gavin Henry committed
    objectIdentifier AstAccountLastQualifyMilliseconds AstAttrType:49
    
    objectIdentifier AstAccountCallLimit AstAttrType:50
    objectIdentifier AstVoicemailMailbox AstAttrType:51
    objectIdentifier AstVoicemailPassword AstAttrType:52
    objectIdentifier AstVoicemailFullname AstAttrType:53
    objectIdentifier AstVoicemailEmail AstAttrType:54
    objectIdentifier AstVoicemailPager AstAttrType:55
    objectIdentifier AstVoicemailOptions AstAttrType:56
    objectIdentifier AstVoicemailTimestamp AstAttrType:57
    
    Gavin Henry's avatar
    Gavin Henry committed
    objectIdentifier AstVoicemailContext AstAttrType:58
    
    objectIdentifier AstAccountSubscribeContext AstAttrType:59
    objectIdentifier AstAccountUserAgent AstAttrType:61
    
    Gavin Henry's avatar
    Gavin Henry committed
    objectIdentifier AstAccountLanguage AstAttrType:62
    objectIdentifier AstAccountTransport AstAttrType:63
    objectIdentifier AstAccountPromiscRedir AstAttrType:64
    objectIdentifier AstAccountAccountCode AstAttrType:65
    objectIdentifier AstAccountSetVar AstAttrType:66
    objectIdentifier AstAccountAllowOverlap AstAttrType:67
    objectIdentifier AstAccountVideoSupport AstAttrType:68
    objectIdentifier AstAccountIgnoreSDPVersion AstAttrType:69
    
    
    #############################################################################
    # Object Class OIDs
    #############################################################################
    objectIdentifier AstObjectClass AsteriskLDAP:2
    objectIdentifier AsteriskExtension AstObjectClass:1
    objectIdentifier AsteriskIAXUser AstObjectClass:2
    objectIdentifier AsteriskSIPUser AstObjectClass:3
    objectIdentifier AsteriskConfig AstObjectClass:4
    
    objectIdentifier AsteriskVoiceMail AstObjectClass:5
    
    Gavin Henry's avatar
    Gavin Henry committed
    objectIdentifier AsteriskDialplan AstObjectClass:6
    objectIdentifier AsteriskAccount AstObjectClass:7
    objectIdentifier AsteriskMailbox AstObjectClass:8
    
    
    
    #############################################################################
    # attribute definitions
    #
    # OID (the first arg) comes from the objectIdentifier defined above
    #
    # NAME should be the same as objectIdentifier
    #
    # DESC should be the description of the attribute
    #
    # EQUALITY is the rule to use when doing a search/compare for an
    # attribute value.
    #
    # SUBSTR is the rule to use when doing a substring search (*foo*)
    #
    # SYNTAX is the syntax (i.e., type) of the attribute. We should
    # probably stick to syntaxes:
    #
    #       1.3.6.1.4.1.1466.115.121.1.15   -> directoryString (UTF-8 string)
    #       1.3.6.1.4.1.1466.115.121.1.26   -> IA5String (ASCII String)
    #       1.3.6.1.4.1.1466.115.121.1.27   -> integer (Integer value)
    #
    # SINGLE-VALUE should be present if only one instance of this
    # attribute is allowed within an entry.
    #
    # {32} is the allowed length
    #
    # e.g.:
    # 
    # attributetype ( AstExample
    #    NAME ( 'AstExample' )
    #    DESC 'Asterisk Example Attribute'
    #    EQUALITY caseIgnoreMatch
    #    SUBSTR caseIgnoreSubstringsMatch
    #    SYNTAX 1.3.6.1.4.1.1466.115.121.1.15{32} 
    #    SINGLE-VALUE )
    #
    #############################################################################
    
    attributetype ( AstContext
            NAME 'AstContext'
            DESC 'Asterisk Context'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstExtension
            NAME 'AstExtension'
            DESC 'Asterisk Extension'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstPriority
            NAME 'AstPriority'
            DESC 'Asterisk Priority'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstApplication 
            NAME 'AstApplication'
            DESC 'Asterisk Application'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstApplicationData 
            NAME 'AstApplicationData'
            DESC 'Asterisk Application Data'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountAMAFlags 
            NAME 'AstAccountAMAFlags'
            DESC 'Asterisk Account AMA Flags'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountCallerID 
            NAME 'AstAccountCallerID'
            DESC 'Asterisk Account CallerID'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountContext 
            NAME 'AstAccountContext'
            DESC 'Asterisk Account Context'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountMailbox 
            NAME 'AstAccountMailbox'
            DESC 'Asterisk Account Mailbox'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstMD5secret
            NAME 'AstMD5secret'
            DESC 'Asterisk Account MD5 Secret'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountDeny 
            NAME 'AstAccountDeny'
            DESC 'Asterisk Account Deny'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountPermit 
            NAME 'AstAccountPermit'
            DESC 'Asterisk Account Permit'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountQualify 
            NAME 'AstAccountQualify'
            DESC 'Asterisk Account Qualify'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountType 
            NAME 'AstAccountType'
            DESC 'Asterisk Account Type'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountDisallowedCodec 
            NAME 'AstAccountDisallowedCodec'
            DESC 'Asterisk Account Disallowed Codec'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountExpirationTimestamp 
            NAME 'AstAccountExpirationTimestamp'
    
            DESC 'Asterisk Account Expiration Timestamp'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountRegistrationContext 
            NAME 'AstAccountRegistrationContext'
    
            DESC 'Asterisk Account Registration Context'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountRegistrationExten 
            NAME 'AstAccountRegistrationExten'
    
            DESC 'Asterisk Account Registration Extension'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountNoTransfer 
            NAME 'AstAccountNoTransfer'
    
            DESC 'Asterisk Account No Transfer'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountCallGroup 
            NAME 'AstAccountCallGroup'
            DESC 'Asterisk Account Call Group'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountCanReinvite 
            NAME 'AstAccountCanReinvite'
            DESC 'Asterisk Account Can Reinvite'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
         
    attributetype ( AstAccountDTMFMode 
            NAME 'AstAccountDTMFMode'
            DESC 'Asterisk Account DTMF Flags'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
                
    attributetype ( AstAccountFromUser 
            NAME 'AstAccountFromUser'
            DESC 'Asterisk Account From User'
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountFromDomain
            NAME 'AstAccountFromDomain'
            DESC 'Asterisk Account From Domain'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
            
    attributetype ( AstAccountFullContact 
            NAME 'AstAccountFullContact'
            DESC 'Asterisk Account Full Contact'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountHost 
            NAME 'AstAccountHost'
            DESC 'Asterisk Account Host'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountInsecure
            NAME 'AstAccountInsecure'
            DESC 'Asterisk Account Insecure'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountNAT 
            NAME 'AstAccountNAT'
            DESC 'Asterisk Account NAT'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
          
    attributetype ( AstAccountPickupGroup 
            NAME 'AstAccountPickupGroup'
            DESC 'Asterisk Account PickupGroup'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
          
    attributetype ( AstAccountPort 
            NAME 'AstAccountPort'
            DESC 'Asterisk Account Port'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
          
    attributetype ( AstAccountRestrictCID 
            NAME 'AstAccountRestrictCID'
    
            DESC 'Asterisk Account Restrict CallerID'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
                
    attributetype ( AstAccountRTPTimeout 
            NAME 'AstAccountRTPTimeout'
    
            DESC 'Asterisk Account RTP Timeout'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
          
    attributetype ( AstAccountRTPHoldTimeout 
            NAME 'AstAccountRTPHoldTimeout'
    
            DESC 'Asterisk Account RTP Hold Timeout'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
          
    attributetype ( AstAccountRealmedPassword 
            NAME 'AstAccountRealmedPassword'
    
            DESC 'Asterisk Account Realmed Password'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountAllowedCodec 
            NAME 'AstAccountAllowedCodec' 
            DESC 'Asterisk Account Allowed Codec'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountMusicOnHold 
            NAME 'AstAccountMusicOnHold'
    
            DESC 'Asterisk Account Music On Hold'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountCanCallForward 
            NAME 'AstAccountCanCallForward'
    
            DESC 'Asterisk Account Can Call Forward' 
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountSecret 
            NAME 'AstAccountSecret'
    
            DESC 'Asterisk Account Secret' 
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
              
    attributetype ( AstAccountName 
            NAME 'AstAccountName'
            DESC 'Asterisk Account Username'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigFilename 
            NAME 'AstConfigFilename'
            DESC 'Asterisk LDAP Configuration Filename'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigCategory
            NAME 'AstConfigCategory'
            DESC 'Asterisk LDAP Configuration Category'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigCategoryMetric
            NAME 'AstConfigCategoryMetric'
            DESC 'Asterisk LDAP Configuration Category Metric'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigVariableName
            NAME 'AstConfigVariableName'
            DESC 'Asterisk LDAP Configuration Variable Name'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigVariableValue
            NAME 'AstConfigVariableValue'
            DESC 'Asterisk LDAP Configuration Variable Value'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstConfigCommented
            NAME 'AstConfigCommented'
            DESC 'Asterisk LDAP Configuration Commented'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    Tilghman Lesher's avatar
    Tilghman Lesher committed
    attributetype ( AstAccountIPAddress
            NAME 'AstAccountIPAddress'
            DESC 'Asterisk Account IP Address' 
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
              
    attributetype ( AstAccountDefaultUser
            NAME 'AstAccountDefaultUser'
            DESC 'Asterisk Account Default User'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountRegistrationServer
            NAME 'AstAccountRegistrationServer'
            DESC 'Asterisk Account Registration Server' 
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    Gavin Henry's avatar
    Gavin Henry committed
    attributetype ( AstAccountLastQualifyMilliseconds
    
            NAME 'AstAccountLastQualifyMilliseconds'
            DESC 'Asterisk Account Last Qualify Milliseconds'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountCallLimit
            NAME 'AstAccountCallLimit'
            DESC 'Asterisk Account Call Limit'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailMailbox
            NAME 'AstVoicemailMailbox'
            DESC 'Asterisk voicemail mailbox'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailPassword
            NAME 'AstVoicemailPassword'
            DESC 'Asterisk voicemail password'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailFullname
            NAME 'AstVoicemailFullname'
            DESC 'Asterisk voicemail fullname'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailEmail
            NAME 'AstVoicemailEmail'
            DESC 'Asterisk voicemail email'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailPager
            NAME 'AstVoicemailPager'
            DESC 'Asterisk voicemail pager'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailOptions
            NAME 'AstVoicemailOptions'
            DESC 'Asterisk voicemail options'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstVoicemailTimestamp
            NAME 'AstVoicemailTimestamp'
            DESC 'Asterisk voicemail timestamp'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    Gavin Henry's avatar
    Gavin Henry committed
    
    
    Gavin Henry's avatar
    Gavin Henry committed
    attributetype ( AstVoicemailContext
            NAME 'AstVoicemailContext'
            DESC 'Asterisk voicemail context'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    attributetype ( AstAccountSubscribeContext
            NAME 'AstAccountSubscribeContext'
            DESC 'Asterisk subscribe context'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    Gavin Henry's avatar
    Gavin Henry committed
    attributetype ( AstAccountUserAgent
            NAME 'AstAccountUserAgent'
            DESC 'Asterisk account user context'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    Gavin Henry's avatar
    Gavin Henry committed
    attributetype ( AstAccountLanguage
            NAME 'AstAccountLanguage'
            DESC 'Asterisk account user language'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountTransport
            NAME 'AstAccountTransport'
            DESC 'Asterisk account transport type'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountPromiscRedir
            NAME 'AstAccountPromiscRedir'
            DESC 'Asterisk account promiscous redirects'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountAccountCode
            NAME 'AstAccountAccountCode'
            DESC 'Asterisk account billing code'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountSetVar
            NAME 'AstAccountSetVar'
            DESC 'Asterisk account setvar'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountAllowOverlap
            NAME 'AstAccountAllowOverlap'
            DESC 'Asterisk account allow overlap dialing'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountVideoSupport
            NAME 'AstAccountVideoSupport'
            DESC 'Asterisk account video support'
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    attributetype ( AstAccountIgnoreSDPVersion
            NAME 'AstAccountIgnoreSDPVersion'
            DESC 'Asterisk account ignore SDP version'
    
            EQUALITY caseIgnoreMatch
            SUBSTR caseIgnoreSubstringsMatch
            SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
    
    
    #############################################################################
    # Object Class definitions
    #
    # This is where to define the object classes. Object classes are used
    # to define which attribute MAY (optional) or MUST (required) belong
    # to an entry.
    #
    # Classes can be AUXILIARY or STRUCTURAL. An entry in the directory
    # must have one and only one structural class, but can have many
    # AUXILIARY classes.
    #
    #############################################################################
    
    objectclass ( AsteriskExtension 
        NAME 'AsteriskExtension'
        DESC 'PBX Extension Information for Asterisk'
        SUP top AUXILIARY
        MUST cn
        MAY ( 
            AstContext $ 
            AstExtension $ 
            AstPriority $
            AstApplication $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstApplicationData
    
        ) 
        )
    
    #############################################################################
    #
    # AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These
    # represent real accounts in Asterisk.
    #
    # NOTE: They are defined as AUXILIARY in case they need to be mixed with an
    # existing directory deployment.
    #
    #############################################################################
            
    objectclass ( AsteriskIAXUser 
        NAME 'AsteriskIAXUser'
        DESC 'IAX2 User information for Asterisk'
        SUP AsteriskExtension AUXILIARY
        MUST cn
        MAY ( 
            AstAccountAMAFlags $ 
            AstAccountCallerID $ 
            AstAccountContext $ 
            AstAccountFullContact $ 
            AstAccountHost $ 
            AstAccountMailbox $ 
            AstMD5secret $ 
            AstAccountDeny $
            AstAccountPermit $ 
            AstAccountPort $ 
            AstAccountQualify $ 
            AstAccountType $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountLanguage $
    
            AstAccountDisallowedCodec $ 
            AstAccountExpirationTimestamp $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountRegistrationContext $
    
            AstAccountRegistrationExten $ 
            AstAccountNoTransfer $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountName $
    
            AstAccountLastQualifyMilliseconds $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountSubscribeContext $
            AstAccountIPAddress $
            AstAccountUserAgent		
    
        )
        )
           
    objectclass ( AsteriskSIPUser 
        NAME 'AsteriskSIPUser'
        DESC 'SIP User information for Asterisk'
        SUP AsteriskExtension AUXILIARY
        MUST cn
        MAY (
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountAccountCode $
            AstAccountAllowOverlap $
            AstAccountAllowedCodec $ 
    
            AstAccountAMAFlags $ 
            AstAccountCallGroup $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountCallLimit $
    
            AstAccountCallerID $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountCanCallForward $ 
    
            AstAccountCanReinvite $
            AstAccountContext $
            AstAccountDTMFMode $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountDefaultUser $
            AstAccountDeny $ 
            AstAccountDisallowedCodec $ 
            AstAccountExpirationTimestamp $ 
    
            AstAccountFromDomain $     
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountFromUser $ 
    
            AstAccountFullContact $ 
            AstAccountHost $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountIgnoreSDPVersion $  
    
            AstAccountInsecure $  
    
    Tilghman Lesher's avatar
    Tilghman Lesher committed
            AstAccountIPAddress $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountLanguage $
            AstAccountLastQualifyMilliseconds $
    
            AstAccountMailbox $    
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountMusicOnHold $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountName $
    
            AstAccountPermit $ 
            AstAccountPickupGroup $ 
            AstAccountPort $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountPromiscRedir $
    
            AstAccountQualify $ 
            AstAccountRTPHoldTimeout $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountRTPTimeout $ 
            AstAccountRealmedPassword $ 
    
            AstAccountRegistrationContext $ 
            AstAccountRegistrationExten $
    
    Tilghman Lesher's avatar
    Tilghman Lesher committed
            AstAccountRegistrationServer $
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountRestrictCID $ 
    
            AstAccountSecret $ 
    
    Gavin Henry's avatar
    Gavin Henry committed
            AstAccountSetVar $
            AstAccountSubscribeContext $
            AstAccountTransport $
            AstAccountType $ 
            AstAccountUserAgent $	
            AstAccountVideoSupport
    
        )
        )
    
    #############################################################################
    #
    
    # AsteriskConfig and AsteriskVoiceMail extend AsteriskExtension. These
    
    # represent real accounts in Asterisk.
    #
    # NOTE: They are defined as AUXILIARY in case they need to be mixed with an
    # existing directory deployment.
    #
    #############################################################################
            
    objectclass ( AsteriskConfig 
        NAME 'AsteriskConfig'
        DESC 'Asterisk configuration Information'
        SUP top AUXILIARY
        MUST cn
        MAY ( 
            AstConfigFilename $ 
            AstConfigCategory $ 
            AstConfigCategoryMetric $
            AstConfigVariableName $ 
            AstConfigVariableValue $ 
            AstConfigCommented
        ) 
        )
    
    
    objectclass ( AsteriskVoiceMail
        NAME 'AsteriskVoiceMail'
        DESC 'Asterisk voicemail information'
        SUP top AUXILIARY
        MUST (
        cn $
        AstContext $
        AstVoicemailMailbox $
        AstVoicemailPassword
        ) 
        MAY (
        AstVoicemailFullname $
        AstVoicemailEmail $
        AstVoicemailPager $
        AstVoicemailOptions $
    
    Gavin Henry's avatar
    Gavin Henry committed
        AstVoicemailTimestamp $
        AstVoicemailContext
    
    Gavin Henry's avatar
    Gavin Henry committed
    
    objectClass (
    	AsteriskDialplan
    	NAME 'AsteriskDialplan'
    	DESC 'Asterisk Dialplan Information'
    	SUP top STRUCTURAL
    	MUST ( AstExtension ) )
    
    objectClass (
    	AsteriskAccount
    	NAME 'AsteriskAccount'
    	DESC 'Asterisk Account Information'
    	SUP top STRUCTURAL
    	MUST ( AstAccountName ) )
    
    objectClass (
    	AsteriskMailbox
    	NAME 'AsteriskMailbox'
    	DESC 'Asterisk Mailbox Information'
    	SUP top STRUCTURAL
    	MUST ( AstVoicemailMailbox ) )