Skip to content

Packet mumcord nowplaying

Tobias Vorwachs edited this page Oct 26, 2026 · 1 revision

Part of the Plugin data protocol. Flow: Flow-Now-Playing.

Packet mumcord.nowplaying

Purpose. Shares the track the user is playing in their media player ("Now playing"). Only sent while the user has the setting on.

dataID mumcord.nowplaying
Encoding JSON object
Version sent / accepted 1 / 1 and higher (0 is dropped)
Sent to everyone on the server (except the sender)
Defined in crates/engine/src/now_playing/payload.rs

Official clients ignore it; they see a short "Artist - Title" line (with a note icon) in the user's comment instead.

Fields

All fields except v are optional.

Field Type Meaning
v integer Sent as 1.
title string Track title, at most 120 characters (MAX_TEXT). Missing title means "nothing playing".
artist string At most 120 characters.
album string At most 120 characters.
art string Cover image link, http or https only, at most 300 bytes (MAX_ART). Other links are dropped.
pos_ms integer Playback position in milliseconds at the time of ts.
dur_ms integer Track length in milliseconds; 0 or missing means unknown.
playing boolean true while playing, false while paused.
ts integer Sender's clock, Unix milliseconds.

Examples

{"v":1,"title":"Example Song","artist":"Example Artist","album":"Example Album","art":"https://covers.example.com/123.jpg","pos_ms":42000,"dur_ms":215000,"playing":true,"ts":1767225600000}

Stopped sharing or nothing playing:

{"v":1}

Version and limits

  • The sender keeps the payload under 1000 bytes by dropping the cover link, then the album, then shortening title and artist.
  • Receivers anchor the position to their own time of arrival rather than ts, so clock differences between computers do not matter.
  • Sent on every change and again every 30 seconds; well under the server rate limit.

Privacy

Shows what the user listens to. A cover link may point to any web server; Mumcord only loads covers through its guarded link-preview fetcher and only while link previews are on. Receivers must not load the link blindly.

Used in

Flow-Now-Playing, announced via Packet-mumcord-hello.

Clone this wiki locally