Skip to content
BloopbotDocumentation

Build with flows

Build a flow on the canvas

Connect a trigger, a condition and an action, then inspect a test run.

6 min readUpdated

The three parts of a flow

PartQuestion it answersExample
TriggerWhen should this start?Someone types !hello
ConditionShould it continue?The viewer is a moderator
ActionWhat should happen?Send a chat message

A straight line of nodes can use the Simple form. Switch to Canvas when you need branches, extra checks or loops. Both views edit the same flow.

Open and read the canvas

Open a flow and choose Canvas in the top bar. Lines show how execution moves between nodes. Click a node to edit its fields in the side panel. Use Fit to view to bring the whole graph back into view.

The flow canvas with a Chat command trigger connected to a Chat message action, a node palette, and the Test fire and Save controls.
A Chat command trigger connected to a Chat message action. Click to enlarge.

Find and connect a step

  1. Use the search button in Add a node, or open Browse the library. Search in plain words, such as “timer”, “points” or “shoutout”.
  2. Choose a node and fill in its fields. A node sitting on the canvas without a connection will not run.
  3. Connect the output of the previous step to the new node. You can also drop a palette item onto a connection to insert it.
  4. Read the output labels. A condition can take different paths; actions may have separate next and error outputs.
The node library groups Chat and commands into When triggers, Only if conditions and Then actions, with other topics across the top.
The library groups triggers, conditions and actions by what you want to do. Click to enlarge.

Check a value from the event

Most conditions check who is talking or how often something has run. Check a value from this event instead looks at a detail carried by whatever just triggered the flow — a Twitch prediction’s status, a goal’s current amount — using the same $(...) tokens the Insert… menu offers.

A Twitch prediction ends the same way whether it resolved or was cancelled, so a “prediction resolved” flow needs this condition to tell the two apart: check $(status) equals resolved before announcing a winner, or $(status) equals canceled before saying points were refunded. The Predictions pack ships both, already wired this way.

Test before enabling

Save your changes, then use Test fire. Expand the Run log to see which nodes ran, which checks stopped the path and which actions were simulated. A dry run helps check wiring; a real Twitch event is still needed to confirm the live connection and permissions.

A flow that starts on a Twitch event — a goal, a poll, a raid, a sub and the rest — test-fires with a realistic made-up example of that event, so conditions that check its details (such as whether a goal was reached, or which choice a poll picked) take a real path instead of failing on empty values. The result shows which example was used. When a trigger can fire at more than one moment — a poll starting, getting votes or ending; a goal in progress or reached — a small picker next to Test fire lets you choose which one to simulate.

Was this guide helpful?