WorkAdventure 1.30 – PWA installer and more

WorkAdventure 1.30.0 is now available! In the continuity of 1.29.x, this release includes life-improving features and bug fixes. Read below for the full list of changes.
New Features
Install WorkAdventure as a Progressive Web App (PWA) screen
WorkAdventure now has a dedicated screen to guide users through the installation of WorkAdventure as a Progressive Web App (PWA), both on computer and phones. This allows users to easily install WorkAdventure on their device and access it like a native app.

The ability to install WorkAdventure as a PWA has existed for many years, but it was not very discoverable. With this new screen, we hope to make it easier for users to take advantage of the PWA features.
Already connected warning message
If you try to join a map while you already have an active session in that map, you will now receive a warning message. This is useful to prevent users from accidentally opening multiple sessions of the same map, which can lead to confusion.

This is just a warning message. You can still choose to open a new session if you want to.
Scripting API improvements
You can now use the setStatus function in the scripting API to dynamically set the status of a user.
A big thank you to our new contributor @beingeek for implementing this feature.
Improvements
Messaging improvements
Particular attention has been given to improving the messaging experience in this release. The following improvements have been made:
- Better unread notifications counter on the chat icon
- Support for encrypted image rendering in Matrix rooms
- Better code block rendering in chat messages
Notify users when a map is deleted
When a map is deleted, all users currently in that map will now receive a notification informing them that the map has been deleted and that they will be disconnected.
Better detection of audio context state
When a browser loads a page, the page cannot play any sound until the user has interacted with the page. This is a security feature implemented by browsers to prevent unwanted sounds from playing without the user’s consent. For WorkAdventure, this can be a problem because we need to play sounds (for instance, when someone comes and see you) and we want to be able to do so even on startup.
The rules implemented by browsers are quite complex. For instance, PWAs are not impacted, and frequently visited pages are not impacted either.
In this release, we have improved our detection of the audio context state to better handle those cases and be able to play sounds as soon as possible. If we detect that your browser cannot play a sound on startup, and if you have not enabled desktop notifications, we will automatically put you in “Do not disturb” mode to prevent the other users from thinking that you are ignoring them. As soon as you interact with the page and the audio context is unlocked, you will be taken out of “Do not disturb” mode.
Installing WorkAdventure as a PWA is a great way to ensure that the audio context is unlocked on startup, so we highly recommend it!
Better detection of camera and microphone state
We now have a better detection of the camera and microphone state, including whether the user has granted permission to use them or not. This allows us to provide more accurate messages when something needs to be done to grant camera / microphone access.
In particular, we can now make a distinction between “You don’t have a microphone” and “Your microphone is not working because you have not granted permission to use it”. This should help users understand what they need to do to fix the issue.
Other improvements
A big number of improvements have been made in this release, including:
- Improved shading effect positioning when entering a meeting room
- Improved UI and UX in the participants menu and in the personal desk claiming process
- Improved path finding: the shortest path now avoids walking through private desks, meeting rooms, etc…
- Easier unblocking of blocked users
Code improvements
Minimum browser version update
WorkAdventure 1.30 targets more modern browsers. As a result, we have removed some legacy code and polyfills that were only necessary for older browsers. This has allowed us to simplify the codebase and improve performance.
We previously supported Safari iOS 15.0 and the new minimum version is now iOS 15.4+. In practice, this represents less than 0.05% of users so the impact should be minimal.
What’s next?
We are already working on the next release. Just like 1.30, it will include a wide range of quality-of-life improvements and bug fixes, including some highly requested features such as having more readable names when one zooms out. The noise cancellation feature, initially planned for 1.30, is still in the making and will be part of a future release.
Ready to create your virtual world?
Set up your WorkAdventure space for free, no credit card required.