Bei der Feuerwehr ist doch alles digital :p, wer nutzt denn noch 5TONE analog Technik :eek:.
Du könntest die komplette Bearbeitung in einem Script machen, also ohne Cutter, den IO an die Registervariable, die das Script triggert.
Dann könntest du direkt den „keep alive“ zur Sicherheit der Funktion überwachen und ergänzend im Script filtern, wenn es ein 5TONE gibt und dort auch die AlarmID weiterverarbeiten.
Eine ausführliche Erklärung inklusive Beispiel-Script findest du in der Doku und wenn du Probleme mit der Zerlegung und Weiterverarbeitung im Script hast, „hier werden sie geholfen“ :D.
Du öffnest die Eigenschaften der Register Variable. Im Hauptfenster steht dann „Ziel“, welches das PHP Script darstellt.
Oben steht „Gateway ändern“, dort kannst du den I/O auswählen.
Wir sind immer daran interessiert unsere Doku zu verbessern. Hast du auf „Feedback senden“ geklickt und erörtert, was dir gefehlt hat? Wenn nein, könntest du das noch tun? Dann landet das bei unserem Kollegen für die Doku und er kann sich das mal anschauen. Besten Dank!
Du könntest im ersten Schritt dir die übergebenen Daten mal ins MessageLog schicken. Funktion
IPS_LogMessage("freier Name, z.B. Script 17 für 5TONE", $hierstehendieDaten);
Danach geht es dir darum herauszufinden, ob die gesendeten Daten identisch zu deinem Suchstring sind.
Hier gibt es ein kleines Problem bei RS232 Übertragung. Das Protokoll stellt für dich nicht sicher, dass alles gleichzeitig ankommt. Das heißt du speicherst solange die Werte im RegVar_Buffer (Info hierzu in den Beschreibungen der RegVar in der Online Doku).
Dann kannst du irgendwann prüfen, ob die angekommenen Daten auf „Linefeed“ also char(10) enden.
Tun sie das, überprüfe ob die gesammelten Daten deinem Wunschstring entsprechen. Dies ist dann die einfache If-Anweisung.
if($gesammelteDaten == "5TONE:26126
"){
// Tue etwas
}