Monitoring zmien na slovensko.sk cez changedetection.io, Docker a Ubuntu Server 24.04 LTS na Raspberry pi

Slovensko.sk nemá možnosť posielania mailových notifikácií o nových verziách eID klient a Disig Web signer. Hľadal som nejaký nástroj a našiel som changedetection.io.

Čo je changedetection.io?

changedetection.io je open-source nástroj na monitorovanie zmien na webových stránkach.
Aplikácia v pravidelných intervaloch kontroluje zadané URL adresy a pri zistení zmeny vie používateľa upozorniť napríklad e-mailom, cez webhook, Telegram, Discord alebo iné notifikačné kanály.

V tomto riešení sa changedetection.io používa na sledovanie stránky slovensko.sk/sk/na-stiahnutie, aby bolo možné včas zachytiť vydanie novej verzie softvéru, ako je eID klient, D.Suite/eIDAS alebo D.Launcher.

Inštalácia:

Vytvoríme si priečinok changedetection

mkdir changedetection

Cez textový editor nano, vim, alebo vi vytvoríme textový súbor

nano docker-compose.yml

Do súboru vložíme, napríklad toto. Port samozrejme môžete meniť, len u mňa som musel použiť tento.

services:
  changedetection:
    image: dgtlmoon/changedetection.io
    container_name: changedetection
    restart: unless-stopped
    ports:
      - "4020:5000"
    volumes:
      - ./datastore:/datastore
    environment:
      - PLAYWRIGHT_DRIVER_URL=ws://browserless-chrome:3000
      - BASE_URL=http://10.10.8.4:4020
    depends_on:
      - browserless-chrome

  browserless-chrome:
    image: browserless/chrome
    container_name: browserless-chrome
    restart: unless-stopped
    environment:
      - MAX_CONCURRENT_SESSIONS=5

Spustenie kontajneru

sudo docker compose up -d

Keď sa spustí kontajner tak otvorte webový prehliadač a zadajte IP adresu a port danej služby

X.X.X.X:4020

Ak chceme monitorovať slovensko.sk/sk/na-stiahnutie

Vložíme link a následne Edit > Watch

Následne klikneme na Notifications

Tam zadáme reťazec pre Mailcow, bude vyzerať nejak takto:

mailtos://slovensko-monitor%40ibasterisk.eu:heslo_k_uctu@mail.ibasterisk.eu:587?to=ivan.baronak%40sluzobny.com,ivan.baronak%40ibasterisk.eu&from=slovensko-monitor%40ibasterisk.eu

Tu je dôležité, aby existoval mail v mojom prípade som si vytvoril mailovú schránku slovensko-monitor@ibasterisk.eu a je potrebné zadať heslo k tomuto účtu. Následne som chcel aby mi mailové notifikácie posielalo aj na služobný mail.

Vysvetlivky:

V URL sa znak @ v používateľskom mene radšej kóduje ako: %40

Keď máte napísaný reťazec, môžete otestovať spojenie

Send test notification. Ak budete mať hlášku OK – Send test notification, tak syntax je v poriadku a malo by to prísť na obe mailové adresy.

Potom je potrebné, ako často má sledovať zmeny

A nastaviť prípadne časové pásmo.

naspäť