Skip to content

Core application and backend of the Twasi chatbot for Twitch.

License

Notifications You must be signed in to change notification settings

Twasi/twasi-core

Repository files navigation

Twasi-Core

Twasi Core is the Core Application of the Twasi Twitchbot. It hosts all the other plugins, manages the connection to the interface (Twitch IRC) and manages data persistence.

Build Status Quality Gate Code Coverage Duplicated lines Lines of code

Contents

Twasi-Core is the main application. It can be started and will then automatically create the initial folder structure and config files. After that, you have to adapt those files and install all the plugins you need. After that, you can start it again. It will connect to the configured MongoDB server, load all plugins in the 'plugins' directory and start the webinterface.

These features are beeing implemented or planned into twasi-core. See the feature-plugin list for a complete list of options:

  • Reliable, simple and small API for plugins
  • Multilanguage (In first place English and German. For other languages is community support needed)
  • WebAPI interface where you can control the bot over the network (e.g. an online panel) and register new users without asking them for their Twitch OAuth token.

Feature Plugins

The following list of feature plugins are planned:

Plugin Name Description Author
commands Create, edit, delete and execute custom commands. Powerful in combination with twasi-variables Twasi team
common-variables Nice to have variables Twasi-team
twasi-currency Award your viewers for their participation in your stream Twasi-team
songrequest Let your viewers request their music. This plugin also provides an API for the player Twasi-team
message-logger Log messages in the database and access them via WebAPI including pagination. Also collect some neat chat statistics. Twasi-team
stream-stats Collect statistics for your stream and access them via WebAPI. You can generate some pretty awesome charts with this data! Twasi-team
timed-messages Repetitive write messages in the chat Twasi-team
raffles Giveaways and other tools to give your viewers something back. Integrates and depends on twasi-variables. Twasi-team

All these plugins listed here are also available in our hosted version. Have you written your own plugin and want to have it featured here and to easy use it in the hosted version? Let us now! Mail

Compile from source

Twasi-Core is a java maven application. Just issue mvn clean compile assembly:single to generate your jar file. Copy it to an own directory (it will create some files) and issue java -jar TwasiCore-1.0-SNAPSHOT-jar-with-dependencies.jar in it. It will fail to start (no connection to database), but create a config file (twasi.yml). Edit the config files and adapt all values to your needs. Learn here how to set up and initialize the database. Learn here how to set up the authentication with Twitch to use the /auth endpoint.

Download precompiled version

Later you will find the latest release in the release tab on Github. Sadly, there are no releases during our instable development version. But you can download a snapshot of the latest changes from our artifactory repository here