PhantomBot StreamDeck Interface


I just got a StreamDeck and started playing with it. Folks have told me that they use whispers or chats to execute commands and do things with PhantomBot. That does work fine, however, what if you could have a small Windows application that does this for you? Well, you can out the PBStreamDeck application.

This is a companion discussion topic for the original entry at
Youtube player pause button when ingame

Very nice work :slight_smile: I wanted to get the StreamDeck next month and was thinking about writing some Node.Js Tool for that - but lucky for me - someone already made an app for that :stuck_out_tongue: thanks. Now I can’t wait to test this out.

What I just like to have: Play sounds, show gif (with sound) or video, trigger custom scripts (commands)


No problem with sounds and custom commands. I have a couple of audiohook commands that execute from buttons right now. In the configuration file:

scream=!audiohook play willhelmscream
whaawhaa=!audiohook play whaawhaa

You can, of course, use the Twitch Chat feature as well. I just wanted a way to be able to bypass Twitch chat and talk directly to the bot.


1 Like

Beta-2 Released


Yes, this was my attempt to - many streamers use commands from chat to play sounds (means: the delays spoilers).

So… I think I have to buy one today - instead of next month - to test this out :joy:


I didn’t undesrtand exactly what this is about :confused:


You can use chat commands sending as yourself or send whispers to the bot to keep things out of chat (and worry about whisper limits) - works fine. This sends the data directly to the PhantomBot backend for processing, skipping Twitch. Which means in a busy chat, the command skips the Twitch input queue and is executed faster as well. Also, you can hide what you are doing to keep chat cleaner (unless, again, you are using whispers of course!).

1 Like

So for example I can use a button on my streamdeck to use the command !discord (for example) and the viewer will not see the command trigering ?


That’s correct, yes. :smiley:


Beta 3 Release

This has been migrated to an installer using InnoSetup. This now installs the application to the Start Menu along with a shortcut to modify the configuration file. The registry is used to store the location of the configuration file which means that the call to the executable needs to be changed in StreamDeck – the path to the configuration file is no longer required. Now you only need to pass the key in the configuration file that indicates which command/chat line to send to PhantomBot. The goal is to try to work toward the application being easier to use and easier to configure.


Wao that the best thing now i can use streamdeck for everything like obs or xsplit and phantombot for controlling <3 ! Ill hope u keep up that work on it because i want to see this getting easier to setup :slight_smile: .

So far it works great absolutly loving it !

1 Like

Great! I was hopeful that an installer and letting that handle the setup of some information in the registry would make life easier. Also, providing a link on the Start Menu to get at the text file and edit it quickly seemed like a way to make the configuration a little bit easier.



Awesome, I can’t wait to check this out. I’ve been using Stream Deck for a long time, and absolutely love it. Being able to skip sending my commands through chat will be very helpful!



Beta Release 5

Changes in this release:

  • Fixed Beta 4 that was in Console Mode.

  • Support ability to disable SSL CA verification. This can be useful if using a CA that is not trusted by the Java installation and there is a desire to not update the Java cacerts keystore.

  • In the properties file: sslcacheck=disable

  • Started coding support for processing the Stream Deck JSON configuration files.


If anyone is interested, the Project Plan and User Stories are available. As mentioned there in GitHub, not all items may make it into the Beta Release and might not make it into the Final Release for that matter.


This seems like exactly what I was hoping for…

Does this require the bot to be running locally?

I have kind of a 3 PC setup for my stream/channel… I run my bot on a Server box, I have a Stream PC for the stream itself, which my Stream deck is connected to, and then I have my main PC that my content originates on.

So with all that, I have a browser tab open on my Main PC that is logged into PB over the appropriate port to the server, and that is where I hear audiohooks from when triggered (which inherently route audio I hear through to stream PC and also gets streamed of course)


No, it isn’t a requirement that the bot is running locally. In the config file for the program, you can choose the IP address where the bot is located. Hope this helps!


Perfect. Works great!

Would be nice if there was a GUI config, but not important at all, especially for my usage! I’m happy that I don’t have to rely on twitch chat now and have it exposed to viewers!

Thanks for this!

1 Like

By GUI, an easier way to manage the configuration properties file? To configure the options in Stream Deck’s software via this application? Or both?



Sorry, I meant the first of those. Just to manage the properties file. Might be helpful for those “less than technical minded.”

Like I said, for me, it’s perfect. But just a suggestion for a release version, since I realize it’s a beta verison still.

I don’t know how “open” the Stream Deck API is (or even if there is one) so I don’t expect anything super fancy like adding in a “plugin” into Stream Deck itself, although that would obviously be the most ideal scenario. Just like a “changing scene” in OBS or whatever else Stream Deck has to offer along the right side of that screen, there would just be a PhantomBot section that would just have a “command” variable and would do the same web call as is being done with this app. You would of course need an “account” added for PB in Stream Deck which would be the connection/bot info.

But like I said, that’s in the “nice to have” column.

Either way, I appreciate this tool for what it is right now!