Welcome to the XMPP newsletter covering the month of February 2021.
Many projects and their efforts in the XMPP community are a result of people’s voluntary work. If you are happy with the services and software you may be using, especially throughout the last year, please consider to say thanks or help these projects!
Interested in supporting the Newsletter team? Read more at the bottom! Other than that - enjoy reading!
Translations of the XMPP Newsletter will be released here (with some delay):
- French on linuxfr.org and jabberfr.org.
- The German translation of the XMPP Newsletter for January 2021 is available at Anoxinon.
Berlin XMPP Meetup (remote): Monthly Meeting of XMPP Enthusiasts in Berlin - always 2nd Wednesday of every month.
Matthew Wild gave a talk about Products vs Protocols at FOSDEM 2021.
The French april.org community podcast (or on air on radio Cause Commune 93.1 FM and online) had a show on Jan 26 with Adrien Bourmault, Emmanuel Gil Peyrot and Nicolas Vérité about libre instant messaging. If you didn’t catch it live, the recording is out now (the interesting part starts at 17:30). A transcript is available as well [FR].
A quick introduction to XMPP (with Node.js and eJabberd) by Hussein Nasser. In this video he goes through XMPP architecture, explains how it works and then finallly shows how to spin up an XMPP chat server and connect to it via Node.js.
Snikket: Products vs Protocols: What Signal got right. This extended version of Matthew Wild’s recent FOSDEM talk explores the thinking behind Snikket, and what XMPP and decentralized protocols can learn from Signal’s success.
Rohan Kumar’s blog article about WhatsApp and the domestication of users has been making the rounds around the internet, it mentions XMPP and other decentralized solutions. It has been translated into several other languages too. There’s also follow up on Keeping platforms open that covers a bit of XMPP history.
In February 2021 the year of the Ox starts. At Berlin XMPP meetup, the new year was celebrated with an introducting talk about “XEP-0373: OpenPGP for XMPP” and “XEP-0374: OpenPGP for XMPP Instant Messaging” with a panel of experts, namely DebXWoody (implementer of OX in Profanity), defanor (implementer of OX in rexmpp), Florian (co-author of the OX standards), lovetox (implementer of OX for Gajim), and Paul (implementer of OX in Smack). While the presentations were not recorded the notes from the meeting are available for reading.
A tutorial on how to set up an XMPP server with Prosody [FR].
Sam Whited has re-published documentation on parsing and validating XMPP addresses (JIDs) as a blog post.
Thoughts on Decentralized forge: distributing the means of digital production covers a lot of protocols and tech, and XMPP is mentioned (OAuth and Salut-a-Toi).
Clients and applications
Conversations 2.9.7 has been released, adding the ability to select incoming call ringtone, fixing OpenPGP key ID discovery for OpenKeychain 5.6+, improving stability of RTP session establishment (calling), and more.
Gajim 1.3.0 and 1.3.1 have been released. Five months have passed since the release of Gajim 1.2.2. Many new features have been developed during this time, including a complete redesign of both Gajim’s Preferences window and configuration backend, an all new Profile window, support for Chat Markers, a new user interface for voice/video calls, and much more. As covered in February’s development news, February brought mostly bug fixes. The Profile window’s error handling has been improved, and selecting small images for an avatar should now work as expected. While fixing those bugs, Gajim’s team has been working on something big.
Kaidan 0.7 has been released: This release enables users to send files via drag and drop. Furthermore, it is now possible to see which chat client and operating system a contact is using.
Monal 5 Beta 1 has been released, which brings many improvements with OMEMO. While in Beta, the Monal developers are working on support for MUC, and a new file transfer user interface. Monal 5 will also support inline display of audio and video files. Push server stats from January reveal quite some activity around Monal. Monal developers also seek to redesign the logo, so if you are feeling creative, feel free to give them a hand before March 31.
Movim 0.19 - Ikeya is out! With a lot of performances improvements but also many new features such as GIF in chats, messages replies, community browsing redesign, and much more.
The PeerTube plugin livechat ships with Converse.js.
SiskinIM 6.3 has been released containing several fixes (clicking on links, crashes related to markdown formatting, sharing in public groups, issues with message corrections and group chat layout improvements).
Snikket’s February 2021 Server Release brings a fancy new web-based admin dashboard, allowing you to perform all kinds of management tasks. It also adds a simple portal for non-administrative users to log in and manage their account. Currently this contains a profile editor, and will grow to include other account settings, and data import/export. And there is more: Raspberry Pi and ARM support, and the introduction of user groups, known as “circles”.
Prosody 0.11.8 has been released. This release brings bugfixes, improvements to websocket performance (thanks to the Jitsi folks), and also fixes a security issue.
ejabberd 21.01 has been released, includes many improvements & bugfixes (e.g. STUN/TURN default blacklist, better systemd integration). Server admins can get the new version from the developers website as usual, and Debian users already can upgrade to the new version from
The Ignite Realtime community is happy to announce the release of version 0.8.0 of the Push Notification plugin for Openfire! This update fixes a problem that prevented certain clients (like Siskin) from successfully registering a push notification service.
Mellium v0.18.0 has been released, bringing with it refactored connection APIs, better server support, websockets, and the usual assortment of bug fixes and usability improvements. For the full list, see the changelog.
python-nbxmpp 2.0.1 and 2.0.2 have been released, both addressing multiple bugs.
Extensions and specifications
Developers and other standards experts from around the world collaborate on these extensions, developing new specifications for emerging practices, and refining existing ways of doing things. Proposed by anybody, the particularly successful ones end up as Final or Active - depending on their type - while others are carefully archived as Deferred. This life cycle is described in XEP-0001, which contains the formal and canonical definitions for the types, states, and processes. Read more about the standards process. Communication around Standards and Extensions happens in the Standards Mailing List (online archive).
The XEP development process starts by writing up an idea and submitting it to the XMPP Editor. Within two weeks, the Council decides whether to accept this proposal as an Experimental XEP.
- Implicit XMPP WebSocket Endpoints
- This document specifies implicit connection endpoints for XMPP over WebSocket (RFC 7395).
- Version 0.2.0 of XEP-0455 (Service Outage Status)
- This document defines an XMPP protocol extension that enables server administrators to communicate issues with the server to all users in a semantic manner.
If an experimental XEP is not updated for more than six months, it will be moved off Experimental to Deferred. If there is another update, it will put the XEP back onto Experimental.
- No XEPs deferred this month.
- Version 0.2.0 of XEP-0452 (MUC Mention Notifications)
- Require nickname registration for notifications to work (jcb)
Last calls are issued once everyone seems satisfied with the current XEP status. After the Council decides whether the XEP seems ready, the XMPP Editor issues a Last Call for comments. The feedback gathered during the Last Call help improving the XEP before returning it to the Council for advancement to Draft.
- No new Last Call this month.
- No Drafts this month.
Call for Experience
A Call For Experience - like a Last Call, is an explicit call for comments, but in this case it’s mostly directed at people who’ve implemented, and ideally deployed, the specification. The Council then votes to move it to Final.
- No Call for Experience this month.
This XMPP Newsletter is produced collaboratively by the community.
Thanks to wurstsalat3000, Sam Whited, pitchum, Licaon_Kter, jeybe and emus for their help in creating it!
Spread the news!
Please share the news on “social networks”:
Find and place job offers in the XMPP job board.
Also check out our RSS Feed!
Help us to build the newsletter
We started drafting in this simple pad in parallel to our efforts in the XSF Github repository. We are always happy to welcome contributors. Do not hesitate to join the discussion in our Comm-Team group chat (MUC) and thereby help us sustain this as a community effort.
You have a project and write about it? Please consider sharing your news or events here, and promote it to a large audience! Even if you can only spend a few minutes, these would already be helpful!
Tasks which need to be done on a regular basis are for example:
- Aggregation of news in the XMPP universe
- Short formulation of news and events
- Summary of the monthly communication on extensions (XEP)
- Review of the newsletter draft
- Preparation for media images
- Translations: especially German and Spanish
This newsletter is published under CC BY-SA license.