From 16f316c4d6aad1e1927a64852c8256fd170744e7 Mon Sep 17 00:00:00 2001 From: ghenry Date: Thu, 28 May 2009 11:40:44 +0000 Subject: issue #15155 and issue #15156 from trunk git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@197441 f38db490-d61c-443f-a65b-d21fe96a405b --- configs/res_ldap.conf.sample | 2 + contrib/scripts/asterisk.ldap-schema | 122 ++++++++++++++++++++++++++++-- contrib/scripts/asterisk.ldif | 140 +++++++++++++++++++++++++++++++++-- doc/ldap.txt | 4 +- 4 files changed, 255 insertions(+), 13 deletions(-) diff --git a/configs/res_ldap.conf.sample b/configs/res_ldap.conf.sample index 98343c9b3..0a442298d 100644 --- a/configs/res_ldap.conf.sample +++ b/configs/res_ldap.conf.sample @@ -91,6 +91,7 @@ CanCallForward = AstAccountCanCallForward ipaddr = AstAccountIPAddress defaultuser = AstAccountDefaultUser regserver = AstAccountRegistrationServer +lastms = AstAccountLastQualifyMilliseconds additionalFilter=(objectClass=AsteriskSIPUser) ; @@ -116,6 +117,7 @@ regseconds = AstAccountExpirationTimestamp regcontext = AstAccountRegistrationContext regexten = AstAccountRegistrationExten notransfer = AstAccountNoTransfer +lastms = AstAccountLastQualifyMilliseconds additionalFilter=(objectClass=AstAccountIAX) ; diff --git a/contrib/scripts/asterisk.ldap-schema b/contrib/scripts/asterisk.ldap-schema index 667966a04..a1118ec40 100644 --- a/contrib/scripts/asterisk.ldap-schema +++ b/contrib/scripts/asterisk.ldap-schema @@ -1,9 +1,13 @@ # -# Copyright (c) 2007-2008 Suretec Systems Ltd. - +# Copyright (c) 2007-2009 Suretec Systems Ltd. - # -# Version: 3.1.6 +# Version: 3.1.8 # # Changes: +# - Added AsteriskVoiceMail Object class and AstAccountCallLimit attribute - 28/05/2009 +# https://issues.asterisk.org/view.php?id=15155 +# - Added AstAccountLastQualifyMilliseconds - 28/05/2009 +# https://issues.asterisk.org/view.php?id=15156 # - http://bugs.digium.com/view.php?id=12860 - 04/07/2008 # - Fixed wrong DESC - 07/05/2008 # @@ -78,6 +82,16 @@ objectIdentifier AstConfigCommented AstAttrType:45 objectIdentifier AstAccountIPAddress AstAttrType:46 objectIdentifier AstAccountDefaultUser AstAttrType:47 objectIdentifier AstAccountRegistrationServer AstAttrType:48 +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 +objectIdentifier AstVoicemailContext AstAttrType:58 ############################################################################# @@ -88,6 +102,7 @@ objectIdentifier AsteriskExtension AstObjectClass:1 objectIdentifier AsteriskIAXUser AstObjectClass:2 objectIdentifier AsteriskSIPUser AstObjectClass:3 objectIdentifier AsteriskConfig AstObjectClass:4 +objectIdentifier AsteriskVoiceMail AstObjectClass:5 ############################################################################# @@ -462,6 +477,76 @@ attributetype ( AstAccountRegistrationServer SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +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) + +attributetype ( AstVoicemailContext + NAME 'AstVoicemailContext' + DESC 'Asterisk voicemail context' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) + ############################################################################# # Object Class definitions # @@ -485,7 +570,8 @@ objectclass ( AsteriskExtension AstExtension $ AstPriority $ AstApplication $ - AstApplicationData + AstApplicationData $ + ) ) @@ -522,7 +608,9 @@ objectclass ( AsteriskIAXUser AstAccountRegistrationContext$ AstAccountRegistrationExten $ AstAccountNoTransfer $ - AstAccountName + AstAccountName $ + AstAccountLastQualifyMilliseconds $ + AstAccountCallLimit ) ) @@ -566,13 +654,15 @@ objectclass ( AsteriskSIPUser AstAccountRegistrationServer $ AstAccountCanCallForward $ AstAccountSecret $ - AstAccountName + AstAccountName $ + AstAccountLastQualifyMilliseconds $ + AstAccountCallLimit ) ) ############################################################################# # -# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These +# 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 @@ -594,3 +684,23 @@ objectclass ( AsteriskConfig AstConfigCommented ) ) + +objectclass ( AsteriskVoiceMail + NAME 'AsteriskVoiceMail' + DESC 'Asterisk voicemail information' + SUP top AUXILIARY + MUST ( + cn $ + AstContext $ + AstVoicemailMailbox $ + AstVoicemailPassword + ) + MAY ( + AstVoicemailFullname $ + AstVoicemailEmail $ + AstVoicemailPager $ + AstVoicemailOptions $ + AstVoicemailTimestamp $ + AstVoicemailContext + ) + ) diff --git a/contrib/scripts/asterisk.ldif b/contrib/scripts/asterisk.ldif index c91308e9c..f159eb04f 100644 --- a/contrib/scripts/asterisk.ldif +++ b/contrib/scripts/asterisk.ldif @@ -1,9 +1,13 @@ # -# Copyright (c) 2007-2008 Suretec Systems Ltd. - +# Copyright (c) 2007-2009 Suretec Systems Ltd. - # -# Version: 3.1.6 +# Version: 3.1.8 # # Changes: +# - Added AsteriskVoiceMail Object class and AstAccountCallLimit attribute - 28/05/2009 +# https://issues.asterisk.org/view.php?id=15155 +# - Added AstAccountLastQualifyMilliseconds - 28/05/2009 +# https://issues.asterisk.org/view.php?id=15156 # - http://bugs.digium.com/view.php?id=12860 - 04/07/2008 # - Fixed wrong DESC - 07/05/2008 # @@ -82,6 +86,16 @@ olcObjectIdentifier: AstConfigCommented AstAttrType:45 olcObjectIdentifier: AstAccountIPAddress AstAttrType:46 olcObjectIdentifier: AstAccountDefaultUser AstAttrType:47 olcObjectIdentifier: AstAccountRegistrationServer AstAttrType:48 +olcObjectIdentifier: AstAccountLastQualifyMilliseconds AstAttrType:49 +olcObjectIdentifier: AstAccountCallLimit AstAttrType:50 +olcObjectIdentifier: AstVoicemailMailbox AstAttrType:51 +olcObjectIdentifier: AstVoicemailPassword AstAttrType:52 +olcObjectIdentifier: AstVoicemailFullname AstAttrType:53 +olcObjectIdentifier: AstVoicemailEmail AstAttrType:54 +olcObjectIdentifier: AstVoicemailPager AstAttrType:55 +olcObjectIdentifier: AstVoicemailOptions AstAttrType:56 +olcObjectIdentifier: AstVoicemailTimestamp AstAttrType:57 +olcObjectIdentifier: AstVoicemailContext AstAttrType:58 # # ############################################################################# @@ -92,6 +106,7 @@ olcObjectIdentifier: AsteriskExtension AstObjectClass:1 olcObjectIdentifier: AsteriskIAXUser AstObjectClass:2 olcObjectIdentifier: AsteriskSIPUser AstObjectClass:3 olcObjectIdentifier: AsteriskConfig AstObjectClass:4 +olcObjectIdentifier: AsteriskVoiceMail AstObjectClass:5 # # ############################################################################# @@ -445,6 +460,97 @@ olcAttributeTypes: ( AstConfigCommented SUBSTR caseIgnoreSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) # +olcAttributeTypes: ( AstAccountIPAddress + NAME 'AstAccountIPAddress' + DESC 'Asterisk Account IP Address' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstAccountDefaultUser + NAME 'AstAccountDefaultUser' + DESC 'Asterisk Account Default User' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstAccountRegistrationServer + NAME 'AstAccountRegistrationServer' + DESC 'Asterisk Account Registration Server' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( 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) +# +olcAttributeTypes: ( AstAccountCallLimit + NAME 'AstAccountCallLimit' + DESC 'Asterisk Account Call Limit' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailMailbox + NAME 'AstVoicemailMailbox' + DESC 'Asterisk voicemail mailbox' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailPassword + NAME 'AstVoicemailPassword' + DESC 'Asterisk voicemail password' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailFullname + NAME 'AstVoicemailFullname' + DESC 'Asterisk voicemail fullname' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailEmail + NAME 'AstVoicemailEmail' + DESC 'Asterisk voicemail email' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailPager + NAME 'AstVoicemailPager' + DESC 'Asterisk voicemail pager' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailOptions + NAME 'AstVoicemailOptions' + DESC 'Asterisk voicemail options' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailTimestamp + NAME 'AstVoicemailTimestamp' + DESC 'Asterisk voicemail timestamp' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# +olcAttributeTypes: ( AstVoicemailContext + NAME 'AstVoicemailContext' + DESC 'Asterisk voicemail context' + EQUALITY caseIgnoreMatch + SUBSTR caseIgnoreSubstringsMatch + SYNTAX 1.3.6.1.4.1.1466.115.121.1.15) +# ############################################################################# # Object Class definitions # @@ -505,7 +611,9 @@ olcObjectClasses: ( AsteriskIAXUser AstAccountRegistrationContext$ AstAccountRegistrationExten $ AstAccountNoTransfer $ - AstAccountName + AstAccountName $ + AstAccountLastQualifyMilliseconds $ + AstAccountCallLimit ) ) # @@ -549,13 +657,15 @@ olcObjectClasses: ( AsteriskSIPUser AstAccountRegistrationServer $ AstAccountCanCallForward $ AstAccountSecret $ - AstAccountName + AstAccountName $ + AstAccountLastQualifyMilliseconds $ + AstAccountCallLimit ) ) # ############################################################################# # -# AsteriskIAXUser and AsteriskSIPUser extend AsteriskExtension. These +# 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 @@ -578,3 +688,23 @@ olcObjectClasses: ( AsteriskConfig ) ) # +olcObjectClasses: ( AsteriskVoiceMail + NAME 'AsteriskVoiceMail' + DESC 'Asterisk voicemail information' + SUP top AUXILIARY + MUST ( + cn $ + AstContext $ + AstVoicemailMailbox $ + AstVoicemailPassword + ) + MAY ( + AstVoicemailFullname $ + AstVoicemailEmail $ + AstVoicemailPager $ + AstVoicemailOptions $ + AstVoicemailTimestamp $ + AstVoicemailContext + ) + ) +# diff --git a/doc/ldap.txt b/doc/ldap.txt index c4d658d66..5cc2246ed 100644 --- a/doc/ldap.txt +++ b/doc/ldap.txt @@ -1,13 +1,13 @@ Asterisk Realtime LDAP Driver --------------------------- -With this driver Asterisk can retrieve information from a LDAP drectory, including +With this driver Asterisk can retrieve information from an LDAP drectory, including sip/iax users, extensions and configuration. See configs/res_ldap.conf.sample for a configuration file sample -Here is a LDAP dif sample: +Here is a LDAP diff sample: # Base SIP Phones Entry dn: uid=phone-base,dc=myDomain,dc=myDomainExt -- cgit v1.2.3