Self-hosted alternative to one of the big bots managed by big companies…
Find a file
2021-11-04 00:23:47 +01:00
.github [docs] Update README and funding 2021-10-22 21:37:48 +02:00
ci Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
docs Allow to customize token 2021-04-04 20:26:32 +02:00
editor [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
examples/plugin Update dependencies and bring plugin example to work with master 2021-08-19 22:58:10 +02:00
internal/actors [nuke] Add new moderation module 2021-10-25 23:21:52 +02:00
plugins [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
twitch [core] add streamUptime / formatDuration template functions 2021-10-13 14:30:45 +02:00
wiki [nuke] Add new moderation module 2021-10-25 23:21:52 +02:00
.gitignore Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
.golangci.yml Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
.repo-runner.yaml Add code linting / binary publishing (#3) 2021-04-03 14:11:47 +02:00
action_core.go [nuke] Add new moderation module 2021-10-25 23:21:52 +02:00
action_counter.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
action_script.go Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
action_setvar.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
actions.go Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
actorDocs.go Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
actorDocs.tpl [quotedb] Add new actor 2021-10-19 00:22:05 +02:00
automessage.go [automessage] Move spammy message to trace-level 2021-10-07 13:48:26 +02:00
botEditor.go [core] Allow the bot to track config editor changes through Git 2021-10-22 17:09:39 +02:00
botUserState.go [core] Fix: Emote sets are not int but uuid 2021-09-29 19:05:12 +02:00
config.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
configEditor.go [editor] Lint: Refactor code to simplify comprehension 2021-10-22 21:33:57 +02:00
configEditor_automessage.go [editor] Lint: Refactor code to simplify comprehension 2021-10-22 21:33:57 +02:00
configEditor_general.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
configEditor_global.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
configEditor_rules.go [editor] Lint: Refactor code to simplify comprehension 2021-10-22 21:33:57 +02:00
configwatch.go Fix: Do not spam events when file is gone for longer 2021-05-24 18:00:50 +02:00
cors.go Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
default_config.yaml Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
Dockerfile Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
events.go [core] Add "bits" event 2021-10-17 13:17:28 +02:00
functions.go [core] add streamUptime / formatDuration template functions 2021-10-13 14:30:45 +02:00
functions_counter.go [quotedb] Add new actor 2021-10-19 00:22:05 +02:00
functions_irc.go [quotedb] Add new actor 2021-10-19 00:22:05 +02:00
functions_twitch.go [core] add streamUptime / formatDuration template functions 2021-10-13 14:30:45 +02:00
git.go [core] Allow the bot to track config editor changes through Git 2021-10-22 17:09:39 +02:00
go.mod [core] Allow the bot to track config editor changes through Git 2021-10-22 17:09:39 +02:00
go.sum [core] Allow the bot to track config editor changes through Git 2021-10-22 17:09:39 +02:00
helpers.go Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
History.md prepare release v1.5.0 2021-11-04 00:23:47 +01:00
irc.go [core] Add "bits" event 2021-10-17 13:17:28 +02:00
LICENSE Add META 2020-12-21 01:55:48 +01:00
main.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
Makefile Breaking: Add configuration interface and switch to more generic config format (#7) 2021-09-22 15:36:45 +02:00
msgformatter.go Fix: Use derivation function for template fields 2021-09-03 00:13:28 +02:00
plugins.go [plugins] Move missing plugin-dir warning to debug level 2021-10-25 21:40:57 +02:00
plugins_unsupported.go Add plugin support to allow extending of functionality (#6) 2021-08-19 15:33:56 +02:00
README.md [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
store.go Add "punish", "reset-punish" actors and storage manager (#8) 2021-10-03 15:35:58 +02:00
swagger.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
swagger.html [openapi] Allow subdir serving 2021-10-10 01:40:44 +02:00
timers.go Add plugin support to allow extending of functionality (#6) 2021-08-19 15:33:56 +02:00
twitchWatcher.go Fix: Nil pointer segfaults due to direct access to message object 2021-09-02 23:26:39 +02:00
writeAuth.go [core] Implement write authorization for APIs (#9) 2021-10-25 21:40:52 +02:00
wrNoOpCloser.go Add raw-log functionality 2021-04-09 18:14:44 +02:00

Go Report Card

Luzifer / twitch-bot

Twitch-Bot is intended as an alternative to having a bot managed by Streamlabs or Streamelements and therefore having more control over it, the availability and how it works.

At the moment it is a work-in-progress and does not yet implment all features it shall in the future.

Configuration

Please see the Wiki for documentation of the configuration file.

# twitch-bot --help
Usage of twitch-bot:
      --command-timeout duration   Timeout for command execution (default 30s)
  -c, --config string              Location of configuration file (default "./config.yaml")
      --log-level string           Log level (debug, info, warn, error, fatal) (default "info")
      --plugin-dir string          Where to find and load plugins (default "/usr/lib/twitch-bot")
      --rate-limit duration        How often to send a message (default: 20/30s=1500ms, if your bot is mod everywhere: 100/30s=300ms, different for known/verified bots) (default 1.5s)
      --storage-file string        Where to store the data (default "./storage.json.gz")
      --twitch-client string       Client ID to act as
      --twitch-token string        OAuth token valid for client
  -v, --validate-config            Loads the config, logs any errors and quits with status 0 on success
      --version                    Prints current version and exits

# twitch-bot help
Supported sub-commands are:
  actor-docs                     Generate markdown documentation for available actors
  api-token <name> <scope...>    Generate an api-token to be entered into the config
  help                           Prints this help message