UPDATE 7/10/17 – Check out the contributed module from Sam Levey, with nodes to control QLab via OSC messages and a node to control node-red from QLab:
https://www.npmjs.com/package/node-red-contrib-qlab
This eliminates some steps from the method described below.
ORIGINAL:
Utilizing node-RED, QLab can respond to hash tags, text strings, etc via OSC messages and UDP packets. This is useful for audience-interactive installations, lobby displays, etc.
Dependencies:
QLab
node-RED
node-red-contrib-osc
Once the necessary software are installed, use the following to create a node-RED flow that listens for Twitter hash tags, text strings, or both, and sends OSC messages to QLab via UDP packets. You will need to enter Twitter account credentials into the Twitter In node.
I use this to trigger an AppleScript cue that selects random audio samples or ruby files (for Sonic Pi generative music).
Copy the following JSON and paste it into your node browser via Import>Clipboard. Log in with a Twitter account, define your search terms, OSC path and IP/port to see the results.
1 |
1 |
[{"id":"4b4f1e2e.8d1b2","type":"twitter in","z":"e0a4d639.dcb1","twitter":"","tags":"#tweetACue","user":"false","name":"set search terms","topic":"tweets","inputs":0,"x":120,"y":40,"wires":[["90500ba1.3df788","73c19feb.ad24c8"]]},{"id":"90500ba1.3df788","type":"osc","z":"e0a4d639.dcb1","name":"qlabOscPath","path":"/cue/2001/start","metadata":false,"x":450,"y":60,"wires":[["e07b5648.b7daf8","73c19feb.ad24c8"]]},{"id":"e07b5648.b7daf8","type":"udp out","z":"e0a4d639.dcb1","name":"sendToQLab","addr":"127.0.0.1","iface":"","port":"53000","ipv":"udp4","outport":"","base64":false,"multicast":"false","x":650,"y":80,"wires":[]},{"id":"73c19feb.ad24c8","type":"debug","z":"e0a4d639.dcb1","name":"","active":true,"console":"true","complete":"payload","x":650,"y":40,"wires":[]},{"id":"68ce7db0.1a3f6c","type":"comment","z":"e0a4d639.dcb1","name":"define search criteria in Twitter node","info":"","x":180,"y":100,"wires":[]},{"id":"cf728596.9c8718","type":"comment","z":"e0a4d639.dcb1","name":"set path","info":"","x":440,"y":100,"wires":[]},{"id":"be1925f3.fb1768","type":"comment","z":"e0a4d639.dcb1","name":"set IP and port","info":"","x":660,"y":140,"wires":[]}] |