Continuous need for the chatbot to provide interfacing to various programs while acting on the live chatroom’s commands.

This necessitated the modularization of the code. The user was then able to choose the different bot functionalities that were necessary for the particular situation.

The bot data was kept and expanded to be completely customizable using external .csv files which were built to the GUI.

A particular upgrade integrated web-sockets from an application called Keysight (a MIDI visualisation tool). Inbound web-socket strings were then processed by Keysight to change presets and camera angles.

Integrating OBS to change scenes simultaneously with Keysight results in a very cohesive cinematic experience. The resulting 3D effect on a live stream is very satisfying. Follow this timestamp for a demonstration of this in action: https://youtu.be/57y8wyP2v_E?t=18906

Another upgrade was dubbed Mischief bot because it executed python-supported input simulation functions. An example use case of this would be forcing the user to press/hold keys upon chatroom events.

The full list of supported functionality is described below.

  • Chatbot messaging in the chatroom
  • Monitoring of “!” commands to trigger OBS scene/source visibility
  • Twitch Channel Point Redemption triggering OBS scene/source visibility
  • Simulated keypresses
  • Keysight integration to change presets and camera angles
  • Streamlabs and Streamelements API monitoring for tips to control OBS scene/source visibility
  • Opening custom webpages for a custom duration
  • Webhook tunnelling to forward donation payloads to localhost