Při úklidu domácí wikiny (26.2.2014) jsem narazil na tento článek, jak jsem před lety migroval uživatele z jabber serveru OpenFire na ejabberd. Článek zde předkládám tak jak je, bez úprav. Snad tento návod někomu pomůže, tehdy jsem se s tím dost vydrbal.
Exportovat user data z OpenFire
Je na to potřeba doinstalovat plugin do OpenFire. Výsledný soubor openfire.xml si uložíme na server, kam budeme instalovat ejabberd. K exportovaným souborům musí mít přístup pro čtení uživatel ejabberd. Takže je uložte někam do /tmp a pro jistotu nastavte chmod 777 -R /tmp/jabberspool/.
Instalace ejabberd
Na Debianu:
aptitude install ejabberd
Budeme potřeboval http://jezzovo.net/files/openfire-jabberd-convertor.jar pro konverzi xml z openfire do tvaru, kterému rozumí ejabberd.
Konfigurace ejabberd.cfg:
Za username a hostname si doplňte správné údaje:
%% Admin user
{acl, admin, {user, "", "localhost"}}.
{acl, admin, {user, "username", "hostname"}}.
%% Hostname
{hosts, ["hostname"]}.
Export uživatelů:
Opět si za hostname doplňte vaši doménu.
root@floyd:~# java -jar openfire-jabberd-convertor.jar openfire.xml /tmp/jabberspool/ hostname
Parsing openfire users file...
3 users found.
Populating spool directory for domain 'hostname'...
exporting user: xxx@hostname ...
exporting user: admin@hostname ...
exporting user: yyy@hostname ...
Finished.
You can now import it to your jabberd or ejabberd server.
Importovat uživatele:
ejabberdctl --node ejabberd@hostname import-dir /tmp/jabberspool/
Je vhodné provést kontrolu importu:
ejabberdctl registered-users hostname
Což by mělo vypsat seznam všech naimportovaných userů.
Po restartu ejabberd se mi již podařilo se přihlásit pomocí klienta psi. Dokonce (díky acl), má v service discovery mnoho administračních položek.