<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>El Tramo | Prosody</title>
  <subtitle>Remko Tronçon's Homepage</subtitle>
  <link href="http://el-tramo.be/blog/tag/prosody/feed/" rel="self" type="application/rss+xml"/>
  <link href="http://el-tramo.be/"/>
  <updated>2012-05-19T12:29:42+02:00</updated>
  <id>http://el-tramo.be/</id>
  <author>
    <name>Remko Tronçon</name>
    <uri>http://el-tramo.be/about/</uri>
  </author>
  
  <entry>
    <title>Migrating from Openfire to Prosody</title>
    <author>
      <name>Remko Tronçon</name>
      <uri>http://el-tramo.be/about/</uri>
    </author>
    <link href="http://el-tramo.be/blog/openfire-to-prosody-migration"/>
    <updated>2009-07-03T00:00:00+02:00</updated>
    <id>http://el-tramo.be/blog/openfire-to-prosody-migration</id>
    <content type="html">&lt;p&gt;Because &lt;a href=&quot;http://www.igniterealtime.org/projects/openfire/index.jsp&quot;&gt;Openfire&lt;/a&gt; has been hogging too much of my limited &lt;a href=&quot;http://el-tramo.be&quot;&gt;el-tramo.be&lt;/a&gt; server resources lately, and because I don’t need a beast of an XMPP server for only 2 users, I decided to replace it by the lightweight &lt;a href=&quot;http://prosody.im/&quot;&gt;Prosody&lt;/a&gt;. The migration went flawless, with the help of two tools: &lt;a href=&quot;http://www.kismith.co.uk/wordpress/index.php/2008/11/30/sleek-migrate/&quot;&gt;Sleek Migrate&lt;/a&gt;, and a &lt;a href=&quot;/git/xep227-to-prosody&quot;&gt;Prosody XEP-0227 Importer&lt;/a&gt;.&lt;/p&gt;

&lt;!--more--&gt;


&lt;p&gt;First of all, I used Sleek Migrate to retrieve the roster (and other) data from the server, and store it in the standard &lt;a href=&quot;http://xmpp.org/extensions/xep-0227.html&quot;&gt;XEP-0227&lt;/a&gt; format. I extended the tool a bit such that it supports Openfire’s User Import/Export format, a format generated by an &lt;a href=&quot;http://www.igniterealtime.org/projects/openfire/plugins/userimportexport/readme.html&quot;&gt;Openfire plugin&lt;/a&gt; that is distributed with the server software by default. Using this format as input for Sleek Migrate avoids the need to create a user file manually. The changes I made to Sleek Migrate are currently available from &lt;a href=&quot;/git/sleekmigrate&quot;&gt;my Git repository&lt;/a&gt;, awaiting to be pushed to the main repository.&lt;/p&gt;

&lt;p&gt;I then wrote a short script that populates the Prosody data dir with the server data from the XEP-0227 XML file. Currently, the script only generates roster and account data, but adding &lt;a href=&quot;http://xmpp.org/extensions/xep-0054.html&quot;&gt;vCard&lt;/a&gt; and &lt;a href=&quot;http://xmpp.org/extensions/xep-0049.html&quot;&gt;Private XML Storage&lt;/a&gt; (used amongst others to store &lt;a href=&quot;http://xmpp.org/extensions/attic/xep-0048-1.0.html&quot;&gt;MUC bookmarks&lt;/a&gt;) should not be very hard. Until Prosody creates a native XEP-0227 importer, you can get the script from &lt;a href=&quot;/git/xep227-to-prosody&quot;&gt;my Git repository&lt;/a&gt;.&lt;/p&gt;
</content>
  </entry>
  
</feed>

