-
-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
documentationImprovements or additions to documentationImprovements or additions to documentation
Description
There appears to be increasing interest in using Playnite Web as a remote control mechanism. See #850 for an example discussion on the subject. This is how I, personally, use Playnite Web, too. However, there is no documentaiton to help guide users and there are some in's and out's in setting this up properly. This issue tracks the work to write documentation on how to remote control your gaming setup using Playnite Web and Home Assistant.
Notes
These notes are a work in progress.
Automation requires three things:
- Playnite Web (& Playnite Web Plugin)
- Home Assistant
- Playnite Web MQTT Plugin (unreleased, see Start/stop/restart games from local network #853 )
This is the overall flow:
- Users interact with the system via Playnite Web. They can browse their library to share and pick a game to play. I use a small tablet in my game room as my interaction point.
- Users configure Playnite Web with a webhook. The value for this webhook is the webhook created when setting up an automation webhook trigger in Home Assistant (probably should link docs to HA on this).
- When a user is signed in and in their library on Playnite Web, they can start/stop/restart games via the game details pane. All three of these actions send a POST request to the single configured webhook in Home Assistant. I'll outline what is included in these requests shortly.
- This webhook acts as a trigger for an automation in Home Assistant. Here, users can perform whatever is necessary to turn on physical devices (except starting the actual game). For example, turn on TV, AVR, gaming device (PC via wake-on-lan, PlayStation via HA PlayStation MQTT integration, etc.), set volumes, inputs, etc.
- Within the automation, users can publish an MQTT message to start/stop/restart/install/uninstall games (topic/payload outlined below). This is picked up by the (separate) Playnite Web MQTT extension installed into Playnite.
Webhook Payloads
This is not documented anywhere at the moment. The payload is JSON. It contains at least the following (note this is what I'm using , but it not an exhaustive list):
| Property | Value(s) | Example Value | Notes |
|---|---|---|---|
| type | "StartReleaseRequested", "StopReleaseRequested", "RestartReleaseRequested" | ||
| payload.id | "Release:159" | Release ID from Playnite Web | |
| payload.playniteId | "A guid value" | Guid ID used by Playnite | |
| payload.platform.id | "Platform:68" | Platform ID from Playnite Web | |
| payload.platform.playniteId | "A guid value" | Guid ID of the platform used by Playnite | |
| payload.platform.name | "PlayStation" | Platform name | |
| payload.library.playniteId | "A guid value" | The ID of the Playnite instance. Useful to distinguish between mutlitple devices running Playnite. |
MQTT Messages Used by Unreleased Playnite Web MQTT Plugin
See #868 for additional details
Metadata
Metadata
Assignees
Labels
documentationImprovements or additions to documentationImprovements or additions to documentation
Projects
Status
Ready 📝