144 lines
7.8 KiB
Markdown
144 lines
7.8 KiB
Markdown
---
|
|
id: plugin.now_playing
|
|
title: Song Overlay
|
|
scope: plugins
|
|
status: active
|
|
priority: 10
|
|
visibility: user
|
|
category: Plugin
|
|
tags: plugin, now_playing
|
|
generated: true
|
|
editable: false
|
|
---
|
|
# Song Overlay
|
|
Provider-neutral song state, chat announcements, and a customizable Lumi Overlay source.
|
|
## Metadata
|
|
Plugin ID: now_playing
|
|
Version: 0.1.3
|
|
Default state: enabled
|
|
## Web Routes
|
|
- /plugins/now_playing
|
|
- GET /plugins/now_playing
|
|
- POST /plugins/now_playing/settings
|
|
- POST /plugins/now_playing/overlay/install
|
|
- POST /plugins/now_playing/overlay/remove
|
|
- POST /plugins/now_playing/test-announcement
|
|
- GET /plugins/now_playing/api/companion/ping
|
|
- POST /plugins/now_playing/api/companion/state
|
|
- GET /plugins/now_playing/render/:token
|
|
- GET /plugins/now_playing/render/:token/state
|
|
- GET /plugins/now_playing/render/:token/events
|
|
- GET /plugins/now_playing/render/:token/cover/:hash
|
|
## Route Reference
|
|
### MOUNT /plugins/now_playing
|
|
|
|
- Purpose: Mounts the plugin router at this base WebUI path.
|
|
- Inputs: No request parameters detected by static analysis.
|
|
- Response format: Plugin router mount point.
|
|
- Access: Access is controlled by the mount options and individual plugin routes.
|
|
- Side effects: No direct route action; child routes handle requests.
|
|
- Limits/notes: Mount metadata is inferred from static source scanning.
|
|
|
|
### GET /plugins/now_playing
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page.
|
|
- Inputs: No request parameters detected by static analysis.
|
|
- Response format: HTML page rendered from an EJS view
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: Usually read-only.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.
|
|
|
|
### POST /plugins/now_playing/settings
|
|
|
|
- Purpose: Processes the now_playing plugin action for settings.
|
|
- Inputs: body: full submitted body is passed to a helper; exact fields are defined by the matching form/service
|
|
- Response format: HTTP redirect after handling the request
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: writes or mutates server-side state
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Errors are caught and usually returned as a flash message, JSON error, or error page. Most non-API POST routes are browser form submissions and usually redirect after completion.
|
|
|
|
### POST /plugins/now_playing/overlay/install
|
|
|
|
- Purpose: Processes the now_playing plugin action for overlay install.
|
|
- Inputs: body: `scene_id`
|
|
- Response format: HTTP redirect after handling the request
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: writes or mutates server-side state
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Errors are caught and usually returned as a flash message, JSON error, or error page. Most non-API POST routes are browser form submissions and usually redirect after completion.
|
|
|
|
### POST /plugins/now_playing/overlay/remove
|
|
|
|
- Purpose: Processes the now_playing plugin action for overlay remove.
|
|
- Inputs: No request parameters detected by static analysis.
|
|
- Response format: HTTP redirect after handling the request
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: writes or mutates server-side state
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Errors are caught and usually returned as a flash message, JSON error, or error page. Most non-API POST routes are browser form submissions and usually redirect after completion.
|
|
|
|
### POST /plugins/now_playing/test-announcement
|
|
|
|
- Purpose: Processes the now_playing plugin action for test announcement.
|
|
- Inputs: No request parameters detected by static analysis.
|
|
- Response format: HTTP redirect after handling the request
|
|
- Access: logged-in session required or used
|
|
- Side effects: Action route; side effects were not detected statically.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Errors are caught and usually returned as a flash message, JSON error, or error page. Most non-API POST routes are browser form submissions and usually redirect after completion.
|
|
|
|
### GET /plugins/now_playing/api/companion/ping
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page for api companion ping.
|
|
- Inputs: No request parameters detected by static analysis.
|
|
- Response format: JSON response
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: Usually read-only.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. API consumers should expect JSON unless the response format says otherwise.
|
|
|
|
### POST /plugins/now_playing/api/companion/state
|
|
|
|
- Purpose: Processes the now_playing plugin action for api companion state.
|
|
- Inputs: body: full submitted body is passed to a helper; exact fields are defined by the matching form/service
|
|
- Response format: JSON response
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: writes or mutates server-side state
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations. Errors are caught and usually returned as a flash message, JSON error, or error page. Most non-API POST routes are browser form submissions and usually redirect after completion. API consumers should expect JSON unless the response format says otherwise.
|
|
|
|
### GET /plugins/now_playing/render/:token
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page for render token.
|
|
- Inputs: path params: `token`
|
|
- Response format: HTML page rendered from an EJS view
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: Usually read-only.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.
|
|
|
|
### GET /plugins/now_playing/render/:token/state
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page for render token state.
|
|
- Inputs: path params: `token`
|
|
- Response format: JSON response
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: Usually read-only.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.
|
|
|
|
### GET /plugins/now_playing/render/:token/events
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page for render token events.
|
|
- Inputs: path params: `token`
|
|
- Response format: streaming event response
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: writes or mutates server-side state
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.
|
|
|
|
### GET /plugins/now_playing/render/:token/cover/:hash
|
|
|
|
- Purpose: Renders or serves the now_playing plugin page for render token cover hash.
|
|
- Inputs: path params: `hash`, `token`
|
|
- Response format: static file response
|
|
- Access: No explicit access guard detected in the route handler; check surrounding router/mount middleware.
|
|
- Side effects: Usually read-only.
|
|
- Limits/notes: Generated from static route source analysis; confirm exact behavior in the handler before changing integrations.
|
|
## Commands
|
|
- No plugin command triggers detected.
|
|
## Source
|
|
Plugin folder: plugins/now_playing
|