Streamer.bot v0.1.17
New Features
- Add 3 new C# methods to remove the cooldown of a command
- Add 3 new C# methods to Add To, Remove and Reset a user's cooldown that takes a string for the user id
- Add 3 new C# methods for handling adding, removing and checking if user is in group for string user ids
- Add new Websocket Event, ActionCompleted
- Ability to directly rename an Action Group, without having to edit every action
- Add filter to user permissions in Command Dialog
- Add 4 new sub-actions to Add, Remove, Clear and Set Twitch Tags
- Add 4 new C# methods to Add, Remove, Clear and Set Twitch Tags
- Add 2 new Twitch events, StreamOnline and StreamOffline
- StreamElements, add a new
%provider%
variable to Tip and Merch events (can be twitch, youtube or streamelements) - StreamElements, add a new
%tipId%
variable to the Tip event, this is StreamElements's internal tip id value - Add new C# method to get how many channel points a user has used, Twitch only
- Add new sub-action to clear users from a group
- Add new C# method to clear users from a group
- Add new argument to all actions,
%actionQueuedAt%
, this is when the action was queued - Add 2 new sub-actions for resetting reward counts
- Add 4 new C# methods for resetting reward counts
- Add an Auto Type option to the Set Argument sub-action, if disabled, the value will be treated as a string
- Add ability to rename a Command group
- Add ability to rename a Twitch Reward group
- Add 2 new sub-actions to Set the Enabled and Paused state of a Twitch Reward group
- Add 6 new C# methods to set the Enabled and Paused state of a Twitch Reward group
- Add new sub-action to send a Twitch Shoutout, located under
Twitch
->Moderation
- Add 2 new C# methods to send a Twitch Shoutout
- Add new event for when you (the broadcaster) receives a Twitch Shoutout from another user
- Add 2 new sub-actions to Start and Cancel a raid on Twitch
Updates
- Twitch User IDs are now string across the entire application
- Twitch Channel Shield Mode EventSub events are out of beta, updated this internally
- Twitch Charity Donation event now includes the id of the donation, this has been added as a new arg
%donationId%
- Updated Twitch
Add Target Info
to include tags - YouTube based events have a
%broadcastId%
variable now - Events that add primary user information, now have a
%userPreviousActive%
variable - StreamElements, linked the YouTube provider events
- Harden file saving routines
- Move Twitch Channel Reward counters to the twitch data db file
- Improvements to the auto-updater, cancellation support and timeout. NOTE This won't be useable until the next update.
- Disable and remove Twitch Coin Cheer events, since Twitch halted this experiment October 2022
- Enabled, Disable, Pause and Unpause Twitch Reward group context menu items no longer waits for each API call
- Update handling/broadcasting of Action start/completed
- Request new
moderator:manage:shoutouts
scope - Switch Twitch Shoutout Created event internally to new Twitch EventSub event
- Twitch Charity EventSub Events have been moved out of beta status
- Fix variables shown in the TipeeeStream tip event help button
- Wired up all the
?
buttons forYouTube
events
Fixes
- Fix some typos
- CPH Method, EnableTimer was not correctly resetting a timer
- SetTimerState sub-action was not correctly resetting a timer's line counts
- Regression, was not listening for Twitch Community Goal events
- Issue with collapsing all action groups
- Disable OK button in Set Argument sub-action dialog when loaded, so it gets validated properly
- Fix Twitch HypeTrain end event, was missing
%contributors%
variable - Fix command group collapsing
- Fix initial collapsed states of Command Groups
- Fix initial collapsed states of Twitch Reward Groups
- Fix start raid C# method
Details
Websocket Events
ActionCompleted
0.1.17
introduces a new Raw event, ActionCompleted. Subscribing to this event in the Websocket Server will get you information when an action is completed.
New Sub-Actions
Twitch Add, Remove, Clear and Set Channel Tags
Yes, Twitch finally added the ability to manipulate the new tags!
The Clear Channel Tags sub-action has no input, and will just clear your tags.
The Add, Remove and Set Channel Tag sub-actions all support variables.
The Add Target Info adds the following new arguments:
Name | Description |
---|---|
tagCount | The number of tags |
tag# | The tag at index position # |
tags | A List<string>() object for use in C# |
tagsDelimited | A comma delimited string of the tags |
At the moment, there is a bug in the Twitch Helix endpoint, where its unable to clear the tags completely. So for the time being Clear Tags and Removing the last tag will fail. Once Twitch fixes this, they should start working.
If you keep at least 1 tag active, you'll be able to add/remove tags at will. And for setting all tags, at least 1 needs to be set.
Twitch Send Shoutout
This is a basic sub-action, either use a variable, or a fixed user login to send a shoutout to the user.
You may send a Shoutout once every 2 minutes, and to the same broadcaster once every 60 minutes.
Clear Users From a Group
This sub-action will allow you to select one of your groups, so you can clear the users belonging to it during an action
Twitch Start and Cancel Raid
Since the C# methods for this have existed for a bit, adding in sub-actions to perform this now as well.
Updated Events
Twitch Shoutout Created
With the Shoutout events being added to EventSub, this event has been moved from PubSub to EventSub, this unfortunately changes some of the variables. This Event has also been moved to the Moderation
tab
Variables Removed
%targetUserPrimaryColorHex%
%targetUserProfileImageURL%
Variables Added
Name | Description |
---|---|
viewerCount | The number of users that were watching the broadcaster’s stream at the time of the Shoutout. |
cooldownEndsAt | The DateTime of when the broadcaster may send a Shoutout to a different broadcaster. |
targetCooldownEndsAt | The DateTime of when the broadcaster may send another Shoutout to the same broadcaster. |
New Events
Twitch StreamOnline and Offline events
For the new Twitch StreamOnline event, this will not be triggered if you are online and Streamer.bot connects to your Twitch account.
StreamOnline Event arguments
Name | Description |
---|---|
startedAt | The date, time the stream went online |
game | The category name |
gameId | The category id |
tagCount | The number of tags |
tag# | The tag at index position # |
tags | A List<string>() object for use in C# |
tagsDelimited | A comma delimited string of the tags |
StreamOffline Event arguments
Name | Description |
---|---|
endedAt | The date time when the stream went offline |
Twitch Shoutout Received
With the new EventSub events for Shoutouts, Streamer.bot can now react to receiving a Shoutout
This event is sent only if Twitch posts the Shoutout to your activity feed.
Shoutout Received Event Arguments
Name | Description |
---|---|
%viewerCount% | The number of users that were watching the from broadcaster's stream at the time of the Shoutout |
New C# Methods
void CommandRemoveGlobalCooldown(string id);
void CommandRemoveUserCooldown(string id, int userId);
void CommandRemoveAllUserCooldowns(string id);
void CommandResetUserCooldown(string id, string userId);
void CommandRemoveUserCooldown(string id, string userId);
void CommandAddToUserCooldown(string id, string userId, int seconds);
bool UserIdInGroup(string userId, string groupName);
bool AddUserIdToGroup(string userId, string groupName);
bool RemoveUserIdFromGroup(string userId, string groupName);
bool TwitchClearChannelTags();
bool TwitchSetChannelTags(List<string> tags);
bool TwitchAddChannelTag(string tag);
bool TwitchRemoveChannelTag(string tag);
long TwitchGetChannelPointsUsedByUserId(string userId);
bool ClearUsersFromGroup(string groupName);
void TwitchResetRewardCounter(string rewardId);
void TwitchResetRewardUserCounters(string rewardId);
void TwitchResetUserRewardCounters(string userId, bool persisted);
void TwitchResetUserRewardCounter(string rewardId, string userId);
void TwitchRewardGroupEnable(string groupName);
void TwitchRewardGroupDisable(string groupName);
void TwitchRewardGroupToggleEnable(string groupName);
void TwitchRewardGroupPause(string groupName);
void TwitchRewardGroupUnPause(string groupName);
void TwitchRewardGroupTogglePause(string groupName);
bool TwitchSendShoutoutById(string userId);
bool TwitchSendShoutoutByLogin(string userLogin);