Skip to content

Umělá mezipaměť pro školní systém Bakaláři

License

Notifications You must be signed in to change notification settings

stanekondrej/baka-cache

Repository files navigation

Go Docker Image CI

baka-cache - umělá mezipaměť pro Bakaláře

Je pondělí, 7 ráno, ty jsi zrovna vstal/a a jdeš se připravit do školy. Všechno už máš hotové, oblečení na sobě, ranní hygienu provedenou - jen z tašky zeje díra, ve které chybí učebnice. Rychle odemkneš telefon a stiskneš ikonu aplikace Bakaláři. Místo hlavní nabídky se však na obrazovce objeví jen chybová zpráva.

„Bakalari uz zase nejdou, nemate nekdo screenshot rozvrhu?“ -Chatová skupina dotyčného, dost možná tebe

Co to teda vlastně je?

baka-cache je server, který dělá dvě hlavní věci:

  • každých x minut se ptá bakalářů na škole (resp. adrese) y na rozvrh pomocí přihlašovacích údajů studenta z
  • tento rozvrh pak na portu 9999 vydá

x, y a z jsou samozřejmě proměnné, které lze nastavit.

Jak to spustím?

Na serveru (klidně třeba svém počítači) musíš mít nainstalovaný Docker. Poté si naklonuj repo a sestav Docker image. Musíš si nastavit proměnné (viz .env.example) a pak sestavit Docker kontejner. Docker kontejner spustíš a jsi v cíli.

To je hodně informací. Proto tady jednotlivé příkazy vypíšu - dost možná je můžeš (pokud jsi na GNU/Linux distribuci) rovnou zkopírovat a vložit do terminálu.

cd ~ # vrácení do domovského adresáře
git clone https://github.com/stanekondrej/baka-cache.git # naklonování repa
cd baka-cache

cp .env.example .env
$EDITOR .env # uprav proměnné podle svých potřeb

docker buildx build --tag baka-cache . # sestav obraz kontejneru
docker run --publish 9999:9999 --env-file .env --tty baka-cache

Ano, jde to i bez Dockeru.

Proměnné

Názvy proměnných pravděpodobně indikují dostatečně jasně, co každá znamená, ale stejně to tady napíšu:

  • BAKALARI_USERNAME - uživatelské jméno, přes které se přihlašuje uživatel do Bakalářů. Nevím, co se stane, když se takto přihlásíte do učitelského účtu; here be dragons
  • BAKALARI_PASSWORD - heslo přiřazené k uživatelskému jménu BAKALARI_USERNAME
  • BAKALARI_URL - adresa URL, na které se nachází školní instance Bakalářů školy. Měla by být ve formátu https://bakalari.jmeno_skoly.cz, ale pokud vypadá trošku jinak, tak by to (snad) nemělo vadit
  • BAKALARI_UPDATE_INTERVAL - interval, ve kterém by se server měl ptát na nový rozvrh

About

Umělá mezipaměť pro školní systém Bakaláři

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published