78 lines
2 KiB
Markdown
78 lines
2 KiB
Markdown
# Butter Robot
|
|
|
|

|
|

|
|
|
|
Python framework to create bots for several platforms.
|
|
|
|

|
|
|
|
> What is my purpose?
|
|
|
|
## Supported platforms
|
|
|
|
| Name | Receive messages | Send messages |
|
|
| --------------- | ---------------- | ------------- |
|
|
| Slack (app) | Yes | Yes |
|
|
| Telegram | Yes | Yes |
|
|
|
|
## Provided plugins
|
|
|
|
|
|
### Development
|
|
|
|
- `!ping`: Say `!ping` to get response with time elapsed.
|
|
|
|
### Fun and entertainment
|
|
|
|
|
|
- Lo quito: What happens when you say _"lo quito"_...? (Spanish pun)
|
|
- Dice: Put `!dice` and wathever roll you want to perform.
|
|
|
|
## Installation
|
|
|
|
### PyPi
|
|
|
|
You can run it directly by installing the package and calling it
|
|
with `python` though this is not recommended and only intended for
|
|
development purposes.
|
|
|
|
```
|
|
$ pip install --user butterrobot
|
|
$ python -m butterrobot
|
|
```
|
|
|
|
### Containers
|
|
|
|
The `fmartingr/butterrobot/butterrobot` container image is published on Github packages to
|
|
use with your favourite tool:
|
|
|
|
```
|
|
docker pull docker.pkg.github.com/fmartingr/butterrobot/butterrobot:latest
|
|
podman run -d --name fmartingr/butterrobot/butterrobot -p 8080:8080
|
|
```
|
|
|
|
## Contributing
|
|
|
|
To run the project locally you will need [poetry](https://python-poetry.org/).
|
|
|
|
```
|
|
git clone git@github.com:fmartingr/butterrobot.git
|
|
cd butterrobot
|
|
poetry install
|
|
```
|
|
|
|
Create a `.env-local` file with the required environment variables,
|
|
you have [an example file](.env-example).
|
|
|
|
```
|
|
SLACK_TOKEN=xxx
|
|
TELEGRAM_TOKEN=xxx
|
|
...
|
|
```
|
|
|
|
And then you can run it directly with poetry
|
|
|
|
```
|
|
docker run -it --rm --env-file .env-local -p 5000:5000 -v $PWD/butterrobot:/etc/app/butterrobot local/butterrobot python -m butterrobot
|
|
```
|