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.
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
- 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
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
source myconf.env && cargo run