Twitch badge support implemented

This commit is contained in:
Luxferre
2024-09-20 12:21:28 +03:00
parent 4e972bd5f5
commit 56f7da4748
9 changed files with 180 additions and 16 deletions
+8 -3
View File
@@ -13,6 +13,7 @@ Nevertheless, the following features are already implemented:
- Twitch, YouTube, Owncast and Kick chat aggregation (see "Backend implementation status" section)
- Handling Twitch emotes
- Automated Twitch chat badges output (global and channel-specific)
- Handling YouTube non-Unicode emotes (see "Backend implementation status" section)
- Handling Kick emotes
- Message styling based on Twitch and YouTube roles
@@ -27,7 +28,7 @@ Nevertheless, the following features are already implemented:
## Planned features
- "Deleted message" support for YouTube
- Automated Twitch chat badges output (global and channel-specific)
- Badge support for Kick
- Internal chat ranking system by username
- Backend-independent support for oldschool plaintext emoticons ;-)
- Starting window geometry customization via config (now doable via custom JS)
@@ -191,7 +192,7 @@ The following procedure needs to be only done once per ~2 months:
1. Go to the [Twitch Chat OAuth Password Generator](https://twitchapps.com/tmi/) website.
2. Login with your own Twitch account and give it the access.
3. Copy the token string that starts with `oauth:` and paste it into the `twitch-token.txt` file in the `auth` subdirectory in the application directory.
3. Copy the token string that starts with `oauth:` and paste it into the `twitch-token.txt` file in the `auth` subdirectory in the application directory (note that it is different from `twitch-cid.txt` that already is present in this subdirectory).
4. Save the file. The Twitch connection should now work.
5. If the connection doesn't work, make sure that the `tw_backend_enabled` field is set to `true` in `config.json` and that you used the same Twitch nickname to get the token as the one specified in the `tw_nickname` field.
@@ -273,7 +274,6 @@ Each regular expression captures: the string start or a whitespace character, th
Mostly stable. Some edge cases still could be found and further investigated.
Most chat badges are still ignored when rendering the messages.
### YouTube (internal)
@@ -319,6 +319,11 @@ Sure, anything can happen. The problem with adding a new platform support, as al
Besides the main four, anyway, your best bet would be to create an **external** backend for the platform you're interested in (again, you could use any programming language you want), and then incorporate it into this repo in the `/external` directory. When the backend is mature enough, we can always sit and think about how to convert it into an internal one to be distributed inside the StreamGoose binary.
### Why is there a `twitch-cid.txt` file in the `auth/` directory?
This is the Client ID corresponding to the [Twitch Chat OAuth Password Generator](https://twitchapps.com/tmi/) website. Id you generate a Twitch token through it, you'll need this ID for external Twitch API such as badges to work correctly.
Twitch client IDs are not considered secrets and can be included in the source code.
## Credits