codingteam / horta-hell

Configurable XMPP bot written in Scala based on the Akka framework.
MIT License
15 stars 8 forks source link
bot chat xmpp

horta hell Status Aquana BuildStatus

Docker Hub page

horta hell is XMPP bot. It is based on the Akka framework.

Using

Configuration

Copy horta.properties.example file to horta.properties and tune it. All options should be self-explanatory.

Horta designed to use the embedded H2 database. You may tune the storage parameter group in the configuration file. Note that AUTO_SERVER parameter should be set to TRUE for coordinated database access of multiple applications.

By default horta will use the configuration file horta.properties from the current directory but it will read the path to the configuration file from the program arguments.

Twitter integration

To set up the Twitter integration, you should create an app on Twitter application management site, and generate access token there.

Deployment

For production deployments, see Docker deployment.

For the development purposes, use sbt run command from terminal or any compatible IDE.

Building

The production-ready build can be created with the following command:

sbt assembly

Command system

Commands may be entered in MUC (multi-user chat) or private chat with bot (private commands do not work for now).

Command syntax:

$command argument1 argument2

or

command/argument1/argument2/

Characters inside every argument and the command name itself may be escaped with the \.

Known command list:

Contributing

horta development is open process and we're glad to accept any suggestions and pull requests. When contributing please keep in mind our branching model. We're trying to follow the git-flow one. E.g. we have two main branches: master and develop.

Code in the master branch should be as stable as possible. It is constantly deployed on our server and mostly tested.

Code in the develop branch is our "trunk" - new features should be merged here and tested by the developers (and by the CI system if present).

When forking, please create new branches from the develop branch.

If you want to write new plugin for Horta, read the following documentation.

Report any bugs to the issues list. You may ask for support in our XMPP conference: codingteam@conference.jabber.ru.