Skip to main content

Getting started

Hypewire is what we call an "event processor", meaning it receives events from various sources, processes them in various ways, then uses them to perform some actions. For example:

  1. Receive: Take all Twitch cheer events
  2. Process: Filter out cheers for less than 50 bits
  3. Action: Show a source in OBS

Hypewire is especially powerful as it allows mixing all of these together to create complex processing pipelines, also called racks.

Let's start off by looking at a very simple rack.

This might look a bit weird at first glance, but we can understand what's going on by taking two rules into account:

  1. Each row, or node, is capable of receiving and sending events.
  2. Events flow down - events emitted by the top node will be received by the second-from-the-top node, etc.

With that in mind, consider what this does: every time someone cheers in your channel with more than 100 bits, a message saying "Thanks for the XXX bits, XXXX" will be sent to the chat. Pretty cool!

Let's look at something a bit more complicated, to control elements in OBS when someone cheers:

Keeping the two rules above in mind, we can use the tracks shown to the left of each node to decode what our rack is doing. Let's follow the tracks from the top-most node, labelled "On cheer".

  1. "On cheer" emits an event when someone cheers to a Twitch channel. The event contains properties - packets of information relevant to the event, like the number of bits or name of the person who cheered.
  2. The event flows into the node labelled "If twitch bits < 1,000" node. This node only lets events through if a condition is met - in this case, if the cheer had less than 1000 bits.
  3. Cheers of less than 1000 bits then flow into the node labelled "Queue 10s". This is a rate limit node which, as the name implies, limits the rate of events going through that node. In this case, the node is set to queue events up so only one event will be let through every ten seconds.
  4. When each cheer is released by the rate limit node, the "Trigger Ctrl+F1" node presses Ctrl and F1 on the keyboard. Using the trigger hotkey node is a great way to control applications that Hypewire doesn't yet support.
  5. After triggering the hotkey, the cheer will then cause a source in OBS to be shown, using the OBS integration plugin (documentation coming soon!).
  6. Following the OBS node, the event now flows further down. You'll notice here that we have two "On cheer" nodes below each other, setup with a handful of nodes inside each of them. Source nodes, always pass their events to child nodes before passing them to sibling ones. This allows us to have some individual instructions for certain sources, like we do here.
  7. As the node tracks show, the "Write to bitsname" node (which is a write text file node can either be triggered by cheers with less than 1000 bits, or cheers with more than 1000 bits! So no matter the cheer size, we'll always write the cheerer's name to a text file.
  8. The next node to be triggered is a forward node. This "forwards" the event to another rack entirely - one which in this case isn't shown, but we can assume by the name shows some kind of on-stream alert.
  9. Finally, the delay node delays all cheers by 10 seconds before hiding the OBS sources that were shown earlier.

Got it? Maybe not? Have a play around, the only limit is your imagination! And feel free have a look at the node reference to the left to see what each node does.