Self-hosted async Python bot, runs as systemd --user unit (obs-twitch-bot.service, sibling to obs-mpd-bridge). Connects to Twitch IRC over TLS as vault118, listens in #ophi118, advances MPD on !skip and posts the new track back to chat. 5s cooldown swallows skip-spam silently. Strips Unicode Tags-block codepoints (U+E0000–U+E007F) before matching the command so Twitch's anti-duplicate suffix doesn't break every-other !skip when the broadcaster fires the same command twice in a row. Bot account is separate (vault118) to keep the broadcaster's display name out of bot replies; .env holds access token + refresh token + client id (refresh + client id stored for future token rotation, unused today).
10 KiB
10 KiB