Difference between revisions of "Platform Team/Prosody"

From Sugar Labs
Jump to navigation Jump to search
m
Line 1: Line 1:
 
== Purpose ==
 
== Purpose ==
  
The reasons to use Prosody Jabber/XMPP server:
+
These are reasons to use Prosody Jabber/XMPP server:
  
* be humble for consuming memory and CPU resources, especially for Sugar Server Kit usecase (up to 1K users),
+
* be humble for consuming memory and CPU resources, especially for the Sugar Server Kit usecase (up to 1K users),
* jabber server should be simply initially configured and work in unmaintained mode as long as possible.
+
* jabber server should be simple to initially configure, and work in an unmaintained mode as long as possible.
  
 
== Plugins ==
 
== Plugins ==
  
These plugins are tested against Prosody 0.8.2 version.
+
These plugins are tested against the Prosody 0.8.2 version.
  
 
=== mod_sugar_roster ===
 
=== mod_sugar_roster ===
  
Provides global roster when every user sees all registered accounts.
+
Provides a global roster, where every user sees all registered accounts.
  
 
=== mod_sugar_muc ===
 
=== mod_sugar_muc ===
  
The only difference in comparing with original {{Code|mod_muc}} plugin is a workaround for
+
The only difference compared with the original {{Code|mod_muc}} plugin is a workaround for the
 
[https://bugs.freedesktop.org/show_bug.cgi?id=37897 telepathy-gabble]/[https://code.google.com/p/lxmppd/issues/detail?id=254 Prosody] issue.
 
[https://bugs.freedesktop.org/show_bug.cgi?id=37897 telepathy-gabble]/[https://code.google.com/p/lxmppd/issues/detail?id=254 Prosody] issue.
  
This plugin should be used instead of {{Code|mod_muc}} until issue will be fixed in telepathy-gabble or in Prosody.
+
This plugin should be used instead of {{Code|mod_muc}} until the issue is fixed in telepathy-gabble or in Prosody.
  
 
=== mod_sugar_saslauth ===
 
=== mod_sugar_saslauth ===
  
Original {{Code|mod_saslauth}} plugin with preventing multiple auth from the same jid. See {{Code|sm_make_authenticated()}} function in its sources.
+
This is the original {{Code|mod_saslauth}} plugin with code preventing multiple authentication from the same jid. See the {{Code|sm_make_authenticated()}} function in the source.
  
This plugin should be used instead of {{Code|mod_saslauth}} until more lightweight implementation is found.
+
This plugin should be used instead of {{Code|mod_saslauth}} until a more lightweight implementation is found.
  
 
== Installation ==
 
== Installation ==
  
To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install {{Code|prosody-sugar}} package from Sugar Server Kit [http://download.sugarlabs.org/packages/Server:/ repository].
+
To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install the {{Code|prosody-sugar}} package from the Sugar Server Kit [http://download.sugarlabs.org/packages/Server:/ repository].
  
 
== Configuration ==
 
== Configuration ==
  
See sugar-server-templates [http://git.sugarlabs.org/server/templates/trees/master/etc/prosody sources] for configuration example.
+
See sugar-server-templates [http://git.sugarlabs.org/server/templates/trees/master/etc/prosody sources] for a configuration example.
  
 
== Getting involved ==
 
== Getting involved ==
Line 42: Line 42:
  
 
* Dynamically remove users from the sugar roster if they are offline for some reasonable time (for now, there is a patch to kick offline users from sugar roster asap to workaround buggy sugar-0.9x collab code).
 
* Dynamically remove users from the sugar roster if they are offline for some reasonable time (for now, there is a patch to kick offline users from sugar roster asap to workaround buggy sugar-0.9x collab code).
* Compare Prosody resources consumption with existed ejabberd.
+
* Compare Prosody resources consumption with existing ejabberd.
  
 
== Resources ==
 
== Resources ==

Revision as of 16:41, 23 August 2011

Purpose

These are reasons to use Prosody Jabber/XMPP server:

  • be humble for consuming memory and CPU resources, especially for the Sugar Server Kit usecase (up to 1K users),
  • jabber server should be simple to initially configure, and work in an unmaintained mode as long as possible.

Plugins

These plugins are tested against the Prosody 0.8.2 version.

mod_sugar_roster

Provides a global roster, where every user sees all registered accounts.

mod_sugar_muc

The only difference compared with the original mod_muc plugin is a workaround for the telepathy-gabble/Prosody issue.

This plugin should be used instead of mod_muc until the issue is fixed in telepathy-gabble or in Prosody.

mod_sugar_saslauth

This is the original mod_saslauth plugin with code preventing multiple authentication from the same jid. See the sm_make_authenticated() function in the source.

This plugin should be used instead of mod_saslauth until a more lightweight implementation is found.

Installation

To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install the prosody-sugar package from the Sugar Server Kit repository.

Configuration

See sugar-server-templates sources for a configuration example.

Getting involved

Please, read the HACKING file.

TODO

  • Dynamically remove users from the sugar roster if they are offline for some reasonable time (for now, there is a patch to kick offline users from sugar roster asap to workaround buggy sugar-0.9x collab code).
  • Compare Prosody resources consumption with existing ejabberd.

Resources