System Script: Unterschied zwischen den Versionen
(→Beispiele) |
(→Alarmspeicher) |
||
Zeile 277: | Zeile 277: | ||
Dim alarme | Dim alarme | ||
Set alarme = Data.Alarmspeicher(360) | Set alarme = Data.Alarmspeicher(360) | ||
− | Data.WriteDebug " | + | Data.WriteDebug "Anzahl Alarmierungen: " & alarme.Count |
For Each ele in alarme | For Each ele in alarme | ||
Data.WriteDebug "Schleife: " & ele | Data.WriteDebug "Schleife: " & ele | ||
Next | Next |
Version vom 17. August 2016, 10:43 Uhr
System Scripts ermöglichen den Anwendern im REV Plus Server Visual Basic Scripts auszuführen und damit Benutzer-spezifische Probleme zu lösen. So kann beispielsweise bei Eingang einer E-Mail automatisch ein Einsatz mit den entsprechenden Feldern angelegt werden.
Inhaltsverzeichnis
Events
Die Script werden in der REV Plus Verwaltung angelegt. Jedem Script muss ein Event zugewiesen werden, bei dessen Eintritt das Script ausgeführt wird.
Aktuell werden folgende Events unterstützt:
Eventname | Beschreibung | Parameter |
---|---|---|
onEmail | Wird ausgelöst sobald eine E-Mail im REV System eingegangen ist. | datAbsender, datEmpfaenger, datBetreff, datText |
onZVEI | Wird ausgelöst sobald eine 5-Ton Alarmierung empfangen wurde. | datKennung |
onFmsStatus | Wird ausgelöst sobald ein FMS Status empfangen wurde. | datKennung, datStatus, datRichtung |
onFmsText | Wird ausgelöst sobald eine FMS Textnachricht empfangen wurde. | datKennung, datText |
onHardwareState | Wird ausgelöst sobald ein Hardwareeingang oder -ausgang seinen Status geändert hat. | datIO, datState |
onPocsag | Wird ausgelöst sobald eine POCSAG Alarmierung empfangen wurde. | datKennung, datSubRic, datText |
onSDSStatus | Wird ausgelöst sobald ein SDS Status empfangen wurde. | datTSI, datStatus |
onTimer | Wird ausgelöst sobald die konfigurierte Zeit für das Script vergangen ist. | |
onNeueDatei | Wird ausgelöst sobald in dem konfigurierten Verzeichnis eine neue Datei erstellt wurde. | datFileName |
onInit | Wird ausgelöst sobald der REV Server gestartet wurde. | |
onNewEinsatz | Wird ausgelöst sobald ein neuer Einsatz angelegt wurde. | datEinsatz = Einsatznummer des neuen Einsatzes |
onTetraReport | Wird ausgelöst sobald sich der Übertragungsstatus einer TETRA Nachricht geändert hat. | datID = interne ID der gesendeten Nachricht datTSI = TSI des Empfängers datStatus = Status der Übertragung ("Error", "Received", "Consumed") |
onAsteriskVariableChanged | Wird ausgelöst wenn im Commander Server eine Asterisk Variable geändert wurde. | datName = Name der Variable datValue = Wert der Variable (ab Serverversion 2.1.4) |
onWebRequest | Wird ausgelöst wenn eine HTTP Anfrage an den internen Webserver unter der URL http://<Serveradresse>/scripts gestellt wurde. | datURL = Aufgerufene URL datParameter = Parameterstring (nach dem ?) (ab Serverversion 2.1.44) |
onSMS | Wird ausgelöst wenn eine SMS empfangen wurde. | datRufnummer = Absender der SMS datText = Textinhalt der SMS (ab Serverversion 2.1.59) |
onNewExternEinsatz | Wird ausgelöst wenn ein Einsatz extern angelegt wurde. (Über Schnittstellen oder Plugins) | datEinsatz = EinsatzID (ab Serverversion 2.2.10) |
onUpdateExternEinsatz | Wird ausgelöst wenn ein Einsatz extern aktualisiert wurde. (Über Schnittstellen oder Plugins) | datEinsatz = EinsatzID (ab Serverversion 2.2.10) |
onEinsatzStatusChange | Wird ausgelöst sobald der Status eines Einsatzes gewechselt wird. | datEinsatz = EinsatzID datStatus = Neuer Status des Einsatzes (ab Serverversion 2.2.65) |
onSDSText | Wird ausgelöst sobald ein SDS Text empfangen wurde. | datTSI = TSI des Absenders datText = Gesendeter Text (ab Serverversion 2.2.65) |
REV spezifische Funktionen
Neben den Standard VBScript Funktionen und Klassen stehen REV Plus spezifische Klassen zur Verfügung. Mithilfe dieser Funktionen können direkte Eingriffe in das System vorgenommen werden. Daher ist hierbei genau zu Überlegen, welche Funktionen verwendet werden sollten.
Data
Die Klasse Data stellt sonstige Funktionen sowie den Zugriff auf den Scriptspeicher im REV Plus Server zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Data.WriteDebug | Schreibt eine Debug Meldung in die Log Datei | line |
Data.ExecuteURL | Ruft eine URL auf und liefert den Inhalt der URL zurück. | URL, Parameter, Async |
Data.SendSMS | Sendet eine SMS. | Telefonnummer, Text |
Data.WakeOnLAN | Weckt einen PC über die WakeOnLan Funktion auf. | MACAdresse, IP, SubnetzMaske |
Data.Save | Speichert einen Datensatz in den Serverspeicher. | ID, Value |
Data.Load | Ruft den Inhalt aus einem Speicherplatz ab. | ID |
Data.TagebuchAdd | Fügt einen Eintrag in das Einsatztagebuch ein. | Eintrag |
Data.BMAAlarm | Löst einen BMA Alarm in der Software aus. | Meldernummer, Adresse, Meldung |
Data.SendMail | Sendet eine E-Mail. | Empfängeradresse, Empfängername, Betreff, Nachricht |
Data.SendMailHTML | Sendet eine E-Mail im HTML Format. | Empfängeradresse, Empfängername, Betreff, Nachricht (HTML) |
Data.Alarmspeicher | Gibt alle Alarmierungen in dem angegebenen Zeitraum zurück | Sekunden (Zeitraum in dem Alarmierungen zurückgegeben werden sollen) |
Tetra
Die Klasse Tetra stellt Funktionen für die neue TETRA Schnittstelle zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Tetra.SetGroup | Ändert die Gruppe eines angeschlossenen TETRA Funkgerätes | fugId, groupId |
Tetra.SendSDSText | Sendet einen SDS Text an eine TSI. | tsi, message, reportConsumed, reportReceived |
Tetra.SendHMDText | Sendet einen HomeModeDisplay Text an eine TSI. | tsi, message, reportConsumed, reportReceived |
Tetra.SendSDSStatus | Sendet einen TETRA Status an eine TSI. | tsi, status |
Tetra.RCChangeGroup | Wechselt ein Endgerät in die angegebene Gruppe. | endgeraet (Datenbank ID), gruppe (Datenbank ID) (Ab Server V 2.1.94) |
Haustechnik
Die Klasse Haustechnik stellt Funktionen für die Anbindung der Hardwaresteuerung zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Haustechnik.Setzen | Setzt den Ausgang auf den Angegebenen Status | AnschlussID, Status |
Haustechnik.Schalten | Schaltet einen Ausgang um | AnschlussID |
Haustechnik.Status | Fragt den Status eines Ausgangs ab | AnschlussID |
Analog
Die Klasse Analog stellt Funktionen für die Analogfunkschnittstelle zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Analog.AlarmZVEI | Löst eine ZVEI Alarmierung aus. | zvei, kanal |
ELA
Die Klasse ELA stellt Funktionen für die Steuerung der ELA Module zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
ELA.NeuAlarm | Löst eine automatische Alarmdurchsage auf der ELA aus. | Einsatz, elaID, Alarmkreise[] |
ELA.Warten | Wartet die angegebene Zeit in Sekunden. | Zeit |
ELA.PlaySound | Spielt eine Sounddatei auf der gewählten ELA ab. | ElaID, Sounddatei |
Commander
Die Klasse Commander stellt Funktionen für die Steuerung des Commander Moduls zur Verfügung.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Commander.SetVar | Setzt eine Asteriskvariable auf den angegebenen Wert | Name, Wert |
Einsatz
Die Klasse Einsatz stellt Funktionen für die Bearbeitung der Einsatzdaten zur Verfügung. Alle Funktionen wirken auf den aktuell im Script bearbeiteten Einsatz. Dieser wird entweder mit Einsatz.Edit geöffnet oder mit Einsatz.Add erstellt und geöffnet.
Funktionsname | Beschreibung | Parameter |
---|---|---|
Einsatz.GetID | Gibt die ID des aktuell geöffneten Einsatzes zurück | |
Einsatz.AddTask | Fügt dem aktuell geöffneten Einsatz einen Task hinzu. | TaskID |
Einsatz.FahrzeugAufWache | Setzt alle Fahrzeuge der angegebenen Wache in den Status 2 | WacheID |
Einsatz.SucheEinsatz | Sucht und öffnet einen Einsatz entsprechend dem angegebenen Feldwert | Feld, Wert |
Einsatz.FahrzeugIstEinsatz | Gibt zurück ob das angegebenen Einsatzmittel in dem aktuell geöffneten Einsatz ist. | EinsatzmittelID |
Einsatz.OrganisationIstEinsatz | Gibt zurück ob die angegebenen Organisation in dem aktuell geöffneten Einsatz ist. | OrganisationID |
Einsatz.Mail | Sendet den geöffneten Einsatz als E-Mail mit der angegebenen Vorlage | VorlageID, ReceiverAdresse, ReceiverName, Anzahl, Vermerk |
Einsatz.Drucken | Druckt den geöffneten Einsatz mit der angegebenen Vorlage | VorlageID, Druckername, Anzahl, Vermerk |
Einsatz.Fax | Faxt den geöffneten Einsatz mit der angegebenen Vorlage | VorlageID, Faxnummer, Anzahl, Vermerk |
Einsatz.ZVEI | Löst eine ZVEI Alarmierung aus | Schleife, Kanal |
Einsatz.RunVorschlag | Führt den Vorschlag im aktuell geöffneten Einsatz aus | |
Einsatz.Dispo | Fügt das angegebene Einsatzmittel dem aktuell geöffneten Einsatz hinzu | EinsatzmittelID |
Einsatz.Alarm | Führt die Alarmierung für den aktuell geöffneten Einsatz aus | |
Einsatz.Add | Erstellt einen neuen Einsatz und öffnet diesen | |
Einsatz.Edit | Öffnet den Einsatz mit der angegebenen ID | EinsatzID |
Einsatz.SetData | Ändert das angegebene Feld auf den neuen Wert im aktuell geöffneten Einsatz | Feld, Wert |
Einsatz.GetData | Gibt den Wert eines Einsatzfeldes zurück | Feld |
Einsatz.Beenden | Beendet den aktuell geöffneten Einsatz | |
Einsatz.SucheStichwort | Sucht ein Stichwort anhand von Einsatzart und Indikation. Wird ein Stichwort gefunden, wird es dem aktuell geöffneten Einsatz hinzugefügt. | Einsatzart, Indikation |
Einsatz.SucheStichwortKlartext | Sucht ein Stichwort anhand des Klartextes. Wird ein Stichwort gefunden, wird es dem aktuell geöffneten Einsatz hinzugefügt. | Stichwort |
Einsatz.SucheStichwortGruppe | Sucht eine Stichwortgruppe anhand des Gruppennames. Wird eine Gruppe gefunden, wird sie dem aktuell geöffneten Einsatz hinzugefügt. | StichwortGruppe |
Einsatz.SucheObjektName | Sucht ein Objekt anhand des Namens und fügt es dem Einsatz hinzu. | Objektname |
Einsatz.SucheObjekt | Sucht ein Objekt anhand der Adresse und fügt es dem Einsatz hinzu. | Stadt, Stadtteil, Strasse, HNR, Objektname |
Einsatz.SetEinsatzmittelStatus | Setzt den Status für ein Einsatzmittel auf den angegebenen Wert. | EinsatzmittelID, Status (Nummer) |
BMA
Die Klasse BMA stellt Funktionen für die Auslösung von Brandmeldeanlagen im System zur Verfügung. Diese Klasse wurde in der REV+ Version 2.1.44 eingeführt. Die BMA, Linien und Melder Parameter sind die entsprechenden IDs der Datenbank. Der Parameter Meldung ist ebenfalls die ID der Meldung aus der Datenbank.
Funktionsname | Beschreibung | Parameter |
---|---|---|
BMA.AlarmBMA | Löst eine BMA aus mit der angegebenen Meldungs ID (Siehe Datenbank) | bma, meldung |
BMA.AlarmLinie | Löst eine BMA Linie aus mit der angegebenen Meldungs ID (Siehe Datenbank) | linie, meldung |
BMA.AlarmMelder | Löst einen BMA Melder aus mit der angegebenen Meldungs ID (Siehe Datenbank) | melder, meldung |
BMA.ResetBMA | Setzt eine BMA zurück (Siehe Datenbank) | bma |
BMA.ResetLinie | Setzt eine BMA Linie zurück (Siehe Datenbank) | linie |
BMA.ResetMelder | Setzt einen BMA Melder zurück (Siehe Datenbank) | melder |
Beispiele
Dieser Abschnitt enthält Beispielscripts, die für die Erstellung eigener Scripte als Vorlage oder Ideengeber dienen können.
Starten eines PCs bei Status 3
Dieses Script startet einen PC nach empfangen des Status 3 eines Fahrzeuges. (Hier z.B. ein ELW) "67501011" ist dabei die FMS Kennung.
Auszuwählendes Event: onFMSStatus
If datKennung = "67501011" And datStatus = "3" Then 'PC im ELW Booten bei Status 3 Data.WakeOnLAN "001E8CC65CB4", "192.168.1.3", "255.255.255.0" End If
FMS Text auswerten
Dieses Script wertet einen FMS Text aus und erzeugt daraus einen Einsatz. In diesem Beispiel wird angenommen, dass die Datenfelder mit einem Stern * getrennt sind. z.B. Goethestraße*5*107*Frankfurt
Auszuwählendes Event: onFMSText
if datKennung = "67501000" Then EinsatzID = Einsatz.Add() Felder = Split(datText, "*") Einsatz.SetData "strasse", Felder(0) Einsatz.SetData "hnr", Felder(3) Einsatz.SetData "eindikation", Felder(1) Einsatz.SetData "stadt", Felder(2) Einsatz.RunVorschlag Einsatz.Alarm End If
Alarmspeicher
Das folgende Script fragt den Alarmspeicher ab und gibt alle Alarmierungen der letzten 5 Minuten in der Debug Log aus.
Dim alarme Set alarme = Data.Alarmspeicher(360) Data.WriteDebug "Anzahl Alarmierungen: " & alarme.Count For Each ele in alarme Data.WriteDebug "Schleife: " & ele Next