Difference between revisions of "Summer of Code 2015"

Jump to navigation Jump to search
Line 46: Line 46:
* '''Contact Details:''' Chatroom at swift@rooms.swift.im
* '''Contact Details:''' Chatroom at swift@rooms.swift.im


 
=== Openfire New Protocol support ===
=== Openfire Message Archive Management and Simple Communications Blocking support ===
The following two are two smallish features for one GSoC project
* '''Software Project:''' Openfire
* '''Software Project:''' Openfire
* '''Software URL:''' https://igniterealtime.org/projects/openfire/index.jsp
* '''Software URL:''' https://igniterealtime.org/projects/openfire/index.jsp
* '''Software VCS URL:''' https://github.com/igniterealtime/Openfire
* '''Software VCS URL:''' https://github.com/igniterealtime/Openfire
* '''Software Description:''' Openfire is an XMPP server. It is configured through a web-based admin interface and used in enterprise, military, and government environments.
* '''Software Description:''' Openfire is an XMPP server. It is configured through a web-based admin interface and used in enterprise, military, and government environments.
* '''Brief explanation:''' Server-side message archiving allows a user's client to query the server for their previous messages. Openfire has supported the older, and more complex, XEP-0136 standard for Archiving for many years, but more modern clients have tended to use XEP-0313, also known as MAM. MAM is a small subset of functionality from XEP-0136, and as such the storage etc should be largely handled already.
* '''Brief explanation:''' As one of the oldest currently deployed servers, Openfire lacks support for the newer protocols. This project aims to add new protocol support to existing infrastructure; this will modernize Openfire's capabilities in three key ways:
* '''Expected results:''' XEP-0313 support as pull request on github.
** Server-side message archiving allows a user's client to query the server for their previous messages. Openfire has supported the older, and more complex, XEP-0136 standard for Archiving for many years, but more modern clients have tended to use XEP-0313, also known as MAM. MAM is a small subset of functionality from XEP-0136, and as such the storage etc should be largely handled already.
** In addition, MAM requests may be directed to a XEP-0045 chatroom; again, Openfire already stores MUC archives in the database, so querying these should be possible. MAM support for chatrooms is considered relatively bleeding-edge support, so testing will be a challenge.
** Finally, Simple Communication Blocking, XEP-0191 presents a simpler blocking interface than the older XEP-0019 which is supported by Openfire. Again, the blocking infrastructure already exists, though in this case it may be simpler to avoid the reuse.
* '''Expected results:''' Each item should be presented as a pull request on GitHub, ready for merge, with tests where appropriate.
* '''Knowledge Prerequisite:''' Reasonable knowledge of Git, Java and XMPP. Communicating with the team and the XSF Standards SIG will be essential.
* '''Knowledge Prerequisite:''' Reasonable knowledge of Git, Java and XMPP. Communicating with the team and the XSF Standards SIG will be essential.
* '''Difficulty:''' Easy
* '''Difficulty:''' Easy