Hallo Jamal, welkom bij deze podcast! Vandaag duiken we in een belangrijk onderwerp: de relatie tussen de nieuwe Appel 2 en de oude Appel. Jouw vraag was heel helder: waar verwijst Appel 2 nog naar de oude Appel, en is het slim om de belangrijkste functionaliteiten naar de nieuwe omgeving te halen? Na ons onderzoek op 9 september hebben we daar een duidelijk beeld van gekregen, en belangrijker nog: een praktisch stappenplan.
Laten we beginnen met de kern. Technisch gezien is er al veel mogelijk. Alle functionaliteit van de oude Appel is via Appel 2 bereikbaar, en zelfs de spraak-websocket werkt op beide domeinen. Dat betekent dat we qua techniek al bijna op één domein zitten. De huisstijl is ook al grotendeels gelijkgetrokken; de CSS van Appel 2 is zelfs letterlijk overgenomen van de oude indexpagina, en veel pagina's gebruiken al hetzelfde lettertype en kleurenpalet.
Maar er zijn ook een paar knelpunten, en die zorgen voor verwarring bij Dani. Het grootste probleem is de zogenaamde 'PIN-poort'. Zestien oude pagina's, zoals de sparren-pagina of de vakpagina's, sturen je terug naar de voordeur van Appel 2 als een specifieke code niet is gezet. Omdat die code domeingebonden is, en Appel 2 die niet zet, kom je dus steeds weer bij het beginpunt uit als je zo'n oude pagina via Appel 2 opent.
Een ander groot verwarringspunt is dat de oude Appel nergens teruglinkt naar Appel 2. Geen van de dertig oude bestanden noemt de nieuwe omgeving, dus als Dani eenmaal in de oude omgeving is, kan ze niet eenvoudig terug. Daarnaast valt op dat de oude site stilzwijgend verkeerde links accepteert. Als je een niet-bestaande pagina bezoekt, krijg je geen 404, maar gewoon de oude voordeur te zien. De nieuwe Appel 2 geeft hier wel netjes een echte foutmelding.
Als we kijken waar Appel 2 momenteel nog naar de oude Appel verwijst, komen we een aantal belangrijke zaken tegen. Denk aan de spraakbot, de oefentoetsen, de planning en het uploaden van huiswerkfoto's. Ook de leerblokken verwijzen vaak naar pagina's in de oude omgeving, zoals 'leren.html' met de leercirkel en de specifieke vakpagina's voor Duits, Engels en Frans. Dit zijn allemaal cruciale onderdelen die Dani dagelijks of wekelijks gebruikt.
We hebben elke belangrijke doelpagina onder de loep genomen om te zien hoe complex deze is en of deze overgezet kan worden. De **sparren-pagina** is vrij klein; het is eigenlijk een formulier vóór de spraakbot. De spraakbot zelf, die draait op 'index-oud', is een enorm en complex systeem. Deze verplaatsen als geheel is nu niet realistisch. De **oefentoetsen** zijn al deels aangepast voor Appel 2 en kunnen relatief eenvoudig de nieuwe huisstijl krijgen. De **planning** is een middelgrote klus, maar veel van de benodigde data zit al in Appel 2. Wat ontbreekt, zijn bijvoorbeeld de aftelklok voor actiepunten en een boekenlijst. Het uploaden van **huiswerkfoto's** is een kleinere aanpassing, mede omdat jij besloten hebt dat foto's niet meer verplicht zijn. De pagina 'leren.html', de **leercirkel**, is een heel groot en complex onderdeel. Het is beter om deze voorlopig in de 'Bibliotheek' te laten en later pas specifieke onderdelen daarvan naar Appel 2 te halen. De **vakpagina's** zijn per vak een middelgrote klus en bevatten ook de PIN-poort. De **oude indexpagina** wordt uiteindelijk het menu voor de 'Bibliotheek'.
Op basis hiervan hebben we een voorstel in fasen opgesteld, Jamal. Het uitgangspunt is jouw regel: bestaand werk één-op-één overzetten, zonder opnieuw te ontwerpen, en alles is omkeerbaar.
**Fase A: De terugweg en de PIN-poort (klein, snel te realiseren)** Het doel is dat Dani vanuit elke oude pagina met één tik terug kan naar Appel 2, en dat niets meer terugkaatst door die PIN-poort. We willen een regel toevoegen die de benodigde code zet in Appel 2, zodat oude pagina's werken. Verder passen we de navigatiebalk aan zodat "Appel" en "Start" altijd naar Appel 2 wijzen, en voegen we een duidelijke knop "Bibliotheek" toe voor de oude Appel. Ten slotte maken we alle harde links in Appel 2 relatief.
**Fase B: Sparren in Appel 2 (klein-middel)** Hierbij nemen we de sparren-pagina één-op-één over als een v2-pagina. Het is een klein formulier dat vóór de spraakbot zit. De spraakbot zelf blijft voorlopig nog draaien op de oude omgeving. Dani ziet dan alleen nog een Appel 2-scherm en één 'praat-scherm' dat opent.
**Fase C: De week-tab in Appel 2 (middel)** Dit is de "open ontwerpvraag" die we eerder hadden. We nemen de secties van de planning-pagina één-op-één over als een tweede tab in Appel 2. Denk aan actiepunten met een aftelklok, huiswerk en wat je moet kennen per toets. De meeste data heeft Appel 2 al.
**Fase D: Oefentoetsen in de Appel 2-jas (klein)** Hierbij zorgen we ervoor dat 'oefentoetsen.html' de nieuwe Appel 2-stijl laadt, zodat het visueel helemaal klopt. De functionaliteit blijft ongemoeid.
**Fase E: De rest blijft Bibliotheek** De complexere onderdelen zoals de leercirkel, de pagina voor succesvol leren, de vakpagina's en andere minder frequent gebruikte pagina's, blijven voorlopig in de oude omgeving. Ze zijn dan goed gelinkt vanuit Appel 2 en met een duidelijke terugweg bereikbaar als een "Bibliotheek".
Dit stappenplan zorgt ervoor dat we snel de grootste knelpunten wegnemen en de belangrijkste functionaliteiten een plek geven in de nieuwe, prettige Appel 2-omgeving. Zo creëren we voor Dani een veel soepelere en consistentere ervaring. Ik denk dat we hier een mooie basis hebben om verder te bespreken.
Bedankt voor het luisteren, Jamal!
Vraag van Jamal: waar verwijst Appel 2 (appel2.haartips.nl) nog naar de oude Appel (appel.haartips.nl)? En is het slim om de belangrijkste dingen in Appel 2 te zetten?
Gemeten op 9-9-2026, alleen via HTTPS (curl) en lokale bestanden. Geen ssh, niets gewijzigd, geen browser. Wat ik niet kon meten staat als onzeker.
@oud werkt: sparren.html, planning.html, leren.html, index-oud, oefentoetsen.html, alle JSON-data en de backend (/toets/, /nulmeting/, /bespreek/) geven 200 op appel2. Ook de spraak-websocket /live werkt op beide domeinen (bewezen: 101 Switching Protocols op appel én appel2). Technisch is "één domein" dus al bijna waar.index.html als localStorage.appel_ok niet 1 is. Die sleutel wordt alleen gezet door de oude index.html (PIN 2703) en dagstart.html. localStorage is per domein. Op appel2 is index.html = Appel 2, die zet niets. Gevolg: open je zo'n pagina via appel2, dan stuit je terug op de voordeur van Appel 2. Daarom staan de links in Appel 2 nu als volledige https://appel.haartips.nl/...-adressen. Let op (onzeker, uit code afgeleid, niet in een browser getest): de relatieve link "📷 foto (niet verplicht)" op de voordeur van Appel 2 gaat naar huiswerk-foto.html op appel2 en kaatst dus waarschijnlijk terug.appbar.js stuurt "🍎 Appel" en "🏠 Start" naar de oude index.html. Sparren.html "‹ Terug" gaat naar de oude index.html. Dit is het grootste verwarpunt voor Dani.appel.haartips.nl/bestaat-niet.html, /toets.html en /les.html geven 200 met de oude voordeur (geen 404). Een link met het verkeerde domein (bijvoorbeeld in een Telegram-bericht) landt dus geruisloos op de oude Appel. appel2 geeft wel een echte 404.appel2.css is letterlijk overgenomen van de oude index.html (regel 2 van appel2.css zegt dat). Zes oude pagina's hebben al Bricolage Grotesque + Atkinson + #0f1420. De rest gebruikt Baloo 2 (koppen) op bijna dezelfde donkere achtergrond (#0f1424). Alleen index-oud, inhoud.html, planning/rooster/masterclasses wijken echt af.Bron: v2/index.html, v2/toets.html, v2/les.html, v2/lessen.html, v2/appel2-data.js (lokale kopie, stand 8-9 23:48). "Absoluut" = hard https://appel.haartips.nl/.... "Relatief" = zelfde domein, op appel2 via de terugval @oud.
| # | Bestand:regel | Linktekst voor Dani | Doel | Waarvoor | Hoe vaak |
|---|---|---|---|---|---|
| 1 | index.html:20 + :161 | 🎙️ Sparren met Appel · zeg gewoon waar je mee bezig bent | https://appel.haartips.nl/sparren.html (absoluut) |
invoerbalk onderaan de voordeur, kies vak + bladzijde, dan spraakbot | dagelijks |
| 2 | index.html:21 + :97 | Ja, samen doen ▶ (als het eerste open item huiswerk of inleveren is) | https://appel.haartips.nl/index-oud-20260819.html?spar=<vak>\|<kop> (absoluut) |
spraakbot start meteen over dat huiswerk | dagelijks (thuiskomst) |
| 3 | index.html:22 + :161 | 📚 (tooltip "Bibliotheek") | https://appel.haartips.nl/ (absoluut) |
hele oude Appel | altijd zichtbaar, gebruik zelden |
| 4 | index.html:23 + :93 | … en nog N, zie de planning | https://appel.haartips.nl/planning.html (absoluut) |
alleen als er meer dan 4 items zijn | soms |
| 5 | index.html:23 + :127 | 📅 hele week → | planning.html (absoluut) |
alleen als er 2 of meer toetsen aankomen | wekelijks |
| 6 | index.html:146 | ▶ Doe eerst de oefentoets | oefentoetsen.html?set=havo2-toetsmij&vak=… (relatief) |
ochtend van een toetsdag | bij toets |
| 7 | index.html:86 + appel2-data.js:103 | 📷 foto (niet verplicht) bij planner-huiswerk | huiswerk-foto.html?vak=&item=&terug=/ (relatief) |
foto van gemaakt werk | dagelijks zichtbaar, gebruik zelden; waarschijnlijk kapot door PIN-poort (onzeker) |
| 8 | index.html:82 + :97, appel2-data.js:101 | kop van een leerblok + Ja, samen doen ▶ bij een blok | link uit trainingsplan.json (relatief): 5× leren.html?vak=, 5× oefentoetsen.html, 3× duits.html#apprkaart, 2× engels.html#apprkaart, 2× frans.html#apprkaart |
leerblok starten | dagelijks in de weken voor een toets |
| 9 | toets.html:18 + :117 | 🎙️ Sparren (voet) | sparren.html (absoluut) |
sparren vanuit de route | bij toets |
| 10 | toets.html:47, appel2-data.js:191 + :207 | praat erover met Appel → (gele coach-regel) | index-oud-20260819.html?spar=<vak>\|<hoofdstuk> (absoluut) |
na 3× misgaan op een onderdeel | zelden |
| 11 | toets.html:90 + :94 + :95 | Blok n · focus en ▶ Start blok n | trainingsplan-link (zie #8, relatief) | stap 2 van de route | bij toets |
| 12 | toets.html:108, appel2-data.js:189 | 📝 Doe de oefentoets / Nog een keer | oefentoetsen.html?set=havo2-toetsmij&vak=<key> (relatief) |
stap 3, bewijs het | bij toets |
| 13 | toets.html:46, appel2-data.js:245 | oefen alleen dit → / nog eens → | oefentoetsen.html?…&vragen=1,3&onderdeel=… (relatief) |
deel-oefening per onderdeel | bij toets |
| 14 | les.html:18 + :91 | 🎙️ Sparren (voet) | sparren.html (absoluut) |
sparren na een les | dagelijks (na school) |
| 15 | feed.html:57-59 (proefje-bron, niet gelinkt) | zelfde als #1, #2, #3 | zelfde | proefje | n.v.t. |
Niet in de tabel, want geen oude pagina: les.html, lessen.html, toets.html (allemaal v2), en de backend-aanroepen /toets/afvink, /bespreek/tts, /nulmeting/* (gedeelde API, geen pagina). Podcasts staan op goed.haartips.nl.
Samengevat: Appel 2 leunt op 5 oude pagina's: sparren.html, index-oud-20260819.html (de spraakbot), oefentoetsen.html, planning.html, huiswerk-foto.html. Plus via de trainingsplan-links: leren.html en de vakpagina's duits/engels/frans.
Gemeten aan de live bestanden (curl, 9-9). "Huisstijl A" = Bricolage Grotesque + Atkinson Hyperlegible, achtergrond #0f1420, accent #5bb8ff (= Appel 2). "Huisstijl B" = Baloo 2 + Atkinson, #0f1424, zelfde accenten. "C" = anders.
| Pagina | Regels / KB | API's en afhankelijkheden | Huisstijl | PIN-poort | Overzetten 1-op-1 |
|---|---|---|---|---|---|
| sparren.html | 78 / 7 KB | laadt paginas.json; geen API; appbar.js; bouwt de URL index-oud-20260819.html?spar=vak\|par&blz=&vraag=&terug= |
A (al gelijk) | ja | klein (1 avond). Het is een formulier vóór de spraakbot. |
| index-oud-20260819.html (de spraakbot) | 2480 / 230 KB | WebSocket wss://<host>/live naar relay appel-live.py (poort 8751); microfoon + camera (getUserMedia); 20 fetches: /api/onthoud,taak,verslag,zoek, /bespreek/chat,fototekst,seeds,tts,upload,wens, /toets/grade,spar-uitleg,stats; stem Sadachbia (regel 965); leest ?spar= (regel 2255) en ?terug= |
C (systeemfont, eigen kleuren) | nee | groot, als geheel niet verstandig. Wel haalbaar: een uitgeklede v2/spar.html met alleen mic + websocket + spar-context (middel-groot, later). Let op de twee chat-routes: gesproken = appel-live.py, getypt = appel-chat-api.py. |
| oefentoetsen.html | 767 / 42 KB | /nulmeting/vragen,grade,pogingen, /toets/log, /toetsplan; coach-route naar index-oud (regel 233-241) |
B | nee | middel. Is op 8-9 al drie keer voor Appel 2 aangepast (deel-oefening, coach-pop-up, klasgenoot-toon met avatar). Feitelijk al een Appel 2-pagina in een oude jas. Alleen appel2.css laden = klein. |
| planning.html | 416 / 24 KB | 8 fetches: acties.json, huiswerk.json, agenda.json, leermiddelen.json, planners.json; /toets/afvink |
C (Baloo + Hanken Grotesk, #0e0f15) | nee | middel. Appel 2 heeft planners, huiswerk, toetsplan en trainingsplan al in appel2-data.js. Ontbreekt: acties (aftelklok), boekenlijst, helikopterview-tabel. De "week-tab" is de open ontwerpvraag uit fase 0. |
| huiswerk-foto.html | 238 / 18 KB | /bespreek/upload,uploads,bestand,nakijk,voortgang, /toets/afvink; localStorage appel_hwfoto_* |
A (al gelijk) | ja | klein-middel. Jamal besloot 7-9: foto is niet meer verplicht (fase 5 = noodknop). Kan als kleine v2-pagina of blijft link. |
| leren.html (de cirkel) | 1108 / 72 KB | cirkel/data.json (6,8 MB), cirkel/huiswerk.json; /bespreek/bestand,nakijk,uploads,voortgang, /toets/grade,log,voortgang-log; trainer-motor; spar-knoppen naar index-oud; localStorage appel_streak |
B | nee | groot. Doel van 5 trainingsplan-blokken. Laten staan als Bibliotheek. Hooguit later per onderdeel (flashcards, oefentoets) naar v2. |
| duits / engels / frans.html | 728 / 592 / 1020 | gewone-taal.js, /bespreek/chat,tts, /toets/afvink, /nulmeting (frans); #apprkaart = doel van 7 trainingsplan-blokken |
B | ja | middel per vak. Nu doel van "▶ Start blok". |
| index.html (oude voordeur) | 1035 / 73 KB | /bespreek/uploads, /toets/afvink,kv,stats,voortgang-stats; zet de PIN (2703) |
A | zet hem | niet overzetten. Dit wordt het Bibliotheek-menu. |
| dashboard.html | 151 / 10 KB | /toets/stats,voortgang-stats |
B | nee | klein |
| dagstart.html | 387 / 19 KB | /bespreek/dagstart-afvink,dagstart-weekschema, /nulmeting/grade-een |
B | ja | niet nodig: Appel 2 ochtend speelt dezelfde dagstart-audio al. |
| succesvol-leren.html | 783 / 59 KB | 6 API's onder /bespreek/ |
A | ja | groot; staat als fase 3 (print + teller) gepland. |
| helikopterview.html | 655 / 42 KB | /toets/afvink,kv,streak, /toetsen-auto, /toetsplan |
B | ja | middel; overlapt met de route naar je toets. |
| nulmeting.html | 334 / 17 KB | /nulmeting/* |
B | ja | middel; zelden gebruikt. |
| rooster, mededelingen, weekschema, krant, bijspijker, podcast, masterclasses, ai-serie, inhoud, dna-spec | 70 tot 321 regels; inhoud.html 65 KB | licht | B of C | wisselend | Bibliotheek. Niet overzetten. |
| cirkel.html | stub, redirect naar leren.html | negeren | |||
| lessen.html (oud) | bestaat niet in de oude root: appel.haartips.nl/lessen.html toont de oude voordeur (terugval). appel2.haartips.nl/lessen.html is de v2-pagina. |
geen conflict, wel verwarrend bij een verkeerd domein |
Uitgangspunt: regel van Jamal "bestaand werk 1-op-1 overzetten, niet herontwerpen" en "goedgekeurd = bevroren". Alles hieronder is omkeerbaar met een .bak-voor-<wijziging>.
Doel: Dani komt vanuit elke oude pagina met één tik terug in Appel 2, en niets kaatst meer.
v2/index.html: zet localStorage.appel_ok = '1' bij het laden (1 regel). Dan werken sparren.html, huiswerk-foto.html en de vakpagina's ook onder appel2. Alternatief: de PIN-check centraal in appbar.js zetten in plaats van in 16 losse pagina's.appbar.js: "🍎 Appel" en "🏠 Start" naar Appel 2 (https://appel2.haartips.nl/, of / na de domeinwissel). Eén bestand, 28 pagina's. Voeg daar de knop "📚 Bibliotheek" toe naar de oude index.html. De oude index.html en index-oud laden geen appbar: daar een losse knop, en ?terug= uit Appel 2 meegeven (index-oud leest terug al).uptime-monitor.py: appel2 erbij zetten (nu alleen appel).sparren.html 1-op-1 als v2/sparren.html (78 regels, huisstijl is al gelijk). Zelfde vakkeuze, zelfde bladzijde-veld, zelfde knop "🛠️ Praten over Appel zelf". De spraakbot zelf blijft index-oud-20260819.html?spar= (de motor). Dani ziet dan alleen nog het Appel 2-scherm, en één "praat-scherm" dat opent.
De open ontwerpvraag uit fase 0. Neem de secties van planning.html 1-op-1 over als tweede tab: actiepunten met aftelklok, huiswerk uit Classroom, huiswerk uit de planners (foto = af), wat moet ik kennen per toets, boeken. De data heeft Appel 2 al; alleen acties.json en leermiddelen.json komen erbij. Dan vervallen links #4 en #5.
oefentoetsen.html laadt appel2.css (kop in Bricolage in plaats van Baloo). Logica ongemoeid (bevroren sinds 1c). Dan vervallen #6, #12 en #13 als "oude" plekken. Eventueel verhuizen naar v2/ zodra hij niet meer vanuit de oude Appel gelinkt hoeft te worden.
leren.html (de cirkel), succesvol-leren (fase 3), vakpagina's, dashboard, krant, nulmeting, helikopterview. Alleen goed gelinkt en met een terugweg. Later stukje voor stukje, alleen als Dani ze echt gebruikt (meten via /toets/log en de uploads).
De spraakbot (index-oud) als motor, leren.html als cirkel, succesvol-leren, de vakpagina's, dashboard, krant. Zolang de terugweg klopt is dat geen probleem.
(a) Appel 2 wordt "Appel" op appel.haartips.nl; oud naar /oud/ of /bieb/ |
(b) Eén domein, één menu, niets verhuizen | (c) Laten zoals het is, naam "Bibliotheek" | |
|---|---|---|---|
| Wat gebeurt er | nginx: root van appel.haartips.nl wordt v2/, oude root onder /oud/ (alias), appel2 wordt een redirect |
appel2 blijft het adres; PIN-fix + appbar naar Appel 2 + relatieve links; later de domeinen wisselen (appel → v2-root, appel2 → redirect) | alleen de tekst "Bibliotheek" duidelijker maken |
| Voordelen | één naam, één adres, één icoon op het beginscherm; localStorage en PIN op één plek | kleinste stap, alles omkeerbaar, geen bestand verhuist; technisch al bijna zo (terugval @oud werkt, websocket werkt) |
nul werk |
| Nadelen | 28 oude pagina's laden rooster.json, cirkel/data.json, appbar.js, gewone-taal.js relatief: onder /oud/ moeten die paden kloppen (symlinks of try_files naar de root); trainingsplan.json-links (leren.html, duits.html#apprkaart) krijgen een /oud/-prefix; index-oud?spar= links in v2 aanpassen |
twee namen blijven bestaan tot de wissel; Dani's bookmark moet appel2 zijn | terugweg blijft kapot (🏠 Start → oude voordeur); 📷-link kaatst (onzeker); twee voordeuren die allebei "Appel" heten |
| Risico deep-links Dani | oude links naar appel.haartips.nl/leren.html landen stil op Appel 2 (terugval) → acceptabel, maar wel even uitleggen |
geen | geen |
| Risico LaunchAgents / cron | data-URL's (appel.haartips.nl/rooster.json in plaud_les_split.py en dani-classroom-monitor.js, dani-hub-keepalive.js) blijven werken als de JSON op de root blijft (terugval @oud moet dus blijven) |
geen | geen |
| Risico Telegram-links | dani-classroom-monitor.js zegt "appel.haartips.nl/mededelingen.html" → wordt /oud/mededelingen.html; nakijk-links in appel-chat-api.py (/bespreek/nakijk?item=) blijven werken (API); Dani-berichten (VPS): onzeker welke link erin staat, script niet lokaal |
geen | geen |
| Risico spar-route (websocket 8751) | /live moet in de nieuwe vhost blijven geproxyd; index-oud bouwt de URL uit location.host, dus werkt op elk domein |
al bewezen op appel2 | geen |
| Risico localStorage | oude pagina's bewaren appel_weekschema, appel_streak, appel_hwtr_*, appel_hwfoto_*, appel_jaar per domein. Bij een domeinwissel is die toestel-toestand eenmalig weg (server-kant via /toets/afvink en /toets/kv blijft) |
pas bij de latere wissel | geen |
| Moeite | middel-groot (1 dag bouwen + testen van 28 pagina's) | klein (1 avond) + later 1 uur voor de wissel | nul |
| Advies | als tweede stap, zodra B en C af zijn | nu doen | nee |
Verwijst de oude Appel naar appel2? Nee. 0 treffers in 30 bestanden (alle pagina's + appbar.js). De oude Appel weet niet dat Appel 2 bestaat.
Welke automatische dingen linken waarheen (alleen wat lokaal of publiek te zien was):
| Bron | Waar draait het | Linkt naar | Opmerking |
|---|---|---|---|
Dagstart (appel-dagstart.py, cron 04:45) |
VPS | dagstart/manifest.json: veld oefentoets = relatief oefentoetsen.html?…, geen domein in de tekst |
gebruikt door Appel 2 ochtend én oude dagstart.html; nieuwste entry 8-9 gezien |
Telegram naar Dani (appel-dani-berichten.py, ochtend + thuiskomst) |
VPS | onzeker: script staat niet lokaal, CHANGELOG noemt geen link | als er een link in staat: check dat het appel2 is, want appel.haartips.nl/toets.html toont stil de oude voordeur |
Classroom-monitor (dani-classroom-monitor.js, 3x/dag) |
MacBook, via meld.sh naar Jamal (Conductor-bot) |
"Staat in de app: appel.haartips.nl/mededelingen.html" | naar Jamal, niet naar Dani; oude Appel |
Huiswerk-foto en SL-blad nakijken (appel-chat-api.py) |
VPS, via queue naar Jamal | https://appel.haartips.nl/bespreek/nakijk?item=… |
API-link, werkt op beide domeinen |
Gespreksverslag spraakbot (appel-live.py regel 790) |
VPS, naar Conductor | noemt "appel.haartips.nl" in de tekst | alleen tekst |
Les-podcasts (appel-les-verwerk.py) |
VPS | https://goed.haartips.nl/appel-lessen/<datum>-<vak>.mp3 |
geen domeinkwestie; gelinkt vanuit v2/les.html |
plaud_les_split.py (LaunchAgent 16:30/20:30) |
MacBook | leest https://appel.haartips.nl/rooster.json |
data, werkt op beide |
dani-hub-keepalive.js |
MacBook | houdt een tab https://appel.haartips.nl/ open |
oude Appel |
uptime-monitor.py |
MacBook | bewaakt alleen https://appel.haartips.nl/ |
appel2 wordt niet bewaakt |
Niet gezien (geen lokale kopie): de cron-regels op de VPS, de nginx-configs (appel.haartips.nl en appel2.haartips.nl), appel-dani-berichten.py, appel-dagstart.py. Uitspraken daarover komen uit het BOUWBOEK en het geheugen, niet uit meting.
appel_ok zetten in v2, appbar.js naar Appel 2 + knop Bibliotheek, absolute links relatief, uptime-monitor. Eén avond, alles met .bak.