Every x messages of a monologue, the bot disrupts with an inspiring quote from https://inspirobot.me/
This bot is very simple, there is one command and for the most part it just sits in the background. You can invite my bot @inspirobot-disruptor:matrix.org
or host it yourself.
- After x amount of messages consecutively from one person in a room (configurable in the login.yaml file, default 10), it will post an inspiring quote image.
!help
will bring you back to this github- You can run
!inspire
to fetch one manually - Do note, this bot does not support encryption
-
Git (optional)
-
nodejs
-
This bot is tested to work with node
v20.12.2
andv18.20.2
-
Most distros will install with
sudo <package manager> install nodejs npm
-
On Debian stable the Node version included in the repos are ancient and can cause issues. Personally I installed node through snap and use that, but you can also download the binary manually or complile yourself.
-
-
npm
-
A Matrix account for the bot to use. You can use curl, or grab your token from element
- Navigate to Settings > Help & About > Advanced > Access Token
-
If using git, clone the directory and cd into it
git clone https://github.com/jjj333-p/inspirobot-disruptor-matrix cd inspirobot-disruptor-matrix
-
Copy the example config file in
example/login.yaml
todb/login.yaml
mkdir db cp example/login.yaml db/login.yaml
-
Follow the commented instructions found in
db/login.yaml
, entering in your homeserver and access token -
Install dependencies by running
npm install
-
Run the bot with
node index.js
snap run node index.js
for the users using snap
-
(Optional) Add to systemd services
-
Edit the following example to how you invoke the bot on your system, and add it to
/etc/systemd/system/inspirobot-disruptor-matrix.service
[Unit] Description=matrix bot that inspires [Service] RestartSec=2s Type=simple User=joseph WorkingDirectory=/home/joseph/inspirobot-disruptor-matrix/ ExecStart=/usr/bin/snap run node /home/joseph/inspirobot-disruptor-matrix/index.js Restart=always [Install] WantedBy=multi-user.target
-
enable and start the bot on startup with
sudo systemctl daemon-reload sudo systemctl enable --now inspirobot-disruptor-matrix
-