ciao ziopippo,
usa un flag (boolean horn = false) per dire che l'allarme deve stare sempre "zitto"; lo rendi attivo quando compare un allarme (horn = true).
usa un'altra variabile (boolean snooze = false) per fasi che il tuo buzzer suoni; e che metterai a true quando vorrai mettere in pausa il buzzer...quando la boolean snooze è true fai la verifica tra millis() e una tua unsigned long snoozeOFF, precedentemente salvata...se passato il tempo riporti la boolean snooze a false così il tuo buzzer inizia di nuovo a suonare...nel momento in cui la precedente horn ritorna false tutto si tacita.