twitch logging platform
Go to file
Fijxu 06afa45094 test? 2023-11-02 01:50:27 -03:00
.github/workflows correctly respond when user is banned or otherwise not available on api 2022-11-11 21:25:37 +01:00
api sex!!!!!!!!!!!!!!!! 2023-10-18 03:54:57 -03:00
archiver double check if we actually try to open a dir 2019-08-18 11:08:27 +02:00
bot prevent double messages by keeping ids in map, clearchat has no ID so still might be double 2023-01-08 19:45:57 +01:00
config fix duplication of userids on config when added via api #134 2021-11-23 10:12:24 +01:00
filelog interface-ified logger 2022-10-28 00:50:24 +02:00
helix prevent double joins accross workers, reduce log spam ab it 2022-12-21 17:30:27 +01:00
humanize add tests for humanize 2019-08-18 11:38:54 +02:00
web test? 2023-11-02 01:50:27 -03:00
.gitignore simplify webpack setup 2020-09-05 12:15:35 +02:00
Dockerfile Bump dependencies 2023-03-07 17:55:13 +02:00
LICENSE use json config and enable arguments 2018-11-29 22:20:57 +01:00
Makefile Bump dependencies 2023-03-07 17:55:13 +02:00
README.MD Update README.MD 2023-03-11 10:07:17 -06:00
go.mod prevent double messages by keeping ids in map, clearchat has no ID so still might be double 2023-01-08 19:45:57 +01:00
go.sum prevent double messages by keeping ids in map, clearchat has no ID so still might be double 2023-01-08 19:45:57 +01:00
main.go Migrate create-react-app to vite 2023-02-28 21:29:09 +02:00

README.MD

justlog Build Status

What is this?

Justlog is a twitch irc bot. It focuses on logging and providing an api for the logs.

Optout

Click the X icon on the web ui to find an explanation for how to opt out.

API

API documentation can be viewed via the justlog frontend by clicking the "docs" symbol:
image

Docker

mkdir logs
docker run -p 8025:8025 --restart=unless-stopped -v $PWD/config.json:/etc/justlog.json -v $PWD/logs:/logs ghcr.io/gempir/justlog

Commands

Only admins can use these commands

  • !justlog status will respond with uptime.
  • !justlog join gempir pajlada will join the channels and append them to the config.
  • !justlog part gempir pajlada will part the channels and remove them from the config.
  • !justlog optout gempir gempbot will opt out users of message logging or querying previous logs of that user. the same applies to a user's own channel.
  • !justlog optin gempir gempbot will revert the opt out.

Config

{
    "admins": ["gempir"], // will only respond to commands executed by these users
    "logsDirectory": "./logs", // the directory to log into
    "adminAPIKey": "noshot", // your secret api key to access the admin api, can be any string, used in api request to admin endpoints
    "username": "gempbot", // bot username (can be justinfan123123 if you don't want to use an account)
    "oauth": "oauthtokenforchat", // bot token can be anything if justinfan123123
    "botVerified": true, // increase ratelimits if you have a verified bot, so the bot can join faster, false by default
    "clientID": "mytwitchclientid", // your client ID, needed for fetching userids or usernames etc
    "clientSecret": "mysecret", // your twitch client secret
    "logLevel": "info", // the log level, keep this to info probably, all options are: trace, debug, info, warn, error, fatal, and panic, logs output is stdout
    "channels": ["77829817", "11148817"], // the channels (userids) you want to log
    "archive": true // probably keep to true, will disable gzipping of old logs if false, useful if you setup compression on your own
}

Development

Development requires yarn and go-swagger

Run go build && ./justlog and yarn start in the web folder.

Or run make container and make run_container