3 releases
0.1.4 | Mar 22, 2024 |
---|---|
0.1.2 | Jan 19, 2024 |
0.1.0 | Jan 18, 2024 |
#684 in Web programming
129 downloads per month
91KB
2.5K
SLoC
Richard
Richard is a friendly chatbot which can help you trigger alerts.
For now, the bot only support Webex room to speak for has a modular architecture to add any other communication protocols.
Features
Richard is modular and every module must be explicitely enabled.
Available modules:
- webex: interface with Webex chat service
- ping: responds to /ping commands with "pong"
- help: responds to /help command
- triggers: allow commands to be sent to all other modules
- down_detectors: watch for one or more URL. Alert when target goes down
- github_orgs: watch for all releases of all repositories of one or more github organisation
- github_repos: watch one or more specific githib repositories, trigger message on new release
- hello: send a random quote at a specific time interval
- ollama: interface with ollama API, respond when no command is triggered
- feeds: watch for one or more RSS feeds, alert on new items
- roll: responds to /roll commands. e.g. /roll 1d20
- webpages: watch for one or more webpages. Alert when page content change.
- outscale_api_versions: watch for new API version of one or more Outscale API endpoints
Build
- Install Rustlang
- Run
cargo build --release
If you need to have a static binary:
- Install musl toolchain:
rustup target add x86_64-unknown-linux-musl
- Install
musl-gcc
(for Debianapt install musl-tools
) - Build with
cargo build --target x86_64-unknown-linux-musl --release
Configure
Parameters are passed through environment variables. See config.env.ori example.
Use --show-params
flag to print all needed var env per modules
As a facility, you can:
- copy
config.env.ori
toconfig.env
- edit
config.env
- load options by running
source config.env
Run
source myconf.env && cargo run
Dependencies
~16–30MB
~521K SLoC