Post a message to a matrix room with a simple HTTP POST
Go to file
Jochen Kupperschmidt 78b9533e2b Exit early after each request check
Keeps the "happy path" on the function's base indentation level.

Avoids carrying status and return value variables, pre-filled in
anticipation of an error, along.
2020-12-27 14:52:07 +01:00
.pre-commit-config.yaml pre-commit 2020-03-08 22:15:48 +01:00
docker-compose.yml remove the need for www 2020-06-07 10:31:21 +02:00
Dockerfile markdown 2020-03-14 17:26:57 +01:00
LICENSE update license 2020-03-14 17:28:20 +01:00
matrix_webhook.py Exit early after each request check 2020-12-27 14:52:07 +01:00
README.md remove the need for www 2020-06-07 10:31:21 +02:00

Matrix Webhook

Post a message to a matrix room with a simple HTTP POST

Configuration

Create a matrix user for the bot, make it join the rooms you want it to talk into, and then set the following environment variables:

  • MATRIX_URL: the url of the matrix homeserver
  • MATRIX_ID: the user id of the bot on this server
  • MATRIX_PW: the password for this user
  • API_KEY: a secret to share with the users of the service

Dev

pip3 install --user markdown matrix-nio
./matrix_webhook.py

Prod

  • Use Traefik on the web docker network, eg. with proxyta.net
  • Put the configuration into a .env file
  • Configure your DNS for ${CHATONS_SERVICE:-matrixwebhook}.${CHATONS_DOMAIN:-localhost}
docker-compose up -d

Test / Usage

curl -d '{"text":"new contrib from toto: [44](http://radio.localhost/map/#44)", "key": "secret"}' \
  'http://matrixwebhook.localhost/!DPrUlnwOhBEfYwsDLh:matrix.org'

(or localhost:4785 without docker)

Test room

#matrix-webhook:tetaneutral.net