XSOverlay compatibility
AstralOverlay accepts XSOverlay-style notification messages over WebSocket and legacy UDP. This is notification compatibility, not an implementation of XSOverlay’s complete API.
Supported entry points
Section titled “Supported entry points”- WebSocket on localhost port 42070, with a required
clientquery parameter. - The
SendNotificationcommand and string-valuedjsonData. - Legacy UDP payloads on localhost port 42069.
- Shared notification text, source, timeout, opacity, and volume fields.
Limits
Section titled “Limits”- Other WebSocket commands are silently ignored. Do not rely on window, theme, or status commands.
- Notifications share a single bounded queue, regardless of
index. - Card dimensions are based on content rather than a sender’s requested height.
- The current WebSocket receive loop processes text frames and close frames; it does not provide a general-purpose WebSocket service. Protocol keepalive and fragmented-message support should be verified for your client before long-running use.
- The parser accepts
audioPath,icon, anduseBase64Icon, but the current renderer does not load custom notification icons or audio files. It uses its own card presentation and bundled sound. Per-messagevolumeis parsed; current playback uses the global notification-volume setting.
Running alongside XSOverlay
Section titled “Running alongside XSOverlay”Both apps use the same default notification ports. If another app already occupies a port, AstralOverlay logs a warning and cannot listen on that port. The other transport can remain available if its own port is free. There is no automatic forwarding between the two apps.
Test integrations against the AstralOverlay release you intend to support.
