Ergebnis 1 bis 15 von 15

Thema: Alarme von mehreren Dau´s

  1. #1
    Registriert seit
    06.09.2004
    Beiträge
    74

    Alarme von mehreren Dau´s

    Wir haben eijnen Server für die SMS Alarmierung in der Feuerwehr. Dort haben wir das Problem das wir die Alarme von mehreren Daus empfangen. Einige Meldungen kommen komplett rein und andere wiederrum nur halb. Wir erzeugen momentan per bat datei eine Textdatei und lassen den Inhalt dann verschicken.
    Zuerst war es so das immer die erste meldung komplett war und die weitern dann schlecht. das haben wird dann per if exsist befehl gelöst so das nur die erste meldung verschickt wurde.
    Das geht jetzt natürlich nicht mehr da ja jetzt erst der zweite alarm komplett empfangen wird.

    Wie ich kann ich denn per bat z.b sagen das wenn zwei alarme kommen er schaun soll wo mehr text enthalten ist und nur den längste verschickt werden soll oder so ähnlich?

  2. #2
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Das kannst du nur mit Zusatzsoftware.. der Kommandointerpreter kann das nicht
    alleine, ist halt Windows ..
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  3. #3
    Registriert seit
    06.09.2004
    Beiträge
    74
    mit welcher software geht das denn? Ich nutze momentan serch and replace um bestimmte inhalte raus zu filtern. geht das damit?

  4. #4
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Das musst du mir sagen, ich habe /bin/bash und konsorten ^^
    Was deine Software kann, steht in der Anleitung.

    "Spass" beiseite: Was ist genau deine Aufgabenstellung ?

    Lege dir dein Problem in einzelne Schritte zurecht, und schaue dann, wie jeder
    einzelne Schritt zu lösen ist.

    Je kleiner der Schritt, desto besser.

    Ich fange mal dein Problem an, zuendeführen musst du es selbst ^^

    Wie ich kann ich denn per bat z.b sagen das wenn zwei alarme kommen er schaun soll wo mehr text enthalten ist und nur den längste verschickt werden soll oder so ähnlich?
    Ich nehme mir den Punkt "Die längste verschickte Nachricht" raus, "zwei Alarme" nebenbei
    mit, aber die RIC-Unterscheidung muss schon passiert sein.

    * Ich prüfe, ob eine Datei (die aus dem nächsten Punkt) existiert, wenn ja, habe ich
    schon einen Alarm erhalten und gehe per GOTO in die Vergleichsroutine
    * Ich möchte also eine Zeichenkette speichern. Am besten in eine Datei, deren Namen ich
    kenne, und die vorher leer war. Dazu nehme ich den ECHO Befehl.
    * Ich warte eine definierte Zeit (wait.exe oder so)
    * Ich schaue, ob eine andere Datei mit bekanntem Namen existiert. Tut sie das, schaue ich,
    ob eine dritte Datei (wo die Alarmmeldung drin steht) existiert.
    * Ich muss hier evtl. noch die Alarmtextdatei aus der "ersten Datei" erzeugen (COPY)
    * Existiert die Alarmmeldungsdatei und die der zweiten Meldung NICHT, springe ich per
    GOTO in die Alarm-Senderoutine. (Grund: Innerhalb der Wartezeit keine weitere Alarmierung,
    also muss ich hier nun senden)
    * Existiert die Alarmmeldungsdatei und die Datei "zweite meldung", beende ich meine Ausführung hier. (Grund: Der Alarm wird von der "zweiten Instanz" ausgeführt.)
    * Alle anderen Fälle sollten auf den ersten Gedanken die Ausführung hier beenden, bitte
    aber nochmal selbst drüber nachdenken, welche Fälle auftreten.

    :Hier springe ich hin, wenn die Datei "erster alarm" existiert.
    * REM Also, wann komme ich hierhin? Genau, es wurde ein erster Alarm empfangen und
    gespeichert, das skript wartet. Da ein neuer Alarm empfangen wird, wird dieses Skript ein
    zweites Mal aufgerufen, also eine neue Instanz gebildet. Und die landet HIER, weil die
    erste Instanz die Datei "erster alarm" erstellt hat.
    * Ich speichere also meinen Alarmtext in einer zweiten Datei (ob die existiert, wird dann
    weiter oben geprüft).
    * Nun vergleiche ich die beiden Dateigrössen. Damit weiss ich ja, welcher Text länger ist.
    * Je nachdem, welche Datei grösser ist, schreibe (kopiere) ich die Datei auf die Alarmtext-
    Datei.
    * Da ich zweiter Alarm bin, schicke ich den Alarm raus, lasse die Alarmdatei stehen, damit
    die erste Instanz merkt, das alarmiert wurde.

    :Alarmblubber
    * So, hier alarmiere ich den Inhalt der Alarmtextdatei.



    Soweit so gut - das ist nur ein erster Topdown-Gedanke. Dabei versuchte ich, mit den
    Kommandozeilen-Fähigkeiten dein Problem zu lösen. Dadurch brauchst du kaum noch
    externe Programme, nur eines, welches "wartet" und eines, welches "Dateigrössen vergleicht".

    Ein guter Tip übrigens: Nutzt doch die Kommandozeilenversion von PHP oder PERL für
    eure Batch-Logiken.


    Gruss,
    Tim
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  5. #5
    Registriert seit
    24.03.2007
    Beiträge
    1.720
    Ich würde Dir für dein problem das Programm IBSA empfehlen,gibt es hier im Forum und hat eigentlich alle benötigten funktionen.
    Auch das erst Meldungen gesammelt werden,und nur die längste per sms verschickt wird.

    Gruß Andi

  6. #6
    Registriert seit
    14.12.2007
    Beiträge
    263
    Zitat Zitat von Shinzon Beitrag anzeigen
    Ich fange mal dein Problem an, zuendeführen musst du es selbst ^^
    Immer die gleiche Art, die einen vermuten lässt, in der Schule zu sein ... :-)!
    Wenn man sein ganzes Leben nicht merkt, dass man ständig nur von Idioten umgeben ist, dann hat das einen gewissen Grund ;-)!

  7. #7
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Gib jemandem einen Fisch, und er hat nen Tag lang zu essen.
    Zeige jemandem, wie er fischt, und er ernährt sich sein Leben lang.

    Das Problem ist hier sicher nicht, irgendein Referenzhandbuch zu lesen,
    sondern problembezogen zu denken.

    Also bitte, hilf ihm (und allen anderen Forenmitgliedern, auch mir!), z.B. durch
    Nennung eines Programms (wie neben meinem Lösungsansatz schon geschehen),
    oder durch DEINEN Weg, die Sache zu lösen, oder -> lass es.

    Gruss,
    Tim
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  8. #8
    Registriert seit
    06.09.2004
    Beiträge
    74
    IBSA kann ich leider nicht nutzen da wir das ganze per blat als email versenden

  9. #9
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Hast du meinen Ansatz schon verworfen, bevor du ihn gelesen hast,
    oder war das einfach zu viel Aufwand ?
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  10. #10
    Registriert seit
    24.03.2007
    Beiträge
    1.720
    Zitat Zitat von sebi911 Beitrag anzeigen
    IBSA kann ich leider nicht nutzen da wir das ganze per blat als email versenden
    Ach so, nee dann geht das nicht. ;-)

    Ich nutze für dieses Problem das Programm PDW2.53 neben FMS32, mit FMS32 + IBSA mache ich den SMS-Alarm, mit PDW den e-Mail Alarm.

    Gruß Andi

  11. #11
    Registriert seit
    06.09.2004
    Beiträge
    74
    Zitat Zitat von Shinzon Beitrag anzeigen
    Hast du meinen Ansatz schon verworfen, bevor du ihn gelesen hast,
    oder war das einfach zu viel Aufwand ?
    Dein Ansatz ist gut und ich bin gerade dabei das umzusetzen

  12. #12
    faboi Gast
    Wäre vlt. ein allgemeinerer Ansatz die Zeichen per Schleife zählen zu lassen und somit den längsten Text herauszufinden?
    Habe dazu mal gestern KURZ gegoogelt und bin auf diverse Foren gestoßen, die hier vlt. sehr gut weiterhelfen könnten.

  13. #13
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Der Ansatz ist deshalb unpraktisch, weil die Schleife ja im Dekoder laufen müsste.

    Woher soll denn das Skript wissen, das die zweite Alarmierung kam. Das Problem liegt
    doch eben in dieser zweiten Datenquelle.

    Ob man nun Dateigrössen vergleicht oder ne Zählschleife baut, mag jedem selbst über-
    lassen sein.. aber das Skript darf nicht auf den zweiten Alarm warten - wie sollte es auch
    die Daten übergeben bekommen? (Klar, über Dateioperationen, aber dann starte ich lieber
    dasselbe Skript mit Lock nochmal, als eine Instanz in ne potentielle Endlosschleife zu
    schicken..

    Gruss,
    Tim
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  14. #14
    faboi Gast
    In Kombination mit einer Zeit, welche in einem Main-Programm läuft, wären aber dann auch die Fälle abgedeckt, wenn mal aus irgendeinem Grund kein zweiter DAU empfangen wird.

  15. #15
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Es ist dir aber schon bewusst, das wir vom MS-Kommandointerpreter reden? ;)
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •