Pseudocode:
if (zustand==offen && tuer==zu){
melde: Tür wurde geschlossen;
zustand=zu;
}
If (zustand==zu && tuer==offen){
melde: Tür wurde geöffnet;
zustand=offen;
}
Eigentlich genau so, wie Du Das auch machst - Du merkst Dir, daß die Tür bereits verschlossen ist und rufst deshalb nicht alle drei Minuten bei Deiner Mutter an, um Ihr davon zu berichten.
Ggf. musst Du die Taster entprellen, damit Du dadurch keine Mehrfach-Erkennung bekommst.
MfG