Je relaie mes articles sur mon Discord via le site public de MonitoRSS et je voulais m’ajouter d’autres flux mais, et c’est normal, il souffre de quelques limitations quand on passe par le site.
MonitoRSS permet de lier un bot à notre compte Discord et ce bot peut être utilisé sur plusieurs serveurs et relayer plusieurs flux RSS.
Du coup, en route pour l’auto-hébergement !
Il faut commencer par créer une application et un bot Discord

Lui donner un p’tit nom, éventuellement lui mettre un avatar et une rapide description

Puis lui préciser l’URL de redirection après l’authentification. Ce sera l’URL de notre MonitoRSS suivie de /authorize
Les client ID & Secret serviront à configurer MonitoRSS

Vient enfin la création du bot

Le token servira à configurer MonitoRSS

On peut ensuite passer à l’installation, en Docker, et la configuration du bot. Pour des détails la Doc est bien fournie.
J’hébergerai la config dans /home/aerya/docker/mrss/. Je clone donc le git de ce même dossier.
git clone https://github.com/synzen/MonitoRSS-Clone.git .
Le . indiquant de cloner dans le dossier en cours et non un nouveau
Modifier le docker-compose pour l’adapter à notre configuration
version: "3.5"services: mrss-redis: container_name: mrss-redis-container restart: on-failure:5 image: redis:alpine mrss-mongo: container_name: mrss-mongodb-container restart: on-failure:5 command: mongod --port 27017 image: mongo:latest volumes: - '/home/aerya/docker/mrss/db:/data/db' mrss-bot: container_name: mrss-bot-container restart: on-failure:3 build: . depends_on: - mrss-mongo environment: - DRSS_START=bot - DRSS_BOT_TOKEN=xxx - DRSS_DATABASE_URI=mongodb://mrss-mongo:27017/rss mrss-web: container_name: mrss-web-container build: . restart: on-failure:3 depends_on: - mrss-redis - mrss-mongo ports: - "8082:8081" environment: - DRSS_START=web - DRSSWEB_BOT_TOKEN=xxx - DRSSWEB_DATABASE_REDIS=redis://mrss-redis:6379 - DRSSWEB_DATABASE_URI=mongodb://mrss-mongo:27017/rss - DRSSWEB_BOT_REDIRECTURI=https://mrss.upandclear.org/authorize - DRSSWEB_BOT_CLIENTID=938683932843589633 - DRSSWEB_BOT_CLIENTSECRET=xxx
Une fois qu’on y a modifié le chemin de montage de MongoDB, mis token/client ID et client Secret de notre bot et l’URL de redirection, on peut lancer tout ça
docker-compose up -d
Il va construire 2 images au passage et lancer la stack.
Creating network "mrss_default" with the default driverBuilding mrss-bot[...]Successfully tagged mrss_mrss-bot:latestWARNING: Image for service mrss-bot was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.Building mrss-web[...]Successfully tagged mrss_mrss-web:latestWARNING: Image for service mrss-web was built because it did not already exist. To rebuild this image you must use `docker-compose build` or `docker-compose up --build`.Creating mrss-redis-container ... doneCreating mrss-mongodb-container ... doneCreating mrss-bot-container ... doneCreating mrss-web-container ... done
On peut maintenant aller sur notre site

Il faut commencer par inviter le bot sur le serveur Discord et l’autoriser à lire/envoyer des messages et y intégrer des liens

Même chose enfin pour accéder au panneau de contrôle (bouton Control Panel donc)

On arrive sur notre interface de gestion des flux

Pour ajouter un flux RSS il suffit de sélectionner le serveur concerné à gauche puis d’entrer une URL de flux à suivre et un salon où poster automatiquement

On peut laisser tel quel, c’est le cas avec mes articles de blog par exemple. Ils seront relayés quelques minutes après leur publication.

Mais on peut aussi affiner la publication d’un flux RSS en en modifiant le contenu, l’aspect voire en les filtrant via des expressions.
