Releases: mitchwadair/mthebot
Releases · mitchwadair/mthebot
MtheBot_ v2.2.2
Updates Twitch API call to support new response structure for getSubCount
- Mainly just an efficiency improvement
MtheBot_ v2.2.1
Minor dependency updates
MtheBot_ v2.2.0
Adds support for the 'follow' event using TESjs.
Changes
- Update main app to use TESjs for follow support
- Update API to handle TESjs subscriptions for follow event
- README changes
MtheBot_ v2.1.0
This release improves the structure of MtheBot_ in order to make it a little cleaner and more modular. No functionality change included here.
Additions
- ChannelManager
- Moved channel management outside of main app
- Channel class
- Used in ChannelManager
- lots of related functions to enable cleaner code
- TimerEmitter
- externalizing tmi client so timers can be emitted from outside app.js
Changes
- Util type functions moved to utils, references updated
- Datatags moved to external files
- set up for expandability
MtheBot_ v2.0.1
Fix auth bug in API server causing all requests that should be valid to fail
MtheBot_ v2.0.0
Pretty major changes happening here.
Express Upgrade
- Upgraded the API server to express
- makes maintaining the server much easier
- better code in general
- authentication much easier
- Some API changes
/auth/:id
now a public endpoint- handles authentication with twitch with their auth code flow
- handles initialization of new users
/init/:id
removed- this functionality now handled by
/auth/:id
endpoint
- this functionality now handled by
DBService
- Add DBService to the bot
- centralized location for DB requests
- no need to pass DB object all over the place
Token Updates
- Updated authentication method in order to get user access tokens from Twitch
- app access tokens no longer work for MtheBot_'s usecase
- overhauled Twitch API and related data tags to reflect this change
Other changes
- Doc changes to reflect updates above
- Consolidate
utils
to one file at root
MtheBot_ v1.2
A lot has changed in this release of MtheBot_. Some of these changes may have slipped my mind and not show up here, but this should cover the major ones.
Changes
- DB structure changes
- This isn't necessarily reflected in the code here, but a major change in structure has occurred
- commands/timers/events all have their own table now indexed by channel uid
- this is a major improvement on the previous method of storing all the data in one JSON field in the DB
- API Improvements
- Following a more standard RESTful API structure
- POST for new data, PUT to change existing
- GET for both all and by value for all data endpoints
- Validate incoming request data for correct structure/data types
- Update functionality under the hood for DB structure changes
- Token validation done using more correct Twitch endpoint
- Allows for better error response handling and detection of impending token expiration
- Prioritize token expiration before token mismatch for 401 responses
- General code quality improvements and bugfixes
- Following a more standard RESTful API structure
- Channels are indexed in the DB by UID rather than by name
- This will prevent the inevitable errors caused by a user changing their name, thus making it impossible to fetch their data
- Improved DB querying
- made possible by the previous two points
- bot logs now timestamped for logs relating to bot activity
- API log timestamps coming at some point in the future
- Postman Collections updated to reflect changes made
Additions
- Initial Doc created
- Skeleton of where things will be
- API Doc first iteration completed
MtheBot_ v1.1.1
MtheBot_ v1.1.1: Minor External API Improvements
Changes
- Reduce code repetition by putting https request in one method
- call on this method for all API requests
- reduces clutter of code that gets repeated
- allows for only the need for data manipulation in specific functions
MtheBot_ v1.1.0
MtheBot_ v1.1.0: Command Improvements
In this minor version upgrade, I have added several new things related to bot commands as well as a small API change/addition.
Additions
- Auth API
- User posts auth token from UI for authentication with Twitch API
- Auth token is AES encrypted in the DB
- Command Datatags v1
- Adds datatags for commands
- Supports basic data for the message:
{{sender}}, {{channel}}
- Supports user-level channel commands:
{{commands}}
- Supports Twitch API for the following:
{{followage}}, {{followcount}}, {{subcount}}, {{uptime}}, {{game}}
Changes
- Minor contact API change for email structure
- Allow all private requests in development mode
MtheBot_ V1.0.1
Changes
- Require Auth header from API request to private APIs
- Should include Bearer token received from Twitch auth
Additions
- Session pooling
- due to change above, auth requires call to Twitch API to verify identity of callee in private API requests
- keeps performance good by pooling sessions and requiring re-verification after 5 minutes of inactivity
- Contact API
- Users may send a request to this API to send an email to the Bot host
- Utilizes gmail credentials with nodemailer
Removals
- origin checks, as they were not the right way to verify access to private API