Just wanted to share a fun little project I’ve been working on.
I use Foundry VTT with the Syrinscape Controller module, but I found the built-in controls a bit limiting, and the search didn’t work particularly well for how I like to run my soundscapes.
I already use Companion (Stream Deck automation software) on an iPad to control a lot of things in Foundry, like scene switching, showing and hiding characters and tiles, and other GM controls. I wanted to be able to control Syrinscape from the same interface so I wouldn’t have to keep another window open during a session.
So I started building it.
Using the Syrinscape API (huge thanks to the team for providing this!), Companion sends requests whenever I press a button. The audio itself still plays through the Syrinscape Foundry module, so everything continues to route into Foundry the same way as normal.
Each button press also triggers a request to pull the current Syrinscape state. If the state response says the ID for that element or mood is playing, the Companion button switches to an active state. If the state response says that ID is already playing, pressing the button again will send the stop command instead.
It’s been working really well so far and makes running soundscapes during a session much smoother.
Warning: Harpy scream jump scare in audio.



).
integration into your extension, you might be able to listen to the JS events it provides on state change so your buttons can react to any changes made by any integration. You should be able to ignore a lot of the implementation details the docs outing regarding setting up a UI and visualisations, and just focus on the 