Streamer.bot v1.0.0
Hey Everyone,
I wanted to give a brief update about Streamer.bot 1.0. At the moment, the current alpha, ‘alpha.36’, seems to be fairly stable. I don’t anticipate many more alpha updates. The good news is that a beta
and/or stable
release is on the horizon.
Now, I don't like bringing this up, but it’s becoming more of a problem as time goes on. I've been out of work since August 2024. That's almost a year now, and my Patreon for Streamer.bot is the only thing that has been keeping me afloat.
Streamer.bot is going to be turning 5 years old pretty soon, and I've kept it free this entire time (and it will remain free) as a kind of passion project. With new features being added so regularly, Streamer.bot has grown to be so much more than simply something to mess with in my free time. As it is, Streamer.bot, will always be free, this is not changing. Nevertheless, 1.0 will be bringing some new advanced features that will start costing money to implement on the backend, so they will be supporter perks, available to those subscribing at the lowest Thank You
Patreon tier. To be perfectly honest – the more support there is on Patreon overall, the more that can be kept free.
Many might not realize, but Streamer.bot isn’t some startup with dozens of developers working on it. It is a registered business in Ontario, Canada. But the programming and development is pretty much a one-man show. (I do get help from Whipstickgostop for everything website-related; I do not want to diminish his contributions in the slightest. Kudos should also go to Lyfesaver and everyone on the support staff as well) Similarly, running Streamer.bot and the supporting website and services also cost money. There are fees related to the code signing certificate, IFTTT, domains, servers, etc. As a business, I do my best to present everything as professionally as possible. While I may not create content on YouTube
, Twitch
or the like, I still provide a valuable tool for those who do, and I think it's time I hopefully can start benefitting from it.
Thank you, sincerely thank you to everyone who has been using Streamer.bot over the years, it means a lot to see the community that has been built around it, and it still blows my mind that I created something like this. Streamer.bot, and Speaker.bot are not going anywhere and I plan on working on them for years to come.
Yours truly, nate1280 CEO/DEV Streamer.bot
So, here is what's available in alpha.37 available now, for those subscribed to the Bronze Tier
on Patreon to use and test!
Kick
Yes, you read that right! Kick
is becoming the fourth platform added to Streamer.bot!
After thinking long and hard, and going back and forth on possible implementations of time/cost for getting it done, Kick
is being supported, but will require a connection on the website in order to make it work. This means the website is acting as a relay in order to get events from Kick
.
While in alpha, any alpha user will have access to it, and once it is released to stable/beta, the Thank You
tier on my Patreon will be required to use it, to support the back-end services.
Cloud Backups
While backups have always been created, and more recently you're able to change the backup folder, Streamer.bot 1.0 is bringing Cloud Backups
. You will be able to manually create a backup that is stored on the Streamer.bot servers, and can also restore your Streamer.bot from one of these backups.
While in alpha, any alpha user will have access to them with limits based on the Patreon tier they are subscribed at. Once it is released to stable/beta, the Thank You
tier will be required with lower limits than the Bronze Tier
Custom Webhooks
Streamer.bot currently supports 4 services through webhooks: Patreon
, Kofi
, Fourthwall
and Shopify
. Since Webhooks require an intermediary site with full SSL capabilities typically, Custom Webhooks
are being introduced. These will allow you to create your own webhooks to (almost) any site that supports them.
While in alpha, any alpha user will have access to them with limits based on the Patreon tier they are subscribed at. Once it is released to stable/beta, the Thank You
tier will be required with lower limits than the Bronze Tier
NOTE There will be a few sites that will be outright denied from creating webhooks for, largely for volume reasons, and this will be monitored for abuse.
Decks 2.0
Yes, Decks 2.0
are also being released! Decks 2.0
will remain mostly free, however there will be some modest limits placed on them, and subscribing to Patreon will increase these limits based on the subscription tier.
New Features
UI
Converted toWPF
- Dark Mode
Kick Platform
support- Cloud Backups
- Custom Webhooks
- Decks 2.0
- Nestable sub-action groups
- Sub-action groups can have their own color!
Logic If/Else
has been updated,true
/false
are now groups, and can addsub-actions
directly to them- New
Logic Switch Case
sub-action - New
Logic While
sub-action Execute C# Code
sub-action now uses theMonaco
editorHotKeys
are now at a trigger level, and support any combination- Add
YouTube
poll handling for starting and updating. Streamer.bot
has been updated to .NET 4.8.1- Add new sub-actions for
Meld Studio
,Set Browser Layer Url
andTake Vertival Screenshot
- Added a
User Profile
drop down in theTitle Bar
for yourStreamer.bot Account
- Add new Triggers for
Global Variable Created
andGlobal Variable Deleted
- Add new sub-actions to add
YouTube
andTrovo
broadcaster information - Add support for
7TV Zero Width
emotes - Add new inline function,
$parse()$
- Add ability to change the
Backup Folder
location - Add ability to manually create a
Backup
- Add
Auto-Save
, this will happen every 5 minutes - Add a new context menu item in
Global Variable Viewer
forPersisted
andNon-Persisted
user tabs to delete the selected variable for all users - Add a warning to
Import
, when theImport
contains anExecute C# Code
sub-action - Add new
Default
settings forActions
andCommands
- Add ability to add a path mapping to the
HTTP Server
allowing for hosting files - All
Sub-Actions
andTriggers
that are editable, now have a?
help button in their dialog that opens the docs site - Add a new Trigger,
Clipboard Changed
, for when data is put on theClipboard
- Add a new Sub-Action,
Streamlabs Spin Wheel
to trigger a wheel spin onStreamlabs
Updates
- Update common libraries and packages
- Update
Twitch EventSub AutoMod
subscriptions Twitch PubSub
is no longer used- Command Settings are now in the WebSocket payload
Logic If/Else
sub-action now addsRegex
matches/groups as argumentsTwitch Add Random User
has been updated to work with groups- Update
YouTube
andTrovo
Send Message
to use the updated fall back options - Update
Twitch
Add Target Info
,Add Follow Age
,Add VIP
,Remove VIP
,Add Team Info
andTrovo Add Target Info
to use the new style of specifying a variable WebSocket
DoAction
now returns theID
and initial arguments associated with the queuedAction
- Application Crash messages will only show once now, instead of doing a solitaire win move
- The built in
!quote
command has been removed and replaced with new sub-actions - How to favourite/unfavourite a Trigger or Sub-Action has changed, you now do this directly on a Sub-Action or Trigger that you've added
- Move
HTTP Get Methods
to/api/
- Start monitoring for
USB Removal
on demand if there areMidi
devices configured Twemoji
was updated tov16.0.0
- Update
Voicemod Client
to supportVoicemod v3
- Require
Voicemod v3.12
as minimum version - Add a manual check for
System.Linq
using, and auto add theSystem.Core.dll
reference when usingFind Refs
- Add
addTargetResult
argument toAdd Target Info
sub-action when it is successful First Word
triggers, are now underChat
instead ofGeneral
forTwitch
andTrovo
Fixes
- General fixes and tweaks, too many to track over the course of 3 months
- Fix adding
Trovo Broadcaster
info to args, they were flipped - Fix
Twemoji
parsing related to theVariation Selector-16
unicode value - Fix
Twitch SevenTV Emote Removed
sub-action, wording said added
Details
Surprise! This has been 3 months in the making, but there is finally a new UI in town, and it's been completely re-written in WPF. This means I'll have so much more flexibility. In addition to that, there is now a Dark Mode
, the most requested feature.
Now for the bad news, I have not tested this, so I'm not sure how this will effect extensions that use custom designed WinForms dialogs for settings and such. The conversion to WPF is quite simple, and I will likely post a small template at some point to get you started.
Now, this is an alpha, this means there will be bugs, that is the whole point of it entering this stage first. If you wish to use this as your daily driver, be aware, things may or may not function correctly.
Want access to alpha
, subscribe to nate1280's Patreon. alpha
access now starts at Bronze Tier
or higher.
Sub-Actions
Sub-actions got a bit of an overhaul as well, before, groups could only be top level items, now, they can be nested as much as you want, more flexibility when using the random option on a group now.
Logic If/Else
Logic If/Else has received a power-up, no longer do you need to specify an action to run for the true/false parts, you can now just add your sub-actions directly to the true/false groups, and because these are containers, that means you can nest groups as well.
Logic Switch
New with this release is a new Logic sub-action, the Switch Case. Same applies to this sub-action, add your logic switch, and you can add case groups, which can in turn have sub-actions nested in them
Logic While
New with this release is the Logic While
sub-action. Yes, that means you can finally perform loops within a single action without needing C#!
Inline Function,
A new function has been added, $parse()$
, that will allow for a 2nd level of variable parsing.
This would be of benefit for the newly added Logic While
sub-action.
As an example, ff you are using the global ~idx~
as your test variable, and incrementing this within the while loop. You would then be able to use the inline method like $parse(rawInput~idx~)$
which would internally parse to %rawInput#%
, and finally would return the value of the %rawInput#%
argument. In this example, rawInput
is the argument you're wanting to get an indexed position of, this is typically used in most Message
based triggers
Twitch
Twitch PubSub is being deprecated in April, so that means it's finally time to remove PubSub from the connection list for the Broadcaster Account.
What this means, the Ad Mid Roll sub-action no longer exists (to this day, still really don't know what it did), Channel Point Community Goals will cease to work until they're added to EventSub, and the Viewer count pulse has been updated to use other methods.
Twitch Shared Chat
Handling of Twitch Shared Chat
has been updated a bit, there are now 3 arguments added to most Twitch
events.
isInSharedChat
- This will indicate if the event happened while in a Shared Chat,isSharedChatHost
- This will indicate if the Broadcaster is the host of the Shared Chat,isFromSharedChatGuest
- This will indicate if the event is from a Shared Chat's Guest's Channel, These 3 arguments are in all Shared Chat events, as well as the non-shared chat event counter parts.
Quotes
Quotes got a small overhaul, the built in !quote
command is no more, it has been replaced with various sub-actions, so you now have full control over adding, deleting quotes by any means.
HTTP Server
You read that right, you can now serve local files with the HTTP Server
! Simply add a Path Mapping
to the HTTP Server
settings, and you can access any file/folder from that Mapping
.
The current methods are being moved to an /api/
prefix, and they will continue to work for now but consider them deprecated, and will eventually be removed. Be sure to update any usages to use the /api/
equivalent.
Voicemod
The Voicemod
integration has been udpated to support v3
, and version 3.12
is now the minimum required version for the integration.
With the update, the Voicemod Set Censor State
sub-action was removed, as well as 2 C# methods, VoiceModCensorOn()
and VoiceModCensorOff()
, as the methods for these no longer work.
Kick Platform
Yes, you read that right, as of alpha.37
, Streamer.bot now supports Kick
as an official platform. Be sure to read the previous information in alpha-releases or announcements.
Overall the Kick API
is still a bit of a mess, and everything that can be implemented has been. And as mentioned, to use this platform integration, you must link your Kick account on the website as well!
There are new sub-actions and triggers for Kick, support for Kick Message
as a Command source, Kick
will show up in the chat as well as obs overlay chat.
Cloud Backup
You will be able to manually create backups that are encrypted and uploaded to Streamer.bot's* website, as well as being able to restore from these backups.
Custom Webhooks
You will be able to create custom webhooks, and have the data forwarded to your Streamer.bot, much like the existing webhooks, except they can be used for any site that supports webhooks. This feature will be monitored for abuse and limits put in place if anything like this is detected
Decks 2.0
They've been teased for a while, but Decks 2.0
are also here! This includes a handful of sub-actions to interact with the decks themselves, much like Elgato Stream Deck
New Website
Whipstickgostop has been hard at work, and there is a new website that launched alongside this update, both as a refresh and to support all the new features.
C# Changes
The following C# methods have been updated to account for the new useBot
and fallback
options.
void SendYouTubeMessage(string message, bool useBot = true, bool fallback = true, string broadcastId = null);
void SendYouTubeMessageToLatestMonitored(string message,bool useBot = true, bool fallback = true);
void SendTrovoMessage(string message, bool useBot = true, bool fallback = true);