Twitch noisemaker
Project description
DJALLIN2
A mildly configurable twitch noisemaker capable of responding to chat and point redemptions.
Available through pip (djallin2
) or as a standalone executable for macOS and Windows.
Note for Windows users, your antivirus will probably think it's a trojan. It's not, but it kinda looks like one to your antivirus. If you get the option to report a false positive, please do so.
Configuration
config.txt
holds your token and configures chat and point responders.
Take a look at the example configuration for examples, and a detailed explanation for all settings.
The following block defines a basic chat listener:
[chat.sound]
badges = ['moderator', 'broadcaster', 'vip']
target = './sounds/'
command = '!sound '
Mods, VIPs, and the broadcaster can use !sound xxx
to play ./sounds/xxx.mp3
If badge and name filters are not supplied, anyone can use the command.
The random
setting enables random playback.
A value of 2
selects a random file from the directory.
[chat.wisdom]
target = './wisdom/'
command = '!wisdom'
random = 2
Points rewards are similarly configured.
Set the name
to the name configured in your twitch rewards.
A random
value of 1
enables the random
command where a random file will be selected if a user enters random
.
[points.sound]
name = 'play a sound'
target = './sounds/'
random = 1
Alternatively, you can duplicate configurations using links.
Setting applied in the block with a link
statement override settings in the linked responder.
[points.sound]
link = 'chat.sound'
random = 1
command_mode
can be used to define different match modes for the command
.
contains
allows you to play a single file or randomly select from a directory when a message contains the command phrase.
Chat listeners are checked in alphabetical order and when one plays a sound, checks stop.
[chat.z_cowboy]
command = 'cowboy'
command_mode = 'contains'
target = './sound/yeehaw.mp3'
Both point and chat blocks support custom code actions, check the example configuration for details.
Playback statistics can be recorded to a sqlite3 database of your choice.
Simply add stats = true
to your configuration block.
[chat.sound]
target = './sounds/'
command = '!sound '
stats = true
The name of the database can be changed by setting stats_db = 'database.sqlite'
at the top of your configuration file.
Known issues
Closing the soundbot window in Windows can lose some stat activity.
Use ctrl+c
to exit the program.
If a red screen shows when registering your twitch token, there may be a problem with your connection. Close the soundbot and try again.
TODO:
- This
- Let exit on fire be a configurable option?
- HTTP command receiver (lioran?)
- custom hook code - lioran example? obs websocket?
- Bits?
- Does linux support audio these days?
- https://inloop.github.io/sqlite-viewer/
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for djallin2-0.6.2a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | afe1df63d736501eeda5faa00aa4d919f8fc6a797fe14cbe5b294783d9b4fbd2 |
|
MD5 | 0026dcecc6010680cc9ec82b39bddeb1 |
|
BLAKE2b-256 | e32382edf0f59df38a4cb5a51a8597e8f0e7d7df6bc443c4985d9ddb9d0199a4 |