PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probealarm unterdrücken



de010014
25.07.2006, 06:53
Hallo,

ich habe folgendes Problem:
Bei uns wird analog via 5-Tonfolge alarmiert.
Ich habe eine batch-Datei geschrieben die folgendes leisten soll.
1.) Erstellt eine Datei, die von anderem Programm ausgelesen wird um eine Anzeige in externem Programm zu ermöglichen
2.) Versendet SMS vis ib-systems
3.) Aktiviert den Alarmgong bzw. Blitzlampen
4.) Öffnet die Roll- und Einfahrtstore

Das funktionoert soweit alles super. Mein Problem ist nur die Melderfunktionsprobe. Die SMS-Alarmierung wird nicht gestartet, da habe ich die Option Probealarme bzw. deren Zeiten anzulegen. Wie aber kann ich verhindern, dass zu bestimmten Zeiten (Probezeiten) die batch ausgeführt wird? Ich will nicht, dass alle Tore aufgehen, wenn es nur eine Funktionsprobe ist!
H I L F E ! ! !

cockpit
25.07.2006, 08:53
Servus,

welches Betriebsystem?
Eventuell mit AT-Befehl (Zeitdienst).

cockpit

de010014
25.07.2006, 08:56
Hallo,

ich benutze Win XP Prof.
Leider kenn ich micht nicht so gut aus.
Zur Zeit mach ich das so, ich lasse von FMS Pro eine batch starten, die nach und nach die Punkte abarbeitet.

Holger

Fabpicard
25.07.2006, 11:19
Die frage ist ja, wenn z.b. um 20 Uhr immer Probealarm ist, und einmal um 19:59 richtig alarmiert wird, dann haste ein Problem ;)

Überleg doch mal, ob vor der ZVEI-Folge für euch, nicht eine gesendet wird, die in dem "Zusammenhang" so "schnell" hintereinander eigentlich nie vorkommen würde...

Z.B.: 12345 - 54321 - 55555

Wenn die in dieser Reihenfolge ausgesendet werden, und die "55555" euch wäre, dann könntest du bei "Aussenden" von der "12345" eine batch starten, die auf eine 2. batch ca 30 sekunden wartet.
Wenn dann innerhalb der 30 sekunden die "54321" kommt, dann wird batch nr. 2 gestartet...

Diese bewirkt dann mit der 1. zusammen, dass die "Alarm-batch" für die "55555" die nächsten 2 Minuten nicht ausgeführt wird :D

Wäre zwar etwas umständlicher, aber doch irgendwie halbwechs sicher ;)

MfG Fabsi

cockpit
25.07.2006, 12:39
@Fabpicard
Und wenn sie die Alarmierungsreihenfolge ändern?

Bei uns wird während der Probealarmierungszeit, Einsätze doppelt alarmiert.
(Meistzeit)

Einfach mal auf Eingabeaufforderung gehen und AT /? eingeben.
at 11:15 /interactive /every:fr c:\batch\Erstell.bat
Startet jeden Freitag um 11:15 die Erstell.bat.
Hier könnte drinstehen.
copy C:\batch\hund.txt C:\batch\maus.txt
In deiner Batch könnte dann,
if exist C:\batch\maus.txt goto XXXX
10 Minuten später die maus.txt wieder löschen.
at 11:25 /interactive /every:fr c:\batch\lösch.bat
In lösch.bat
If exist C:\batch\maus.txt DEL C:\batch\maus.txt

Keine besondere gute Lösung da die PC-Uhr ja schon nicht genau ist, aber könnte funktionieren.

Gruß
cockpit

Max K.
25.07.2006, 13:01
Die PC-Uhr könnte man per ntpdate regelmäßig nachstellen lassen.

Wir haben immer Mittwochs um 19.00 probealarm.. Also habe ich meinem Script gesagt, dass es Mittwochs in der Zeit von 18:57 bis 19:02 lediglich ein "Probealarm" fenster öffnen soll.. Die 5 Minuten toleranz muss man (hier) schon einplanen, da die Leitstelle den Probealarm relativ ungenau auslöst..

Ansonsten habe ich es genauso gemacht wie von "cockpit" beschrieben, nur eben als bash-script für linux (monitor)

de010014
25.07.2006, 13:07
Hallo,

vielen Dank für die Ratschläge.
Das mit den Schleifen die immer hintereinander kommen ist mir ehrlich gesagt zu gefährlich.
Das die Funktionsprobe nicht immer auf die Sekunde gleich ist, ist mir bewusst. Ich dachte dabei mehr an ein Zeitfenster von ca. 30 Minuten. Zumindest habe ich das bei der SMS-Alarmierung so eingerichtet.

Das mit dem AT gefällt mir ganz gut. Ein Kollege hat mich gerade auch auf die Idee gebracht. Er meinte ich soll eine Batch schreiben, die meine eigentliche löscht und ggf. eine leere erstellt.
Die kann dann von der Funktion "Geplante Tasks" gestartet werden. Eine zweite dann, die mir meine Originale Batch aus einem anderen Ordner wieder an die richtige Stelle kopiert.

Wenn ich das mit dem AT mache, muss ich das bei jedem Neustart neu machen? Wie kann ich es ändern?

Holger

felix000
25.07.2006, 13:15
Wochentag kann man mit dem Programm BE - Weekday überprüfen (steht auch schon im Forum)...

Bestimmte Wochentage (1.Montag) lassen sich anhand des Datums ausrechnen..

und die Zeit steht auch als Variable zu Verfügung...

Dann genau soll die Batch nicht ausgelöst werden???

Ich schreib dir den Teil.

cockpit
25.07.2006, 14:39
Wenn ich das mit dem AT mache, muss ich das bei jedem Neustart neu machen? Wie kann ich es ändern?
Holger
Ja, der AT-Befehl muss natürlich bei jedem Neustart ausgeführt werden.
z.Bsp Batch in Autostart.
Habe das Ganze mal unter WIN NT4 gemacht und zwar als Dienst.
Damit muss man sich nicht einmal am Rechner anmelden, sondern wird automatisch ausgeführt. Achtung! Die Dienste starten bei NT anscheinend alphabetisch und der Zeitdienst (Schedule) muss vorher gestartet sein. Also den Dienst nicht Alarm sondern Zeit oder so nennen.
Ob das bei Win2000 oder XP immer noch so ist, weis ich nicht. Hab nur durch Zufall den Fehler entdeckt. (500 graue Haare und 100 Bierkästen später)
Wie man einen Dienst (Service) bei XP einrichtet, keine Ahnung.
Aber:
http://www.rz.uni-freiburg.de/pc/sys/srvany/index.php
Da wird ihnen geholfen.

Als Dienst hab ich einfach eine Batch-Datei gestartet und da reingeschrieben was der Rechner machen sollte.

Gruß
cockpit

de010014
26.07.2006, 20:17
Ich möchte mich einfach noch mal bei Allen bedanken!
Besonders bei Felix der mir sogar einen Teil geschrieben hätte.

Ich hab es hinbekommen!

Nun kann ich mich mal den anderen Funktionen annhmen, die mir noch so vorschweben....

Holger

cockpit
27.07.2006, 10:51
Hallo,

nur Interessehalber. Wie habt ihrs hinbekommen?
Programm BE – Weekday habe ich nicht gefunden.

Gruß
cockpit

de010014
27.07.2006, 12:50
Hi,

also meine Lösung sieht so aus:

Ich habe eine Batch geschrieben, die mir meine "Alarm.bat" löscht und eine neue leere Alarm.bat in das Verzeichnis kopiert.
Die starte ich über "Geplante Tasks" in Windows 15 Minuten vor der eigentlichen Funktionsprobe.
15 Minuten nach der Probe wird eine weitere Batch von Windows gestartet, die mir meine eigentliche "Alarm.bat" aus einem anderen Verzeichnis wieder kopiert.
Vermutlich geht es viel eleganter, aber es funktioniert und das ist das wichtigste!!!

felix000
27.07.2006, 12:58
BE weekday gibts hier: http://www.funkmeldesystem.de/foren/showpost.php?p=157526&postcount=867


Das mit dem Löschen der Batchdatei find ich eine nicht so tolle Lösung...

Lass doch einfach von der zeitgesteuerten Batch eine Datei anlegen und die Alarm-Batch überprüfen, ob diese Datei existiert:

zeitgesteuerte Batch:

echo Probealarm > probealarm.txt
wait 600
del probealarm.txt

Alarm-Batch:

IF EXIST probealarm.txt exit

de010014
30.07.2006, 19:47
Gute Idee, werde das bei Gelegenheit einfügen. Wenn man so keine AHnung hat wie ich, kommt man nun mal auf so umständliche Ideen :-)

Werde das noch ändern, Danke!