Difference between revisions of "Platform Team/Prosody"
(14 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
== Purpose == | == Purpose == | ||
− | + | These are reasons to use Prosody Jabber/XMPP server: | |
− | * be humble for consuming memory and CPU resources, especially for Sugar Server 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 | + | * 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 | + | Provides a global roster, where every user sees all registered accounts. |
− | === | + | === mod_sugar_pep === |
− | + | In difference with the original {{Code|mod_pep}} plugin, {{Code|mod_sugar_pep}} allows all buddies from the sugar roster to get all notifications, even without proper subscriptions. This plugin seems to be a workaround, because subscription should be done on the client side, but that doesn't happen. The affected use case can be reproduced in the Glucose-0.88 (Dextrose-2) environment: | |
− | |||
− | + | # Clean up {{Code|data/}} directory; | |
+ | # Start XO #1; | ||
+ | # Start XO #2; | ||
+ | # Create and share activity instance on XO #2; | ||
+ | # Neighborhood view on XO #1 doesn't show shared activity; | ||
+ | # Sharing activity on XO #1, is visible from XO #2. | ||
− | + | In over words, XO #1 is not subscribed to PEP notifications from XO #2. | |
− | + | === mod_sugar_muc === | |
+ | |||
+ | 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. | ||
− | This plugin should be used instead of {{Code| | + | This plugin should be used instead of {{Code|mod_muc}} until the issue is fixed in telepathy-gabble or in Prosody. |
== Installation == | == Installation == | ||
− | To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install {{Code|prosody-sugar}} package from | + | To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install the {{Code|prosody-sugar}} package from the [[Sweets Distribution]] [http://download.sugarlabs.org/packages/SweetsDistribution/ repository]. |
== Configuration == | == Configuration == | ||
− | See sugar-server-templates [http://git.sugarlabs.org/server/templates/trees/master/ | + | See sugar-server-templates [http://git.sugarlabs.org/server/templates/trees/master/mace/prosody/prosody.d sources] for a configuration example. |
== Getting involved == | == Getting involved == | ||
− | + | * [http://bugs.sugarlabs.org/newticket?component=sugar-server-kit Report] on bugs. | |
+ | * Read the [http://git.sugarlabs.org/server/prosody-sugar/blobs/master/HACKING HACKING] file to know how to contribute with code. | ||
=== TODO === | === TODO === | ||
− | + | * Compare Prosody resources consumption with existing ejabberd. | |
− | * Compare Prosody resources consumption with | ||
== Resources == | == Resources == | ||
Line 49: | Line 56: | ||
* Prosody [https://github.com/bjc/prosody sources]. | * Prosody [https://github.com/bjc/prosody sources]. | ||
* Prosody Sugar plugins [http://git.sugarlabs.org/server/prosody-sugar sources]. | * Prosody Sugar plugins [http://git.sugarlabs.org/server/prosody-sugar sources]. | ||
− | * [http://download.sugarlabs.org/packages/ | + | * [http://download.sugarlabs.org/packages/SweetsDistribution/ Packages] with Prosody Sugar plugins. |
Latest revision as of 04:37, 28 April 2014
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_pep
In difference with the original mod_pep
plugin, mod_sugar_pep
allows all buddies from the sugar roster to get all notifications, even without proper subscriptions. This plugin seems to be a workaround, because subscription should be done on the client side, but that doesn't happen. The affected use case can be reproduced in the Glucose-0.88 (Dextrose-2) environment:
- Clean up
data/
directory; - Start XO #1;
- Start XO #2;
- Create and share activity instance on XO #2;
- Neighborhood view on XO #1 doesn't show shared activity;
- Sharing activity on XO #1, is visible from XO #2.
In over words, XO #1 is not subscribed to PEP notifications from XO #2.
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.
Installation
To reuse sugar plugins, copy them to the directory with Prosody plugins. Or, install the prosody-sugar
package from the Sweets Distribution repository.
Configuration
See sugar-server-templates sources for a configuration example.
Getting involved
TODO
- Compare Prosody resources consumption with existing ejabberd.