ejabberd_users - dumps info about users registered on server (with some vcard info) from mnesia to html file.
Author: Oleg Palij (mailto,xmpp:o.palij@gmail.com)
Requirements: ejabberd 1.1.3, mod_cron
DESCRIPTION:
This simple tool dump some users info from mnesia to html file.
I wrote it becouse almost everyone in my network use miranda. Unfortunately miranda (at least versions before 0.5) can not perform search on ejabberd server.
So, every day, I dump users base to html and post it to web server.
INSTALL (*nix):
1. Install mod_cron.
1. Download ejabberd_users.erl
2. compile: erlc ejabberd_users.erl
3. copy ejabberd_users.beam to ejabberd erlang lib dir (/usr/local/lib/erlang/lib for FreeBSD): cp ejabberd_users.beam /usr/local/lib/erlang/lib/ejabberd_users/ebin/
4. modify/add ejabberd mod_cron configuration. For example:
{mod_cron, [{tasks,[{1,days,ejabberd_users,get_all_info,["/usr/local/www/vhosts/jabber/ejabberd_users/users_list.html"]}]}]},
where:
/usr/local/www/vhosts/jabber/users_list.html - file to store dump.
/usr/local/www/vhosts/jabber/ - will be directory for storing avatar photo (if available).
5. restart mod_cron or ejabberd.
NOTE: the dump will be available only after choosen time interval (after 24 hours in example). If you want immediate result you should Attach an Erlang Shell to an Already Running ejabberd Process and run a command 'ejabberd_users:get_all_info("/usr/local/www/vhosts/jabber/ejabberd_users/users_list.html").' (w/o qoutes).
INSTALL (windows):
1. Download precompiled mod_cron-win32.zip
2. Download precompiled ejabberd_users-win32.zip
3. Copy mod_cron.beam and ejabberd_users.beam files to ejabberd ebin folder.
4. See steps 4,5 from *nix install.
Changelog:
2007-07-21
* added avatar support (by badlop)
* changed code to use it from mod_cron
* general code optimizations
2006-09-08
* Initial version
SAMPLE OUTPUT:
N |
JID |
FULL NAME |
NICK NAME |
E-MAIL |
PHOTO |
1 | #kostik#@jabber.dp.uz.gov.ua | none | none | none | no avatar |
2 | *tan*@jabber.dp.uz.gov.ua | none | none | none | no avatar |
3 | *varwar*@jabber.dp.uz.gov.ua | none | none | none | no avatar |
106 | cortes@jabber.dp.uz.gov.ua | none | none | none | no avatar |
107 | csp@jabber.dp.uz.gov.ua | none | none | none | no avatar |
219 | isc-gls@jabber.dp.uz.gov.ua | GLS | ISC-GLS | none | no avatar |
220 | itm@jabber.dp.uz.gov.ua | none | none | none | no avatar |
496 | saint@jabber.dp.uz.gov.ua | Catherine T. | Sunny | none | |
497 | sanjucha@jabber.dp.uz.gov.ua | none | none | none | no avatar |
547 | somebodybodysome@jabber.dp.uz.gov.ua | none | none | none | |
560 | stix_@jabber.dp.uz.gov.ua | Устименко Сергей Николаевич | Stix_ | none | no avatar |
602 | tester@jabber.dp.uz.gov.ua | none | MaWa | none | no avatar |
603 | timurillo@jabber.dp.uz.gov.ua | Popil Timur Igorewitsh | timurillo | timurillo@ukr.net | no avatar |
604 | tolik@jabber.dp.uz.gov.ua | none | none | none | no avatar |
725 | юлия@jabber.dp.uz.gov.ua | none | none | none | no avatar |
726 | юлька@jabber.dp.uz.gov.ua | none | none | none | no avatar |
727 | юля@jabber.dp.uz.gov.ua | none | none | none | no avatar |
728 | юля_@jabber.dp.uz.gov.ua | none | none | none | no avatar |