Logs Twitch chats to Google Cloud Datastore
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
views
.editorconfig
.eslintrc.js
.gitattributes
.gitignore
CHANGELOG.md
COMMANDS.md
LICENSE
README.md
app.js
channels.sample.json
config.sample.js
helpers.js
ignore.sample.json
index.sample.yaml
package-lock.json
package.json

README.md

Twitch Log Bot

Twitch Log Bot is a bot that will join Twitch channels and store chat messages using Google Cloud Datastore.

The web interface is just a basic interface to allow you to see past messages in a channel to see their chat history.
It is designed to be simple and only do lookups per-channel (and optionally: per-user).
If you want something that has more features, take a look at CBenni's Logviewer which is also hosted at cbenni.com.

Setup

  • Setup Google Cloud Datastore.
  • Setup node & npm.
  • Install dependencies using npm install.
  • Copy config.sample.js to config.js and edit the values (see comments in the config-file).
  • Copy index.sample.yaml to index.yaml and edit each kind to what you wish to store it as in Google Cloud Datastore. Anything else should (by default) be left as-is.
    • The easiest way to create these indexes is by installing Google Cloud SDK, then running gcloud init after installing.
    • After that, while being in the directory of this bot, run gcloud datastore create-indexes index.yaml and it should create the indexes.
    • If you wanna make sure you don't have unnecessary indexes on GC Datastore, run gcloud datastore cleanup-indexes index.yaml in the same directory.
  • Copy channels.sample.json to channels.json and edit it.
    • It's recommended to at least remove the example channels.
  • Copy ignore.sample.json to ignore.json.
    • If you are familiar with JSON objects, feel free to manually edit it. Otherwise, I recommend using the admin commands.
  • Run the bot using node app.js, or alternatively use pm2.

Updating

  • Download the latest release or pull directly from master using git pull.
  • Make sure dependencies are up-to-date by using npm install.
  • Make sure config.js has the same properties as config.sample.js.
    • Delete/move config.js elsewhere and make a new config.js based off config.sample.js if you feel like you have to.
  • Make sure index.yaml has the same values as index.sample.yaml (remember to edit the kind!) and update indexes using for example gcloud datastore create-indexes index.yaml.
  • Run the bot using node app.js, or alternatively use pm2.

Changelog

Changelog can be found here: CHANGELOG.

Commands

Commands can be found here: COMMANDS.

License

This is licensed under the MIT License.