Messages
Write in one place. Deliver to both.
Every message written in SkoleElev mirrors to the Aula thread. Parents reply wherever they like — it lands in the same place for you.
How a message travels
SKOLEELEV
Mette L. → 3.A Parents
Remember swim kit on Thursday — we leave school at 9.40.
aula_message_mirror
5 attempts · idempotent · echo guard
AULA
3.A · Class messages
Remember swim kit on Thursday — we leave school at 9.40.
✓✓ Read 18/22
Inbound beta
Parents reply in Aula — you see it in SkoleElev
We poll new replies every 2 minutes. Sender links via unilogin_id, the thread is found via mirror id, and the reply is marked source='aula' so the echo guard never sends it back.
aula_message_mirror · latest 4
Delivered
Mette L.
3.A · Forældre
14:02
Queued
Jonas P.
5.B · Matematik
14:01
Inbound
Aula · Far til Anna
3.A · Forældre
13:58
Retry 2/5
Karen B.
7.C · Klassen
13:55
Built-in safety net
- Idempotency via besked-id — the same message is never written twice
- Echo guard — source='aula' short-circuits the outbound trigger
- 5 attempts with back-off — network hiccups never block delivery
- Resilient persistence — Aula errors land in last_error, never in the main flow

