A chatbot for Owncast, enabling viewers to accumulate points which can be used to redeem stream rewards.
|
2 dagen geleden | |
---|---|---|
ownchatbot | 6 dagen geleden | |
screenshots | 6 dagen geleden | |
.gitignore | 6 dagen geleden | |
LICENSE | 6 dagen geleden | |
README.md | 2 dagen geleden | |
init-ocb.sh | 6 dagen geleden | |
ownchatbotwide.xcf | 6 dagen geleden | |
pyproject.toml | 6 dagen geleden | |
setup.py | 6 dagen geleden | |
smallrobo.xcf | 6 dagen geleden |
A chatbot for Owncast, enabling viewers to accumulate points which can be used to redeem stream rewards.
You can simply download the zip/tar file from the git repo, and decompress it, but I recommend cloning the repo instead. It will make upgrading to future versions much easier.
git clone https://git.deadtom.me/deadtom/OwnchatBot.git
At the command line, descend into the "OwnchatBot" folder.
To start the install, run:
bash init-ocb.sh
The last lines of init-ocb's output tell you how to proceed to the management panel, where you can set up Owncast integraion, and other odds and ends.
More detailed instructions for running OwnchatBot are covered below.
Port 8081 is used here as an example. Be sure to set a correct, usable port number.
Set the FLASK_APP variable:
export FLASK_APP=ownchatbot
Run the bot in debug mode:
env/bin/python -m flask --debug run --host=0.0.0.0 -p 8081
Run the bot:
env/bin/python -m flask run --host=0.0.0.0 -p 8081
Set the FLASK_APP variable:
export FLASK_APP=ownchatbot
Run OwnchatBot:
env/bin/python -m gunicorn -b 0.0.0.0:8081 -w 1 'ownchatbot:create_app()'
The above command directs all output to the console, but I prefer to have it all dump into a log file. You can do this with a small modification to this command:
env/bin/python -m gunicorn --error-logfile ownchatbot.log -b 0.0.0.0:8081 -w 1 'ownchatbot:create_app()'
Once OwnchatBot is running, you can start setting up your rewards and other options via the Management Panel. When you finish running init-ocb.sh, it gives you a URL for your management panel. It will look something like this, with a proper, pregenerated auth code attached to it.
http://localhost:8081/mgmt?auth=yourMGMT_AUTHcode
Once you're in the OwnchatBot management panel, bookmark it.
The first thing you'll want to visit is the settings page. Each option is explained in detail. Then you'll need to get it talking to your Owncast instance, covered below.
OwnchatBot accesses Owncast chat room information via a webhook. You'll need to point Owncast at that webhook for things to function.
/chatHook
appended (Example: http://localhost:8081/chatHook), which you'll set up below in the "Running OwnchatBot" section.You need to create a button on your Owncast page, so your viewers can access the Rewards Panel to view their points, the rewards queue, and other helpful information. This will only work with an SSL enabled server. If you're running Owncast behind a reverse proxy (which you really should be) then you need to set up another reverse proxy for OwnchatBot. Sorry, you're on your own for how to do that. It's way outside the scope of this document.
Set the third field (action title) to whatever you want the button to be named. Example:
http://localhost:8081/userpanel
Action Title: Points Rewards
Configure the remaining fields/options as desired.
Happy streaming!
To display vote and goal progress on-screen, in your stream, you need to create two browser sources in your streaming software.
Votes: http://localhost:8081/votes
Goals http://localhost:8081/goals
OwnchatBot © 2025 by DeadTOm is licensed under Creative Commons Attribution-ShareAlike 4.0 International.
The SmallRobo image was created by Mike Carey, mikecarey134@gmail.com. I've modified the image, but you can find the original image at Open Game Art. At the time of this writing, it is released under a Creative Commons CC-BY 3 license.
The basic layout of the user and management panels was copied from the tab bar tutorial on w3schools.com.
The food that keeps me alive during all-weekend coding sessions is provided by Wondrwmn.