We happened to do an internal all hands on deck on this plugin in the last two weeks, here is what happened:
LLM Summary of last two weeks in Resenha
Features
- Persistent in-room chat ā link a voice room to a Discourse chat channel; each session opens a real thread with full reactions, edits, and uploads. Rolls over to a new thread after a configurable idle timeout.
- Screen share audio ā tab and system audio now travel with screen shares over a dedicated track, separate from the mic. Respects per-user volume/mute/deafen.
- Voice settings modal ā pick input/output devices, see a live mic level meter, and set a noise gate threshold. Preferences persist per device and apply mid-call without renegotiation.
- Resizable docked widget ā drag-to-resize via a top-left handle, anchored bottom-right, size persisted. New extra-minimized state shows only Expand + Leave buttons. Video streams correctly in widget mode.
UX
- Sidebar participant status icons (mute/deafen/screenshare/camera/PTT) now all appear together on the right edge; speaking wave animates over the avatar.
- Voice rooms now visible in the full-screen chat sidebar.
prioritize_username_in_uxsite setting respected in video tiles and anonymous rooms block.- Widget z-index fixed for mobile menus; SE resize handle restored; dock button got a proper
ariaLabel.
Fixes
- Video grid layout stuck at fullscreen dimensions after exiting fullscreen.
- Sidebar participant counts drifting for non-participant users (broadcast targeting + Redis + client cleanup).
- Audio cues broken on Android (AudioContext now resumed before playback; shared singleton avoids context limit).
- Remote video not appearing when a peer starts publishing after initial handshake.
- Stale participant broadcast targeting.
If someone is using this, Iām happy to hear feedback on the recent changes.