Hi John, I've been trying to get your mod_xml_ldap module running, but didn't get very far yet.. What is the official way to get the module built ? I tried modifying trunk/freeswitch.spec so that XML_INT_MODULES contains xml_int/mod_xml_ldap There's also a directories/mod_ldap in DISABLED_MODULES in the same file, but I don't suppose it's necessary to enable it, or is it ? The mod_xml_ldap doesn't get built by running make make or dpkg- buildpackage from trunk/ Also I tried building it from the module directory itself, but then I get the following error: fsbuilder@sv:~/trunk/src/mod/xml_int/mod_xml_ldap$ make Compiling mod_xml_ldap.c... cc1: warnings being treated as errors mod_xml_ldap.c: In function 'xml_ldap_search': mod_xml_ldap.c:356: warning: cast from pointer to integer of different size make[1]: *** [mod_xml_ldap.o] Error 1 make: *** [all] Error 1 (Also I had to apt-get install libsasl2 libsasl2-dev, otherwise make from this dir errored with missing sasl/sasl.h) Can you see what I'm doing wrong ? (I'm using svn rev 11560) thanks & regards, Leon On Jan 6, 2009, at 4:55 AM, John Skopis (Lists) wrote:
Vinicius Kobashi wrote:
hi ppl.
i tried hard to make it work, but still i couldnt find a complete openldap scheme that provides these information, and i still could't find out where to put these configuration...
can anyone help me?
thankz!
vinicius escreveu:
thankz!
ill set my openldap to provide these information..
but these about these binding settings... where should i set them?
best regards
John Skopis (Lists) wrote:
vinicius wrote:
hi ppl.. i tried to find something at google, but i couldnt manage to find anything. i still dont know what to do to make the mod_xml_ldap work. i couldnt find information about how to build a config file for the module, and where to store it...
can anyone give me a help?
Be advised mod_xml_ldap is probably not production quality and will undoubtedly change, eventually at least.
Here is what I used once:
<bindings>
<binding name="directory"> <!--%s is populated with the extension --> <param name="filter" value="(FSid=%s)" bindings="directory"/> <!--basedn for the searches %s is replaced with domain--> <param name="basedn" value="ou=people,dc=example" /> <param name="url" value="ldap://172.16.75.129" /> <param name="binddn" value="cn=admin,dc=example" /> <param name="bindpass" value="secret" />
<trans> <!-- we need to translate these attrs into FS attrs --> <tran name="id" mapfrom="FSid" /> <tran name="mailbox" mapfrom="FSmailbox" /> <tran name="password" mapfrom="FSPassword" /> <tran name="vm-password" mapfrom="FSvm-password" /> <tran name="email-addr" mapfrom="FSemail-addr" /> <tran name="vm-email-all-messages" mapfrom="FSvm-email-all- messages" /> <tran name="vm-delete-file" mapfrom="FSvm-delete-file" /> <tran name="vm-attach-file" mapfrom="FSvm-attach-file" /> </trans> </binding>
<binding name="configuration"> <param name="filter" value="(%s=%s)" bindings="configuration"/> <param name="basedn" value="name=%s,dc=example" /> <param name="url" value="ldap://172.16.75.129" /> <param name="binddn" value="cn=admin,dc=example" /> <param name="bindpass" value="secret" /> </binding> </bindings>
which should/probably/might work with ldap objects like these:
dn: cn=John Skopis,ou=people,dc=example objectClass: person objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: FreeSWITCH-Exten-Object objectClass: top cn: John Skopis sn: Skopis givenName: John FSid: 1001 FSmailbox: 1001 FSpassword: 1234 FSvm-password: 1001 FSemail-addr: john+fs@skopis.com FSvm-email-all-messages: TRUE FSvm-delete-file: TRUE FSvm-attach-file: TRUE
dn: SIPIdentityUserName=1001,ou=h350,dc=example objectClass: person objectClass: SIPIdentity objectClass: top cn: 1001 sn: 1001 SIPIdentitySIPURI: sip:1001@172.16.75.129 SIPIdentityRegistrarAddress: 172.16.75.128 SIPIdentityProxyAddress: 172.16.75.128 SIPIdentityPassword: 1234 SIPIdentityUserName: 1001 SIPIdentityServiceLevel: premium
Again, the module is not production quality. Hopefully I will conjurer the time and know-how to put something decent together eventually.
To load configuration for any fs module you need to define the XML configuration element under the section "configuration".
A good starting point is the file $PREFIX/conf/freeswitch.xml
http://wiki.freeswitch.org/wiki/Freeswitch.xml
Also take a look at $PREFIX/logs/freeswitch.xml.fsxml
to load mod_xml_ldap you would need to add something like this to modules.conf.xml
<load module="mod_xml_ldap" />
and create an xml_ldap.conf.xml in $PREFIX/autoload_configs/xml_ldap.conf.xml
<configuration name="xml_ldap.conf"> ... </configuration>
The ITU is doing some work called h.350: http://www.itu.int/ITU-T/studygroups/com16/h350/index.html
Here is what I was working with: attributetype ( 1.3.6.1.4.1.65535.2.1.1 NAME 'FSid' DESC 'FreeSWITCH Extension ID' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
attributetype ( 1.3.6.1.4.1.65535.2.1.2 NAME 'FSmailbox' DESC 'FreeSWITCH Extension Mailbox' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
attributetype ( 1.3.6.1.4.1.65535.2.1.3 NAME 'FSpassword' DESC 'FreeSWITCH Password' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.65535.2.1.4 NAME 'FSa1hash' DESC 'FreeSWITCH Crypted Password' EQUALITY caseExactIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.65535.2.1.5 NAME 'FSvm-password' DESC 'FreeSWITCH VoiceMail Password' EQUALITY integerMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.27 SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.65535.2.1.6 NAME 'FSemail-addr' DESC 'E-mail address to send voicemail' EQUALITY caseIgnoreIA5Match SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 )
attributetype ( 1.3.6.1.4.1.65535.2.1.7 NAME 'FSvm-email-all-messages' DESC 'FreeSWITCH Email All Mesages' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.65535.2.1.8 NAME 'FSvm-delete-file' DESC 'FreeSWITCH VoiceMail Delete File' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
attributetype ( 1.3.6.1.4.1.65535.2.1.9 NAME 'FSvm-attach-file' DESC 'FreeSWITCH VoiceMail Attach file' EQUALITY booleanMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE )
objectclass ( 1.3.6.1.4.1.65535.2.2.1 NAME 'FreeSWITCH-Exten-Object' SUP top AUXILIARY DESC '%obj_desc%' MUST ( FSid $ FSpassword ) MAY ( FSmailbox $ FSa1hash $ FSvm-password $ FSemail-addr $ FSvm-email-all-messages $ FSvm-delete-file $ FSvm-attach-file ) )
hth
_______________________________________________ Freeswitch-users mailing list Freeswitch-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org