call_end

    • chevron_right

      Wait, did Movim just unlocked the global search feature in its chat messages? FACE SCREAMING IN FEAR Thanks to the powerful tsvector/tsquery #PostgreSQL feature (feature not available on MariaDB sorry PENSIVE FACE) you can now search messages by keywords in your history and directly load the conversation from the past MANTELPIECE CLOCK️ ! Just click on the search button or hit Ctrl + F to open the brand new search panel LEFT-POINTING MAGNIFYING GLASS The next version will be packed with plenty of awesome features for sure ROCKETSPARKLES #xmpp #movim #search #feature

      Timothée Jaussoin • pubsub.movim.eu / Movim • 6 August edit

    https://upload.movim.eu/files/9d94237298995552fa13436420195fbca436dce7/jI6b9Jf9Z7qM/chat_image.png
    • wifi_tethering open_in_new

      This post is public

      mov.im /community/pubsub.movim.eu/Movim/wait-did-movim-just-unlocked-the-global-search-featuresin-its-chat-messages-8AiZd1

    • favorite

      2 Like

      Poujol Rost, marzanna

    • 2 Comments

    • person

      6 August marzanna

      That's awesome!

    • 6 August Poujol Rost

      Oh, nice and useful!

    • chevron_right

      Here comes Movim 0.31, codename Kameny SPARKLES

      Timothée Jaussoin • pubsub.movim.eu / Movim • 24 July edit • 4 minutes

    This summer release is named after the U.S. gay rights pioneer Frank Kameny. He worked as an astronomer in the U.S. Army and was fired for being gay a few years later, in 2012 a Canadian amateur astronomer named an asteroid he discovered after him.

    Let's dive into all the exciting new features that you can find in this release.

    Simultaneous webcam and screen sharing 😄

    The multi-participant call project, funded by NLNet, is reaching a new milestone with the integration of the multi-track support in Movim.

    Until now, Movim was sending and receiving only two tracks, one audio and one video when initiating a call to the other participants. With this important improvement Movim is now able to handle several video tracks at the same time from a unique participant.

    GamerzCat is showing his skill at Genshin Impact

    With this technical improvement you can now share your webcam and screen at the same time with your contacts; this can be quite useful when doing a presentation with slides or streaming yourself when playing video games.

    The first step of the SFU support

    The integration of the multi-track support was not only done for this nice screen sharing feature, it is also the first step to have a multi-stream support with the upcoming SFU integration.

    When Movim calls the SFU (the part on the server that will take care of receiving all the audio and video-stream, mix them and and send them back to the other participants of the video call) it is able to handle two different modes:

    1. Mixed participants, where only one video stream is maintained and the SFU is taking care of choosing which participant of the call to show, or put them on a grid layout
    2. Simultaneous participants, where each participant streams (audio and video, and possiblity screen sharing) is sent in separate tracks and the client (here Movim) is taking care of displaying them in the prefered layout of the user (a grid, "current speaker in front",....). This second mode can be heavier in bandwidth but allow way more customization client-side.

    The two modes

    We are currently working with the ProcessOne team, that develop the ejabberd XMPP server, on the SFU integration and the standardization of our work in the XMPP protocol.

    Global chatroom search

    Movim now implements the XEP-0433: Extended Channel Search that replaces the historical non-standard implementation.

    The global chatroom search is now directly available in the general Search panel that was also redesigned to give you more compact and detailed results for any keywords you type. This search panel lets you discover articles, Communities, contacts, tags and now chatrooms using a unique text field.

    URL Resolver Worker 🚀

    URL resolving is an important feature that is now a must-have for all the modern chat and social platforms. When you're sharing or receiving a URL, this little feature will visit the page and give you a small preview of it even before you choose to visit the link.

    This version integrates a totally new shared worker, called the URL Resolver, that is taking care of resolving all the URLs that are shared on the Movim instance in a dynamic, non-blocking and concurrent way.

    When a URL was shared in a chatroom, if several of its members were connected on the same Movim instance, they used to ask Movim to resolve it all at the same time. This created some performance issues and could trigger a lot of useless requests on the server, especially when the URL was pointing to a heavy file for example.

    The worker is taking care of everything; if several users are asking to resolve the same URL it will put the others in a waiting list, do a unique query, and reply to all of them once the result is handled. On top of that he keep in memory for some time the resolved URLs to speed up even more some upcoming queries.

    To use it you have nothing to configure, just update and restart your Movim daemon and things will start to work automagically. 🪄

    Move the actions list in the Contact or Chatroom panel

    The actions panel

    XMPP services can offer some custom actions, most often for administrators or users or chatrooms. This list of actions used to be buried in the UI, a bit buggy and not available on mobile. It is now available directly in their related panel under the "Actions" tab.

    Adding pronouns support in the profile 🏳️‍🌈💕

    The RFC vCard4 now standardizes the Pronouns field. The field was added in the Movim profile settings and on the contacts page if filled.

    The pronouns field

    Quick switch between the one-to-one chats and chatrooms

    Movim chooses to display your one-to-one conversations and chatrooms in two different lists to prevent some confusion. But when you have a lot of discussions open it could be annoying to scroll again and again between the two lists to reach the unread discussions.

    Now when you click again on the Chat icon you can directly scroll between the two lists, quick and easy! 😸

    And as always you will find many other improvements here and there. Don't forget to update, share the good news around and enjoy!

    That's all, folks. 💖

    #xmpp #release #movim #nlnet #webrtc

    • chevron_right

      Here comes the new Movim release, Encke 0.30.1 SPARKLES

      Timothée Jaussoin • pubsub.movim.eu / Movim • 23 April • 1 minute

    Following last month's 0.30 Encke important upgrade here is the first bug-fix release!

    What's new?

    Animated pictures support in the image proxy

    Movim is proxying all the pictures to recompress and cache them along the way (the cache needs to be configured in your web server, see the dedicated documentation for that).

    For animated GIFs, it used to only take the first frame and compress it in WebP, like for all the other pictures. Now Movim tries to turn it into an animated WebP!

    The Picture Proxy was also refactored to handle some cases with some buggy picture URLs.

    New Avatar and Banner Configuration Panel

    The new panel

    The avatar and banner configuration panel was redesigned to give you a nice overview of your final profile page.

    XEP-0392: Consistent Color Generation support! 🎨

    The internal color palette handling was refactored and slightly adjusted to integrate better with the Accent Color feature introduced in 0.30. A few new colors were added along the way.

    More colors to customize your Movim UI!

    Movim is now implementing XEP-0392: Consistent Color Generation. This means that the same user or content will have the same colors on all your different XMPP clients. ✨

    Slight adjustment of the ChatroomPings service

    Movim is implementing XEP-0410: MUC Self-Ping (Schrödinger's Chat) to ensure that you are still connected to your chatrooms even if there is no activity in them. The ping-pong system was a bit too sensitive and could declare a disconnection in some cases; the timeout was adjusted to prevent most of those unfortunate disconnections from happening.

    Dropping MySQL support

    Movim had "MySQL" and PostgreSQL support for a while already. The original MySQL database was forked as MariaDB and both started to evolve very differently the past few years. MariaDB finally became the "default" database in most of the Linux distributions.

    The two databases were always considered as "flavors" until now, but only MariaDB was extensively tested with PostgreSQL during development.

    It seems that the now MySQL DB is not compatible with Movim anymore and will require very specific support to fix all the migrations and some queries that are not working anymore on it.

    It was therefore decided to only keep the PostgreSQL and MariaDB support, PostgreSQL still being the (strongly) recommended one.

    What's next?

    Going back to the multi-participant calls project, lots of exciting things to do! Stay tuned. ☺️

    That's all folks!

    #movim #release #xmpp #features #database #colors #mysql

    • chevron_right

      Movim is officially dropping support for MySQL WARNING SIGN️ It is too difficult to maintain compatibility with all the quirks and specificity of this database PENSIVE FACE MySQL was already broken for a while (migrations not running, broken queries). Don't worry we are still fully compatible with PostgreSQL (that is the recommended one) and MariaDB. You can find those two databases in all the major distributions SMILING FACE WITH SMILING EYES This will greatly simplify and streamline the development of the project SPARKLES #movim #migration #postgresql #mariadb #mysql #database

      Timothée Jaussoin • pubsub.movim.eu / Movim • 22 April

    • wifi_tethering open_in_new

      This post is public

      mov.im /community/pubsub.movim.eu/Movim/movim-is-officially-dropping-support-for-mysql-YPeSEc

    • favorite

      5 Like

      Poujol Rost, cptbichez, povoq, marzanna, jedace07

    • 3 Comments

    • person

      22 April projectmoon

      Aren't MySQL and MariaDB supposed to be completely compatible? Or did they drift that far apart?

    • 22 April Timothée Jaussoin

      The answer is in one of your questions :p

    • 23 April Nicoco

      Deprecating shit that is a maintenance burden? Hell yeah.

    • chevron_right

      Good news everyone, Movim 0.30 Encke is there SPARKLES

      Timothée Jaussoin • pubsub.movim.eu / Movim • 4 April • 4 minutes • 3 visibility

    Only a few months after the previous version here comes Movim 0.30, codename Encke ☄️

    This release is actually way bigger than you might think! Indeed, during half a year a lot of work was poured into the part II of the Movim Live project that has been the biggest evolution in Movim for many years. This side project was finally merged and stabilized in the main branch and we are proud to unveil it to you 🤩.

    Movim Live, Part II

    Funded by NLNet, the Movim Live project's aim is to bring a modern and complete stack of video-call features to Movim and to create a strong alternative to the other proprietary and centralized platforms.

    NLNet Logo

    The Part I goal was to modernize the existing one-to-call call stack. Part II was to bring multi-participant calls, and we did it!

    How was it done?

    Movim is now implementing XEP-0272: Multiparty Jingle (Muji) combined with XEP-0482: Call Invites. The first XMPP extension, called Muji, allows a user to join a temporary chatroom and initiate an audio or video call with any of the participants inside it. The second one allows this user to be invited or invite contacts to join this "Muji Chatroom".

    Another client is already implementing those two XEPs, Dino, and it's actually the first time that we have two clients on totally different stacks (one is a desktop client, the other one a web application) that can do multi-participant calls on a standard protocol.

    How can I create a group call in Movim?

    The flow is quite close to a one-to-one call, except that you start the call in one of your group chats.

    The Muji Lobby

    The group call will then appear in your chatroom list, similar to what you can find on Discord. The other participants will then get an invitation and will be able to join the group call once their camera and microphone are set up correctly.

    The group-call status

    What can I do in a group call?

    Once you're in, Movim offers a couple of nice features to enjoy the call.

    A group call on mobile with the grid view

    You can toggle between the grid view and the "active-speaker" view (where the actively speaking person is put in front). When using the grid view, the speaking person's microphone is slightly bigger and blinking in green.

    The existing screen-sharing feature has also been ported to group calls, allowing you to share your screen with the others. More work will be done on the part to allow you to stream your screen and webcam simultaneously and use Movim as a nice stream-gaming platform or live-conference tool in the future ✨.

    A lot of work was also spent on ensuring a proper integration of the call in the user interface and the user flows. When you're in the chatroom, the group call is integrated into the chat view, and when you leave the discussion, it moves automatically in the corner. You can also put the group call in full screen at any time.

    And as always, you can toggle your webcam and microphone off any time.

    Movim Live, Part III

    So what's next? In the upcoming and last part Movim is actively working with the ProcessOne team on a new set of XMPP extensions to bring massively scalable group calls in XMPP.

    The current Muji flow is to initiate a one-to-one call with each of the Muji call participants, as you can see it doesn't scale that much. An SFU, or Selective Forwarding Unit allows you to call a specialized server, send your video and audio streams and receive the other participants streams in return.

    This should require standardizing two new XEPs:

    • One to allow declaring an SFU server in a Muji Call
    • One to allow chatrooms to have permanent call rooms to join

    The current flow is an "invite-based" one; this means that once everyone leaves the group call, it is automatically destroyed. We would like to allow chatroom admins to create one or several "call rooms," name them, and allow their users to join and leave the calls at their convenience. This will bring a more modern experience and bring many new ways of interacting with audio and video calls in XMPP.

    Hopefully this Part III should be delivered in the upcoming months; stay tuned!

    What else?

    The 0.30 is also bringing some other exciting features 🤩.

    The reactions are now displayed in the detailed message view.

    The detailed message view

    Some parts of the UI were modernized and simplified, such as the emoji picker view or the navigation bars.

    Movim is now supporting Unicode 15.1 with plenty of new emojis to use 🥳.

    When one of your contacts is publishing a new Story his avatar will change, allowing you to easily open it.

    The avatar story status

    The Movim UI, and especially color management, was also deeply refactorized and simplified. The Light and Dark modes are better looking and an exciting Accent Color feature is now allowing you to customize your Movim even more 🎨.

    Light mode in purple

    Dark mode in green

    See you soon!

    So that's all folks ✨.

    We hope that you'll really enjoy all those new features. If you're a server admin we invite you to add your server to join.movim.eu and join the federation.

    We would also be really pleased if you share Movim around, invite your friends to join, and talk about it. Movim can be a really nice open-source, federated and standard alternative now. Let's grow the community ☺️!

    Thanks again to all the contributors, translators, and other bug finders that allowed this exciting version to be launched 💕.

    See you next time 😘.

    #movim #release #xmpp #nlnet #videoconference #groupcall

    • wifi_tethering open_in_new

      This post is public

      mov.im /community/pubsub.movim.eu/Movim/good-news-everyone-movim-0-30-encke-is-there-xMvYPr

    • favorite

      8 Like

      arrhythmia, povoq, blue, roughnecks, jedace07, jeffmcneill, samuel, marzanna

    • 2 Comments

    • person

      4 April arrhythmia

      Movim is a fantastic piece of software and the consistent progress is very much appreciated! <3

    • person

      4 April jedace07

      This is a really nice update. It addresses (imo) one of the few shortcomings of free software chat programs, namely the basic calling capabilities, thus also reducing the need for proprietary VoIP programs. This further polishes XMPP, making it infinitely more accessible to normal people. Keep up the good work!

    • chevron_right

      Today Movim just reached 10K commits PARTY POPPER, and this year we will celebrate the 15th anniversary of the project BIRTHDAY CAKE FACE WITH PARTY HORN AND PARTY HAT The upcoming 0.30 will also be a huge milestone with plenty of exciting features, stay tuned SPARKLES #milestone #release #birthday #anniversary #xmpp #movim

      Timothée Jaussoin • pubsub.movim.eu / Movim • 27 March edit

    https://upload.movim.eu/files/9d94237298995552fa13436420195fbca436dce7/44ZmcXgsRiTt/post_image.png
    • chevron_right

      Movim 0.29.2 is here PUBLIC ADDRESS LOUDSPEAKER

      Timothée Jaussoin • pubsub.movim.eu / Movim • 17 February, 2025 edit • 1 minute

    In this #release you'll find some important fixes and improvements; let's have a look. 😉

    Set minimum PHP version to PHP 8.2

    This change was initially planned for the next major version but some dependency issues forced me to raise the minimum PHP version required by #Movim to 8.2. PHP 8.1 was already in EOL anyway.

    Fixes and improvements in file upload

    The file upload code was slightly refactored. It fixes a crash when the filename was too long (the filename is then shortened and a hash is added at the end).

    When uploading a file from Movim their name is also prefixed with post_, chat_ and story_ regarding from which part of the UI they are sent. This feature was requested many times by the admins to allow them to organize and expire them properly (for example after 24h for Stories files, unlimited for Post files).

    Fixes Pubsub ordering

    ejabberd and Prosody don't return the requested #Pubsub items the same way, most recent first for ejabberd and earliest first for Prosody. The XMPP protocol doesn't specify any default order so Movim is now automatically checking the order based on the articles publication time.

    Reconcile the nullable state in some tables

    It seems that a small change in the internal Movim database library (Eloquent) changed the behavior of some migrations along the way, this version reconcile those differences (some SQL columns were not nullable as they should).

    Update fabiang/sasl to fix Update of the SASL SCRAM Downgrade protection XEP #17

    Movim is now integrating the upgrade of the XEP-0474: SASL SCRAM Downgrade Protection XEP and the proper integration of the RFC 5802. This solved the connection issue on some #XMPP servers and fixed a risk of attack in the #SASL stack.

    What's next?

    Hopefully the next version will be a 0.30 and will integrate some pretty big changes, especially on the video-conferencing part. Stay tuned!

    That's all folks ✨

    • chevron_right

      Movim 0.29.1 is out, time to upgrade! SPARKLES

      Timothée Jaussoin • pubsub.movim.eu / Movim • 26 January, 2025 • 1 minute

    Here comes the first bugfix release of the year 🎉

    The 0.29.1 comes with a more polished and improved Stories feature, database fixes as well as some preparatory work for the PHP 8.4 version.

    This release will be the last one to support PHP 8.1. PHP 8.2 and above will then be required for Movim 0.30.

    Polishing the Stories feature

    In the 0.29 Movim introduced the Stories feature, it is even now showcased on the main website.

    This release fixes a few quirks introduced in the last version:

    • When viewing Stories between different browsers on the same connected account the "viewed" synchronization is now working properly.
    • It is now possible to publish Stories without having a camera enabled (or no camera at all), you'll then be able to just pick an image file from your device gallery.
    • The play/pause buggy feature was fixed with a new timer (which was also used in the Chat dictaphone fixing some recording timer problems).
    • Close the Stories viewer using the previous button or Esc key.

    Preliminary work on PHP 8.4

    The brand new PHP 8.4 release introduces a lot of interesting new features... but also deprecates some old syntaxes and enforces strong typing for some extensions.

    Most of the errors were fixed in the Movim code but the dependencies need to be updated to ensure proper compatibility with this version, this update will drop the PHP 8.1 version (that is now in end of life). So we are suggesting to start to update to at least PHP 8.2 to prepare for the upcoming release.

    Database fixes

    The most important fixes of this release are related to the database. A serious issue with chatroom presences that was preventing Movim to handle some of them was fixed (issue #1386). This fix leads to discover a more serious issue that was there for more than two years (!) and that causes some presences to be deleted from the cache unexpectedly (issue #1357).

    Those changes come with some database migrations, don't forget to migrate when updating Movim!

    The translations were also updated, a big thanks to all the translators 🫶

    That's all folks! ✨

    #movim #release #xmpp #stories #database #sql