-
chevron_right
Monal IM: 4.9.1 with reg fix
Anu · news.movim.eu / PlanetJabber · Wednesday, 13 January, 2021 - 15:46
Pushing out an update with fixed registration
people 159 subscribers · Planet Jabber is an aggregate of personal weblogs of Jabber/XMPP developers and contributors.
Monal IM: 4.9.1 with reg fix
Anu · news.movim.eu / PlanetJabber · Wednesday, 13 January, 2021 - 15:46
Pushing out an update with fixed registration
Monal IM: The end of WhatsApp is an opportunity
Anu · news.movim.eu / PlanetJabber · Friday, 8 January, 2021 - 15:20 · 2 minutes
WhatsApp as we have all known it will end as a service on Feb 8, 2021. Users around the world have been presented with a screen requiring them to accept the sharing of data with “Facebook company products” or have their accounts disabled.
The new requirement to use WhatsAppThis is Facebook reneging on the promises of privacy they made when they acquired the service nearly a decade ago. For those of us who value privacy this is the final nail in the coffin. While I avoid Facebook like the plague, knowing there was a separation was one of the reasons I made an exception for WhatsApp. Partially, this was also to learn and understand what users may expect from a client. Monal today has a UI that is somewhere between iMessage and WhatsApp as a result.
I, like many others have rejected the change in terms of service. I encourage you to do so as well. I don’t need to go into what kind of toxic company Facebook is, you can go to any news site and see that. Think if you want to associate with them and remember there are other options.
M any people have gone to Signal, which is an excellent app. It is backed by some of the founders of WhatsApp and should feel very familiar to family and friends who used WhatsApp and need to flee Facebook. Signal is open source, secure, using the same cryptography code found in WhatsApp ans xmpp. The centralized nature of signal is also one of its weaknesses — the other being it’s dependency on the insecure sms network. It may seem odd to see an xmpp blog advocate for signal but you should use what your contacts are using esp. if most people you know have already decided to go there. While checking out signal, I encourage you to also encourage people to try xmpp. It has come a long way in the past 20 years and we have worked to modernize the protocol and clients. It you haven’t tried a modern client (and are expecting something like Gaim), it may surprise you.
This should also serve as a reminder of why you may want to run your own server if you know how. You can control your own destiny and wouldn’t be beholden to the good graces of the likes of Facebook for something as basic communication. We have one month before the shutoff, I suggest reaching out to your friends and family, educating and moving off WhatsApp ASAP while you can still reach them on WhatsApp.
Kaidan: Kaidan will receive a grant for end-to-end encryption
Kaidan · news.movim.eu / PlanetJabber · Thursday, 7 January, 2021 - 13:00 · 2 minutes
Kaidan will be supported by NLnet for adding end-to-end encryption support.We will implement the latest version of the encryption protocol OMEMO and extend it by an easy trust management to solve issues other OMEMO-capable chat apps suffer from.
End-to-end encryption ensures that sent data can only be read by the intended recipients.Signing is used to ensure that received data comes from the intended sender and was not modified in transit.To read encrypted data, it has to be decrypted before.
Keys are used to encrypt and decrypt data.Those keys are like very strong passwords.If the data is encrypted and decrypted with the same key, the procedure is called symmetric encryption.
OMEMO enables the users to chat end-to-end encrypted.It is an asymmetric encryption protocol.That means, different keys are used to encrypt and decrypt the data.Each communication partner has a private and a public key.A private key is used to sign and decrypt data.A public key is used to encrypt data and verify its signature.
The latest version of OMEMO uses Stanza Content Encryption .That means, in addition to messages and files such as images, it is now possible to end-to-end encrypt metadata as well.Such metadata could be e.g. the indicator whether someone is currently composing a message.Kaidan will use Chat State Notifications for that purpose and encrypt them with OMEMO.Furthermore, many features already supported, like delivery receipts and message correction, are going to be automatically end-to-end encrypted.
When a user starts an encrypted chat, OMEMO retrieves the recipient’s public key automatically.Since there is no secure channel yet, that key might not belong to the intended recipient but to an attacker controlling the infrastructure in between. Trust management is the process of deciding whether a retrieved public key should be trusted and thus used for encryption and signature verification. Trust Messages in combination with Automatic Trust Management simplify the trust management.
Nowadays, it is possible to use OMEMO relatively hassle-free with several XMPP clients but the trust management is still complicated.It becomes even more difficult when someone uses a new device.With Automatic Trust Management, Kaidan will be the first XMPP chat app introducing an easy trust management.It automates as much as possible while keeping the same security level as with a completely manual trust management.
As far as we know, there are no other implementations of Stanza Content Encryption and Automatic Trust Management in use at the moment.We will take the first steps and hope that other XMPP developers will follow our lead.XMPP client developers interested in implementing an easy trust management should have a look at ATM’s project site .It contains all relevant links, pseudocode and test cases.
Kaidan’s goal is to minimize the effort for establishing free and secure communication , thus lowering the entry barrier to strong encryption mechanisms for the average user.NLnet and a couple of other organizations support us via the NGI Zero PET fund to achieve that.The money is provided by the European Commission.That is a great example (like the previous support by the DBJR (German Federal Youth Council) ) of how public money can be used to develop free software .
There are many other interesting projects currently funded by NLnet .We are glad that Kaidan is one of them!
Ignite Realtime Blog: Openfire 4.6.1 is released
guus · news.movim.eu / PlanetJabber · Wednesday, 6 January, 2021 - 13:35 · 1 minute
The Ignite Realtime Community is pleased to announce the availability of version 4.6.1 of it’s Realtime communications server Openfire!
This version is largely a bugfix release. It primarily focusses on improving multi-user chat and pubsub functionality when running an Openfire cluster, but also includes other improvements, such as LDAP/AD preformance enhancements. You can find all changes in the changelog , which is denoting 33 issues resolved since 4.6.0.
We are again grateful for all of the support that was provided to us, in no small amount through our community that is active in our chatroom and on our community forums !
We invite you to give this release a try. The process of upgrading from an earlier version is as lightweight as ever. It is outlined in the Openfire upgrade guide . Please note that, if desired, a significant amount of professional partners is available that can provide commercial support for upgrading, customization, or other services.
We’re always happy to hear about your experiences, good or bad! Please consider dropping a note in the community forums or hang out with us in our web support groupchat .
Download artifacts are available here with the following sha1sum values:
8fe60c2ac0be32f497648a6f129dec89ec858533 openfire-4.6.1-1.i686.rpmc7e949d21aecb488617c8effe31f5831d25ed912 openfire-4.6.1-1.noarch.rpma28e01c896d40f756a03c2e7cf8ec48ef45af782 openfire-4.6.1-1.x86_64.rpm6504c08821415e8e053ca361f78e899f6c9ddf7e openfire_4.6.1_all.deb2d76d5ead560b49dda95cf9305e9d47f67ef2349 openfire_4_6_1_bundledJRE.exe1423d1aa5ca6d9e4169b5f775bc11b5f6b4fcf8c openfire_4_6_1_bundledJRE_x64.exea4c7f7d4bd82d2eecf6791befcc8285d172740ad openfire_4_6_1.dmg627d062dec364bc2f4e6a8b54d171c599525edde openfire_4_6_1.exe84915336194c72622d96b9a0a20d9418397b93d6 openfire_4_6_1.tar.gz89c6cf5ff54718eefee21292dc63f304ed8d6e2c openfire_4_6_1_x64.exe8be2dcb848cd501f20bff285ffa68a824d5f7d32 openfire_4_6_1.zip602f9b6dc2f3b95cb25decf1026196d9b4a4c348 openfire_src_4_6_1.tar.gz8354eb3fd548221bd76f5d5096766e04bbed36be openfire_src_4_6_1.zip
Thank you for using Openfire!
For other release announcements and news follow us on Twitter
1 post - 1 participant
Ignite Realtime Blog: Monitoring Openfire plugin v2.2.0 released
guus · news.movim.eu / PlanetJabber · Wednesday, 6 January, 2021 - 12:40
The Ignite Realtime community is happy to announce the release of version 2.2.0 of the Monitoring plugin, which provides support for chat archiving and server statistics to Openfire.
This update includes a good deal of improvements and bug fixes. Notable are:
Starting with this release, the message archive functionality is fully based on the database tables maintained by this plugin again (in previous versions, the message archive for multi-user chat rooms were based on database tables managed by Openfire itself). This change might different identifiers to be used for messages in MUC archives, which might affect clients that have previously interacted with earlier versions of this plugin. Our tests with various commonly-used clients did not show any relevant functional issues stemming from this.
Your instance of Openfire should automatically display the availability of the update. Alternatively, you can download the new release of the plugin at the Monitoring plugin’s archive page .
For other release announcements and news follow us on Twitter
1 post - 1 participant
Jérôme Poisson: SàT progress note 2020-W53
goffi · news.movim.eu / PlanetJabber · Sunday, 3 January, 2021 - 17:09 · 6 minutes
Happy New Year!
It's been a long time since the last progress note, and things have been moving.
First my apologizes for not releasing SàT 0.8 at the end of 2020 like I was expecting: I'm willing to polish some features before releasing, notably in Libervia (web frontend), and I thought that it was best to wait a few more months. I'll try to release more often in the future.
Let's have a high level overview of what has been done since last progress note.
I've been working on Libervia UX for invitations. SàT implements an invitation system to easily share an activity (photo album, event, or anything). Here "sharing" means sending a notification, and giving access to somebody. The invitation can be sent to somebody in your contact list by entering some letter of his/her name, somebody external by providing the full jid, or somebody without XMPP account by sending an invitation by email. It's only a few click, and access can be removed just by clicking on the deletion cross. I believe that this is a major feature to use easily this as a familial social network.
You're probably wondering what Docker has to do with an XMPP client (installation put aside). Well, the are several reasons why it's really useful, the first one is to integrate third party software into frontends like Libervia.
As you may know, we are dogfooding most of the development tools with SàT and XMPP (things like tickets/bugs reports are managed with it). So far, there was no translation application used, and translations were done using desktop apps like Gtranslator , which is good but not so easy to install for contributors. With the new Docker integration, Weblate can be added in Libervia with just the following setting in sat.conf
:
menu_extra_json=[ "sat-app:weblate" ]
With this simple setting, a new "translate" menu will appear in Libervia and Weblate will be there:
The application needs to be integrated with SàT, this is done in a YAML file : here the official Weblate Docker image is used, and SàT settings are re-used when possible to make the process as easy as possible (for instance the configuration to send email is re-used automatically). Note that Docker is currently used, but the plugin managing this is made in such a way that other tools can be used in the future (maybe LXC, systemd-nspawn, Python's virtual envs or something else).
For now it is "weak" integration, Weblate has its own accounts/login. If one day we have the resources, it would be great to work on deeper integration with single log-in (and maybe contributing XMPP login upstream), and a theme adapted to Libervia's one.
An other application I plan to integrate this way is Jitsi Meet : at the moment I have not the time to work on video conference, and Jitsi is really good, handles multi users calls, and uses XMPP too. Integration of Jitsi is a good way to have video conferences quickly in Libervia, until it's possible to find the time to do a native implementation.
The second reason why Docker integration was useful is for end-to-end tests. Historically SàT has been tested with Twisted's trial tools, and there was a Buildbot installation. But with time and lack of resource, this has been unmaintained, and it would have been lot of work to put that back in shape.
Thus I've restarted fresh and I'm now using the popular pytest framework. I've decided to focus on end-to-end tests as it's a way to check the whole ecosystem (including SàT PubSub). For now, tests are done with "jp" (the CLI frontend) and Libervia. For the former the sh module is used with the help of pytest's fixtures , this way tests are really easy to write. For Libervia, I've gone with Helium which is a high level module to use Selenium . The only worry I have is that I'm not sure if Helium will be maintained on the long run, but it should not be a big deal to switch if necessary, and it makes some things easier (notably drag and drop simulation).
Above that there is a little script to make it easy to run the tests, with an option to launch a VNC viewer to follow Libervia tests in real time (check documentation for details). I have long term plan to integrate that in Libervia next the to the source code, in a way similar as what you may see on popular code forges (like Gitlab).
That was also the occasion to rework SàT and Libervia's Docker images . There is still some polishing and documentation to do, but it should be fine for the release.
One of the last major feature I wanted to implement before the release is Full-Text Search in PubSub. This is using the namespace specified in XEP-0431 and implementation is done in SàT PubSub (the generic PubSub component developed in parallel of SàT to be sure to have all needed features). You can see the result on this blog with the new "search" bar.
PostgreSQL's FTS engine is used, and it is possible to specify the language of the content. For instance if a blog is known to be in English, you can set the fts_language
setting of the node to english
. This is needed for improved results because it lets PostgreSQL use the right canonical form of the word. The canonical form of a word is a common root used for variations (like singular/plural, or verb conjugation). Thanks to this, the search will return articles which contain progress note
in this blog, even if you search for progresses
in plural form.
By default a generic
language is used (which correspond to PostgreSQL's simple dictionary ), which works with everything but has lower results.
The implementation has been thought to make it possible to override the language used per PubSub item (but it is not yet used). This will be useful for multilingual pubsub nodes like this blog (which is written in French and in English).
The neat thing with having that in PubSub is that it is now available out of the box for all PubSub based feature. So Full-Text Search is now also available in ticket handlers too (like SàT's bug tracker ).
For features like tickets handlers or merge requests, a SàT PubSub specific implementation has been initially done to manage "Node Schema", i.e. a way to attach a data form template to a node (to indicate how data are organised, and to reject invalid items).
After announcing the ticket feature years ago, I've got a message mentioning XEP-0346 which I've missed at the time. This XEP has the advantages to work without modification on a generic PubSub service. It is now implemented in SàT and SàT PubSub, and thus all features should work with any standard implementation of PubSub. SàT PubSub is still recommended though, as it implements features like Order-By or serial ids which improve user experience and are rare or nonexistent at the moment in other implementations.
I won't list all the things done since last progress note since there are too many. But in brief, I can tell that XEP-0353: Jingle Message Initiation has been implemented, this is useful to send a file using a bare jid and improves UX a lot, thumbnails of videos are generated (notably useful for photo album), a loading screen is now shown in Libervia to avoid unresponsive actions if JavaScript is not fully loaded, there are new jp commands, bug fixes, etc.
Anyway it's enough for this time, see you soon.
Monal IM: Mac 4.9 submitted and 2021
Anu · news.movim.eu / PlanetJabber · Thursday, 31 December, 2020 - 20:31
There were no show stopping issues with the last east beta and I have submitted Mac 4.9 to the App Store. The update should be available in a couple of days depending on app review times.
2020 has been a year of remarkable growth for this project thanks to the efforts of Thilo, Frederich and emus. We hope to release 5.0 with even more improvements in 2021
Happy new year!
Alexander Gnauck: MatriX vNext development update
gnauck · news.movim.eu / PlanetJabber · Wednesday, 30 December, 2020 - 17:05 · 1 minute
There has not been a major release of the MatriX XMPP library for some month. I am working hard on the next major update and want to give a small summary on whats coming.
There are some huge changes in the latest .NET releases. The effort to combine legacy .NET, Xamarin, MONO and netCore to one unified platform is super exciting.
With the current netStandard version of MatriX vNext there are still some issues sometimes when MONO based platforms like Xamarin or Unity are targeted. There are still many corner cases where MONO behaves different than .NET.
Updating to .NET 5 is an easy task, but at the same time I want to take the opportunity for a redesign of some internal components. And one of the major goals for the next release is support for WebAssembly projects with the Blazor framework. Blazor support is only possible with major changes in the networking stack and adding Websockets as a transport option.
Here is a small summary on what coming with the next major MatriX vNext release
I made huge progress and have working tests client for Blazor WebAssembly. But the code still needs some cleanup and more integration and end 2 end tests.The source code and beta packages should be available on GitHub soon.
Contact me when you are interested and need early access.
Stay tuned…
Monal IM: New App Icon
Thilo · news.movim.eu / PlanetJabber · Tuesday, 29 December, 2020 - 06:58