YouTube stream actions on CarbonNetwork with Streamer.bot
How a creator with the Media role connects YouTube to CarbonNetwork through Streamer.bot: a private link from /stream, a Fetch URL sub-action and a YouTube trigger for each action, testing, what each Super Chat, membership or chat event says in game, rotating a leaked link, and troubleshooting. The same on every CarbonNetwork server.
Hard9 min read
YouTube events come from Streamer.bot, a free app on your PC. It signs in to your YouTube channel, watches your stream, and opens a private link when something happens. The link tells CarbonNetwork which action to play. For the menu, the board and what everything looks like, see Streaming.
The Streamer.bot steps below follow Streamer.bot's own documentation. If a screen looks different in your version, the names of the parts (Actions, Sub-Actions, Triggers) are the same.
What you need
- The Media role on CarbonNetwork. Ask with
/applyin our Discord. - Streamer.bot, installed and running on the PC you stream from, while you stream.
- The YouTube account your channel is on.
How it fits together
- In game, each action has its own YouTube link. They differ only in the action's name.
- In Streamer.bot, you make an action for each thing you want to happen. It has two parts:
- Triggers: the YouTube events it answers to, like a Super Chat.
- Sub-Actions: what it does. Here, one Fetch URL that opens your link.
- Triggers and sub-actions are not connected to each other. Both belong to the action, and any of its triggers runs all of its sub-actions. You never drag one onto the other.
One Streamer.bot action, one CarbonNetwork link. To make a Super Chat throw Confetti and a new member show a Title, make two Streamer.bot actions, one with the Confetti link and one with the Title link.
Set it up
In game: make your YouTube link
-
/stream→ YouTube → YouTube link. Chat says Your YouTube link is ready. The tile now reads Linked. -
Actions → pick one, like Confetti.
-
Click YouTube link to turn it on. It glows, and the action reads On.
-
Hide your stream, or turn off screen capture. Your link is about to be on screen.
-
Click Copy YouTube link → Show it. Chat says Link for Confetti. with a [Copy link] button. Click [Copy link]. The link is on your clipboard. It's never printed in chat.
-
Paste it somewhere private, like a text file on your PC. You can only copy it again on this server, before you leave. See Your link.
On Bedrock, step 5 shows the link in a form to type out instead.
In Streamer.bot: sign in to YouTube
-
Open Streamer.bot. Go to Platforms → YouTube → Accounts.
-
Log in with the broadcaster account: the one your channel is on.
In Streamer.bot: make the action
-
Open the Actions tab. Right-click the list of actions → Add. Name it after what it does, like Confetti on Super Chat, and save.
-
Click your new action to select it. The Triggers and Sub-Actions panels beside it now belong to it.
-
Right-click the Sub-Actions panel → Core → Network → Fetch URL. Fill it in:
Field Put URL Your link, pasted as it is Variable Name Anything, like carbon. Streamer.bot needs one; nothing uses itParse result as JSON Off Headers Empty Click OK. Fetch URL sends a GET request, which is what the link expects.
- Right-click the Triggers panel → YouTube → the event: Super Chat, Super Sticker, New Sponsor (a new member), Membership Gift, Member Milestone, Message (a chat message) or New Subscriber. You can add several triggers to one action.
- Check that the action, the trigger and the sub-action are all enabled: ticked, not greyed out.
Back in game
-
/stream→ Live on, on the server you're on. -
Test it, below.
Repeat steps 2 to 13 for each action you want. Every Streamer.bot action needs its own link from its own CarbonNetwork action.
Test it
- In game: right-click the action in Actions to see how it looks. Works with Live off.
- In Streamer.bot: with Live on in game, right-click your action → Test. It runs the sub-actions without a trigger, so the link is opened just as a real event would open it. A test has no viewer and no event, so your screen says a viewer set off Confetti. A real Super Chat fills in the name and what happened.
- For real: send a chat message from a second account, with a Message trigger on an action. Super Chats and memberships need a real viewer.
If Test plays, the link and Live are fine, and anything left is in the trigger.
What the link says
The link you copy looks like this, with your own private key in the middle:
https://stream.carbonnet.work/in/<your key>/confetti?p=youtube&event=%__source%&viewer=%user%&amount=%amount%
| Part | Means |
|---|---|
confetti | The action it plays. Every action's link is the same apart from this word |
p=youtube | It's a YouTube event |
event=%__source% | What happened. Streamer.bot fills it in |
viewer=%user% | Who did it |
amount=%amount% | How many |
Streamer.bot replaces each %...% before it opens the link, so your screen says what happened,
who and how many: viewer_one sent a Super Chat, viewer_two gifted 5 memberships.
These variable names are a best guess. They're Streamer.bot's usual names, but its YouTube documentation doesn't list them all. Nothing breaks if one isn't filled in: that part is left out, and your screen falls back to a viewer or set off Confetti. It never shows the wrong thing.
If the wording isn't what you want, you can edit the link in the URL field:
| You see | Change | To |
|---|---|---|
| set off Confetti instead of what happened | event=%__source% | The event, written out: event=superchat, event=supersticker, event=member, event=member_gift, event=milestone, event=chat or event=subscribe. Fine when the Streamer.bot action has one kind of trigger |
| gifted a membership for every gift | amount=%amount% | amount=%count%, on a Membership Gift action |
| renewed their membership instead of the months | amount=%amount% | amount=%months%, on a Member Milestone action |
An older link without the event=, viewer= and amount= part still works. It reads
a viewer set off Confetti.
What each YouTube event says
| Streamer.bot trigger | Your screen says |
|---|---|
| Message | viewer_one sent a chat message |
| Super Chat | viewer_one sent a Super Chat |
| Super Sticker | viewer_one sent a Super Sticker |
| New Sponsor | viewer_one became a member |
| Membership Gift | viewer_one gifted a membership, viewer_one gifted 5 memberships |
| Member Milestone | viewer_one has been a member for 6 months |
| New Subscriber | viewer_one subscribed |
| Anything it couldn't tell | viewer_one set off Confetti |
- What a viewer typed is never shown. A chat message is only ever sent a chat message.
- A Super Chat's amount is never shown.
- Leave Gift Membership Received out: it's the person who was given a membership, and it would read as if they gave one.
Your link
Your link is private. Anyone who has it can set off your actions, within your cooldowns, until you change it.
- Keep the link off screen. Hide your stream before Show it, and before you paste it.
- Copy it in the visit you made it. CarbonNetwork keeps only a fingerprint of your link, not the link itself, so it can be shown only until you leave the server you made it on (changing server counts). After that, Copy YouTube link says to use the one you saved, or Rotate.
- Every action's link is the same apart from the action's name. Save one, and for the next
action change
confettitohearts,ring,titleand so on. That action needs YouTube link switched on too. The names:hearts,confetti,spiral,ring,sparkle,flames,notes,name,title,actionbar. - It isn't shown while your Twitch stream is live, if you've linked Twitch. Copy your links before you go live.
Rotate
If a link gets out: /stream → YouTube → shift-click Rotate. A new link is made, and
every old YouTube link stops working at once, for every action. Your TikTok links are not
touched.
Then copy the new links, in this visit, and paste each into its Streamer.bot action's URL.
Unlink (shift-click) does the same and also turns YouTube off. To use YouTube again, click YouTube link for a new one.
Troubleshooting
| What you see | Why | What to do |
|---|---|---|
| Nothing plays, even on Test | Live is off. It goes off when you leave a server, and changing server counts | /stream → Live on, on the server you're on |
| Nothing plays, even on Test, and Live is on | The action is off in game, or its YouTube link trigger is off | Actions → the action: it should read On, with YouTube link glowing |
| Nothing plays, even on Test, and both are on | The link is old: you rotated, unlinked, or copied it before | Copy the link again (or Rotate, then copy) and paste it into URL |
| Nothing in the recent list either | The call never reached CarbonNetwork | Check the link was pasted whole, and that Streamer.bot is running |
| Test plays, a real event doesn't | The trigger: wrong event, disabled, or on another action | Select the action. The trigger should be in its Triggers panel, ticked |
| Test plays nothing, and the sub-action is greyed out | The sub-action or the action is disabled in Streamer.bot | Enable it |
| No YouTube events at all in Streamer.bot | Streamer.bot isn't signed in to YouTube, or is signed in to the wrong account | Platforms → YouTube → Accounts, log in as the broadcaster |
| It played once, then not again | Cooldown | Lower Cooldown in game |
| Nothing plays in a fight | Quiet in combat | Wait for the skipped line, or switch it off |
| "a viewer" instead of a name | Names is off, the name failed the filter, it was a Test, or %user% wasn't filled in | Check Names. Try a real event from a second account |
| set off Confetti instead of what happened | It was a Test, or %__source% wasn't filled in | Write the event into the link, see What the link says |
| gifted a membership for 5 | %amount% isn't a gift's count | Use amount=%count% |
| That link can only be shown in the visit it was made in. | You've left the server since you made it | Use the copy you saved, or Rotate |
| Your Twitch stream is live. | Links aren't shown while you're live on Twitch | End the Twitch stream, copy, then go live |
| Link YouTube first. | YouTube isn't linked | /stream → YouTube → YouTube link |
| No YouTube link tile in an action | YouTube isn't linked, or it's the Hype train action, which is Twitch only | Link YouTube first |
| The YouTube tile says Not set up on CarbonNetwork yet | That server isn't set up for links yet | Tell staff which server |
| A burst of events, then some missing | Cooldown, 30 a minute, three animations at once, or more than 60 calls a minute to your YouTube link | Raise cooldowns, or trigger fewer events |
| Staff have paused stream actions. | A staff pause | Ask staff in a ticket |
More, for every platform: Streaming.
