Syrinscape Online module

Hello,

Love the system, and especially love The Forge’s implementation of the online hosting of it. I co-DM with a member of my playing group, and while it was tough convincing him to make the switch from roll20 after so many years, once he spent a few hours playing with it, he was hooked :wink:

Having said that, there is one last thing that we always wanted from roll20 that we think is finally possible with this system, and that’s a module that integrates the Syringscape Online sound system directly into Foundry.

For those who have never used it, Syrinscape Online is a very advanced soundboard system that allows you to either use pre-built soundscapes, or build them yourself. Once setup, you can pipe those sounds to players through an app they run in the background.

While the interface can use some work, the immersion level you can get with it is awesome. They’ve even partnered with wizard of the coast and created read-made sound packs for off the shelf adventures.

Having said that, it’s still yet another window I have to have open on my desktop as a DM, and another app my players have to have running in the background as well.

What would truly be awesome is the ability to integrate it directly with Foundry with a module. Having Syrinscape and the ability to directly embed those soundscapes in a map would take it to the next level. Syrinscape DOES offer an API, in fact, so I know it can be done. Even better, this would be a win-win for Syrinscape & Foundry, as they could market the fact that they are officially integrated, etc…pushing even more players to make the leap from roll20.

Anyhoo…I just thought I would throw that out there the powers that be. I don’t have the coding chops to create something like that, but I truly think it would be the “killer app” for Foundry.

Hi,

Thanks for using The Forge and loving it :slight_smile:
Syrinscape integration is something that has been looked at before (it’s something that I even considered at one point but never pursued). There was some work on it by Eadorin, but I believe it has been abandonned as the last update was from August (https://www.patreon.com/posts/syrinscape-alpha-40444414)

Apart from that, there was recently an opportunity to integrate Syrinscape and Foundry as both developers had discussed the integration and they are willing to help any developer who might want to take on that project. Unfortunately, one limitation is that it would require Syrinscape online to still be installed and opened on everyone’s machines, which makes it less of an attractive proposition as you can see from the discussion surrounding it here : https://discord.com/channels/732325252788387980/732330702754021446/786763743577112626
(That’s a channel in the League of Foundry Developers discord server, which you’d need to be in for the link to work).

Here’s a screenshot of the post from Atropos that started that conversation :

Hi - I"m doing a module that controls Syrinscape - it is quite a nice and easy task, but I noticed there is a problem with CORS - I can send a fire-and-forget type of request to set a mood for a scene or play a sound. Still, I cannot request, for example, the list of all moods available for the user account.

I’m using a CSV file as a bypass for that issue, but for the end-user is far from perfect.

Now Syrinscape Team suggests running a proxy under the same domain as foundry, which redirects traffic to their API. This solution works for a self-hosted environment.

Therefore, perhaps ForgeVTT could expose such a proxy as well?

My module is not going to solve the audio transmission issue. It is only for controlling Syrinscape Online.

Hi,
The CORS issue is not Forge related but specifically Syrinscape related, in that it’s the Syrinscape servers that are responding with CORS protection enabled.
This has very often come up as a question and my stance is always that I do not plan on implementing a ‘bypass CORS security protections’ server on the Forge.

The real issue in my opinion is that Syrinscape is not allowing their API to be accessed from other origins. If their developer wants that to be a valid use case, then they should allow API access with a valid API key to function without Origin restrictions (by disabling CORS for that specific use case).
Most servers will/should enable CORS with the /api/ endpoints whitelisted automatically.

I hope that helps.

Doing a quick check, I think there is an issue uploading the CVS and the API is not working, for this at the moment so no built in. Trying to rush and get everything going for tonight, but checking if Forge/Foundry/Syrinscape is all working together now.