The system in action
Check out how seamlessly the project works!
Support the project
You can tip me with some sats here!
This is, and always will be, entirely free to use of course!
Rough test setup guide
This is currently intended for testing only.
You need to have git, python, and it's virtualenv module installed.
- Clone the repo and
cd
into it - Create and enable a virtualenv
- In the venv, run
pip install -r requirements.txt
- Get an lntxbot wallet
- Get an API key from lntxbot by messaging it
/api full
- Log in to https://streamlabs.com/
- Register an App
As this is an app just for you, you can fill the name, description
phone, and email fields with whatever you want. They are not relevant.
In the "Whitelist Users" field, enter your Twitch username.
In "Redirect URI", enter "http://localhost:6969". - After hitting "Create", leave this page open for now, as it contains
your Client ID and Secret, which you will need in the next step - Run
python initial_setup.py
and follow the instructions (enterlocalhost
as the IP for now) - Run
python wait_for_token.py
and leave this running - On the Streamlabs App page, click the link that says "Sample Authentication URL"
towards the bottom of the page - Click "Approve"; this should redirect you to a plain text page that tells you to stop the server
- Go back to the terminal that is running
wait_for_token.py
,
and hit ctrl+c to stop the server - You should now be able to run
. ./start_lnbits.sh
, which should launch
LNbits in the background, making it reachable at http://localhost:5000/ - Run
python webhook.py
and leave it running in the background - In LNbits, create a wallet, and enable the SatsPayServer extension under "Manage extensions"
- In SatsPayServer, hit "NEW CHARGE," and fill out all the required fields
In the "webhook" field, enter http://localhost:5001/ - Pay the charge with any lightning wallet
(After hitting "CREATE CHARGE," the charge should appear in a list after
an automatic refresh. On the very left side of that list entry is a small
grey button that will open the payment link in a new tab.)
If everything worked, you should see a new donation pop up here (remember to refresh).
If something went wrong, please submit an issue!
Contributing
I want this to be a project that allows streamers on Twitch to integrate Bitcoin donations
into their on-stream alerts with as little setup as possible.
Things you can help with:
- Clarifying steps in the guide, or linking to/writing more detailed guides to get non-technical users up to speed
- Writing scripts that would make this run on Windows (in case a streamer opts for self-hosting on Windows)
I'm not at all used to maintaining projects with other contributors, so I don't know, just follow the
common etiquette or whatever if you wanna help :)
I would especially appreciate help with just making things cleaner and more efficient (I'm not a professional),
as well as potentially integrating services other than Streamlabs (not sure if there are any
that are widely used like Streamlabs and actually have an API for this).