Entprellen des Versands von mehrfachen Nachrichten – VPN
  • 01 Oct 2024
  • pdf

Entprellen des Versands von mehrfachen Nachrichten – VPN

  • pdf

Artikel-Zusammenfassung

Situation

Es passiert gelegentlich, dass ein Ereignis mehrmals hintereinander auftritt. Wenn es eine Nachricht auslöst, würde es diese mit jedem Auftreten auslösen.

Lösung

Folgendes Beispiel zeigt die Entprellung von solchem mehrfachen Nachrichtenversand.

Das Ereignis wird der icom Data Suite signalisiert, indem ein Schalter an Eingang 2.1 geschlossen wird. Das Schließen des Eingangs setzt einen Merker. Das Setzen dieses Merkers sendet dann die Nachricht und startet einen Timer. Kein weiterer Nachrichtenversand ist möglich so lange der Timer läuft, da die Nachricht nur versendet wird, wenn der Merker wieder von 0 auf 1 wechselt. Der Ablauf des Timers setzt den Merker zurück. Er kann dann wieder durch das Ereignis zum Auslösen der Nachricht gesetzt werden.

Es wird vorausgesetzt, dass Sie Zugriff auf das Web-Interface der icom Data Suite haben. Der Router muss SMS versenden können. Der Schalter ist mit Eingang 2.1 des Routers verbunden.

  1. Das Web-Interface der icom Data Suite mit einem Browser aufrufen:

    • 192.168.1.10 oder ids.local (Voreinstellung)

    • Benutzername: insys (Voreinstellung)

    • Kennwort: icom (Voreinstellung)

  2. Im Menü DatenpunkteDigitale I/Os unter Eingang einen neuen Eingang hinzufügen ():

    • Beschreibung: Eingang 2.1

    • Eingang: 2.1

    • Auf Einstellungen speichern klicken.

  3. Im Menü DatenpunkteMerker einen neuen Merker hinzufügen:

    • Beschreibung: trigger message

    • Typ: Bit

    • Auf Einstellungen speichern klicken.

  4. Im Menü DatenpunkteTimer einen neuen Timer hinzufügen () und diesen bearbeiten ():

    • Beschreibung: message delay timer

    • Typ: Countdown, ausgelöst alle 3 Minuten

    • Auf Einstellungen speichern klicken.

  5. Im Menü NachrichtenKontakte einen neuen Kontakt () hinzufügen und diesen bearbeiten ():

    • Realer Name: den Namen des Verantwortlichen eingeben

    • Rufnummer: die Mobiltelefonnummer des verantwortlichen Empfängers eingeben

      Bitte beachten Sie!

      Es wird empfohlen, die Rufnummer im internationaler Schreibweise in der Form +491701234567 einzugeben.

    • Auf Einstellungen speichern klicken.

  6. Im Menü NachrichtenSMS einen neuen Meldung hinzufügen () und diese bearbeiten ():

    • Beschreibung: input closed message

    • Modem: lte2

    • Empfänger: den Verantwortlichen als Kontakt auswählen

    • Text: Eingang 2.1 wurde geschlossen

  7. Im Menü Ereignisse ein neues Ereignis, das den Merker setzt, der den Nachrichtenversand und den Start des Verzögerungs-Timers auslöst, hinzufügen () und dieses bearbeiten ():

    • Beschreibung: set 'trigger message' flag if input is closed

    • Ereignis: Digitaler Datenpunkt hat sich geändert

    • Datenpunkt: input1 und Wechsel auf LOW (logisch 0)

      Bitte beachten Sie!

      Die Eingänge des Routers können eine unterschiedliche Logik haben. Dies trifft nur auf Eingang 1 einer Einsteckkarte mit Stromversorgung zu.

    • Aktion: Digitalen Datenpunkt setzen

    • Datenpunkt: flag1 - trigger message auf 1 setzen

    • Auf Einstellungen speichern klicken.

  8. Im Menü Ereignisse ein neues Ereignis, das den Verzögerungs-Timer startet, der den Auslösemerker nach Ablauf zurücksetzt, hinzufügen () und dieses bearbeiten ():

    • Beschreibung: start delay timer if 'trigger message' flag is set

    • Ereignis: Digitaler Datenpunkt hat sich geändert

    • Datenpunkt: flag1 und Wechsel auf 1

    • Aktion: Timer starten und stoppen

    • Timer: timer1 - message delay timer starten

    • Auf Einstellungen speichern klicken.

  9. Im Menü Ereignisse ein neues Ereignis, das die Benachrichtigung sendet, hinzufügen () und dieses bearbeiten ():

    • Beschreibung: send message if 'trigger message' flag is set

    • Ereignis: Digitaler Datenpunkt hat sich geändert

    • Datenpunkt: flag1 und Wechsel auf 1

    • Aktion: Nachricht versenden

    • Nachricht …​ versenden: sms1 - input closed message

    • Auf Einstellungen speichern klicken.

  10. Im Menü Ereignisse ein neues Ereignis, das den Auslösemerker zurücksetzt, damit das nächste Ereignis wieder einen Nachrichtenversand über diesen Merker auslösen kann, hinzufügen () und dieses bearbeiten ():

    • Beschreibung: reset 'trigger message' flag if 'message delay timer' expires

    • Ereignis: Timer ist abgelaufen

    • Timer: timer1 - message delay timer

    • Aktion: Digitalen Datenpunkt setzen

    • Datenpunkt: flag1 - trigger message auf 0 setzen

    • Auf Einstellungen speichern klicken.

  11. Das Profil aktivieren ().

  12. Eingang 1 schließen, um zu prüfen, ob die SMS wie beabsichtigt versendet wird.

  13. Eingang 1 innerhalb der Verzögerungszeit wieder schließen, um zu verifizieren, dass die SMS nicht erneut gesendet wird.

  14. Eingang 1 nach Ablauf der Verzögerungszeit wieder schließen, um zu prüfen, ob die SMS wieder gesendet wird.

Fehlersuche

  • Das Installationshandbuch des Routers zu Rate ziehen und den Anschluss und die Logik des verwendeten Eingangs prüfen.

  • Um eine SMS durch die icom Data Suite versenden zu können, muss das Modem im Router die SMS Center Nummer des Providers kennen. Diese wird üblicherweise von der SIM-Karte ausgelesen. Wenn keine Nummer auf der SIM-Karte gespeichert ist, muss diese im Menü InterfacesSlot 2: LTE im Web-Interface des Routers eingetragen werden.

Ressourcen

Folgende ASCII-Konfiguration kann per Copy & Paste übernommen werden. Dabei ist zu beachten, dass die einzelnen Parameter entsprechend der eigenen Anwendung anzupassen sind. Bei nummerierten Parameter ist die korrekte Nummerierung zu beachten. Außerdem ist zu beachten, dass keine bestehenden Parameter mit derselben Nummer überschrieben werden. Eine ordentliche Funktionalität kann nur gewährleistet werden, wenn das geöffnete Profil zuvor aus den Werkseinstellungen erzeugt wurde.

ASCII-Konfiguration

datapoints.digital_ios.inputs.input.add
datapoints.digital_ios.inputs.input[1].name=input1
datapoints.digital_ios.inputs.input[1].active=1
datapoints.digital_ios.inputs.input[1].description=Input 2.1
datapoints.digital_ios.inputs.input[1].input=2.1

datapoints.flags.flag.add
datapoints.flags.flag[1].name=flag1
datapoints.flags.flag[1].active=1
datapoints.flags.flag[1].description=trigger message
datapoints.flags.flag[1].type=bit

datapoints.timer.timer.add
datapoints.timer.timer[1].name=timer1
datapoints.timer.timer[1].active=1
datapoints.timer.timer[1].description=message delay timer
datapoints.timer.timer[1].type=countdown
datapoints.timer.timer[1].countdown_hh=
datapoints.timer.timer[1].countdown_mm=3
datapoints.timer.timer[1].countdown_ss=

messages.contacts.contact.add
messages.contacts.contact[1].active=1
messages.contacts.contact[1].name=contact1
messages.contacts.contact[1].real_name=supervisor
messages.contacts.contact[1].email_address=
messages.contacts.contact[1].phone_number=+4917xxxxxxxx

messages.sms.sms.add
messages.sms.sms[1].active=1
messages.sms.sms[1].name=sms1
messages.sms.sms[1].description=input closed message
messages.sms.sms[1].recipient=contact1
messages.sms.sms[1].modem=lte2
messages.sms.sms[1].text=-----BEGIN text-----Input 2.1 has been closed-----END text-----

events.event.add
events.event[1].active=1
events.event[1].description=set 'trigger message' flag if input is closed
events.event[1].event_type=ev_digital
events.event[1].event_digital_datapoint=input1
events.event[1].event_digital_change=to_zero
events.event[1].event_digital_initial_check=0
events.event[1].action_type=act_digital
events.event[1].action_digital_datapoint=flag1
events.event[1].action_digital_change=to_one

events.event.add
events.event[2].active=1
events.event[2].description=start delay timer if 'trigger message' flag is set
events.event[2].event_type=ev_digital
events.event[2].event_digital_datapoint=flag1
events.event[2].event_digital_change=to_one
events.event[2].event_digital_initial_check=0
events.event[2].action_type=act_timer
events.event[2].event_action_timer_name=timer1
events.event[2].event_action_timer_change=start

events.event.add
events.event[3].active=1
events.event[3].description=send message if 'trigger message' flag is set
events.event[3].event_type=ev_digital
events.event[3].event_digital_datapoint=flag1
events.event[3].event_digital_change=to_one
events.event[3].event_digital_initial_check=0
events.event[3].action_type=act_message
events.event[3].action_message=sms1

events.event.add
events.event[4].active=1
events.event[4].description=reset 'trigger message' flag if 'message delay timer' expires
events.event[4].event_type=ev_timer
events.event[4].event_timer_name=timer1
events.event[4].action_type=act_digital
events.event[4].action_digital_datapoint=flag1
events.event[4].action_digital_change=to_zero


War dieser Artikel hilfreich?