[ejabberd] Shared Roster, Automation, LDAP and Databases

Adam Hubscher webmaster at x-zen.cx
Thu Aug 21 11:27:07 MSD 2008


I've gotten further on this. I have a perl script that now can do all  
of the commands, however there is an issue.

Our groups have spaces in them, as do the descriptions.

Your commands do not take these...

i am attempting to input into a static dump file, however as I am  
aware - this does not actually delete anything that is currently -IN-  
the database, it only adds to it. This does not create duplicate  
entries, but it also does not necessarily benefit me... either, as  
users will never get deleted.

Any way that we can accomplish this?

Thanks,

Adam
On Aug 11, 2008, at 5:39 PM, Adam Hubscher wrote:

> Hey Badlop,
>
> Thank you very much for the information.
>
> I have an additional question beyond that one then.
>
> The MNESIA database... what are its capabilities?
>
> The reason I ask is we have the following requirements, and  
> scalability is a high requirement:
>
> 2900+ Users, authenticated by LDAP
> 190+ Groups, populated by LDAP
>
> Growing to 5000+ users within the next 12-18 months
> Potential for greater # of groups (but also potential for less  
> groups but larger user bases within the groups).
>
> All users are in a group.
>
> In many cases I find that embedded databases don't handle the larger  
> data sets so well... which is my concern.
>
> Thoughts?
>
> Thanks,
>
> Adam
>
> On Aug 9, 2008, at 8:57 AM, Badlop wrote:
>
>> On Fri, Aug 8, 2008 at 9:31 PM, Adam Hubscher <webmaster at x-zen.cx>  
>> wrote:
>>> Hey List, I was trying to register at the forums as well but it  
>>> appears that
>>> the captcha is never correct =/
>>
>> Yes, there was a problem in the website and any response to a captcha
>> was considered wrong. It's fixed now.
>>
>>> the mod_shared_roster module only utilizes the mnesia database.
>>
>> Right, it stores in an internal Mnesia table.
>>
>>
>>> I am not sure of how I could
>>> interact with this with a python (or otherwise) script
>>
>>> I am
>>> wondering if there is the ability for me to, through a scripting  
>>> language
>>> that I am familiar with (perl, python, php, or bash), to add the  
>>> information
>>> for a shared roster group appropriately to either the mnesia  
>>> database - or -
>>
>> Some time ago I wrote some ejabberdctl commands in a contributed  
>> module:
>> http://www.ejabberd.im/mod_ctlextra
>>
>> If you compiled ejabberd from source code, you can simply:
>> 1. Copy this file to the src/ dir
>> http://svn.process-one.net/ejabberd-modules/mod_ctlextra/trunk/src/mod_ctlextra.erl
>> 2. It will be compiled and installed with all the other ejabberd  
>> modules
>> 3. Enable the module in ejabberd.cfg . No options are required.
>> 4. Start ejabberd
>> 5. Execute ejabberdctl commands in a system shell
>>
>>
>> In this example, the Jabber server is the default "localhost".
>> I create group1, add two members, then delete both members and the  
>> group:
>>
>> $ ejabberdctl srg-list-groups localhost
>>
>> $ ejabberdctl srg-create group1 localhost Group_1 Test_Group group1
>>
>> $ ejabberdctl srg-list-groups localhost
>> group1
>>
>> $ ejabberdctl srg-get-info group1 localhost
>> name: "Group_1"
>> displayed_groups: ["group1"]
>> description: "Test_Group"
>> members:
>>
>> $ ejabberdctl srg-user-add user1 localhost group1 localhost
>>
>> $ ejabberdctl srg-get-info group1 localhost
>> name: "Group_1"
>> displayed_groups: ["group1"]
>> description: "Test_Group"
>> members: user1 at localhost
>>
>> $ ejabberdctl srg-user-add user2 localhost group1 localhost
>>
>> $ ejabberdctl srg-get-info group1 localhost
>> name: "Group_1"
>> displayed_groups: ["group1"]
>> description: "Test_Group"
>> members: user1 at localhost user2 at localhost
>>
>> $ ejabberdctl srg-user-del user1 localhost group1 localhost
>>
>> $ ejabberdctl srg-user-del user2 localhost group1 localhost
>>
>> $ ejabberdctl srg-get-info group1 localhost
>> name: "Group_1"
>> displayed_groups: ["group1"]
>> description: "Test_Group"
>> members:
>>
>> $ ejabberdctl srg-delete group1 localhost
>>
>>
>> ---
>> _______________________________________________
>> ejabberd mailing list
>> ejabberd at jabber.ru
>> http://lists.jabber.ru/mailman/listinfo/ejabberd
>
> _______________________________________________
> ejabberd mailing list
> ejabberd at jabber.ru
> http://lists.jabber.ru/mailman/listinfo/ejabberd



More information about the ejabberd mailing list