# DesktopAutomation – vollständige Produktreferenz Entwicklungsstand 1.6.1 · 2026-10-08 · Arbeitsbaum, möglicherweise noch unveröffentlicht. Formatversionen: Job 4, Makro 3, Automation 1. Defaultvorlagen sind strukturell, nicht vollständig lauffähig. Vertragsdaten mit Descriptoren, Typen, Standards, Kardinalitäten, bindingSchemas und Vorlagen: /doku/vertragsdaten.json ## Erste Schritte in der UI Website: /doku/erste-schritte/ Einen Ablauf erstellen, kontrolliert ausprobieren und anschließend automatisieren – ohne JSON bearbeiten zu müssen. Abbildung: [Jobs, Makros und geplante Ausführungen in der Startübersicht.](/startseite.detail.png) 1. Aktive Automationen: Zeigt eingeschaltete Automationen mit Auslöser, Aktion und nächstem Lauf. 2. Laufende Jobs & Makros: Hier erscheinen gerade ausgeführte Abläufe; Sofort stoppen beendet laufende Ausführungen. 3. Jobs: Anzahl der gespeicherten Jobs; ein Job besteht aus geordneten Steps. 4. Makros: Anzahl der gespeicherten Makros für Maus- und Tastatureingaben. Beginne mit einem kleinen Job und einem Testordner. Im Bereich Jobs einen Job öffnen, einen Step hinzufügen, Einstellungen und Wertequelle wählen, speichern und manuell ausführen. Danach Logs auf Status und Ergebnis prüfen. Erst einen verifizierten Zielablauf per Automation aktivieren. ### Einen ersten Job erstellen 1. Öffne Jobs und lege einen Job mit einem beschreibenden Namen an. Lass Wiederholen für den ersten Versuch ausgeschaltet. 2. Füge in der Hauptphase einen Step hinzu. Wähle zuerst eine einfache Aktion wie Timeout oder Benutzerauswahl. Die Step-Referenz erklärt jede Einstellung und die angebotenen Optionen. 3. Wähle beim Bearbeiten eines Werts einen direkten Wert oder eine kompatible Wertequelle. Ein direkter Wert gehört zu diesem Step; eine Job-Variable lässt sich mehrfach verwenden. 4. Speichere und behebe die angezeigten Validierungsfehler. Ein fehlendes Pflichtfeld oder ein unpassender Quellentyp wird nicht durch die Reihenfolge der Steps gültig. 5. Starte den Job manuell. Prüfe anschließend Logs: Laufstatus, Step-Status und fachliches Ergebnis müssen zum erwarteten Ablauf passen. [Alle Steps](/doku/steps/) [Werte verbinden](/doku/werte-verbinden/) [Logs lesen](/doku/logs-verstehen/) ### Mit vollständigen Beispielen weiterarbeiten Die drei illustrierten Beispiele zeigen eine Rückfrage mit Verzweigungen, eine Dateisicherung mit Prüfungen und einen Arbeitsplatz mit Prozessaktionen. Sie erklären den Aufbau und die Werteverbindungen als Anregung für eigene Jobs. Die Konfigurationen wurden mit den App-Serializern erneut gelesen und validiert. Programme, Dateiaktionen und Eingaben wurden dabei nicht auf einem echten Desktop ausgeführt. Passe Pfade, Zielprogramme und Bildschirme an und teste jeden Ablauf manuell. [Arbeitsunterlagen vorbereiten](/beispiele/unterlagen/) [Sicherung mit Rückfrage](/beispiele/sicherung/) [Arbeitsplatz vorbereiten](/beispiele/arbeitsplatz/) ### Einen geprüften Job automatisch starten 1. Lege im Bereich Automationen eine Automation an und lass sie zunächst deaktiviert. 2. Wähle einen Trigger, zum Beispiel Hotkey, Zeitplan oder eine Dateiänderung, und ergänze dessen Pflichtparameter. 3. Wähle den bereits manuell geprüften Job als Ziel. Lege fest, was passieren soll, falls das Ziel schon läuft, und ob ein Cooldown benötigt wird. 4. Aktiviere die Automation und löse den Trigger gezielt aus. Prüfe in Logs sowohl die Triggerentscheidung als auch den zugehörigen Joblauf. [Automationen einrichten](/doku/automationen-einrichten/) ## Jobs und Abläufe Website: /doku/jobs/ Ein Job besteht aus drei Phasen. Reihenfolge, Blockstruktur und Werteverbindungen bestimmen gemeinsam, was ausgeführt wird. Abbildung: [Job mit Benutzerauswahl, Bedingungen und Werteverbindungen.](/unterlagen.detail.png) 1. Bei jedem Durchlauf: Diese Steps werden in jedem Durchlauf der Hauptphase ausgeführt. 2. Benutzerauswahl abfragen: Fragt eine Antwort ab; deren Rückgabewert steuert die folgenden Bedingungen. 3. Wenn: Beginnt einen Zweig, der bei erfüllter Bedingung ausgeführt wird. 4. Sonst: Dieser Zweig wird ausgeführt, wenn die vorherigen Bedingungen nicht zutreffen. Jobs ordnen Aktionen in Startphase, Hauptphase und Endphase. Die Startphase läuft einmal; eine wiederholte Hauptphase verwendet neue aktuelle Ergebnisse und behält Startphasen-Ergebnisse. Die Endphase dient dem Aufräumen. Bearbeite Blockstruktur und Ergebnisquellen zusammen; eine Reihenfolge allein macht inkompatible Werte nicht nutzbar. ### Startphase, Hauptphase und Endphase Ein Fehler in der Start- oder Hauptphase beendet deren normale Ausführung. Die vorgesehene Endphase wird anschließend zum Aufräumen behandelt. Ein End-Job-Step kann ausdrücklich skip_end_steps setzen; plane notwendiges Aufräumen deshalb bewusst. Hintergrundskripte und gestartete Hintergrundjobs gehören ihrem übergeordneten Job. Dieser sammelt beziehungsweise beendet seine Hintergrundarbeit vor der Endphase. Ein erfolgreiches Starten beweist noch keinen erfolgreichen Abschluss; ein Hintergrundfehler kann den Besitzer fehlschlagen lassen. Startphase / startSteps | Einmalige Vorbereitung vor der Hauptphase. Hier erzeugte Ergebnisse können in der Hauptphase verwendet werden. Hauptphase / steps | Der eigentliche Ablauf. repeating=true wiederholt diese Phase; aktuelle Ergebnisse werden je Durchlauf erneuert. Endphase / endSteps | Aufräumen nach dem Ablauf, auch bei regulären Stopps beziehungsweise Fehlerbehandlung. endPhaseTimeoutSeconds begrenzt diese Phase auf 1–3600 Sekunden, Standard 10. ### Mit Bedingungen verzweigen Struktur-Steps wie Else und End If lassen sich nicht wie normale Aktionen beliebig deaktivieren. Ergebnisse eines nicht ausgeführten Zweigs sind keine sicheren Quellen für einen späteren Pflichtverbraucher. 1. Füge If hinzu und wähle eine typisierte Quelle sowie einen passenden Vergleich. All bedeutet: alle Bedingungen müssen zutreffen; Any: mindestens eine. 2. Füge die Aktionen des ersten Zweigs ein. Ergänze bei Bedarf Else If und Else als alternative Zweige. 3. Schließe den Block mit End If. Verschachtelte Blöcke müssen jeweils vollständig geschlossen sein. 4. Prüfe auch den Fall ohne Treffer. Deaktivierte Steps, nicht gewählte Zweige und gültige, noch nicht verfügbare optionale Eingaben sind unterschiedliche Gründe für Nichtausführung. [If](/doku/steps/if/) [End If](/doku/steps/end_if/) [Unterlagen-Beispiel](/beispiele/unterlagen/) ### Fortsetzen, stoppen und Eingaben aufräumen Continue Job überspringt den verbleibenden aktuellen Hauptdurchlauf. End Job beendet den Job gemäß seiner Endphasenoption. Timeout wartet; er wiederholt keinen Step und ersetzt keine fachliche Bereitschaftsprüfung. Bei Eingaben und Makros wirkt der aktuelle Desktopzustand: fokussiere das richtige Fenster und berücksichtige Bildschirmgeometrie. Block Input besitzt eine Sicherheitszeitgrenze; plane das Entsperren ein. Ein Abbruch kann gehaltene Tasten freigeben, macht bereits eingegebene Texte oder verschobene Dateien aber nicht rückgängig. [Continue Job](/doku/steps/continue_job/) [End Job](/doku/steps/end_job/) [Block Input](/doku/steps/block_input/) ## Werte verbinden Website: /doku/werte-verbinden/ Eine Eingabe enthält entweder einen direkten Wert, eine wiederverwendbare Variable, eine Geheimnisreferenz oder einen Ergebniswert eines anderen Steps. Anbieter, Typ und Anzahl müssen zum Verbraucher passen. Abbildung: [Die Desktop-Textausgabe übernimmt die Beschriftung der Benutzerauswahl als Ergebnisquelle. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-werte.detail.png) 1. Text: Text oder kompatibler Anzeige-Wert aus einer Quelle. Für Benutzerauswahlen eignet sich selected_label. 2. Monitor: Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. 3. Schriftgröße (pt): Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. 4. Schriftfarbe: Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. 5. Deckkraft (%): Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. 6. Anzeigedauer (ms): Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. 7. Bei Job-Ende entfernen: Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. 8. Position: ### Wertequellen in der Oberfläche auswählen Ein technischer Step-Abschluss ist kein fachlicher Treffer: prüfe beispielsweise found, success oder available. Normale Ergebnisquellen müssen vor dem Verbraucher verfügbar sein. Dynamic ROI ist die ausdrücklich unterstützte Rückkopplungsausnahme; andere Vorwärtsreferenzen werden dadurch nicht erlaubt. 1. Öffne die Einstellung des konsumierenden Steps und die Quellenwahl am betreffenden Feld. 2. Für eine feste Einstellung wähle einen direkten Wert. Für mehrfach verwendete Einstellungen lege eine Job-Variable an. Für berechnete Werte wähle den produzierenden Step und dessen einzelne Ergebnis-Eigenschaft. 3. Prüfe den Typ: Text, Integer, Number, Boolean, Path, ProcessReference oder ein strukturierter Ergebniswert sind nicht beliebig austauschbar. Ein Text mit der Zahl 10 ist nicht automatisch ein Integer. 4. Prüfe die Anzahl: Single ist ein Einzelwert, OptionalSingle kann fehlen, Collection ist eine Liste. Der Eingabevertrag bestimmt, ob das erste Element, alle Elemente oder keine Listenauswahl zulässig ist. ### Anbieter und source_id provider_id/source_id sind der aktuelle Referenzvertrag. Die früheren source_step_id, property_id und property_path bleiben für bestehende Jobs lesbar; für neue Verbindungen stabile Ergebnis-IDs und den Anbieter verwenden. Leere Referenzen sind keine konfigurierten Quellen. local_value | GUID eines Eintrags in localValues. owner_step_id und input_path ordnen ihn genau einer Step-Eingabe zu. job_variable | GUID eines Eintrags in variables; der deklarierte Typ und die Kardinalität bleiben maßgeblich. step_result | v1//. Beide Teile separat wie Uri.EscapeDataString kodieren, keine Base64-Kodierung. secret | Kennung eines vorhandenen Geheimnisses. Nur Felder verwenden, deren Anbieter-/Typvertrag dies erlaubt; nicht jedes Textfeld akzeptiert secret. ```json { "provider_id": "step_result", "source_id": "v1/unterlagen-0/selected_value" } ``` ### Direkte Werte im aktuellen Jobformat Der Editor speichert direkte Werte in localValues; inputs des Steps referenziert sie. Das ist keine Ersetzung durch einen eingebetteten value-Wert in inputs. Jede lokale GUID ist im Job eindeutig; owner_step_id muss auf den Besitzer zeigen und input_path den Feld-/Unterfeldpfad benennen. localValues und variables enthalten id, name, description, scope, value_kind, cardinality und value. scope ist StepValue oder Shared. Enum-Werte ergänzen enum_type_name, enum_values und gegebenenfalls enum_display_names; sie sind Typmetadaten, keine Übersetzung des gespeicherten Werts. Number-Anteile wie Konfidenz und Deckkraft speichern 0 bis 1, obwohl die UI Prozent zeigt: 90 % entspricht 0.9. Zeit-, Pixel- und Mengenfelder verwenden die Einheit der jeweiligen Feldreferenz. ```json { "formatVersion": 4, "id": "11111111-1111-4111-8111-111111111111", "name": "Werteverbindung: 250 ms warten", "repeating": false, "variables": [], "localValues": [ { "owner_step_id": "warten", "input_path": "delay_ms", "id": "bc418998-b3f1-a400-4db9-20e0d03deeda", "name": "timeout_delay_ms", "description": "timeout.delay_ms", "scope": "StepValue", "value_kind": "Integer", "cardinality": "Single", "value": 250 } ], "startSteps": [], "steps": [ { "type": "timeout", "id": "warten", "inputs": { "delay_ms": { "provider_id": "local_value", "source_id": "bc418998-b3f1-a400-4db9-20e0d03deeda" } }, "is_enabled": true } ], "endSteps": [], "endPhaseTimeoutSeconds": 10 } ``` [Illustrierte Beispielabläufe](/beispiele/) ### Zusammengesetzte Werte und Listen Ein ResultBinding kann schema_id sowie members oder items enthalten. members ist ein Objekt aus stabilen Mitglieds-IDs und weiteren Bindings; items ist eine geordnete Liste weiterer Bindings. Die Blattknoten verwenden provider_id/source_id. Ein beliebiger Objektaufbau oder frei erfundener schema_id ist nicht gültig. Der exportierte Vertragsdatensatz enthält bindingSchemas: zu jeder versionierten Schema-ID die erlaubten Mitglieder, deren ValueKind, Cardinality, NestedSchemaId, AllowedProviderIds und LegacyAllowedProviderIds. ItemSchemaId beschreibt Listen. fieldSchemas ordnet zusammengesetzte Editorfelder ihrem Schema zu. ROI verwendet desktopautomation.roi/v1 mit enabled, x, y, width, height. Ein Prozessziel verwendet desktopautomation.process-target/v1 mit process_name, executable_path und window_title_contains. Verschachtelte Einblendungs- und Antwortlisten besitzen eigene Schemas. Übernimm dafür die konkreten Vertragsdaten statt die sichtbare UI-Struktur als JSON zu erraten. [Maschinenlesbare Vertragsdaten](/doku/vertragsdaten.json) [Dynamic ROI](/doku/steps/dynamic_roi/) ### Fehlende Werte richtig behandeln FailStep lässt fehlende erforderliche Werte fehlschlagen. SkipStep kann eine gültige, noch nicht verfügbare optionale Step-Quelle mit NoInput überspringen. UseDefault verwendet nur dort den definierten Standard, wo der Eingabevertrag es erlaubt. Eine kaputte Referenz oder ein falscher Typ ist kein harmlos fehlender Wert. Die Step-Seiten zeigen AcceptedShapes, AllowedProviderIds, MissingValuePolicy und CollectionConsumption. Unbegrenzte Anbieterwahl hebt die Typprüfung nicht auf. Ergebnisse aus einer früheren, nicht mehr passenden Iteration nicht als neue Beobachtung behandeln. ## Jobs und Konfigurationen als JSON Website: /doku/dateiformate/ Die App speichert Jobs, Makros und Automationen als getrennte UTF-8-JSON-Dateien. Diese Anleitung beschreibt den aktuellen Entwicklungsstand, nicht ein beliebiges älteres Release. ### Ablage und sicherer Bearbeitungsablauf 1. Erstelle eine Kopie beziehungsweise verwende ein eigenes Testprofil. Bearbeite keine Datei gleichzeitig im geöffneten Editor und extern. 2. Erhalte vorhandene Objekt-, Step-, Antwort- und Variablen-IDs beim Ändern. Vergib bei neuen Objekten eindeutige IDs und aktualisiere zugehörige Referenzen. 3. Speichere gültiges UTF-8-JSON: keine Kommentare, keine nachgestellten Kommas. Windows-Pfade benötigen doppelte Backslashes im JSON oder müssen vom Serializer geschrieben werden. 4. Lade die Datei über den vorgesehenen App-Konfigurationsweg, öffne sie im Editor und behebe die Validierungsfehler. Ein erfolgreicher JSON-Parser prüft noch keine Job-/Triggerregeln. 5. Teste den Ablauf manuell mit angepassten Testpfaden. Aktiviere zugehörige Automationen erst danach. Jobs | %APPDATA%\DesktopAutomation\Configs\Job Makros | %APPDATA%\DesktopAutomation\Configs\Makro Automationen | %APPDATA%\DesktopAutomation\Configs\Automation Profile | %APPDATA%\DesktopAutomation\Profiles\\Configs\… Logs | %LOCALAPPDATA%\DesktopAutomation\Logs\v2 ### Die Job-Hülle Die leere Hülle illustriert die Struktur; sie ist kein nützlicher ausführbarer Ablauf. Das Wertebeispiel in der Anleitung „Werte verbinden“ zeigt eine vollständige inputs/localValues-Datei. formatVersion | 4 für aktuelle Jobs. Keine Versionsnummer erhöhen, um alte Dateien scheinbar zu migrieren. id / name | Eindeutige Job-GUID und Anzeigename. Automations-Ziele und Start-Job-Steps referenzieren die ID. repeating | Boolean: Wiederholung der Hauptphase. variables / localValues | Typisierte wiederverwendbare Variablen und direkte Step-Werte. IDs, Besitzer und Referenzen konsistent halten. startSteps / steps / endSteps | Geordnete Step-Listen je Phase; jeder Step besitzt type und eine eindeutige string-ID. endPhaseTimeoutSeconds | Ganzzahl 1–3600; Standard 10. Zeitlimit der Endphase. ```json { "formatVersion": 4, "id": "de2ef407-cc66-24bc-cdcd-9d258b46cc59", "name": "Mein Job", "repeating": false, "variables": [], "localValues": [], "startSteps": [], "steps": [], "endSteps": [], "endPhaseTimeoutSeconds": 10 } ``` ### Step-Dateien: settings und inputs type ist die stabile Step-ID wie timeout, user_choice oder file_system_operation. id ist die Identität dieser Instanz; is_enabled steuert normale Aktionen. Struktur-Steps können zusätzliche abgeleitete Mitglieder wie CanBeDisabled serialisieren; sie sind keine frei nutzbaren Funktionsschalter. Bei aktuellen Steps mit nicht leerem inputs wird settings vom kanonischen Job-Serializer nicht zusätzlich geschrieben. Aktive Einstellungen stammen aus den Bindings und deren Quellen. Alte beziehungsweise strukturelle Defaultvorlagen mit leerem inputs besitzen weiterhin settings. Mische diese Wege nicht als zwei konkurrierende aktive Konfigurationen. Jede Step-Seite enthält eine vom Serializer erzeugte strukturelle Defaultvorlage und erklärt auch die verschachtelten settings-Felder. Defaultvorlagen können leere Pflichtwerte enthalten. Für einen vollständigen gültigen Job speichere einen im Editor angelegten Job. [Step-Referenz](/doku/steps/) [Werte verbinden](/doku/werte-verbinden/) [Validierte Beispiele](/beispiele/) ### Schreibweisen, Typen und Einheiten Discriminator | Jobs/Makrobefehle: type. Automations-Trigger: $type. Groß-/Kleinschreibung und stabile IDs übernehmen. Enums | Viele Fachwerte sind Namen wie Copy oder Ignore. MacroRecordingMode und Hotkey-Modifier sind dagegen Zahlen. Eine globale Umwandlung aller Enums in Strings ist falsch. Die JSON-Vorlage zeigt die tatsächliche Schreibweise. TimeSpan | Zeichenfolge wie 00:00:01; wird zum Beispiel für Cooldown, Debounce und Verzögerungen verwendet. Zeitpunkte / Uhrzeit | DateTimeOffset mit Offset, z. B. 2030-01-01T08:00:00+00:00; TimeOnly z. B. 08:30:00. Zeitpunkt und tägliche Uhrzeit nicht verwechseln. Zeiten | Step-Felder meist ausdrücklich *_ms / *_seconds; Makro duration ist Millisekunden, durationUs und delayBeforeUs sind Mikrosekunden. Zahlen / Booleans / null | JSON-Zahlen mit Punkt, true/false ohne Anführungszeichen. null, leere Zeichenfolge und 0 haben unterschiedliche Bedeutungen. Konfidenz / Deckkraft | Anteil 0–1 im gespeicherten Zahlenwert; die UI kann Prozent anzeigen. Koordinaten | Pixel gemäß jeweiligem Bildschirm-/Koordinatenmodus. Der virtuelle Desktop kann negative Koordinaten haben. ### Vollständige Dateien und Referenz herunterladen Die Vertragsdaten bündeln App-Version, formatVersions, Descriptoren, Eingabeverträge, Ergebnis- und Windows-Kataloge, bindingSchemas, Feld-Schemazuordnungen, Erklärungen und tatsächliche Serializer-Vorlagen. Sie sind ein Referenzdatensatz, kein JSON-Schema und kein Ersatz für die App-Validatoren. Die vollständige Textreferenz enthält dieselben Erklärungen wie die Website. Für einen Agenten sind stabile IDs und Ergebnisverträge maßgeblich, nicht übersetzte Anzeigenamen. [Vertragsdaten als JSON](/doku/vertragsdaten.json) [Vollständige Referenz als Markdown](/doku/referenz.md) [Agenten-Einstieg](/llms.txt) ## Makros aufnehmen und bearbeiten Website: /doku/makros-bearbeiten/ Ein Makro führt eine geordnete Folge von Maus- und Tastaturbefehlen aus. Die Aufnahmeumgebung und die Zeiteinheiten sind Teil des Vertrags. Abbildung: [Gruppierte Maus- und Tastaturbefehle mit ausgewählter Tastenkombination.](/makro-editor.detail.png) 1. Key: Taste bzw. Tastenkombination für diesen Befehl. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### Eine Aufnahme vorbereiten 1. Lege ein Makro an und wähle den Aufnahmemodus sowie die zu erfassenden Eingaben. Einstellungen wirken auf zukünftige Aufnahmen. 2. ClicksOnly erfasst die ausgewählten Eingaben ohne vollständige Bewegungsspur. ScreenAccurateAbsolute erhält absolute Positionen; MotionFaithfulRelative verwendet relative Bewegung. 3. Prüfe Aufnahmetaste, Mindestintervall und Mindestdistanz. Die Stoppgeste kann aus der Aufnahme entfernt werden; automatische Bewegungsgruppen ordnen die Darstellung. 4. Beende die Aufnahme und kontrolliere Befehle, Gruppen und Timeline. Wähle für den ersten Test einen leeren Editor und die passende Bildschirmumgebung. 5. Führe das Makro aus und kontrolliere Logs. Down/Up-Paare vollständig halten; Gruppen ordnen die Darstellung. Maßgeblich für die Wiedergabe bleibt die geordnete Befehlsliste. [Alle Makrobefehle](/doku/makros/) [Aufnahme und Gruppen](/doku/makros/recording/) ### Makroformat 3 formatVersion / id / name | Version 3, eindeutige Makro-GUID, Anzeigename. commands | Geordnete polymorphe Liste mit type und eindeutigen Befehls-IDs. groups | Gruppen-ID, title und automatic. Ein Befehl verweist über groupId auf eine vorhandene Gruppe. Jede Gruppe muss Befehle enthalten; deren Befehle müssen einen zusammenhängenden Block in commands bilden, also nicht A–B–A. recordingSettings | mode: 0=ClicksOnly, 1=ScreenAccurateAbsolute, 2=MotionFaithfulRelative. minimumIntervalUs: Mikrosekunden; minimumDistancePixels: Pixel. recordKeyboard, combineKeyboardInputs, recordMouseButtons, removeStopGesture und automaticMovementGroups sind Booleans. recordingHotkeyModifiers ist Bitmaske, recordingHotkeyVirtualKey Windows-Virtual-Key-Zahl. recordedEnvironment | Optionale Aufnahmeumgebung: virtualDesktopX/Y/Width/Height beschreiben den virtuellen Desktop, recordedAtUtc den Aufnahmezeitpunkt, startCursorX/Y die optionale Startposition. Geometrie nicht frei erfinden. ```json { "formatVersion": 3, "id": "95725efa-50bf-07cb-abf1-4f87f86b2103", "name": "Mein Makro", "commands": [], "groups": [], "recordingSettings": { "mode": 1, "minimumIntervalUs": 1000, "minimumDistancePixels": 0, "recordKeyboard": true, "combineKeyboardInputs": false, "recordMouseButtons": true, "removeStopGesture": true, "automaticMovementGroups": true, "recordingHotkeyModifiers": 0, "recordingHotkeyVirtualKey": 120 }, "recordedEnvironment": null } ``` ### Zeit, Tasten und Maus Der Executor koordiniert Eingaben exklusiv und gibt von ihm gehaltene Tasten beziehungsweise Maustasten bei Fehler oder Abbruch frei. Er stellt keine bereits veränderten Dateien und Texte wieder her. Bildschirm-/Fokusänderungen können absolute Wiedergaben beeinflussen. timeout.duration | Millisekunden: 200 bedeutet 0,2 Sekunden. text_input.durationUs / key_combination.durationUs | Mikrosekunden: 200000 bedeutet 0,2 Sekunden. delayBeforeUs | Optionale geplante Pause vor einem Befehl in Mikrosekunden. key_down / key_up | Tastenkennung, z. B. CONTROL und VK_C. Aliase wie CTRL, STRG, ENTER und ESC werden kanonisch geparst. key_combination.keys | Mindestens zwei unterschiedliche Tasten: zuerst Modifier, zuletzt eine Nicht-Modifier-Taste, z. B. ["CONTROL", "VK_C"]. mouse_move_absolute | x/y im virtuellen Desktop; Mehrmonitor-Layouts können negative Positionen besitzen. mouse_move_relative / mouse_wheel | deltaX/deltaY: Bewegungsdifferenz beziehungsweise Rad-Deltas, keine absoluten Zielkoordinaten. mouse_down / mouse_up | Passende Maustastenkennung und Gegenbefehl; konkrete erlaubte Namen in der Befehlsreferenz. ```json { "type": "key_combination", "keys": [], "durationUs": 0, "id": "13effec4-5e09-0872-eac1-b63a4eb7e8e5" } ``` [Tastenkombination](/doku/makros/key_combination/) [Mausbewegung absolut](/doku/makros/mouse_move_absolute/) ## Automationen einrichten Website: /doku/automationen-einrichten/ Ein Trigger beobachtet etwas. Die Startregeln entscheiden anschließend, ob der ausgewählte Job oder das Makro tatsächlich gestartet wird. Abbildung: [Zeitplan und Ausführungsregeln einer Automation.](/automationen.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Uhrzeit und Tage: Legt die Uhrzeit und Wochentage der wiederkehrenden Ausführung fest. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### Ziel und Startregeln festlegen 1. Erstelle eine deaktivierte Automation mit einem verständlichen Namen und wähle genau eine Triggerart. 2. Ergänze die spezifischen Felder: bei Hotkey Taste/Modifier, bei Zeitplan Tage/Uhrzeit, bei Ordnern existierender Pfad/Filter/Ereignis, bei Windows-Ereignissen Funktion und angebotene Parameter. 3. Wähle einen vorhandenen Job oder ein Makro. Eine gültige Ziel-ID ist erforderlich; ein Anzeigename allein referenziert das Ziel nicht. 4. Prüfe Cooldown und Zeitfenster. Wähle bewusst das Verhalten bei laufendem Ziel: ignorieren, stoppen, neu starten oder parallel starten. 5. Teste das Ziel manuell, aktiviere danach die Automation und prüfe Trigger, Entscheidung und Zielrun gemeinsam in Logs. [Trigger, Aktionen und Startregeln](/doku/automationen/) ### Automationformat 1 formatVersion / id / name / description / active | Version 1, eindeutige GUID, Anzeigename, Beschreibung und Aktivierung. Neue Testdateien active=false lassen. trigger | Polymorphes Objekt mit $type. Der kanonische Serializer schreibt zusätzlich Kind/kind als abgeleitete Angaben; die Vorlage unverändert als Struktur nutzen. action | name als Anzeige, action_type Job oder Makro, passende job_id beziehungsweise makro_id als GUID. Nicht beide Ziele als aktive Auswahl behandeln. run_policy | already_running_behavior, cooldown als TimeSpan sowie optionale enabled_from / enabled_until als tägliche Uhrzeiten. created_at / updated_at / last_run_at | Zeitpunkte mit Offset; last_run_at kann null sein. Kein eigener Erfolgsbeleg für den Zieljob. ```json { "formatVersion": 1, "id": "57f39786-8cfe-eb47-9796-a3248b787cf8", "name": "Meine Automation", "description": "", "active": false, "trigger": { "$type": "hotkey", "Kind": "Hotkey", "modifiers": 0, "virtual_key_code": 0, "debounce": "00:00:00", "delay_after_event": "00:00:00", "kind": "Hotkey" }, "action": { "name": "", "job_id": null, "makro_id": null, "action_type": "Job" }, "run_policy": { "already_running_behavior": "Ignore", "cooldown": "00:00:00", "enabled_from": null, "enabled_until": null }, "created_at": "2030-01-01T08:00:00+00:00", "updated_at": "2030-01-01T08:00:00+00:00", "last_run_at": null } ``` ### Die elf Triggerarten Die tatsächlichen stabilen IDs und konkreten Parameter stehen in den Trigger-Referenzen und Serializer-Vorlagen. Debounce und delay_after_event sind TimeSpan-Werte; Cooldown gehört dagegen zur Startregel. hotkey | Windows-Virtual-Key-Zahl und Modifier-Bitmaske: Alt=1, Ctrl=2, Shift=4, Windows=8; Strg+Alt ist 3. schedule | Wochentage und Uhrzeit für wiederkehrende geplante Starts. once_at | Einmaliger Zeitpunkt mit Offset; vergangene Zeitpunkte bewusst prüfen. interval | Periodischer Abstand als TimeSpan. system_event | Eines der angebotenen Systemereignisse, beispielsweise Anwendung oder Sitzung. file_system_event | Änderung eines existierenden beobachteten Ordners; Filter, Änderungsart und Unterordner beachten. process_started | Beobachteter Prozessstart mit den angebotenen Filtern. process_exited | Beobachtetes Prozessende mit den angebotenen Filtern. windows_event | Eine vom Windows-Katalog als Ereignis unterstützte Funktion. window_event | Beobachtete Fensteränderung mit Ereignisart, Prozess- und Titelfilter. webhook | Authentifizierte HTTP-Anforderung an den konfigurierten lokalen Listener. [Trigger-Katalog](/doku/automationen/) ### Webhook verwenden Der Listener verwendet standardmäßig Port 17843. Offline bindet lokal; Lan beziehungsweise Online erweitern den Netzwerkzugriff gemäß Konfiguration. Ein Online-Modus richtet selbst keinen Tunnel ein. Die externe HTTPS-Basisadresse darf keine Query oder Fragmentteile enthalten. Sende POST an /api/v1/webhooks/{hook_id}. Authentifiziere mit X-Webhook-Secret oder Authorization: Bearer . Der generierte Secretwert besitzt 48 Hexzeichen; die Validierung verlangt mindestens 24 Zeichen. Verwende für deine Installation einen eigenen Secretwert statt des Platzhalters in der Vorlage. HTTP 202 bestätigt die Annahme, nicht den erfolgreichen Jobabschluss. Prüfe danach AutomationDecision und den verknüpften Zielrun. Portbelegung, Bind-Adresse, Authentifizierung und Startregeln können einen Start verhindern. ```json { "$type": "webhook", "Kind": "Webhook", "hook_id": "d4fa91c4-b683-2c23-b89c-7ab50f8b606c", "network_mode": "Offline", "port": 17843, "secret": "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD", "online_base_url": "", "kind": "Webhook" } ``` [Webhook-Feldreferenz](/doku/automationen/webhook/) ## Logs lesen und auswerten Website: /doku/logs-verstehen/ Logs unterscheiden den Start eines Ablaufs, seinen belegten Abschluss, fachliche Ergebnisse und die Vollständigkeit der gespeicherten Daten. Abbildung: [Erfolgreiche und fehlgeschlagene Beispielausführungen mit Ergebnissen und Warnungen im Verlauf.](/verlauf.detail.png) 1. 2 Ausführungen mit neuen Problemen: Hinweis auf noch nicht angesehene Läufe mit Fehlern oder Warnungen. 2. Ergebnis: Zeigt Erfolg, Warnungen oder Fehler des abgeschlossenen Laufs. 3. Auslöser: Zeigt, ob der Lauf manuell oder durch eine Automation gestartet wurde. 4. Dauer: Zeitspanne der Ausführung; sie hilft, langsame oder ungewöhnliche Läufe zu erkennen. ### Einen Lauf in der UI untersuchen 1. Öffne Logs und grenze Quelle, Zeitraum und gegebenenfalls Schweregrad ein. Ein enger Schweregradfilter kann hilfreiche Details verbergen. 2. Öffne den betreffenden Lauf. Prüfe Outcome, CompletionReason und ob die Daten vollständig gelesen wurden. 3. Vergleiche Step-Übersicht und Einzelereignisse. Wiederholte erfolgreiche oder übersprungene Hauptphasen-Steps können in StepSummaries aggregiert sein; Warnungen und Fehler bleiben einzeln. 4. Bei Automationen zuerst Triggerbeobachtung und Startentscheidung lesen, dann den zugehörigen Job-/Makrolauf. Ein abgewiesener Start ist keine ausgeführte Aktion. 5. Exportiere den Bericht, wenn du den Ablauf weiter untersuchen möchtest. Prüfe vor Weitergabe die enthaltenen strukturierten Pfade und Identitäten. [Alle Logfelder und Codes](/doku/logs/) ### Die vier Log-Ansichten Beim Lesen beziehungsweise Scrollen kann die sichtbare Live-Aktualisierung pausieren; die Erfassung läuft weiter. Neu passende Ereignisse werden gezählt und können anschließend geladen werden. Weitere Seiten behalten ihren Abfrage-Snapshot, damit neue Ankünfte die Liste nicht verschieben. Run-Export verwendet den aktuellen Filter und Checkpoint für alle passenden Läufe, nicht nur die sichtbare Seite. Bei Ereignisexport gelten entsprechend die Ereignisfilter. Nach einer Definitionänderung bleiben frühere Trigger-, Ziel- und Step-Snapshots erhalten; sie werden nicht aus der aktuellen Definition neu erfunden. Übersicht | Zeigt aktuelle Läufe und neue Probleme. Die Problemzahl umfasst den gewählten Bestand, nicht nur die sichtbaren Vorschauzeilen. Job-Ausführungen | Zeigt konkrete Jobläufe mit Status, Dauer und Step-Verlauf. Normales Öffnen zeigt auch erfolgreiche Läufe; die Problemaktion kann gezielt nur neue Probleme filtern. Automationen | Zeigt Beobachtung und Entscheidung je Trigger-ID sowie zugehörige neue oder bereits laufende Ziele. Ein bloßer Startauftrag ohne belegten Lauf bleibt angefordert beziehungsweise unklar. Anwendungsdiagnose | Erlaubt Suche nach Quelle, Fachbereich und Schweregrad. Die gezielte Quelle Application schließt Job-/Makro-Ereignisse aus; quellenübergreifende Diagnose berücksichtigt auch Domain-Ereignisse. ### Neu, Gesehen und Erledigt Diese Markierungen beschreiben deinen Bearbeitungsstand eines Problems, nicht die Qualität des ausgeführten Jobs. Neu weist auf noch nicht bestätigte Probleme hin; Gesehen hält fest, dass eine konkrete Beobachtung gelesen wurde; Erledigt ist eine ausdrückliche Bearbeitungsmarkierung. Nach erfolgreichem Laden einer Problembeobachtung wird nur diese Auswahl bestätigt. Andere ungesehene Probleme desselben Steps oder Laufs bleiben neu. Eine erneut beobachtete gleiche Problem-ID bleibt bestätigt; neue Problem-IDs oder eine höhere Schwere können wieder Aufmerksamkeit benötigen. Die Markierungen werden getrennt von den unveränderten Logs gespeichert und über Neustarts erhalten. Sie ändern weder ursprüngliche Fehler-/Warnungszahlen noch die Aufbewahrung oder den Export der Ausführungsbelege. Du kannst eine Markierung ausdrücklich wieder öffnen. Bei Speicherfehlern bleibt die Bestätigung als Fehler sichtbar; die UI soll keinen erfolgreich gespeicherten Status vortäuschen. Bei unvollständiger Evidenz wird eine bestätigte Laufzusammenfassung separat behandelt, statt nicht vorhandene Ereignisse zu erfinden. ### Vom Log zum betroffenen Step Wähle den konkreten Step beziehungsweise die konkrete Ausführung im Laufdetail. Die Navigation verwendet gespeicherte Step-ID, Phase, Position und Ausführungs-ID und prüft dann, ob der aktuelle Job und Step noch existieren. Gelöschte Definitionen oder nicht mehr verfügbare Pfade werden mit einem Grund angezeigt. Diagnoseaktionen können erlaubte Ordner beziehungsweise Dateien im Explorer anzeigen; sie führen keine im Log genannten Dateien aus. Auch ein nicht ausgeführter Step kann über seinen vorhandenen Snapshot nachvollzogen werden. ### Identitäten und Status Nach einem Neustart kann ein vorher offener Lauf als interrupted/incomplete erkannt werden. Ein unbekannter Abschlusszeitpunkt wird nicht erfunden. found=false beziehungsweise available=false im Step-Ergebnis bleibt eine fachliche Aussage, die vom technischen Step-Status getrennt zu prüfen ist. RunId | Identität eines konkreten Laufs; nicht mit Job-/Makro-/Automation-ID verwechseln. Source / SourceId | Art und Identität der Ursprungsdefinition. StepId / StepExecutionId | Konfigurierter Step und konkrete Ausführung; Wiederholungen können neue Ausführungs-IDs besitzen. ParentRunId / RelatedInstanceIds | Verbindung zu übergeordneten beziehungsweise zugehörigen Läufen/Instanzen. Outcome / CompletionReason | Belegtes Resultat und Abschlussgrund. Start, Dispatch und eine Ausgabe ersetzen keinen terminalen Abschluss. IsComplete / LostEntries / Issues / ReadState | Qualität der Belege. Bei Lücken keinen Erfolg aus fehlenden Fehlerereignissen ableiten. ### JSONL und Support-Export Schema-Version 2 schreibt strukturierte JSONL-Ereignisse, Laufmetadaten und Speicherzustand unter dem lokalen Logs/v2-Verzeichnis. Eine JSONL-Zeile ist ein JSON-Objekt. Context trägt die Zuordnung; Code ist stabiler als der übersetzte Message-Text. Der ZIP-Export enthält einen Manifest-/Übersichtsbestand, runs.json, JSONL-Ereignisse und report.txt. Der Store wird davor gespült; ein bestehendes Exportziel wird nicht überschrieben. Lies Laufzusammenfassung und Ereignisse gemeinsam, statt nur nach Fehlertexten zu suchen. Retention hält Ereignisse standardmäßig ungefähr 30 Tage und bis ungefähr 500 MiB. Aktive geschützte Läufe können Grenzen überschreiten. Das Alter richtet sich nach dem letzten Anhängen eines Segments, nicht jeder einzelnen Zeile; Aufräumen erfolgt beim Start, bei Rotation und stündlich. Das Bestätigen eines Log-Hinweises verlängert die Aufbewahrung nicht. Unlesbare Dateien und bekannte Verluste ergeben Partial/Unavailable beziehungsweise einen unvollständigen Bestand. Die UI kann lesbare Teile weiterhin zeigen. Ältere Logs werden nicht zu einem künstlich vollständigen v2-Lauf zusammengemischt. ### Ein Ereignis als JSON lesen Dieses synthetische Ereignis wurde mit den echten Log-Serializeroptionen erzeugt. In einer JSONL-Datei steht das Objekt auf einer einzelnen Zeile. PascalCase-Feldnamen wie SchemaVersion, Code und Context sowie Enum-Namen wie Job und Information bleiben erhalten. Context.RunId verbindet das Ereignis mit dem Lauf, StepId mit der Konfiguration und StepExecutionId mit dieser konkreten Ausführung. step.completed und DurationMs=250 belegen diesen Step-Abschluss; der Abschluss des ganzen Jobs benötigt weiterhin den zugehörigen Laufstatus beziehungsweise run.completed. Für Abfragen verwenden LogQuery und LogPage die dokumentierten Filter, Snapshot-/Sequenzgrenzen und den Lesezustand. LogStepExecution verbindet Ereignisse, Status, Ursache und gegebenenfalls eine aggregierte Summary. ```json { "SchemaVersion": 2, "Id": "22222222-2222-4222-8222-222222222222", "Sequence": 2, "Timestamp": "2030-01-01T08:00:01+00:00", "Source": "Job", "SourceId": "11111111-1111-4111-8111-111111111111", "SourceName": "Werteverbindung: 250 ms warten", "Area": "Execution", "Level": "Information", "Code": "step.completed", "Message": "Beispiel: Warte-Step beendet.", "Details": null, "Context": { "RunId": "33333333-3333-4333-8333-333333333333", "InstanceId": null, "TriggerId": null, "AutomationId": null, "StepId": "warten", "StepExecutionId": "44444444-4444-4444-8444-444444444444", "ParentRunId": null }, "ProblemId": null, "DiagnosticCode": null, "Phase": "Main", "Iteration": 1, "DurationMs": 250, "Parameters": {}, "BranchDecision": null, "Trigger": null, "Paths": [], "FlowEffect": null, "Category": "Execution", "RelatedInstanceIds": [] } ``` ### Welche Daten aufgezeichnet werden Strukturierte Details folgen einer Allowlist. Bekannte geladene Secrets werden maskiert; rohe Eingabetexte, Skriptargumente und Bilder werden nicht pauschal als Datenabbild gespeichert. Erlaubte Dateipfade und Identitäten können dennoch im Bericht stehen. Für Agenten: Code, typisierte Statuswerte, Run-/Step-IDs und Vollständigkeit auswerten. Message dient Menschen. Verlorene Ereignisse nicht rekonstruieren und unbekannte Endzeitpunkte nicht ersetzen. [LogEvent](/doku/logs/LogEvent/) [LogRun](/doku/logs/LogRun/) [storage.gap](/doku/logs/storage.gap/) ## Windows-Funktionen verwenden Website: /doku/windows-funktionen/ Der Windows-Katalog unterscheidet Ereignisse, typisierte Zustandsabfragen und Einstellungsänderungen. Eine Funktion unterstützt nur die im Katalog gesetzten Fähigkeiten. Abbildung: [Prozessstatus und bedingter Programmstart im Job-Editor.](/arbeitsplatz.detail.png) 1. Bei jedem Durchlauf: Diese Steps werden in jedem Durchlauf der Hauptphase ausgeführt. 2. Wenn: Beginnt einen Zweig, der bei erfüllter Bedingung ausgeführt wird. 3. Sonst: Dieser Zweig wird ausgeführt, wenn die vorherigen Bedingungen nicht zutreffen. 4. Prozessstatus prüfen: Liefert, ob der angegebene Prozess läuft; das Ergebnis kann einen Wenn-Zweig steuern. ### Die passende Funktion auswählen Ein Ereignis ist keine aktuelle Zustandsabfrage. Eine reine Einstellung bietet nicht automatisch einen Abfragevertrag. Verfügbarkeit hängt von Windows-Version, installierter Hardware/Diensten und Berechtigungen ab. Anforderungen wie RequiresElevation stehen in den Vertragsdaten. 1. Wähle für eine aktuelle Beobachtung den Step Windows-Zustand abfragen und eine Funktion mit SupportsStateQuery. 2. Wähle für einen Start bei Änderungen eine Windows-Ereignis-Automation und eine Funktion mit SupportsEvents. 3. Wähle für eine Änderung den Step Windows-Einstellung ändern und eine Funktion mit SupportsSettingChange. 4. Ergänze die angebotenen Parameter und nutze vorhandene Geräte, Profile, Drucker oder Energiesparpläne. Prüfe Ergebnisstatus und Fehlercode, bevor du einen Folge-Step darauf aufbaust. [Windows- und Ergebnisreferenzen](/doku/werte/) [Windows-Zustand](/doku/steps/windows_state_query/) [Windows-Einstellung](/doku/steps/windows_setting_change/) ### Parameter und Ergebnisse für Textdateien Verwende die genaue Capability-ID wie network.connectivity oder audio.master_volume. Parameters enthält Name, Type, DefaultValue, AllowedValues und Grenzen; die Werte werden nicht aus dem Anzeigenamen einer Funktion abgeleitet. Der jeweilige Ergebnisvertrag beschreibt stabile Property-IDs, Datentypen, Kardinalität und Enum-Werte. Erst Success beziehungsweise den fachlichen Erfolgswert prüfen, dann die abgefragte Eigenschaft auswerten. Unsupported, AccessDenied und Timeout beschreiben fehlgeschlagene Beobachtungen, nicht einen ausgeschalteten oder negativen Systemzustand. ## Dokumentation für Agenten Website: /doku/agenten/ Ein Agent kann diese Referenz ohne Browser lesen und daraus Dateien erstellen oder bestehende Konfigurationen bearbeiten. Die UI- und Dateianleitungen verwenden dieselben kanonischen Verträge. ### Die Dokumentation maschinell lesen Lies zuerst Version und Dateiformate, dann den konkreten Step-/Trigger-/Makrovertrag. Die vollständige Referenz enthält alle Feld-, Options-, Eingabe- und Ergebnis-Erklärungen. JSON-Vertragsdaten erlauben gezieltes Nachschlagen; es handelt sich um Referenzdaten, nicht ein ausführbares Programm oder JSON-Schema. Für kleine Kontexte enthält llms.txt Links auf einzelne Markdown-Referenzen. Jede Funktionsseite bietet außerdem vertrag.json mit genau ihrem Vertrag, ihren Erklärungen und ihrer Vorlage. Der Referenzindex ordnet stabile IDs diesen URLs zu; so muss ein Agent nicht die gesamte mehrmegabytegroße Referenz lesen. [Kompakter Einstieg: llms.txt](/llms.txt) [Vollständiger Text: llms-full.txt](/llms-full.txt) [Vollständige Referenz als Markdown](/doku/referenz.md) [Verträge, Erklärungen und Serializer-Vorlagen als JSON](/doku/vertragsdaten.json) ### Verlässlicher Bearbeitungsablauf 1. Bestimme App-Version und Formatversion der vorhandenen Datei. Behalte bestehende IDs und Eigenschaften, wenn der Auftrag sie nicht ändert. 2. Wähle stabile type- beziehungsweise $type-IDs aus der Referenz. Für Windows-Funktionen nur unterstützte Capability-IDs und Parameter verwenden. 3. Modelliere den Datenfluss: Anbieter, Source-ID, Typ, Kardinalität und Produzentenreihenfolge prüfen. Für direkte Werte aktuelle inputs/localValues verwenden; compound schemas nicht frei erfinden. 4. Prüfe jede Einheit und Enum-Schreibweise an der tatsächlichen JSON-Vorlage. Defaultvorlagen mit leeren Pflichtwerten ergänzen; sie nicht als erfolgreich geprüften Ablauf ausgeben. 5. Schreibe eine separate UTF-8-Datei, prüfe JSON-Syntax und lade sie zur fachlichen Validierung in die App. Bei Zugriff auf das Repository bestehende Serializer, Migratoren und Validatoren verwenden. 6. Teste mit passenden Testdaten und deaktivierten Automationen. Prüfe in Logs technischen Status, fachliches Ergebnis und vollständige Belege. 7. Berichte konkret, ob nur die Datei erzeugt, die Konfiguration fachlich validiert oder der Ablauf tatsächlich ausgeführt wurde. ### Bei Produktänderungen die Doku mitpflegen Agenten im Repository müssen die betroffenen Anleitungen, Referenztexte, Werte-/Optionsbeschreibungen, Dateibeispiele und gegebenenfalls Screenshots in derselben Änderung pflegen. Das gilt auch für reine Verhaltensänderungen ohne neue Felder. website/Build.ps1 exportiert die kanonischen Verträge und validiert die internen Beispielkonfigurationen. Der Website-Check vergleicht Quellen, Export und Ausgabe und prüft vollständige Erklärungsschlüssel, Verweise und Regressionen. Der vollständige Repository-Check eng/verify.ps1 -Mode Full bleibt das Abschlusskriterium. Der Generator aktualisiert technische Kataloge und Seiten, schreibt aber keine ungeprüften Verhaltenserklärungen. Neue oder geänderte Konzepte benötigen eine semantische Prüfung durch den bearbeitenden Agenten. ## Fehler systematisch eingrenzen Website: /doku/fehlerbehebung/ Beginne beim ersten belegten Fehler und prüfe Quelle, fachliche Voraussetzungen und Startentscheidung getrennt. Abbildung: [Zwei Kopieraktionen mit Rückfrage und alternativem Zweig.](/sicherung.detail.png) 1. Bei jedem Durchlauf: Diese Steps werden in jedem Durchlauf der Hauptphase ausgeführt. 2. Benutzerauswahl abfragen: Fragt eine Antwort ab; deren Rückgabewert steuert die folgenden Bedingungen. 3. Wenn: Beginnt einen Zweig, der bei erfüllter Bedingung ausgeführt wird. 4. Sonst: Dieser Zweig wird ausgeführt, wenn die vorherigen Bedingungen nicht zutreffen. ### Eine Eingabe fehlt oder hat den falschen Typ 1. Öffne den konsumierenden Step und identifiziere das fehlerhafte Feld. 2. Prüfe provider_id/source_id beziehungsweise die Auswahl im Editor. Existieren Variable, Secret oder Produzent und dessen stabile Ergebnis-ID? 3. Vergleiche Datentyp und Kardinalität mit dem Eingabevertrag. Prüfe bei localValues Besitzer-ID, input_path und tatsächlichen value-Typ. 4. Prüfe, ob der Produzent in diesem Zweig und Durchlauf tatsächlich ausgeführt wurde. Eine optionale fehlende Quelle kann überspringen; ein falscher Typ bleibt ein Fehler. ### Eine Dateiaktion schlägt fehl Prüfe zuerst die aufgelösten Quell- und Zielpfade, den gewählten Operationsmodus, Existenz, Filter und Schreibrechte. Bei Copy/Move/Rename gelten unterschiedliche Zielfelder; eine Liste von Treffern ist kein einzelner Pfad. Bei gesperrten Dateien retry_locked_files, retry_count und retry_delay_ms prüfen. Wiederholungen schaffen keine fehlenden Berechtigungen. Arbeite mit einem Testordner und überprüfe die fachlichen Ergebniswerte sowie step.paths, soweit vorhanden. [Dateioperation](/doku/steps/file_system_operation/) ### Die Automation startet das Ziel nicht Prüfe active und ob der Trigger tatsächlich beobachtet wurde. Prüfe danach AutomationDecision: ungültiges Ziel, Cooldown, Zeitfenster oder ein laufendes Ziel können einen Start verhindern. Bei Hotkeys Modifier-Bitmaske und Virtual-Key-Code prüfen; bei Ordnern existierendes Verzeichnis und Filter; bei Zeitplänen Zeitpunkt/Uhrzeit und Tage; bei Webhooks Bind-Adresse, Port und Secret. Ein Triggerereignis oder HTTP 202 beweist noch keinen fertigen Zieljob. ### Logs wirken leer oder unvollständig Erweitere zunächst Quelle, Zeitraum und Schweregradfilter. Lies auch StepSummaries, weil nicht jeder erfolgreiche wiederholte Step als separate Ereigniszeile gespeichert wird. Prüfe ReadState, IsComplete, LostEntries und Issues. Ein Aufbewahrungsablauf, nicht lesbare Datei oder Speicherverlust begrenzt die Diagnose. Berichte diese Grenze statt fehlende Ereignisse als Erfolg auszulegen. ## Version und Kompatibilität Website: /doku/kompatibilitaet/ Diese Referenz beschreibt den Repository-Entwicklungsstand 1.6.1 vom 8. Oktober 2026. Diese Dokumentation beschreibt den Repository-Entwicklungsstand 1.6.1 vom 8. Oktober 2026, einschließlich noch nicht separat veröffentlichter Änderungen. Sie ist keine Zusage, dass ein unverändertes älteres Download-Release jeden beschriebenen Vertrag besitzt. Gespeicherte Formate sind Job 4, Makro 3 und Automation 1; vorhandene ältere Formate werden über die vorgesehenen Kompatibilitätswege gelesen. ### Entwicklungsstand und Download Die Beschreibung enthält Änderungen des aktuellen Arbeitsbaums, die noch nicht separat veröffentlicht sein können. Ein unverändertes älteres Download-Release besitzt deshalb möglicherweise nicht alle beschriebenen Felder oder Funktionen. Aktuelle gespeicherte Formate sind Job 4, Makro 3 und Automation 1. Versionsnummern gehören zum jeweiligen Dateivertrag, nicht zur Website. Bestehende Dateien werden über die vorgesehenen Kompatibilitätswege gelesen; eine manuelle Versionsänderung ist keine Migration. ### Vorhandene Konfigurationen erhalten Legacy-settings und ältere Ergebnisreferenzen bleiben über die vorgesehenen Lesepfade unterstützt. Beim Bearbeiten bestehender Dateien Identitäten und Referenzen erhalten und nach dem Laden die fachliche Validierung prüfen. Die Website-Vorlagen stammen direkt vom Serializer; Defaultwerte sind keine Zusage, dass leere Ziel-/Quellfelder einen ausführbaren Ablauf ergeben. Vollständige Beispiele sind gesondert validiert und müssen für die lokale Umgebung angepasst werden. [Dateiformate](/doku/dateiformate/) [Beispielabläufe](/beispiele/) ## Steps: Prozessstatus prüfen ID: active_process Website: /doku/steps/active_process/ Abbildung: [Die Prozessabfrage prüft notepad und liefert den Status für die anschließende Bedingung. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-prozessstatus.detail.png) 1. Prozessreferenz: Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example get_process sucht notepad; active_process liest dessen process und ein Wenn-Step prüft is_running. ### field.process_target Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### input.process konkrete Prozessreferenz. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle eine Prozessreferenz, um festzustellen, ob genau diese Instanz noch läuft. Anders als eine Fenstersuche benötigt diese Prüfung kein sichtbares Fenster. Kombiniere is_running mit einem Wenn-Step, bevor du einen Prozess erneut startest. ### result.is_running Ob die geprüfte Prozessinstanz beziehungsweise die Prozessabfrage einen laufenden Prozess festgestellt hat. Einzelwert dieses Ergebnisses. ### result.match_count Anzahl passender Prozesse oder Merkmalszuordnungen im konkreten Ergebnis; der Ergebnis-Typ bestimmt, was gezählt wird. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.target Prozess-Zielkonfiguration aus Name/Pfad/Titel oder einer konkreten Prozessreferenz. Die konkrete Referenz schützt vor Verwechslung gleichnamiger Instanzen. ### schema.settings.target.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.target.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.target.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.target.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "active_process", "name": "Prozessstatus prüfen", "description": "Prüft nur, ob eine passende Programminstanz läuft; ein sichtbares Fenster ist nicht erforderlich.", "category": "ProgrammeFenster", "uiFieldIds": [ "process_target" ], "fields": [ { "id": "process_target", "name": "Prozessreferenz", "descriptor": { "Id": "process_target", "LabelKey": "Ui.Step.Settings.ProcessSource", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "process-target-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "process", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ActiveProcessSettings", "options": [], "defaultValue": null }, { "id": "settings.target", "name": "target", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.target.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "process", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ActiveProcessResult", "DisplayName": "ActiveProcessResult", "Properties": [ { "Name": "IsRunning", "DisplayName": "Is Running", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_running", "EnumDisplayNames": null, "StableId": "is_running" }, { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "IsRunning", "DisplayName": "Is Running", "Property": { "Name": "IsRunning", "DisplayName": "Is Running", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_running", "EnumDisplayNames": null, "StableId": "is_running" }, "Children": [] }, { "Segment": "MatchCount", "DisplayName": "Match Count", "Property": { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "active_process", "settings": { "target": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" } }, "id": "7d3962ef-45d1-44a8-69db-2fa973922fc6", "inputs": {}, "is_enabled": true } ``` ## Steps: Vordergrundfenster prüfen ID: active_window Website: /doku/steps/active_window/ Abbildung: [Detailansicht: Vordergrundfenster prüfen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-active-window.detail.png) 1. Prozessreferenz: Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. 2. Ergebnis zwischenspeichern (ms): Dauer in Millisekunden, für die das Abfrageergebnis wiederverwendet werden kann. Bei zeitkritischen Fokusprüfungen eine kurze Dauer wählen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example get_process liefert eine Editorinstanz; active_window prüft vor dem Text-Makro, ob ihr Fenster im Vordergrund ist. ### field.cache_ms Dauer in Millisekunden, für die das Abfrageergebnis wiederverwendet werden kann. Bei zeitkritischen Fokusprüfungen eine kurze Dauer wählen. ### field.process_target Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### input.process konkrete Prozessreferenz. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Prüfe das Vordergrundfenster der gewählten Prozessinstanz. Mit einem Titelteil grenzt du mehrere Fenster desselben Programms ein. Ein laufender Prozess ist nicht automatisch das aktive Fenster; verwende für Eingaben anschließend gegebenenfalls „Fenster anzeigen oder minimieren“. ### result.is_active Ob das geprüfte Fenster zum Abfragezeitpunkt im Vordergrund ist. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.cache_ms Dauer in Millisekunden, für die das Abfrageergebnis wiederverwendet werden kann. Bei zeitkritischen Fokusprüfungen eine kurze Dauer wählen. ### schema.settings.target Prozess-Zielkonfiguration aus Name/Pfad/Titel oder einer konkreten Prozessreferenz. Die konkrete Referenz schützt vor Verwechslung gleichnamiger Instanzen. ### schema.settings.target.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.target.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.target.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.target.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "active_window", "name": "Vordergrundfenster prüfen", "description": "Prüft, ob ein konkretes Fenster eines Prozesses im Vordergrund ist. Optional kann nach einem Fenstertitel gefiltert werden.", "category": "ProgrammeFenster", "uiFieldIds": [ "process_target", "cache_ms" ], "fields": [ { "id": "process_target", "name": "Prozessreferenz", "descriptor": { "Id": "process_target", "LabelKey": "Ui.Step.Settings.ProcessSource", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "process-target-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "process", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "cache_ms", "name": "Ergebnis zwischenspeichern (ms)", "descriptor": { "Id": "cache_ms", "LabelKey": "Ui.Step.Settings.CacheMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 0, "DescriptionKey": "Ui.Step.Settings.ActiveWindowResultHint", "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ActiveWindowSettings", "options": [], "defaultValue": null }, { "id": "settings.cache_ms", "name": "cache_ms", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.target", "name": "target", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.target.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "process", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ActiveWindowResult", "DisplayName": "ActiveWindowResult", "Properties": [ { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, { "Name": "WindowHandle", "DisplayName": "Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "window_handle", "EnumDisplayNames": null, "StableId": "window_handle" } ], "PropertyTree": [ { "Segment": "IsActive", "DisplayName": "Is Active", "Property": { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "WindowHandle", "DisplayName": "Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "window_handle", "EnumDisplayNames": null, "StableId": "window_handle" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "active_window", "settings": { "target": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" }, "cache_ms": 0 }, "id": "5677c907-b7f4-9a68-922c-bdab08b907ff", "inputs": {}, "is_enabled": true } ``` ## Steps: Eingaben blockieren ID: block_input Website: /doku/steps/block_input/ Abbildung: [Detailansicht: Eingaben blockieren. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-block-input.detail.png) 1. Automatisch freigeben nach (s): Maximale Sicherheitsdauer der Eingabesperre in Sekunden. Plane zusätzlich eine ausdrückliche Freigabe beziehungsweise reguläres Job-Aufräumen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Blockiere Eingaben für fünf Sekunden, sende ein Makro und gib sie anschließend mit unblock_input frei. ### field.safety_timeout_seconds Maximale Sicherheitsdauer der Eingabesperre in Sekunden. Plane zusätzlich eine ausdrückliche Freigabe beziehungsweise reguläres Job-Aufräumen. ### purpose Sperre physische Maus- und Tastatureingaben für eine kurze automatisierte Eingabesequenz. Setze eine endliche Sicherheitsfrist und plane die Freigabe in der Endphase. Die Sperre wird durch den Job besessen und beim Aufräumen freigegeben; sie ist keine Sperre einzelner Programmfenster. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.safety_timeout_seconds Maximale Sicherheitsdauer der Eingabesperre in Sekunden. Plane zusätzlich eine ausdrückliche Freigabe beziehungsweise reguläres Job-Aufräumen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "block_input", "name": "Eingaben blockieren", "description": "Blockiert physische Maus- und Tastatureingaben vorübergehend.", "category": "AblaufSteuern", "uiFieldIds": [ "safety_timeout_seconds" ], "fields": [ { "id": "safety_timeout_seconds", "name": "Automatisch freigeben nach (s)", "descriptor": { "Id": "safety_timeout_seconds", "LabelKey": "Ui.Step.Settings.SafetyTimeoutSeconds", "ValueKind": "Integer", "Required": true, "DefaultValue": 30, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": 3600, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "BlockInputSettings", "options": [], "defaultValue": null }, { "id": "settings.safety_timeout_seconds", "name": "safety_timeout_seconds", "type": "Int32", "options": [], "defaultValue": 30 } ], "inputs": [], "result": { "TypeName": "InputControlResult", "DisplayName": "InputControlResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "block_input", "settings": { "safety_timeout_seconds": 30 }, "id": "c79b421d-88ca-12f3-f47f-cb78a41eab44", "inputs": {}, "is_enabled": true } ``` ## Steps: Kamerabild aufnehmen ID: camera_capture Website: /doku/steps/camera_capture/ Abbildung: [Detailansicht: Kamerabild aufnehmen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-camera-capture.detail.png) 1. Kamera: Kameraauswahl im Editor. Übernimm ein auf dem Zielrechner verfügbares Gerät und den gewünschten Aufnahme-/Qualitätsmodus. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Kamera auswählen → Kamerabild aufnehmen → Bild anzeigen mit image als Bildquelle. ### field.camera Kameraauswahl im Editor. Übernimm ein auf dem Zielrechner verfügbares Gerät und den gewünschten Aufnahme-/Qualitätsmodus. ### purpose Wähle eine Kamera und lasse ein Einzelbild aufnehmen. Der Step liefert ein Bildobjekt für nachfolgende Erkennung, Vorschau oder Speicherung. Prüfe Kameraberechtigung und Geräteverfügbarkeit; die Aufnahmezeit bezeichnet den Empfang des Bildes und nicht einen garantierten Belichtungszeitpunkt. ### result.bounds Ermitteltes Rechteck im Koordinatenraum des entsprechenden Ergebnisobjekts. Einzelwert dieses Ergebnisses. ### result.bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Einzelwert dieses Ergebnisses. ### result.bounds.left Linke Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Einzelwert dieses Ergebnisses. ### result.bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.top Obere Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.capture_timestamp_utc UTC-Zeitpunkt des erfassten Bildes; bei wiederverwendeten Frames bleibt der ursprüngliche Zeitpunkt erhalten. Einzelwert dieses Ergebnisses. ### result.frame_timestamp Monotoner Stopwatch/QPC-Zeitstempel des Frames. 0 bedeutet unbekannt; dies ist kein Datum in Millisekunden seit 1970. Einzelwert dieses Ergebnisses. ### result.frame_version Laufzeit-Identität des Frames innerhalb seines Aufnahmeproduzenten. Cache-/Zeigeraktualisierungen sind keine neuen Desktop-Bildversionen; nicht zwischen unabhängigen Kameras/Monitorquellen vergleichen. Einzelwert dieses Ergebnisses. ### result.has_image Ob die Zwischenablage ein Bild enthält. Daraus folgt nicht automatisch, dass ein Bild als persistierbares JSON-Literal vorliegt. Einzelwert dieses Ergebnisses. ### result.image Laufzeit-Bildobjekt für Bildverbraucher. Es wird nicht als Bitmap-Payload in der Jobdatei gespeichert. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_fresh Ob die Aufnahme einen frischen Frame statt einer zwischengespeicherten Aufnahme geliefert hat. Einzelwert dieses Ergebnisses. ### result.offset Pixelversatz der Bildquelle gegenüber dem globalen Desktop. Bei bildlokalen Punkten addieren, bevor sie global verwendet werden. Einzelwert dieses Ergebnisses. ### result.offset.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.offset.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.camera_id Gespeicherte Geräte-ID der Kamera. Ein Anzeigename allein garantiert bei mehreren Geräten keine eindeutige Zuordnung. ### schema.settings.camera_name Gespeicherter lesbarer Kameraname für Auswahl und Anzeige. ### schema.settings.frames_per_second Gewünschte Anzahl Videobilder je Sekunde. Die tatsächliche Aufnahme hängt auch von der gelieferten Bildrate ab. ### schema.settings.height Höhe des Kamerabilds in Pixeln für einen konkreten Aufnahmemodus, zum Beispiel 720. Im Editor den vollständigen angebotenen Modus wählen. Bei automatischer Qualität muss keine eigene Höhe eingetragen werden. ### schema.settings.pixel_format Gewähltes Kamera-/Bildformat. Verwende nur ein vom Gerät beziehungsweise Editor angebotenes Format. ### schema.settings.quality_mode Automatische, höchstmögliche oder konkret gewählte Kameraqualität. Unterstützte Auflösungen und Formate hängen vom Gerät ab. ### schema.settings.quality_mode.option.Automatic Überlässt Kamera-/OCR-Moduswahl dem zuständigen Backend gemäß dieser Einstellung. ### schema.settings.quality_mode.option.HighestAvailable Höchste angebotene Kameraqualität auswählen. ### schema.settings.quality_mode.option.Specific Die konkret angegebenen Kameraformatwerte verwenden. ### schema.settings.width Breite des Kamerabilds in Pixeln für einen konkreten Aufnahmemodus, zum Beispiel 1280. Im Editor wird die Breite zusammen mit Höhe, Bildrate und Pixelformat als angebotener Modus ausgewählt; bei automatischer Qualität bestimmt das Gerät den Modus. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "camera_capture", "name": "Kamerabild aufnehmen", "description": "Nimmt ein Einzelbild mit der ausgewählten Kamera auf und stellt es als Bildquelle für nachfolgende Steps bereit.", "category": "BildAufnehmen", "uiFieldIds": [ "camera" ], "fields": [ { "id": "camera", "name": "Kamera", "descriptor": { "Id": "camera", "LabelKey": "Ui.Step.Camera.Camera", "ValueKind": "Object", "Required": true, "DefaultValue": { "camera_id": "", "camera_name": "", "quality_mode": "Automatic", "width": 0, "height": 0, "frames_per_second": 0, "pixel_format": "" }, "DescriptionKey": null, "EditorHint": "camera-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "CameraCaptureSettings", "options": [], "defaultValue": null }, { "id": "settings.camera_id", "name": "camera_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.camera_name", "name": "camera_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.frames_per_second", "name": "frames_per_second", "type": "Double", "options": [], "defaultValue": 0 }, { "id": "settings.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.pixel_format", "name": "pixel_format", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.quality_mode", "name": "quality_mode", "type": "CameraQualityMode", "options": [ "Automatic", "HighestAvailable", "Specific" ], "defaultValue": "Automatic" }, { "id": "settings.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [], "result": { "TypeName": "CameraCaptureResult", "DisplayName": "CameraCaptureResult", "Properties": [ { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" } ], "PropertyTree": [ { "Segment": "Image", "DisplayName": "Image", "Property": { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, "Children": [] }, { "Segment": "Bounds", "DisplayName": "Bounds", "Property": { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "Offset", "DisplayName": "Offset", "Property": { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, "Children": [] } ] }, { "Segment": "IsFresh", "DisplayName": "Is Fresh", "Property": { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, "Children": [] }, { "Segment": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "Property": { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, "Children": [] }, { "Segment": "FrameVersion", "DisplayName": "Frame Version", "Property": { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, "Children": [] }, { "Segment": "FrameTimestamp", "DisplayName": "Frame Timestamp", "Property": { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, "Children": [] }, { "Segment": "HasImage", "DisplayName": "Has Image", "Property": { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "camera_capture", "settings": { "camera_id": "", "camera_name": "", "quality_mode": "Automatic", "width": 0, "height": 0, "frames_per_second": 0, "pixel_format": "" }, "id": "f86a035d-110f-72d1-11bd-b0e1f4d55409", "inputs": {}, "is_enabled": true } ``` ## Steps: Farberkennung ID: color_detection Website: /doku/steps/color_detection/ Abbildung: [Detailansicht: Farberkennung. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-color-detection.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Farbe: Gesuchte Farbe als Hex-Farbwert, zum Beispiel #FF0000 für Rot. Übernimm das vom Editor akzeptierte Format. 3. Konfidenz (%): Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. 4. Bildbereich (ROI): Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. 5. Mindestfläche (px²): Kleinste Fläche eines Farbtreffers in Quadratpixeln. Kleine Störflächen werden dadurch ausgeschlossen. 6. Maximale Fläche (px²): Größte erlaubte Fläche eines Farbtreffers in Quadratpixeln. Ein zu enger Wert kann das gewünschte Objekt ausschließen. 7. Mindestbreite (px): Kleinste erlaubte Breite einer erkannten Farbfläche in Pixeln. 8. Mindesthöhe (px): Kleinste erlaubte Höhe einer erkannten Farbfläche in Pixeln. 9. Verkleinerungsfaktor: Faktor der Bildverkleinerung vor der Farbanalyse. Höhere Verkleinerung kann schneller sein, lässt aber kleine Details verschwinden. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Bildschirm aufnehmen → Farberkennung mit #FF0000 und Mindestfläche 20 → Wenn found → Text anzeigen. ### field.color_hex Gesuchte Farbe als Hex-Farbwert, zum Beispiel #FF0000 für Rot. Übernimm das vom Editor akzeptierte Format. ### field.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### field.downscale_factor Faktor der Bildverkleinerung vor der Farbanalyse. Höhere Verkleinerung kann schneller sein, lässt aber kleine Details verschwinden. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.max_size Größte erlaubte Fläche eines Farbtreffers in Quadratpixeln. Ein zu enger Wert kann das gewünschte Objekt ausschließen. ### field.min_height Kleinste erlaubte Höhe einer erkannten Farbfläche in Pixeln. ### field.min_size Kleinste Fläche eines Farbtreffers in Quadratpixeln. Kleine Störflächen werden dadurch ausgeschlossen. ### field.min_width Kleinste erlaubte Breite einer erkannten Farbfläche in Pixeln. ### field.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### input.dynamicRoi dynamischer Suchbereich. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle eine Bildquelle und die gesuchte Farbe. Die Erkennung filtert zusammenhängende Farbflächen anhand der Mindestkonfidenz, Größe und Breite/Höhe. Verwende found als Bedingung und all_detections für mehrere Treffer; die Pixelkoordinaten werden bei Bildschirmaufnahmen um den Monitorversatz ergänzt. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.color_hex Gesuchte Farbe als Hex-Farbwert, zum Beispiel #FF0000 für Rot. Übernimm das vom Editor akzeptierte Format. ### schema.settings.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### schema.settings.downscale_factor Faktor der Bildverkleinerung vor der Farbanalyse. Höhere Verkleinerung kann schneller sein, lässt aber kleine Details verschwinden. ### schema.settings.dynamic_roi_source Kompatible dynamische Rechteckquelle. Eine spätere DynamicRoi-Quelle darf Feedback für den nächsten Durchlauf liefern; dies ist eine besondere Ausnahme von normalen Vorwärtsreferenzen. ### schema.settings.dynamic_roi_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.dynamic_roi_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.dynamic_roi_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.dynamic_roi_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.dynamic_roi_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.dynamic_roi_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.dynamic_roi_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.dynamic_roi_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.dynamic_roi_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.enable_roi Aktiviert den direkt konfigurierten Suchbereich. Ohne Aktivierung wird der Standardbereich der Quelle verwendet, sofern keine dynamische ROI-Quelle greift. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.max_size Größte erlaubte Fläche eines Farbtreffers in Quadratpixeln. Ein zu enger Wert kann das gewünschte Objekt ausschließen. ### schema.settings.min_height Kleinste erlaubte Höhe einer erkannten Farbfläche in Pixeln. ### schema.settings.min_size Kleinste Fläche eines Farbtreffers in Quadratpixeln. Kleine Störflächen werden dadurch ausgeschlossen. ### schema.settings.min_width Kleinste erlaubte Breite einer erkannten Farbfläche in Pixeln. ### schema.settings.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### schema.settings.roi.Empty Vom serialisierten Geometrieobjekt angebotener Leerzustand. Kein eigener ROI-Schalter: den Suchbereich mit enable_roi beziehungsweise roi.enabled und den Koordinaten konfigurieren; dieses abgeleitete Mitglied nicht als Eingabequelle verwenden. ### schema.settings.roi.height Höhe des Rechtecks oder Bildformats in Pixeln. Negative Größen sind kein gültiger Suchbereich. ### schema.settings.roi.width Breite des Rechtecks oder Bildformats in Pixeln. Zusammen mit Höhe und Ursprung ergibt sie die räumliche Größe. ### schema.settings.roi.x Horizontale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate X = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.roi.y Vertikale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate Y = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "color_detection", "name": "Farberkennung", "description": "Erkennt eine bestimmte Farbe in einer Bildquelle.", "category": "BildAuswerten", "uiFieldIds": [ "image_source", "color_hex", "confidence_threshold", "roi", "min_size", "max_size", "min_width", "min_height", "downscale_factor" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "color_hex", "name": "Farbe", "descriptor": { "Id": "color_hex", "LabelKey": "Ui.Step.Settings.Color", "ValueKind": "Color", "Required": true, "DefaultValue": "#FF0000", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "confidence_threshold", "name": "Konfidenz (%)", "descriptor": { "Id": "confidence_threshold", "LabelKey": "Ui.Step.Settings.ConfidencePercent", "ValueKind": "Number", "Required": false, "DefaultValue": 0.9, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "roi", "name": "Bildbereich (ROI)", "descriptor": { "Id": "roi", "LabelKey": "Ui.Step.Settings.ROI", "ValueKind": "Object", "Required": false, "DefaultValue": { "enabled": false, "x": 0, "y": 0, "width": 0, "height": 0, "dynamic_source": null }, "DescriptionKey": null, "EditorHint": "roi-picker", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": { "DynamicInputContractId": "dynamicRoi" }, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "min_size", "name": "Mindestfläche (px²)", "descriptor": { "Id": "min_size", "LabelKey": "Ui.Step.Settings.MinSize", "ValueKind": "Integer", "Required": false, "DefaultValue": 25, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "max_size", "name": "Maximale Fläche (px²)", "descriptor": { "Id": "max_size", "LabelKey": "Ui.Step.Settings.MaxSize", "ValueKind": "Integer", "Required": false, "DefaultValue": 2147483647, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "min_width", "name": "Mindestbreite (px)", "descriptor": { "Id": "min_width", "LabelKey": "Ui.Step.Settings.MinWidth", "ValueKind": "Integer", "Required": false, "DefaultValue": 1, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 6, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "min_height", "name": "Mindesthöhe (px)", "descriptor": { "Id": "min_height", "LabelKey": "Ui.Step.Settings.MinHeight", "ValueKind": "Integer", "Required": false, "DefaultValue": 1, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 7, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "downscale_factor", "name": "Verkleinerungsfaktor", "descriptor": { "Id": "downscale_factor", "LabelKey": "Ui.Step.Settings.Downscale", "ValueKind": "Integer", "Required": false, "DefaultValue": 1, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 8, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ColorDetectionSettings", "options": [], "defaultValue": null }, { "id": "settings.color_hex", "name": "color_hex", "type": "String", "options": [], "defaultValue": "#FF0000" }, { "id": "settings.confidence_threshold", "name": "confidence_threshold", "type": "Double", "options": [], "defaultValue": 0.9 }, { "id": "settings.downscale_factor", "name": "downscale_factor", "type": "Int32", "options": [], "defaultValue": 1 }, { "id": "settings.dynamic_roi_source", "name": "dynamic_roi_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.enable_roi", "name": "enable_roi", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.max_size", "name": "max_size", "type": "Int32", "options": [], "defaultValue": 2147483647 }, { "id": "settings.min_height", "name": "min_height", "type": "Int32", "options": [], "defaultValue": 1 }, { "id": "settings.min_size", "name": "min_size", "type": "Int32", "options": [], "defaultValue": 25 }, { "id": "settings.min_width", "name": "min_width", "type": "Int32", "options": [], "defaultValue": 1 }, { "id": "settings.roi", "name": "roi", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.Empty", "name": "Empty", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "dynamicRoi", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ColorDetectionResult", "DisplayName": "ColorDetectionResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "color_detection", "settings": { "color_hex": "#FF0000", "confidence_threshold": 0.9, "min_size": 25, "max_size": 2147483647, "min_width": 1, "min_height": 1, "downscale_factor": 1, "roi": { "x": 0, "y": 0, "width": 0, "height": 0 }, "enable_roi": false, "image_source": { "provider_id": "", "source_id": "" }, "dynamic_roi_source": { "provider_id": "", "source_id": "" } }, "id": "cc6df427-37e9-687a-3dfa-9333bf16bb90", "inputs": {}, "is_enabled": true } ``` ## Steps: Nächsten Durchlauf starten ID: continue_job Website: /doku/steps/continue_job/ Abbildung: [Detailansicht: Nächsten Durchlauf starten. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-continue-job.detail.png) 1. Nächsten Durchlauf starten: Überspringt die restlichen Steps dieses Durchlaufs und beginnt die Hauptphase erneut. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Wenn noch keine neue Datei bereitsteht: 500 ms warten und den nächsten Hauptdurchlauf beginnen. ### purpose Beende die verbleibenden Haupt-Steps dieses Durchlaufs und beginne die Hauptphase erneut. Die Startphase wird dadurch nicht erneut ausgeführt. Dieser Step gehört in die Hauptphase; plane eine Wartezeit oder eine Abbruchbedingung, damit ein absichtlich wiederholender Ablauf kontrollierbar bleibt. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "continue_job", "name": "Nächsten Durchlauf starten", "description": "Beendet den aktuellen Durchlauf und fährt beim ersten Haupt-Step fort.", "category": "AblaufSteuern", "uiFieldIds": [], "fields": [], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "continue_job", "id": "8fa2573a-6b40-da60-9573-8867d24bb02a", "inputs": {}, "is_enabled": true } ``` ## Steps: Bildschirm aufnehmen ID: desktop_duplication Website: /doku/steps/desktop_duplication/ Abbildung: [Detailansicht: Bildschirm aufnehmen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-desktop-duplication.detail.png) 1. Monitor: Nullbasierter Monitorindex der Bildschirmaufnahme. Auf einem anderen Rechner kann die Monitorreihenfolge abweichen. 2. Mauszeiger aufnehmen: Nimmt den Mauszeiger in die Bildschirmaufnahme auf. Für Bildvergleiche kann der Zeiger störende zusätzliche Pixel verursachen. 3. Auf neues Bild warten: Wartet auf einen neuen Desktop-Frame statt sofort den zuletzt verfügbaren Frame zu übernehmen. 4. Zeitlimit (ms): Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. 5. Bei Zeitlimit letztes Bild verwenden: Erlaubt nach Ablauf des Aufnahmezeitlimits den zuletzt verfügbaren Frame. Prüfe dessen is_fresh, bevor eine zeitkritische Folgeaktion ausgeführt wird. 6. Monitor-Kennung: Optional gespeicherte Monitor-Gerätekennung zur Wiedererkennung des gewünschten Bildschirms. Bei Umbau der Monitoranordnung prüfen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Monitor 0 aufnehmen → Bild speichern. Bei zeitkritischer Erkennung auf ein neues Bild warten und den Rückfall auf Cache deaktivieren. ### field.allow_cached_fallback Erlaubt nach Ablauf des Aufnahmezeitlimits den zuletzt verfügbaren Frame. Prüfe dessen is_fresh, bevor eine zeitkritische Folgeaktion ausgeführt wird. ### field.capture_cursor Nimmt den Mauszeiger in die Bildschirmaufnahme auf. Für Bildvergleiche kann der Zeiger störende zusätzliche Pixel verursachen. ### field.desktop_idx Nullbasierter Monitorindex der Bildschirmaufnahme. Auf einem anderen Rechner kann die Monitorreihenfolge abweichen. ### field.monitor_device_name Optional gespeicherte Monitor-Gerätekennung zur Wiedererkennung des gewünschten Bildschirms. Bei Umbau der Monitoranordnung prüfen. ### field.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### field.wait_for_new_frame Wartet auf einen neuen Desktop-Frame statt sofort den zuletzt verfügbaren Frame zu übernehmen. ### purpose Wähle einen Monitor als Bildquelle. Optional wartet die Aufnahme auf ein neues Desktop-Bild; beim Zeitlimit kannst du den letzten verfügbaren Frame zulassen. Prüfe is_fresh und frame_timestamp, wenn eine spätere Mausaktion nur auf neue Bilder reagieren soll. ### result.bounds Ermitteltes Rechteck im Koordinatenraum des entsprechenden Ergebnisobjekts. Einzelwert dieses Ergebnisses. ### result.bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Einzelwert dieses Ergebnisses. ### result.bounds.left Linke Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Einzelwert dieses Ergebnisses. ### result.bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.top Obere Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.capture_timestamp_utc UTC-Zeitpunkt des erfassten Bildes; bei wiederverwendeten Frames bleibt der ursprüngliche Zeitpunkt erhalten. Einzelwert dieses Ergebnisses. ### result.frame_timestamp Monotoner Stopwatch/QPC-Zeitstempel des Frames. 0 bedeutet unbekannt; dies ist kein Datum in Millisekunden seit 1970. Einzelwert dieses Ergebnisses. ### result.frame_version Laufzeit-Identität des Frames innerhalb seines Aufnahmeproduzenten. Cache-/Zeigeraktualisierungen sind keine neuen Desktop-Bildversionen; nicht zwischen unabhängigen Kameras/Monitorquellen vergleichen. Einzelwert dieses Ergebnisses. ### result.has_image Ob die Zwischenablage ein Bild enthält. Daraus folgt nicht automatisch, dass ein Bild als persistierbares JSON-Literal vorliegt. Einzelwert dieses Ergebnisses. ### result.image Laufzeit-Bildobjekt für Bildverbraucher. Es wird nicht als Bitmap-Payload in der Jobdatei gespeichert. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_fresh Ob die Aufnahme einen frischen Frame statt einer zwischengespeicherten Aufnahme geliefert hat. Einzelwert dieses Ergebnisses. ### result.offset Pixelversatz der Bildquelle gegenüber dem globalen Desktop. Bei bildlokalen Punkten addieren, bevor sie global verwendet werden. Einzelwert dieses Ergebnisses. ### result.offset.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.offset.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.allow_cached_fallback Erlaubt nach Ablauf des Aufnahmezeitlimits den zuletzt verfügbaren Frame. Prüfe dessen is_fresh, bevor eine zeitkritische Folgeaktion ausgeführt wird. ### schema.settings.capture_cursor Nimmt den Mauszeiger in die Bildschirmaufnahme auf. Für Bildvergleiche kann der Zeiger störende zusätzliche Pixel verursachen. ### schema.settings.desktop_idx Nullbasierter Monitorindex der Bildschirmaufnahme. Auf einem anderen Rechner kann die Monitorreihenfolge abweichen. ### schema.settings.monitor_device_name Optional gespeicherte Monitor-Gerätekennung zur Wiedererkennung des gewünschten Bildschirms. Bei Umbau der Monitoranordnung prüfen. ### schema.settings.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### schema.settings.wait_for_new_frame Wartet auf einen neuen Desktop-Frame statt sofort den zuletzt verfügbaren Frame zu übernehmen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "desktop_duplication", "name": "Bildschirm aufnehmen", "description": "Nimmt einen Screenshot des gewählten Monitors auf und stellt ihn als Bildquelle bereit.", "category": "BildAufnehmen", "uiFieldIds": [ "desktop_idx", "capture_cursor", "wait_for_new_frame", "timeout_ms", "allow_cached_fallback", "monitor_device_name" ], "fields": [ { "id": "desktop_idx", "name": "Monitor", "descriptor": { "Id": "desktop_idx", "LabelKey": "Ui.Step.Settings.DesktopIndex", "ValueKind": "Integer", "Required": true, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "monitor-picker", "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": "monitor_device_name" } }, { "id": "capture_cursor", "name": "Mauszeiger aufnehmen", "descriptor": { "Id": "capture_cursor", "LabelKey": "Ui.Step.Settings.CaptureMousePointer", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "wait_for_new_frame", "name": "Auf neues Bild warten", "descriptor": { "Id": "wait_for_new_frame", "LabelKey": "Ui.Step.Capture.WaitForNewFrame", "ValueKind": "Boolean", "Required": false, "DefaultValue": true, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "timeout_ms", "name": "Zeitlimit (ms)", "descriptor": { "Id": "timeout_ms", "LabelKey": "Ui.Step.Capture.Timeout", "ValueKind": "Integer", "Required": true, "DefaultValue": 250, "DescriptionKey": "Ui.Step.Capture.TimeoutHelp", "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": 60000, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "allow_cached_fallback", "name": "Bei Zeitlimit letztes Bild verwenden", "descriptor": { "Id": "allow_cached_fallback", "LabelKey": "Ui.Step.Capture.AllowCachedFallback", "ValueKind": "Boolean", "Required": false, "DefaultValue": true, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "monitor_device_name", "name": "Monitor-Kennung", "descriptor": { "Id": "monitor_device_name", "LabelKey": "Ui.Step.Capture.MonitorIdentity", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": "Ui.Step.Capture.MonitorIdentityHelp", "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "DesktopDuplicationSettings", "options": [], "defaultValue": null }, { "id": "settings.allow_cached_fallback", "name": "allow_cached_fallback", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings.capture_cursor", "name": "capture_cursor", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.desktop_idx", "name": "desktop_idx", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.monitor_device_name", "name": "monitor_device_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.timeout_ms", "name": "timeout_ms", "type": "Int32", "options": [], "defaultValue": 250 }, { "id": "settings.wait_for_new_frame", "name": "wait_for_new_frame", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": { "TypeName": "DesktopDuplicationResult", "DisplayName": "DesktopDuplicationResult", "Properties": [ { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" } ], "PropertyTree": [ { "Segment": "Image", "DisplayName": "Image", "Property": { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, "Children": [] }, { "Segment": "Bounds", "DisplayName": "Bounds", "Property": { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "Offset", "DisplayName": "Offset", "Property": { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, "Children": [] } ] }, { "Segment": "IsFresh", "DisplayName": "Is Fresh", "Property": { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, "Children": [] }, { "Segment": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "Property": { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, "Children": [] }, { "Segment": "FrameVersion", "DisplayName": "Frame Version", "Property": { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, "Children": [] }, { "Segment": "FrameTimestamp", "DisplayName": "Frame Timestamp", "Property": { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, "Children": [] }, { "Segment": "HasImage", "DisplayName": "Has Image", "Property": { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "desktop_duplication", "settings": { "desktop_idx": 0, "capture_cursor": false, "monitor_device_name": "", "wait_for_new_frame": true, "timeout_ms": 250, "allow_cached_fallback": true }, "id": "ffa47583-1458-1a09-c1e7-2592222fbe7b", "inputs": {}, "is_enabled": true } ``` ## Steps: Dynamischen Bildbereich erstellen ID: dynamic_roi Website: /doku/steps/dynamic_roi/ Abbildung: [Detailansicht: Dynamischen Bildbereich erstellen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-dynamic-roi.detail.png) 1. Erkennungsergebnis: Erkennung mit einem kompatiblen Rechteck als Quelle des dynamischen Suchbereichs. 2. Rand (px): Ganzzahliger zusätzlicher Rand des dynamischen Suchbereichs in Pixeln; im Editor kann ein direkter Wert gewählt werden. 3. Mindestkonfidenz (%): Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. 4. Durchläufe bis zur Vollbildsuche (0 = nie): Anzahl Durchläufe bis zur erneuten Vollsuche. 0 deaktiviert die regelmäßige Vollsuche. 5. Fehlversuche bis zum Zurücksetzen (0 = nie): Anzahl aufeinanderfolgender Fehlversuche bis zum Rücksetzen auf den Ausgangssuchbereich. 0 deaktiviert dieses automatische Rücksetzen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Erkennung → dynamischer ROI mit Rand 20 → denselben ROI im nächsten Erkennungsdurchlauf verwenden; regelmäßig eine Vollsuche einplanen. ### field.bounds_source Erkennung mit einem kompatiblen Rechteck als Quelle des dynamischen Suchbereichs. ### field.full_search_interval Anzahl Durchläufe bis zur erneuten Vollsuche. 0 deaktiviert die regelmäßige Vollsuche. ### field.minimum_confidence Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. ### field.padding_source Ganzzahliger zusätzlicher Rand des dynamischen Suchbereichs in Pixeln; im Editor kann ein direkter Wert gewählt werden. ### field.reset_after_misses Anzahl aufeinanderfolgender Fehlversuche bis zum Rücksetzen auf den Ausgangssuchbereich. 0 deaktiviert dieses automatische Rücksetzen. ### input.bounds Rechteck eines Erkennungsergebnisses. Fehlende erforderliche Werte führen zum Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.padding ganzzahliger ROI-Rand. Fehlende erforderliche Werte führen zum Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Leite aus einem Erkennungstreffer den nächsten Suchbereich ab. Rand, Mindestkonfidenz, regelmäßige Vollsuche und Rücksetzen nach Fehlversuchen steuern, wie lange die Suche auf dem Ziel bleibt. Verbinde diesen Step mit dem dynamischen ROI-Eingang der Erkennung; im ersten Durchlauf dient deren ursprünglicher Bereich als Ausgangspunkt. ### result.consecutive_misses Anzahl aufeinanderfolgender nicht verwertbarer Treffer seit der letzten gültigen Aktualisierung. Einzelwert dieses Ergebnisses. ### result.full_search_interval Konfigurierter Abstand regelmäßiger Vollsuchen in Durchläufen; 0 bedeutet keine regelmäßige Vollsuche. Einzelwert dieses Ergebnisses. ### result.global_bounds Suchrechteck in globalen Desktopkoordinaten. Für bildlokale Verbraucher muss dessen Quelle/Versatz berücksichtigt werden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.roi_reset Ob der Suchbereich wegen der Rücksetzregel auf den Ausgangsbereich zurückgesetzt wurde. Einzelwert dieses Ergebnisses. ### result.roi_updated Ob der dynamische Suchbereich in diesem Step neu aus einem verwertbaren Treffer aktualisiert wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.bounds_source Erkennung mit einem kompatiblen Rechteck als Quelle des dynamischen Suchbereichs. ### schema.settings.bounds_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.bounds_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.bounds_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.bounds_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.bounds_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.bounds_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.bounds_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.bounds_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.bounds_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.full_search_interval Anzahl Durchläufe bis zur erneuten Vollsuche. 0 deaktiviert die regelmäßige Vollsuche. ### schema.settings.minimum_confidence Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. ### schema.settings.padding Rand um das erkannte Rechteck in Pixeln; er erweitert den nächsten Suchbereich. ### schema.settings.padding_source Ganzzahliger zusätzlicher Rand des dynamischen Suchbereichs in Pixeln; im Editor kann ein direkter Wert gewählt werden. ### schema.settings.padding_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.padding_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.padding_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.padding_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.padding_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.padding_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.padding_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.padding_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.padding_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.reset_after_misses Anzahl aufeinanderfolgender Fehlversuche bis zum Rücksetzen auf den Ausgangssuchbereich. 0 deaktiviert dieses automatische Rücksetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "dynamic_roi", "name": "Dynamischen Bildbereich erstellen", "description": "Erstellt aus dem besten Erkennungstreffer einen Bildbereich für den nächsten Durchlauf.", "category": "BildAuswerten", "uiFieldIds": [ "bounds_source", "padding_source", "minimum_confidence", "full_search_interval", "reset_after_misses" ], "fields": [ { "id": "bounds_source", "name": "Erkennungsergebnis", "descriptor": { "Id": "bounds_source", "LabelKey": "Ui.Step.DynamicRoi.Source", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "bounds", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "padding_source", "name": "Rand (px)", "descriptor": { "Id": "padding_source", "LabelKey": "Ui.Step.DynamicRoi.Padding", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": "padding", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": true, "MonitorDeviceNameFieldId": null } }, { "id": "minimum_confidence", "name": "Mindestkonfidenz (%)", "descriptor": { "Id": "minimum_confidence", "LabelKey": "Ui.Step.DynamicRoi.MinimumConfidence", "ValueKind": "Number", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "full_search_interval", "name": "Durchläufe bis zur Vollbildsuche (0 = nie)", "descriptor": { "Id": "full_search_interval", "LabelKey": "Ui.Step.DynamicRoi.FullSearchInterval", "ValueKind": "Integer", "Required": false, "DefaultValue": 10, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reset_after_misses", "name": "Fehlversuche bis zum Zurücksetzen (0 = nie)", "descriptor": { "Id": "reset_after_misses", "LabelKey": "Ui.Step.DynamicRoi.ResetAfterMisses", "ValueKind": "Integer", "Required": false, "DefaultValue": 3, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "DynamicRoiSettings", "options": [], "defaultValue": null }, { "id": "settings.bounds_source", "name": "bounds_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.bounds_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.bounds_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.bounds_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.full_search_interval", "name": "full_search_interval", "type": "Int32", "options": [], "defaultValue": 10 }, { "id": "settings.minimum_confidence", "name": "minimum_confidence", "type": "Double", "options": [], "defaultValue": 0 }, { "id": "settings.padding", "name": "padding", "type": "Int32", "options": [], "defaultValue": -1 }, { "id": "settings.padding_source", "name": "padding_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.padding_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.padding_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.padding_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.padding_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.padding_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.padding_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.padding_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.padding_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.padding_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.reset_after_misses", "name": "reset_after_misses", "type": "Int32", "options": [], "defaultValue": 3 } ], "inputs": [ { "Key": "bounds", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "padding", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": true, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "DynamicRoiResult", "DisplayName": "DynamicRoiResult", "Properties": [ { "Name": "RoiUpdated", "DisplayName": "Roi Updated", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_updated", "EnumDisplayNames": null, "StableId": "roi_updated" }, { "Name": "RoiReset", "DisplayName": "Roi Reset", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_reset", "EnumDisplayNames": null, "StableId": "roi_reset" }, { "Name": "GlobalBounds", "DisplayName": "Global Bounds", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds", "EnumDisplayNames": null, "StableId": "global_bounds" }, { "Name": "GlobalBounds.X", "DisplayName": "Global Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.x", "EnumDisplayNames": null, "StableId": "global_bounds.x" }, { "Name": "GlobalBounds.Y", "DisplayName": "Global Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.y", "EnumDisplayNames": null, "StableId": "global_bounds.y" }, { "Name": "GlobalBounds.Width", "DisplayName": "Global Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.width", "EnumDisplayNames": null, "StableId": "global_bounds.width" }, { "Name": "GlobalBounds.Height", "DisplayName": "Global Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.height", "EnumDisplayNames": null, "StableId": "global_bounds.height" }, { "Name": "GlobalBounds.Left", "DisplayName": "Global Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.left", "EnumDisplayNames": null, "StableId": "global_bounds.left" }, { "Name": "GlobalBounds.Top", "DisplayName": "Global Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.top", "EnumDisplayNames": null, "StableId": "global_bounds.top" }, { "Name": "GlobalBounds.Right", "DisplayName": "Global Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.right", "EnumDisplayNames": null, "StableId": "global_bounds.right" }, { "Name": "GlobalBounds.Bottom", "DisplayName": "Global Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.bottom", "EnumDisplayNames": null, "StableId": "global_bounds.bottom" }, { "Name": "GlobalBounds.IsEmpty", "DisplayName": "Global Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.is_empty", "EnumDisplayNames": null, "StableId": "global_bounds.is_empty" }, { "Name": "GlobalBounds.Location", "DisplayName": "Global Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location", "EnumDisplayNames": null, "StableId": "global_bounds.location" }, { "Name": "GlobalBounds.Location.X", "DisplayName": "Global Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.x", "EnumDisplayNames": null, "StableId": "global_bounds.location.x" }, { "Name": "GlobalBounds.Location.Y", "DisplayName": "Global Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.y", "EnumDisplayNames": null, "StableId": "global_bounds.location.y" }, { "Name": "GlobalBounds.Center", "DisplayName": "Global Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center", "EnumDisplayNames": null, "StableId": "global_bounds.center" }, { "Name": "GlobalBounds.Center.X", "DisplayName": "Global Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.x", "EnumDisplayNames": null, "StableId": "global_bounds.center.x" }, { "Name": "GlobalBounds.Center.Y", "DisplayName": "Global Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.y", "EnumDisplayNames": null, "StableId": "global_bounds.center.y" }, { "Name": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "consecutive_misses", "EnumDisplayNames": null, "StableId": "consecutive_misses" }, { "Name": "FullSearchInterval", "DisplayName": "Full Search Interval", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "full_search_interval", "EnumDisplayNames": null, "StableId": "full_search_interval" } ], "PropertyTree": [ { "Segment": "RoiUpdated", "DisplayName": "Roi Updated", "Property": { "Name": "RoiUpdated", "DisplayName": "Roi Updated", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_updated", "EnumDisplayNames": null, "StableId": "roi_updated" }, "Children": [] }, { "Segment": "RoiReset", "DisplayName": "Roi Reset", "Property": { "Name": "RoiReset", "DisplayName": "Roi Reset", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_reset", "EnumDisplayNames": null, "StableId": "roi_reset" }, "Children": [] }, { "Segment": "GlobalBounds", "DisplayName": "Global Bounds", "Property": { "Name": "GlobalBounds", "DisplayName": "Global Bounds", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds", "EnumDisplayNames": null, "StableId": "global_bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.X", "DisplayName": "Global Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.x", "EnumDisplayNames": null, "StableId": "global_bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Y", "DisplayName": "Global Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.y", "EnumDisplayNames": null, "StableId": "global_bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "GlobalBounds.Width", "DisplayName": "Global Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.width", "EnumDisplayNames": null, "StableId": "global_bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "GlobalBounds.Height", "DisplayName": "Global Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.height", "EnumDisplayNames": null, "StableId": "global_bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "GlobalBounds.Left", "DisplayName": "Global Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.left", "EnumDisplayNames": null, "StableId": "global_bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "GlobalBounds.Top", "DisplayName": "Global Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.top", "EnumDisplayNames": null, "StableId": "global_bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "GlobalBounds.Right", "DisplayName": "Global Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.right", "EnumDisplayNames": null, "StableId": "global_bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "GlobalBounds.Bottom", "DisplayName": "Global Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.bottom", "EnumDisplayNames": null, "StableId": "global_bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "GlobalBounds.IsEmpty", "DisplayName": "Global Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.is_empty", "EnumDisplayNames": null, "StableId": "global_bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "GlobalBounds.Location", "DisplayName": "Global Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location", "EnumDisplayNames": null, "StableId": "global_bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.Location.X", "DisplayName": "Global Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.x", "EnumDisplayNames": null, "StableId": "global_bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Location.Y", "DisplayName": "Global Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.y", "EnumDisplayNames": null, "StableId": "global_bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "GlobalBounds.Center", "DisplayName": "Global Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center", "EnumDisplayNames": null, "StableId": "global_bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.Center.X", "DisplayName": "Global Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.x", "EnumDisplayNames": null, "StableId": "global_bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Center.Y", "DisplayName": "Global Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.y", "EnumDisplayNames": null, "StableId": "global_bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "Property": { "Name": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "consecutive_misses", "EnumDisplayNames": null, "StableId": "consecutive_misses" }, "Children": [] }, { "Segment": "FullSearchInterval", "DisplayName": "Full Search Interval", "Property": { "Name": "FullSearchInterval", "DisplayName": "Full Search Interval", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "full_search_interval", "EnumDisplayNames": null, "StableId": "full_search_interval" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "dynamic_roi", "settings": { "bounds_source": { "provider_id": "", "source_id": "" }, "padding": -1, "padding_source": { "provider_id": "", "source_id": "" }, "minimum_confidence": 0, "full_search_interval": 10, "reset_after_misses": 3 }, "id": "5daa1a25-95e8-a1e7-7645-817670fbad9a", "inputs": {}, "is_enabled": true } ``` ## Steps: Sonst ID: else Website: /doku/steps/else/ Abbildung: [Detailansicht: Sonst. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-step-else.detail.png) 1. Sonst: Dieser Zweig wird ausgeführt, wenn die vorherigen Bedingungen nicht zutreffen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Wenn selected_value gleich „rechnung“ → Rechnungen kopieren; Sonst → Notizen kopieren; Ende wenn. ### purpose Ergänze einen Wenn-Block um den Auffangzweig. Er wird nur aktiv, wenn kein vorheriger Zweig desselben Blocks ausgeführt wurde. Ein Block darf höchstens einen Sonst-Zweig enthalten; danach folgen keine weiteren Sonst-wenn-Zweige. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "else", "name": "Sonst", "description": "Führt den Zweig aus, wenn keine vorherige Bedingung zutrifft.", "category": "AblaufSteuern", "uiFieldIds": [], "fields": [], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "else", "CanBeDisabled": false, "id": "406c7dce-4d6e-a052-8eee-c80fd32ecfdb", "inputs": {}, "is_enabled": true } ``` ## Steps: Sonst wenn ID: else_if Website: /doku/steps/else_if/ Abbildung: [Detailansicht: Sonst wenn. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-else-if.detail.png) 1. Bedingungen: Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Wenn Text leer → Hinweis; Sonst wenn Text beginnt mit „OK“ → Erfolg; Sonst → Prüfung erforderlich; Ende wenn. ### field.conditions Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### purpose Ergänze vor „Sonst“ eine alternative Bedingung. Sie wird nur geprüft, wenn der übergeordnete Block aktiv ist und kein früherer Zweig desselben Blocks gewählt wurde. Formuliere die Vergleiche mit Ergebniswerten eines vorher ausgeführten Steps. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.conditions Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### schema.settings.conditions.comparison Rechte Seite des Vergleichs: Literal oder ein weiteres Job-Ergebnis, abhängig von kind. ### schema.settings.conditions.comparison.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.items.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.items.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.items.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.items.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.items.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.items.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.items.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.items.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.items.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison.kind Literal verwendet den direkt konfigurierten Vergleichswert; JobResult verwendet die zweite typisierte Ergebnisreferenz. Dieses Enum ist kein type/$type-Discriminator. ### schema.settings.conditions.comparison.kind.option.JobResult Verwendet einen kompatiblen Ergebniswert eines Job-Steps. ### schema.settings.conditions.comparison.kind.option.Literal Verwendet einen direkt gespeicherten Vergleichswert. ### schema.settings.conditions.comparison.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.members.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.members.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.members.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.members.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.members.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.members.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.members.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.members.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.members.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.value Gespeicherter Literal- oder Vergleichswert. Sein JSON-Typ muss zum angegebenen value_kind und zur Kardinalität passen; Zahlen und Booleans nicht versehentlich als Text speichern. ### schema.settings.conditions.comparison.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison_value Direkt eingetragener Vergleichswert. Sein Typ muss zum linken Ergebnis und Operator passen. ### schema.settings.conditions.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.items.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.items.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.items.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.items.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.items.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.items.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.items.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.items.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.items.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.members.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.members.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.members.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.members.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.members.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.members.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.members.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.members.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.members.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.operator Vergleichsoperator. Wahrheits-/Leerheitsprüfungen benötigen keinen zusätzlichen Vergleichstext; andere Operatoren verlangen kompatible Werte. ### schema.settings.conditions.operator.option.Contains Prüft, ob Text den angegebenen Vergleichstext enthält. ### schema.settings.conditions.operator.option.Equals Prüft typkompatible Werte auf Gleichheit. ### schema.settings.conditions.operator.option.GreaterThan Linker Wert muss größer sein als der rechte Vergleichswert. ### schema.settings.conditions.operator.option.GreaterThanOrEqual Linker Wert muss größer oder gleich dem Vergleichswert sein. ### schema.settings.conditions.operator.option.IsEmpty Prüft einen vorhandenen Wert auf Leerheit; ungültige Referenzen werden dadurch nicht gültig. ### schema.settings.conditions.operator.option.IsFalse Prüft einen booleschen Wert auf false, ohne rechten Vergleichswert. ### schema.settings.conditions.operator.option.IsNotEmpty Prüft einen vorhandenen Wert auf Nicht-Leerheit. ### schema.settings.conditions.operator.option.IsTrue Prüft einen booleschen Wert auf true, ohne rechten Vergleichswert. ### schema.settings.conditions.operator.option.LessThan Linker Wert muss kleiner sein als der rechte Vergleichswert. ### schema.settings.conditions.operator.option.LessThanOrEqual Linker Wert muss kleiner oder gleich dem Vergleichswert sein. ### schema.settings.conditions.operator.option.NotEquals Prüft typkompatible Werte auf Ungleichheit. ### schema.settings.conditions.operator.option.StartsWith Prüft, ob Text mit dem angegebenen Vergleichstext beginnt. ### schema.settings.conditions.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.match_mode All verlangt alle Bedingungen; Any lässt eine passende Bedingung genügen. ### schema.settings.match_mode.option.All Alle betrachteten Bedingungen beziehungsweise Punkte müssen passen. ### schema.settings.match_mode.option.Any Mindestens eine betrachtete Bedingung beziehungsweise ein Punkt muss passen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "else_if", "name": "Sonst wenn", "description": "Fügt einem bedingten Block eine weitere Bedingung hinzu.", "category": "AblaufSteuern", "uiFieldIds": [ "conditions" ], "fields": [ { "id": "conditions", "name": "Bedingungen", "descriptor": { "Id": "conditions", "LabelKey": "Ui.Step.Settings.Evaluation", "ValueKind": "Object", "Required": true, "DefaultValue": { "match_mode": "All", "conditions": [] }, "DescriptionKey": null, "EditorHint": "condition-editor", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "IfConditionSettings", "options": [], "defaultValue": null }, { "id": "settings.conditions", "name": "conditions", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison", "name": "comparison", "type": "ComparisonOperand", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.kind", "name": "kind", "type": "ComparisonOperandKind", "options": [ "Literal", "JobResult" ], "defaultValue": null }, { "id": "settings.conditions.comparison.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.value", "name": "value", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison_value", "name": "comparison_value", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.operator", "name": "operator", "type": "ConditionOperator", "options": [ "IsTrue", "IsFalse", "Equals", "NotEquals", "GreaterThan", "LessThan", "GreaterThanOrEqual", "LessThanOrEqual", "Contains", "StartsWith", "IsEmpty", "IsNotEmpty" ], "defaultValue": null }, { "id": "settings.conditions.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.match_mode", "name": "match_mode", "type": "ConditionMatchMode", "options": [ "All", "Any" ], "defaultValue": "All" } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "else_if", "settings": { "match_mode": "All", "conditions": [] }, "CanBeDisabled": false, "id": "79e1b543-d926-da4d-1f16-fcb2f330150b", "inputs": {}, "is_enabled": true } ``` ## Steps: Ende wenn ID: end_if Website: /doku/steps/end_if/ Abbildung: [Das Ende eines Wenn-Blocks wird in der Oberfläche durch den Blockrahmen dargestellt. In der Textdatei schließt end_if den Block.](/ref-step-end-if.detail.png) 1. Wenn: Dieser Rahmen umfasst die Zweige bis zum zugehörigen end_if in der Textdatei. 2. Bei jedem Durchlauf: Der bedingte Block gehört hier zur Hauptphase des Jobs. ### errors Ein fehlendes oder überzähliges Ende, phasenübergreifende Blöcke und ungültige Reihenfolgen werden zurückgewiesen. Korrigiere die Struktur in derselben Phasenliste. ### example Die JSON-Liste enthält if, die Zweig-Steps, optional else und abschließend end_if mit eigener ID. ### purpose Schließe den passenden Wenn-Block. Der Editor stellt die Blockstruktur dar; in JSON ist dieser Marker ein eigenes Element derselben Phasenliste. Jeder Wenn-Marker benötigt genau ein zugehöriges Ende, auch bei verschachtelten Blöcken. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "end_if", "name": "Ende wenn", "description": "Beendet den zugehörigen Wenn-Block.", "category": "AblaufSteuern", "uiFieldIds": [], "fields": [], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "end_if", "CanBeDisabled": false, "id": "053969e6-9cd5-cbef-242e-4679d246788b", "inputs": {}, "is_enabled": true } ``` ## Steps: Job beenden ID: end_job Website: /doku/steps/end_job/ Abbildung: [Detailansicht: Job beenden. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-end-job.detail.png) 1. Steps im Bereich „Bei Job-Ende“ überspringen: true überspringt die Endphase nach diesem EndJob-Step; false führt die konfigurierten Aufräum-Steps aus. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Wenn keine weitere Arbeit vorhanden ist → Job beenden; eine Textanzeige in endSteps bestätigt das Aufräumen. ### field.skip_end_steps true überspringt die Endphase nach diesem EndJob-Step; false führt die konfigurierten Aufräum-Steps aus. ### purpose Beende die Hauptphase des aktuellen Jobs. Standardmäßig folgt der Bereich „Beim Beenden“; skip_end_steps überspringt ihn ausdrücklich. Der Step beendet den besitzenden Job und ist kein pauschaler Stopp aller anderen Jobs. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.skip_end_steps true überspringt die Endphase nach diesem EndJob-Step; false führt die konfigurierten Aufräum-Steps aus. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "end_job", "name": "Job beenden", "description": "Beendet die Hauptphase des aktuellen Jobs und führt anschließend die optionalen Steps im Bereich „Beim Beenden“ aus.", "category": "AblaufSteuern", "uiFieldIds": [ "skip_end_steps" ], "fields": [ { "id": "skip_end_steps", "name": "Steps im Bereich „Bei Job-Ende“ überspringen", "descriptor": { "Id": "skip_end_steps", "LabelKey": "Ui.Step.Settings.SkipEndSteps", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": "Ui.Step.Settings.SkipEndStepsHint", "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "EndJobSettings", "options": [], "defaultValue": null }, { "id": "settings.skip_end_steps", "name": "skip_end_steps", "type": "Boolean", "options": [], "defaultValue": false } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "end_job", "settings": { "skip_end_steps": false }, "id": "116e7ca0-813b-7273-8e1a-ca1f817c3ace", "inputs": {}, "is_enabled": true } ``` ## Steps: Datei oder Ordner bearbeiten ID: file_system_operation Website: /doku/steps/file_system_operation/ Abbildung: [Kopieraktion mit Quell- und Zielpfad und automatischem Anlegen fehlender übergeordneter Ordner. Weitere Optionen stehen unter Erweitert. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-dateien.detail.png) 1. Aktion: Dateiaktion Copy, Move, Rename oder Delete. Quelle und benötigte Zusatzfelder ändern sich mit der Aktion. 2. Quelle: Datei- oder Ordnerpfad, auf den die Dateiaktion angewendet wird. Der Pfad ist auf dem Zielrechner zu prüfen, nicht nur auf dem Rechner eines Agenten. 3. Ziel: Ziel der Kopier- oder Verschiebeaktion. Bei anderen Aktionen nicht als Ersatz für new_name verwenden. 4. Fehlende übergeordnete Ordner automatisch erstellen: Legt fehlende übergeordnete Zielordner bei den unterstützten Kopier-/Verschiebeaktionen an. Dies gewährt keine zusätzlichen Zugriffsrechte. 5. Bei gesperrten Dateien wiederholen: Wiederholt eine wegen Dateisperre fehlgeschlagene Dateiaktion nach konfigurierter Wartezeit. Andere Konfigurationsfehler werden dadurch nicht behoben. 6. Anzahl der Wiederholungen: Anzahl zusätzlicher Wiederholungsversuche nach einer Dateisperre; 0 deaktiviert zusätzliche Versuche. 7. Wartezeit zwischen Versuchen (ms): Pause zwischen Wiederholungsversuchen in Millisekunden. Ein höherer Wert gibt dem anderen Programm mehr Zeit zur Freigabe. Abbildung: [Vollständige Feld-Ausschnitte der echten Oberfläche mit Beispielwerten zur Aktion Umbenennen. Die Nummer markiert Beschriftung und Eingabe gemeinsam; keine Dateiaktion wird ausgeführt.](/ref-step-file-system-operation-rename.detail.png) 1. Aktion: Dateiaktion Copy, Move, Rename oder Delete. Quelle und benötigte Zusatzfelder ändern sich mit der Aktion. 2. Quelle: Datei- oder Ordnerpfad, auf den die Dateiaktion angewendet wird. Der Pfad ist auf dem Zielrechner zu prüfen, nicht nur auf dem Rechner eines Agenten. 3. Neuer Name: Neuer Dateiname für Rename. Hier wird ein Name angegeben; die Quelle bestimmt den umzubenennenden Eintrag. 4. Bei gesperrten Dateien wiederholen: Wiederholt eine wegen Dateisperre fehlgeschlagene Dateiaktion nach konfigurierter Wartezeit. Andere Konfigurationsfehler werden dadurch nicht behoben. 5. Anzahl der Wiederholungen: Anzahl zusätzlicher Wiederholungsversuche nach einer Dateisperre; 0 deaktiviert zusätzliche Versuche. 6. Wartezeit zwischen Versuchen (ms): Pause zwischen Wiederholungsversuchen in Millisekunden. Ein höherer Wert gibt dem anderen Programm mehr Zeit zur Freigabe. Abbildung: [Vollständige Feld-Ausschnitte der echten Oberfläche mit Beispielwerten zur Aktion Löschen. Die Nummer markiert Beschriftung und Eingabe gemeinsam; keine Dateiaktion wird ausgeführt.](/ref-step-file-system-operation-delete.detail.png) 1. Aktion: Dateiaktion Copy, Move, Rename oder Delete. Quelle und benötigte Zusatzfelder ändern sich mit der Aktion. 2. Quelle: Datei- oder Ordnerpfad, auf den die Dateiaktion angewendet wird. Der Pfad ist auf dem Zielrechner zu prüfen, nicht nur auf dem Rechner eines Agenten. 3. Optionaler Filter: Nur bei Aktion „Löschen“ sichtbar: Dateimuster wie *.txt für passende Dateien innerhalb eines Ordners. Mehrere Muster mit Semikolon trennen; keine Ordnertrennzeichen eintragen. Leer beschränkt die Auswahl nicht durch ein Muster. 4. Bei gesperrten Dateien wiederholen: Wiederholt eine wegen Dateisperre fehlgeschlagene Dateiaktion nach konfigurierter Wartezeit. Andere Konfigurationsfehler werden dadurch nicht behoben. 5. Anzahl der Wiederholungen: Anzahl zusätzlicher Wiederholungsversuche nach einer Dateisperre; 0 deaktiviert zusätzliche Versuche. 6. Wartezeit zwischen Versuchen (ms): Pause zwischen Wiederholungsversuchen in Millisekunden. Ein höherer Wert gibt dem anderen Programm mehr Zeit zur Freigabe. ### errors Prüfe bei Fehlern Quellpfad, Aktion, Ziel, Zugriffsrechte und Dateisperren. Wiederholungen gelten für konfigurierte gesperrte Dateiaktionen; sie machen eine falsche Quelle nicht gültig. Ein teilweise bearbeiteter Ordner wird bei einem späteren Fehler nicht automatisch zurückgerollt. ### example Der Beispielablauf „Arbeitsunterlagen vorbereiten“ kopiert je nach Auswahl Rechnungen oder Notizen in getrennte Arbeitsordner. ### field.create_parent_directories Legt fehlende übergeordnete Zielordner bei den unterstützten Kopier-/Verschiebeaktionen an. Dies gewährt keine zusätzlichen Zugriffsrechte. ### field.filter Nur bei Aktion „Löschen“ sichtbar: Dateimuster wie *.txt für passende Dateien innerhalb eines Ordners. Mehrere Muster mit Semikolon trennen; keine Ordnertrennzeichen eintragen. Leer beschränkt die Auswahl nicht durch ein Muster. ### field.new_name Neuer Dateiname für Rename. Hier wird ein Name angegeben; die Quelle bestimmt den umzubenennenden Eintrag. ### field.operation Dateiaktion Copy, Move, Rename oder Delete. Quelle und benötigte Zusatzfelder ändern sich mit der Aktion. ### field.operation.option.Copy Kopiert die Quelle zum Ziel; die Quelle bleibt erhalten. ### field.operation.option.Delete Entfernt passende Quelleinträge; zuerst mit entbehrlichen Testdaten prüfen. ### field.operation.option.Move Verschiebt die Quelle zum Ziel; bei Erfolg liegt sie dort statt am ursprünglichen Ort. ### field.operation.option.Rename Benennt den Quelleintrag mit new_name um. ### field.retry_count Anzahl zusätzlicher Wiederholungsversuche nach einer Dateisperre; 0 deaktiviert zusätzliche Versuche. ### field.retry_delay_ms Pause zwischen Wiederholungsversuchen in Millisekunden. Ein höherer Wert gibt dem anderen Programm mehr Zeit zur Freigabe. ### field.retry_locked_files Wiederholt eine wegen Dateisperre fehlgeschlagene Dateiaktion nach konfigurierter Wartezeit. Andere Konfigurationsfehler werden dadurch nicht behoben. ### field.source_path Datei- oder Ordnerpfad, auf den die Dateiaktion angewendet wird. Der Pfad ist auf dem Zielrechner zu prüfen, nicht nur auf dem Rechner eines Agenten. ### field.target_path Ziel der Kopier- oder Verschiebeaktion. Bei anderen Aktionen nicht als Ersatz für new_name verwenden. ### input.source Quell-Dateipfad. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.target Ziel-Dateipfad. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle Kopieren, Verschieben, Umbenennen oder Löschen. Trage Quelle und die für diese Aktion benötigten Zielwerte ein. Nach dem Lauf zeigen affected_count und affected_paths, welche Einträge betroffen waren. Kopieren kann vorhandene Zieldateien ersetzen; teste den Ablauf zunächst mit den bereitgestellten Beispieldateien. ### result.affected_bytes Umfang der betroffenen Dateidaten in Bytes. Einzelwert dieses Ergebnisses. ### result.affected_count Gesamtzahl betroffener Einträge der Dateiaktion. Einzelwert dieses Ergebnisses. ### result.affected_directory_count Anzahl betroffener Ordner, getrennt von Dateien. Einzelwert dieses Ergebnisses. ### result.affected_file_count Anzahl betroffener Dateien, getrennt von Ordnern. Einzelwert dieses Ergebnisses. ### result.affected_paths Liste der von der Dateiaktion betroffenen Pfade. Ein erfolgreicher Zähler ist nicht automatisch ein Backup-Versionsnachweis. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.affected_paths.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.completed_at_utc UTC-Abschlusszeitpunkt der Aktion. Einzelwert dieses Ergebnisses. ### result.item_type Ob Datei, Ordner oder mehrere Einträge von der Dateiaktion betroffen waren. Einzelwert dieses Ergebnisses. ### result.item_type.option.Directory Betroffener Eintrag ist ein Ordner. ### result.item_type.option.File Betroffener Eintrag ist eine Datei. ### result.item_type.option.Multiple Mehrere Einträge wurden bearbeitet. ### result.operation Tatsächlich angeforderte Dateiaktion. Zusammen mit den Zählern und Pfaden lesen, um deren Auswirkungen zu verstehen. Einzelwert dieses Ergebnisses. ### result.operation.option.Copy Kopiert die Quelle zum Ziel; die Quelle bleibt erhalten. ### result.operation.option.Delete Entfernt passende Quelleinträge; zuerst mit entbehrlichen Testdaten prüfen. ### result.operation.option.Move Verschiebt die Quelle zum Ziel; bei Erfolg liegt sie dort statt am ursprünglichen Ort. ### result.operation.option.Rename Benennt den Quelleintrag mit new_name um. ### result.source_path Verwendeter Quellpfad der Dateiaktion. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.target_path Verwendeter Zielpfad der Dateiaktion, soweit die gewählte Aktion ein Ziel besitzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.create_parent_directories Legt fehlende übergeordnete Zielordner bei den unterstützten Kopier-/Verschiebeaktionen an. Dies gewährt keine zusätzlichen Zugriffsrechte. ### schema.settings.filter Nur bei Aktion „Löschen“ sichtbar: Dateimuster wie *.txt für passende Dateien innerhalb eines Ordners. Mehrere Muster mit Semikolon trennen; keine Ordnertrennzeichen eintragen. Leer beschränkt die Auswahl nicht durch ein Muster. ### schema.settings.new_name Neuer Dateiname für Rename. Hier wird ein Name angegeben; die Quelle bestimmt den umzubenennenden Eintrag. ### schema.settings.operation Dateiaktion Copy, Move, Rename oder Delete. Quelle und benötigte Zusatzfelder ändern sich mit der Aktion. ### schema.settings.operation.option.Copy Kopiert die Quelle zum Ziel; die Quelle bleibt erhalten. ### schema.settings.operation.option.Delete Entfernt passende Quelleinträge; zuerst mit entbehrlichen Testdaten prüfen. ### schema.settings.operation.option.Move Verschiebt die Quelle zum Ziel; bei Erfolg liegt sie dort statt am ursprünglichen Ort. ### schema.settings.operation.option.Rename Benennt den Quelleintrag mit new_name um. ### schema.settings.retry_count Anzahl zusätzlicher Wiederholungsversuche nach einer Dateisperre; 0 deaktiviert zusätzliche Versuche. ### schema.settings.retry_delay_ms Pause zwischen Wiederholungsversuchen in Millisekunden. Ein höherer Wert gibt dem anderen Programm mehr Zeit zur Freigabe. ### schema.settings.retry_locked_files Wiederholt eine wegen Dateisperre fehlgeschlagene Dateiaktion nach konfigurierter Wartezeit. Andere Konfigurationsfehler werden dadurch nicht behoben. ### schema.settings.source_mode Bei älterer Pfadkonfiguration: ExplicitPath liest source_path, TaskResult liest source_result. ### schema.settings.source_mode.option.ExplicitPath Verwendet den direkt angegebenen Pfad. ### schema.settings.source_mode.option.TaskResult Verwendet den verbundenen Step-Ergebniswert statt des direkten Literals. ### schema.settings.source_path Datei- oder Ordnerpfad, auf den die Dateiaktion angewendet wird. Der Pfad ist auf dem Zielrechner zu prüfen, nicht nur auf dem Rechner eines Agenten. ### schema.settings.source_result Typisierte Referenz, deren Text/Dateipfad als Quelle der Dateiaktion verwendet wird. ### schema.settings.source_result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.source_result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.source_result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.source_result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.source_result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.source_result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.source_result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.source_result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.source_result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target_mode Bei älterer Pfadkonfiguration: ExplicitPath liest target_path, TaskResult liest target_result. ### schema.settings.target_mode.option.ExplicitPath Verwendet den direkt angegebenen Pfad. ### schema.settings.target_mode.option.TaskResult Verwendet den verbundenen Step-Ergebniswert statt des direkten Literals. ### schema.settings.target_path Ziel der Kopier- oder Verschiebeaktion. Bei anderen Aktionen nicht als Ersatz für new_name verwenden. ### schema.settings.target_result Typisierte Referenz, deren Text/Dateipfad als Ziel der Dateiaktion verwendet wird. ### schema.settings.target_result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target_result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target_result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target_result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target_result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target_result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target_result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target_result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target_result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "file_system_operation", "name": "Datei oder Ordner bearbeiten", "description": "Kopiert, verschiebt, benennt Dateien und Ordner um oder löscht sie optional anhand eines Filters.", "category": "DateienOrdner", "uiFieldIds": [ "operation", "source_path", "target_path", "new_name", "filter", "create_parent_directories", "retry_locked_files", "retry_count", "retry_delay_ms" ], "fields": [ { "id": "operation", "name": "Aktion", "descriptor": { "Id": "operation", "LabelKey": "Ui.Step.FileSystem.Operation", "ValueKind": "Enum", "Required": true, "DefaultValue": "Copy", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Copy", "Move", "Rename", "Delete" ] }, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": [ { "Value": "Copy", "LabelKey": "Ui.Step.FileSystem.Copy", "DisplayName": null }, { "Value": "Move", "LabelKey": "Ui.Step.FileSystem.Move", "DisplayName": null }, { "Value": "Rename", "LabelKey": "Ui.Step.FileSystem.Rename", "DisplayName": null }, { "Value": "Delete", "LabelKey": "Ui.Step.FileSystem.Delete", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "source_path", "name": "Quelle", "descriptor": { "Id": "source_path", "LabelKey": "Ui.Step.FileSystem.Source", "ValueKind": "DirectoryPath", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "directory-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "target_path", "name": "Ziel", "descriptor": { "Id": "target_path", "LabelKey": "Ui.Step.FileSystem.Target", "ValueKind": "DirectoryPath", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "directory-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": { "FieldId": "operation", "EqualsValue": null, "AnyOfValues": [ "Copy", "Move" ] }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "new_name", "name": "Neuer Name", "descriptor": { "Id": "new_name", "LabelKey": "Ui.Step.FileSystem.NewName", "ValueKind": "Text", "Required": false, "DefaultValue": null, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 7, "VisibleWhen": { "FieldId": "operation", "EqualsValue": "Rename", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "filter", "name": "Optionaler Filter", "descriptor": { "Id": "filter", "LabelKey": "Ui.Step.FileSystem.Filter", "ValueKind": "Text", "Required": false, "DefaultValue": null, "DescriptionKey": "Ui.Step.FileSystem.FilterHint", "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 8, "VisibleWhen": { "FieldId": "operation", "EqualsValue": "Delete", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "create_parent_directories", "name": "Fehlende übergeordnete Ordner automatisch erstellen", "descriptor": { "Id": "create_parent_directories", "LabelKey": "Ui.Step.FileSystem.CreateParents", "ValueKind": "Boolean", "Required": false, "DefaultValue": true, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 9, "VisibleWhen": { "FieldId": "operation", "EqualsValue": null, "AnyOfValues": [ "Copy", "Move" ] }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "retry_locked_files", "name": "Bei gesperrten Dateien wiederholen", "descriptor": { "Id": "retry_locked_files", "LabelKey": "Ui.Step.FileSystem.RetryLocked", "ValueKind": "Boolean", "Required": false, "DefaultValue": true, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 10, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "retry_count", "name": "Anzahl der Wiederholungen", "descriptor": { "Id": "retry_count", "LabelKey": "Ui.Step.FileSystem.RetryCount", "ValueKind": "Integer", "Required": false, "DefaultValue": 3, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 11, "VisibleWhen": { "FieldId": "retry_locked_files", "EqualsValue": true, "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "retry_delay_ms", "name": "Wartezeit zwischen Versuchen (ms)", "descriptor": { "Id": "retry_delay_ms", "LabelKey": "Ui.Step.FileSystem.RetryDelay", "ValueKind": "Duration", "Required": false, "DefaultValue": 100, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 12, "VisibleWhen": { "FieldId": "retry_locked_files", "EqualsValue": true, "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "FileSystemOperationSettings", "options": [], "defaultValue": null }, { "id": "settings.create_parent_directories", "name": "create_parent_directories", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings.filter", "name": "filter", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.new_name", "name": "new_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.operation", "name": "operation", "type": "FileSystemOperation", "options": [ "Copy", "Move", "Rename", "Delete" ], "defaultValue": "Copy" }, { "id": "settings.retry_count", "name": "retry_count", "type": "Int32", "options": [], "defaultValue": 3 }, { "id": "settings.retry_delay_ms", "name": "retry_delay_ms", "type": "Int32", "options": [], "defaultValue": 100 }, { "id": "settings.retry_locked_files", "name": "retry_locked_files", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings.source_mode", "name": "source_mode", "type": "FileSystemPathSource", "options": [ "ExplicitPath", "TaskResult" ], "defaultValue": "ExplicitPath" }, { "id": "settings.source_path", "name": "source_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.source_result", "name": "source_result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.source_result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.source_result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.source_result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.source_result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.source_result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.source_result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.source_result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.source_result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.source_result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target_mode", "name": "target_mode", "type": "FileSystemPathSource", "options": [ "ExplicitPath", "TaskResult" ], "defaultValue": "ExplicitPath" }, { "id": "settings.target_path", "name": "target_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target_result", "name": "target_result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target_result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target_result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target_result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target_result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target_result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target_result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target_result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target_result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target_result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null } ], "inputs": [ { "Key": "source", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "target", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "FileSystemOperationResult", "DisplayName": "FileSystemOperationResult", "Properties": [ { "Name": "Operation", "DisplayName": "Operation", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Jobs.FileSystemOperation", "EnumValues": [ "Copy", "Move", "Rename", "Delete" ], "Id": "operation", "EnumDisplayNames": null, "StableId": "operation" }, { "Name": "SourcePath", "DisplayName": "Source Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "source_path", "EnumDisplayNames": null, "StableId": "source_path" }, { "Name": "TargetPath", "DisplayName": "Target Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "target_path", "EnumDisplayNames": null, "StableId": "target_path" }, { "Name": "ItemType", "DisplayName": "Item Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Steps.FileSystemItemType", "EnumValues": [ "File", "Directory", "Multiple" ], "Id": "item_type", "EnumDisplayNames": null, "StableId": "item_type" }, { "Name": "AffectedCount", "DisplayName": "Affected Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_count", "EnumDisplayNames": null, "StableId": "affected_count" }, { "Name": "AffectedFileCount", "DisplayName": "Affected File Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_file_count", "EnumDisplayNames": null, "StableId": "affected_file_count" }, { "Name": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_directory_count", "EnumDisplayNames": null, "StableId": "affected_directory_count" }, { "Name": "AffectedBytes", "DisplayName": "Affected Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_bytes", "EnumDisplayNames": null, "StableId": "affected_bytes" }, { "Name": "AffectedPaths", "DisplayName": "Affected Paths", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths", "EnumDisplayNames": null, "StableId": "affected_paths" }, { "Name": "AffectedPaths.Count", "DisplayName": "Affected Paths / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths.count", "EnumDisplayNames": null, "StableId": "affected_paths.count" }, { "Name": "CompletedAtUtc", "DisplayName": "Completed At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "completed_at_utc", "EnumDisplayNames": null, "StableId": "completed_at_utc" } ], "PropertyTree": [ { "Segment": "Operation", "DisplayName": "Operation", "Property": { "Name": "Operation", "DisplayName": "Operation", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Jobs.FileSystemOperation", "EnumValues": [ "Copy", "Move", "Rename", "Delete" ], "Id": "operation", "EnumDisplayNames": null, "StableId": "operation" }, "Children": [] }, { "Segment": "SourcePath", "DisplayName": "Source Path", "Property": { "Name": "SourcePath", "DisplayName": "Source Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "source_path", "EnumDisplayNames": null, "StableId": "source_path" }, "Children": [] }, { "Segment": "TargetPath", "DisplayName": "Target Path", "Property": { "Name": "TargetPath", "DisplayName": "Target Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "target_path", "EnumDisplayNames": null, "StableId": "target_path" }, "Children": [] }, { "Segment": "ItemType", "DisplayName": "Item Type", "Property": { "Name": "ItemType", "DisplayName": "Item Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Steps.FileSystemItemType", "EnumValues": [ "File", "Directory", "Multiple" ], "Id": "item_type", "EnumDisplayNames": null, "StableId": "item_type" }, "Children": [] }, { "Segment": "AffectedCount", "DisplayName": "Affected Count", "Property": { "Name": "AffectedCount", "DisplayName": "Affected Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_count", "EnumDisplayNames": null, "StableId": "affected_count" }, "Children": [] }, { "Segment": "AffectedFileCount", "DisplayName": "Affected File Count", "Property": { "Name": "AffectedFileCount", "DisplayName": "Affected File Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_file_count", "EnumDisplayNames": null, "StableId": "affected_file_count" }, "Children": [] }, { "Segment": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "Property": { "Name": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_directory_count", "EnumDisplayNames": null, "StableId": "affected_directory_count" }, "Children": [] }, { "Segment": "AffectedBytes", "DisplayName": "Affected Bytes", "Property": { "Name": "AffectedBytes", "DisplayName": "Affected Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_bytes", "EnumDisplayNames": null, "StableId": "affected_bytes" }, "Children": [] }, { "Segment": "AffectedPaths", "DisplayName": "Affected Paths", "Property": { "Name": "AffectedPaths", "DisplayName": "Affected Paths", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths", "EnumDisplayNames": null, "StableId": "affected_paths" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AffectedPaths.Count", "DisplayName": "Affected Paths / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths.count", "EnumDisplayNames": null, "StableId": "affected_paths.count" }, "Children": [] } ] }, { "Segment": "CompletedAtUtc", "DisplayName": "Completed At Utc", "Property": { "Name": "CompletedAtUtc", "DisplayName": "Completed At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "completed_at_utc", "EnumDisplayNames": null, "StableId": "completed_at_utc" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "file_system_operation", "settings": { "operation": "Copy", "source_mode": "ExplicitPath", "source_path": "", "source_result": { "provider_id": "", "source_id": "" }, "target_mode": "ExplicitPath", "target_path": "", "target_result": { "provider_id": "", "source_id": "" }, "new_name": "", "filter": "", "create_parent_directories": true, "retry_locked_files": true, "retry_count": 3, "retry_delay_ms": 100 }, "id": "fd4d948b-8366-d9ec-c236-0eb9d97b2607", "inputs": {}, "is_enabled": true } ``` ## Steps: Fenster anzeigen oder minimieren ID: focus_process Website: /doku/steps/focus_process/ Abbildung: [Detailansicht: Fenster anzeigen oder minimieren. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-focus-process.detail.png) 1. Prozessreferenz: Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. 2. Aktion: Gewünschte Aktion. Die zulässigen Optionen hängen vom Step ab; wähle die Option in der folgenden Liste und ergänze nur ihre aktiven Felder. 3. Fenstermodus: Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Editorinstanz suchen → BringToFront und Normal auswählen → Makro „Notiz eingeben“ ausführen. ### field.action Gewünschte Aktion. Die zulässigen Optionen hängen vom Step ab; wähle die Option in der folgenden Liste und ergänze nur ihre aktiven Felder. ### field.action.option.BringToFront Versucht das passende Fenster in den Vordergrund zu bringen. ### field.action.option.Minimize Minimiert das passende Fenster. ### field.process_target Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### field.window_mode Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. ### field.window_mode.option.Maximized Maximiert das Fenster, soweit es dies unterstützt. ### field.window_mode.option.Normal Verwendet ein normales, nicht maximiertes Fenster. ### input.process konkrete Prozessreferenz. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle eine konkrete Prozessreferenz und bringe ein passendes Fenster nach vorn oder minimiere es. Der Titelteil hilft bei mehreren Fenstern; beim Anzeigen kannst du Normal oder Maximiert wählen. Windows kann den Vordergrundwechsel beschränken, etwa bei anderen Berechtigungsstufen. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.action Gewünschte Aktion. Die zulässigen Optionen hängen vom Step ab; wähle die Option in der folgenden Liste und ergänze nur ihre aktiven Felder. ### schema.settings.action.option.BringToFront Versucht das passende Fenster in den Vordergrund zu bringen. ### schema.settings.action.option.Minimize Minimiert das passende Fenster. ### schema.settings.target Prozess-Zielkonfiguration aus Name/Pfad/Titel oder einer konkreten Prozessreferenz. Die konkrete Referenz schützt vor Verwechslung gleichnamiger Instanzen. ### schema.settings.target.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.target.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.target.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.target.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### schema.settings.window_mode Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. ### schema.settings.window_mode.option.Fullscreen Fenster im unterstützten Vollbildmodus anzeigen. ### schema.settings.window_mode.option.Maximized Maximiert das Fenster, soweit es dies unterstützt. ### schema.settings.window_mode.option.Normal Verwendet ein normales, nicht maximiertes Fenster. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "focus_process", "name": "Fenster anzeigen oder minimieren", "description": "Bringt ein Prozessfenster in den Vordergrund oder minimiert es. Optional kann nach einem Fenstertitel gefiltert werden.", "category": "ProgrammeFenster", "uiFieldIds": [ "process_target", "action", "window_mode" ], "fields": [ { "id": "process_target", "name": "Prozessreferenz", "descriptor": { "Id": "process_target", "LabelKey": "Ui.Step.Settings.ProcessSource", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "process-target-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "process", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "action", "name": "Aktion", "descriptor": { "Id": "action", "LabelKey": "Ui.Step.Settings.Action", "ValueKind": "Enum", "Required": true, "DefaultValue": "BringToFront", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "BringToFront", "Minimize" ] }, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": [ { "Value": "BringToFront", "LabelKey": "Enum.FocusProcessAction.BringToFront", "DisplayName": null }, { "Value": "Minimize", "LabelKey": "Enum.FocusProcessAction.Minimize", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "window_mode", "name": "Fenstermodus", "descriptor": { "Id": "window_mode", "LabelKey": "Ui.Step.Settings.WindowMode", "ValueKind": "Enum", "Required": true, "DefaultValue": "Normal", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Normal", "Maximized" ] }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": { "FieldId": "action", "EqualsValue": "BringToFront", "AnyOfValues": null }, "Options": [ { "Value": "Normal", "LabelKey": "Enum.FocusProcessWindowMode.Normal", "DisplayName": null }, { "Value": "Maximized", "LabelKey": "Enum.FocusProcessWindowMode.Maximized", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "FocusProcessSettings", "options": [], "defaultValue": null }, { "id": "settings.action", "name": "action", "type": "FocusProcessAction", "options": [ "BringToFront", "Minimize" ], "defaultValue": "BringToFront" }, { "id": "settings.target", "name": "target", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.target.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.window_mode", "name": "window_mode", "type": "FocusProcessWindowMode", "options": [ "Normal", "Maximized", "Fullscreen" ], "defaultValue": "Normal" } ], "inputs": [ { "Key": "process", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "FocusProcessResult", "DisplayName": "FocusProcessResult", "Properties": [ { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "focus_process", "settings": { "target": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" }, "action": "BringToFront", "window_mode": "Normal" }, "id": "57d5804e-5282-502f-0454-33619a4efedb", "inputs": {}, "is_enabled": true } ``` ## Steps: Laufenden Prozess suchen ID: get_process Website: /doku/steps/get_process/ Abbildung: [Detailansicht: Laufenden Prozess suchen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-get-process.detail.png) 1. Prozessname: Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. 2. Programmpfad: Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. 3. Fenstertitel enthält: Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example process_name auf notepad setzen; process an den nächsten Fokus-Step weiterreichen. ### field.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### field.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### field.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### purpose Suche eine laufende Programminstanz über Namen, ausführbare Datei und optionalen Fenstertitel. Die Ausgabe process bezeichnet eine konkrete Instanz und kann an Statusprüfung, Fenstersteuerung oder Beenden weitergereicht werden. Verwende found beziehungsweise match_count, wenn kein oder mehr als ein Treffer möglich ist. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.query Prozesssuche mit process_name, executable_path, window_title_contains oder einer konkreten process_source. Leere Suchkriterien und Typkompatibilität gemäß Prozessvertrag prüfen. ### schema.settings.query.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.query.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.query.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.query.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.query.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.query.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.query.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.query.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.query.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.query.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.query.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.query.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.query.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "get_process", "name": "Laufenden Prozess suchen", "description": "Sucht einen laufenden Prozess anhand seiner Merkmale und stellt die konkrete Prozessreferenz für nachfolgende Steps bereit.", "category": "ProgrammeFenster", "uiFieldIds": [ "process_name", "executable_path", "window_title_contains" ], "fields": [ { "id": "process_name", "name": "Prozessname", "descriptor": { "Id": "process_name", "LabelKey": "Ui.Step.Settings.ProcessName", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "process-name-suggestions", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "executable_path", "name": "Programmpfad", "descriptor": { "Id": "executable_path", "LabelKey": "Ui.Step.Settings.PathProgram", "ValueKind": "FilePath", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "executable-path-suggestions", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "window_title_contains", "name": "Fenstertitel enthält", "descriptor": { "Id": "window_title_contains", "LabelKey": "Ui.Step.Settings.WindowTitleContains", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "GetProcessSettings", "options": [], "defaultValue": null }, { "id": "settings.query", "name": "query", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.query.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.query.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.query.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.query.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.query.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.query.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.query.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [], "result": { "TypeName": "GetProcessResult", "DisplayName": "GetProcessResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "get_process", "settings": { "query": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" } }, "id": "4d2791b6-420f-dcae-97a3-f32ff904ab70", "inputs": {}, "is_enabled": true } ``` ## Steps: Wenn ID: if Website: /doku/steps/if/ Abbildung: [Der Wenn-Block vergleicht das Ergebnis der Benutzerauswahl mit dem Wert rechnung. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-bedingung.detail.png) 1. Bedingungen: Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### errors Ungültige Ergebnisreferenzen, inkompatible Vergleichstypen und unvollständige Blockstruktur werden zurückgewiesen. Rohwerte und Secrets gehören nicht in Diagnosemeldungen; der Verlauf beschreibt Operator und Entscheidungsstatus. ### example Der Beispieljob „Arbeitsunterlagen vorbereiten“ vergleicht selected_value mit „rechnung“ und führt nur den passenden Kopierzweig aus. ### field.conditions Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### purpose Beginne einen bedingten Block und wähle Ergebniswert, Operator und gegebenenfalls Vergleichswert. „Alle“ verknüpft Bedingungen mit UND, „Mindestens eine“ mit ODER. Bedingungen verwenden typisierte Werte; ein noch nicht ausgeführter oder inkompatibler Quell-Step darf nicht als vorhandenes Ergebnis angenommen werden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.conditions Geordnete Bedingungsliste des Wenn-Zweigs. Jede Bedingung benötigt eine passende Ergebnisquelle und den gewählten Operator. ### schema.settings.conditions.comparison Rechte Seite des Vergleichs: Literal oder ein weiteres Job-Ergebnis, abhängig von kind. ### schema.settings.conditions.comparison.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.items.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.items.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.items.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.items.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.items.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.items.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.items.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.items.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.items.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison.kind Literal verwendet den direkt konfigurierten Vergleichswert; JobResult verwendet die zweite typisierte Ergebnisreferenz. Dieses Enum ist kein type/$type-Discriminator. ### schema.settings.conditions.comparison.kind.option.JobResult Verwendet einen kompatiblen Ergebniswert eines Job-Steps. ### schema.settings.conditions.comparison.kind.option.Literal Verwendet einen direkt gespeicherten Vergleichswert. ### schema.settings.conditions.comparison.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.members.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.comparison.members.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.comparison.members.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.members.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.members.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.members.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.members.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.members.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.members.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.comparison.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.comparison.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.comparison.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.comparison.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.comparison.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.comparison.value Gespeicherter Literal- oder Vergleichswert. Sein JSON-Typ muss zum angegebenen value_kind und zur Kardinalität passen; Zahlen und Booleans nicht versehentlich als Text speichern. ### schema.settings.conditions.comparison.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.comparison_value Direkt eingetragener Vergleichswert. Sein Typ muss zum linken Ergebnis und Operator passen. ### schema.settings.conditions.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.items.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.items.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.items.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.items.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.items.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.items.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.items.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.items.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.items.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.members.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.conditions.members.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.conditions.members.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.members.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.members.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.members.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.members.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.members.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.members.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.conditions.operator Vergleichsoperator. Wahrheits-/Leerheitsprüfungen benötigen keinen zusätzlichen Vergleichstext; andere Operatoren verlangen kompatible Werte. ### schema.settings.conditions.operator.option.Contains Prüft, ob Text den angegebenen Vergleichstext enthält. ### schema.settings.conditions.operator.option.Equals Prüft typkompatible Werte auf Gleichheit. ### schema.settings.conditions.operator.option.GreaterThan Linker Wert muss größer sein als der rechte Vergleichswert. ### schema.settings.conditions.operator.option.GreaterThanOrEqual Linker Wert muss größer oder gleich dem Vergleichswert sein. ### schema.settings.conditions.operator.option.IsEmpty Prüft einen vorhandenen Wert auf Leerheit; ungültige Referenzen werden dadurch nicht gültig. ### schema.settings.conditions.operator.option.IsFalse Prüft einen booleschen Wert auf false, ohne rechten Vergleichswert. ### schema.settings.conditions.operator.option.IsNotEmpty Prüft einen vorhandenen Wert auf Nicht-Leerheit. ### schema.settings.conditions.operator.option.IsTrue Prüft einen booleschen Wert auf true, ohne rechten Vergleichswert. ### schema.settings.conditions.operator.option.LessThan Linker Wert muss kleiner sein als der rechte Vergleichswert. ### schema.settings.conditions.operator.option.LessThanOrEqual Linker Wert muss kleiner oder gleich dem Vergleichswert sein. ### schema.settings.conditions.operator.option.NotEquals Prüft typkompatible Werte auf Ungleichheit. ### schema.settings.conditions.operator.option.StartsWith Prüft, ob Text mit dem angegebenen Vergleichstext beginnt. ### schema.settings.conditions.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.conditions.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.conditions.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.conditions.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.conditions.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.conditions.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.conditions.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.match_mode All verlangt alle Bedingungen; Any lässt eine passende Bedingung genügen. ### schema.settings.match_mode.option.All Alle betrachteten Bedingungen beziehungsweise Punkte müssen passen. ### schema.settings.match_mode.option.Any Mindestens eine betrachtete Bedingung beziehungsweise ein Punkt muss passen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "if", "name": "Wenn", "description": "Beginnt einen bedingten Block.", "category": "AblaufSteuern", "uiFieldIds": [ "conditions" ], "fields": [ { "id": "conditions", "name": "Bedingungen", "descriptor": { "Id": "conditions", "LabelKey": "Ui.Step.Settings.Evaluation", "ValueKind": "Object", "Required": true, "DefaultValue": { "match_mode": "All", "conditions": [] }, "DescriptionKey": null, "EditorHint": "condition-editor", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "IfConditionSettings", "options": [], "defaultValue": null }, { "id": "settings.conditions", "name": "conditions", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison", "name": "comparison", "type": "ComparisonOperand", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.items.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.kind", "name": "kind", "type": "ComparisonOperandKind", "options": [ "Literal", "JobResult" ], "defaultValue": null }, { "id": "settings.conditions.comparison.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.members.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.value", "name": "value", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.comparison_value", "name": "comparison_value", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.items.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.members.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.operator", "name": "operator", "type": "ConditionOperator", "options": [ "IsTrue", "IsFalse", "Equals", "NotEquals", "GreaterThan", "LessThan", "GreaterThanOrEqual", "LessThanOrEqual", "Contains", "StartsWith", "IsEmpty", "IsNotEmpty" ], "defaultValue": null }, { "id": "settings.conditions.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.conditions.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.match_mode", "name": "match_mode", "type": "ConditionMatchMode", "options": [ "All", "Any" ], "defaultValue": "All" } ], "inputs": [], "result": null } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "if", "settings": { "match_mode": "All", "conditions": [] }, "CanBeDisabled": false, "id": "d63699e5-2497-796d-bcbd-666b1c4a79ab", "inputs": {}, "is_enabled": true } ``` ## Steps: Job ausführen ID: job_execution Website: /doku/steps/job_execution/ Abbildung: [Detailansicht: Job ausführen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-job-execution.detail.png) 1. Job: Im Editor eine vorhandene Jobreferenz wählen. In JSON müssen deren stabile Job-ID und der erwartete Referenztyp zusammenpassen. 2. Auf Beendigung warten: true wartet auf den Unterjob, bevor der nächste Step beginnt. false erlaubt parallele Hauptarbeit, löst aber nicht die Besitz- und Fehlerbeziehung. ### errors Fehlende Job-IDs, direkte oder indirekte Abhängigkeitszyklen und ein fehlgeschlagener Unterjob sind Fehler. Auch ohne sofortiges Warten bleibt der Besitzer für die Unterarbeit verantwortlich. ### example Ein Hauptjob startet einen zuvor getesteten Sicherungsjob per job_id und wartet mit wait_for_completion auf dessen Abschluss. ### field.job Im Editor eine vorhandene Jobreferenz wählen. In JSON müssen deren stabile Job-ID und der erwartete Referenztyp zusammenpassen. ### field.wait_for_completion true wartet auf den Unterjob, bevor der nächste Step beginnt. false erlaubt parallele Hauptarbeit, löst aber nicht die Besitz- und Fehlerbeziehung. ### purpose Wähle einen vorhandenen Job per stabiler ID. Der aufrufende Job besitzt den gestarteten Unterjob. Ohne sofortiges Warten kann die Hauptphase weiterlaufen; vor der eigenen Endphase werden besessene Unterjobs zusammengeführt. Ein fehlgeschlagener Unterjob lässt den Besitzer fehlschlagen; zyklische Job-Abhängigkeiten sind unzulässig. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.job_id GUID des auszuführenden Jobs. Ein Anzeigename alleine reicht für die Zuordnung nicht aus. ### schema.settings.job_name Gespeicherter Anzeigename der ausgewählten Jobreferenz; die Ausführung richtet sich nach der Job-ID. ### schema.settings.wait_for_completion true wartet auf den Unterjob, bevor der nächste Step beginnt. false erlaubt parallele Hauptarbeit, löst aber nicht die Besitz- und Fehlerbeziehung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "job_execution", "name": "Job ausführen", "description": "Startet einen anderen Job und wartet optional auf dessen Abschluss.", "category": "AblaufSteuern", "uiFieldIds": [ "job", "wait_for_completion" ], "fields": [ { "id": "job", "name": "Job", "descriptor": { "Id": "job", "LabelKey": "Ui.Step.Settings.Job", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "job-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "wait_for_completion", "name": "Auf Beendigung warten", "descriptor": { "Id": "wait_for_completion", "LabelKey": "Ui.Step.Settings.WaitForCompletion", "ValueKind": "Boolean", "Required": false, "DefaultValue": true, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "JobExecutionStepSettings", "options": [], "defaultValue": null }, { "id": "settings.job_id", "name": "job_id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.job_name", "name": "job_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.wait_for_completion", "name": "wait_for_completion", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": { "TypeName": "JobExecutionResult", "DisplayName": "JobExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "job_execution", "settings": { "job_name": "", "job_id": null, "wait_for_completion": true }, "id": "7deb7f0c-62e0-194e-3194-da75007c16ed", "inputs": {}, "is_enabled": true } ``` ## Steps: Bildmerkmale vergleichen ID: keypoint_matching Website: /doku/steps/keypoint_matching/ Abbildung: [Detailansicht: Bildmerkmale vergleichen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-keypoint-matching.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Bildvorlage: Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. 3. Bildbereich (ROI): Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. 4. Mindestanzahl Treffer: Mindestanzahl zuverlässiger SIFT-Merkmalszuordnungen, bevor der Merkmalsvergleich als Treffer gilt. 5. Lowe-Verhältnis (0–1): Lowe-Verhältnis von 0 bis 1 zur Filterung mehrdeutiger SIFT-Zuordnungen. Strengere Werte können die Trefferzahl verringern. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Bildschirm aufnehmen → detailreiche lokale PNG-Vorlage wählen → mindestens zehn Zuordnungen verlangen → found prüfen. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.lowes_ratio_threshold Lowe-Verhältnis von 0 bis 1 zur Filterung mehrdeutiger SIFT-Zuordnungen. Strengere Werte können die Trefferzahl verringern. ### field.min_match_count Mindestanzahl zuverlässiger SIFT-Merkmalszuordnungen, bevor der Merkmalsvergleich als Treffer gilt. ### field.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### field.template_path Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. ### input.dynamicRoi dynamischer Suchbereich. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Vergleiche charakteristische SIFT-Bildmerkmale einer Vorlage mit einer Bildquelle. Mindestanzahl und Lowe-Verhältnis entscheiden, ob genügend zuverlässige Zuordnungen vorliegen. Anders als Pixelvorlagen ist dieser Ansatz auf Bildmerkmale ausgerichtet; eine strukturarme Vorlage kann zu wenig Merkmale liefern. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.dynamic_roi_source Kompatible dynamische Rechteckquelle. Eine spätere DynamicRoi-Quelle darf Feedback für den nächsten Durchlauf liefern; dies ist eine besondere Ausnahme von normalen Vorwärtsreferenzen. ### schema.settings.dynamic_roi_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.dynamic_roi_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.dynamic_roi_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.dynamic_roi_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.dynamic_roi_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.dynamic_roi_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.dynamic_roi_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.dynamic_roi_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.dynamic_roi_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.enable_roi Aktiviert den direkt konfigurierten Suchbereich. Ohne Aktivierung wird der Standardbereich der Quelle verwendet, sofern keine dynamische ROI-Quelle greift. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.lowes_ratio_threshold Lowe-Verhältnis von 0 bis 1 zur Filterung mehrdeutiger SIFT-Zuordnungen. Strengere Werte können die Trefferzahl verringern. ### schema.settings.min_match_count Mindestanzahl zuverlässiger SIFT-Merkmalszuordnungen, bevor der Merkmalsvergleich als Treffer gilt. ### schema.settings.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### schema.settings.roi.Empty Vom serialisierten Geometrieobjekt angebotener Leerzustand. Kein eigener ROI-Schalter: den Suchbereich mit enable_roi beziehungsweise roi.enabled und den Koordinaten konfigurieren; dieses abgeleitete Mitglied nicht als Eingabequelle verwenden. ### schema.settings.roi.height Höhe des Rechtecks oder Bildformats in Pixeln. Negative Größen sind kein gültiger Suchbereich. ### schema.settings.roi.width Breite des Rechtecks oder Bildformats in Pixeln. Zusammen mit Höhe und Ursprung ergibt sie die räumliche Größe. ### schema.settings.roi.x Horizontale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate X = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.roi.y Vertikale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate Y = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.template_path Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "keypoint_matching", "name": "Bildmerkmale vergleichen", "description": "Vergleicht Bildmerkmale einer Bildvorlage mithilfe von SIFT.", "category": "BildAuswerten", "uiFieldIds": [ "image_source", "template_path", "roi", "min_match_count", "lowes_ratio_threshold" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "template_path", "name": "Bildvorlage", "descriptor": { "Id": "template_path", "LabelKey": "Ui.Step.Settings.Template", "ValueKind": "FilePath", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "file-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": { "Kind": "Image", "ShowPreview": true }, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "roi", "name": "Bildbereich (ROI)", "descriptor": { "Id": "roi", "LabelKey": "Ui.Step.Settings.ROI", "ValueKind": "Object", "Required": false, "DefaultValue": { "enabled": false, "x": 0, "y": 0, "width": 0, "height": 0, "dynamic_source": null }, "DescriptionKey": null, "EditorHint": "roi-picker", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": { "DynamicInputContractId": "dynamicRoi" }, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "min_match_count", "name": "Mindestanzahl Treffer", "descriptor": { "Id": "min_match_count", "LabelKey": "Ui.Step.Settings.MinMatches", "ValueKind": "Integer", "Required": false, "DefaultValue": 10, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "lowes_ratio_threshold", "name": "Lowe-Verhältnis (0–1)", "descriptor": { "Id": "lowes_ratio_threshold", "LabelKey": "Ui.Step.Settings.LoweSRatio01", "ValueKind": "Number", "Required": false, "DefaultValue": 0.75, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 1e-06, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "KeyPointMatchingSettings", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source", "name": "dynamic_roi_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.enable_roi", "name": "enable_roi", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.lowes_ratio_threshold", "name": "lowes_ratio_threshold", "type": "Double", "options": [], "defaultValue": 0.75 }, { "id": "settings.min_match_count", "name": "min_match_count", "type": "Int32", "options": [], "defaultValue": 10 }, { "id": "settings.roi", "name": "roi", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.Empty", "name": "Empty", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.template_path", "name": "template_path", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "dynamicRoi", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "KeyPointMatchingResult", "DisplayName": "KeyPointMatchingResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "keypoint_matching", "settings": { "template_path": "", "min_match_count": 10, "lowes_ratio_threshold": 0.75, "enable_roi": false, "roi": { "x": 0, "y": 0, "width": 0, "height": 0 }, "image_source": { "provider_id": "", "source_id": "" }, "dynamic_roi_source": { "provider_id": "", "source_id": "" } }, "id": "4e14e928-862e-8c96-5024-1350f0969673", "inputs": {}, "is_enabled": true } ``` ## Steps: Punkt anklicken ID: klick_on_point Website: /doku/steps/klick_on_point/ Abbildung: [Detailansicht: Punkt anklicken. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-klick-on-point.detail.png) 1. Punktquelle: Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. 2. Maustaste: left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. 3. Versatz X (px): Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. 4. Versatz Y (px): Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. 5. Zeitlimit (ms): Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. 6. Doppelklick: Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Ein Erkennungs-Step liefert point; der Klick-Step verwendet diese Punktquelle, linke Taste und optional offset_x=5. ### field.click_type left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. ### field.click_type.option.left Linke Maustaste. ### field.click_type.option.middle Mittlere Maustaste. ### field.click_type.option.none Keine Maustaste senden; nur die Bewegung ausführen. ### field.click_type.option.right Rechte Maustaste. ### field.double_click Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. ### field.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### field.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### input.points Punkt-/Erkennungsergebnis. Fehlende erforderliche Werte führen zum Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle eine kompatible Punktquelle und optional einen Pixelversatz. Bei einer Liste wird der erste passende Punkt verwendet, nicht jedes Listenelement angeklickt. Wähle eine Maustaste oder „none“ für reine Bewegung; ein Doppelklick ist eine zusätzliche Eingabeaktion. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.click_type left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. ### schema.settings.double_click Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. ### schema.settings.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### schema.settings.points_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.points_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.points_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.points_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.points_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.points_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.points_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.points_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.points_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "klick_on_point", "name": "Punkt anklicken", "description": "Klickt auf einen direkt angegebenen oder referenzierten Punkt.", "category": "MausTastatur", "uiFieldIds": [ "points_source", "click_type", "offset_x", "offset_y", "timeout_ms", "double_click" ], "fields": [ { "id": "points_source", "name": "Punktquelle", "descriptor": { "Id": "points_source", "LabelKey": "Ui.Step.Settings.PointSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "points", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "click_type", "name": "Maustaste", "descriptor": { "Id": "click_type", "LabelKey": "Ui.Step.Settings.ClickType", "ValueKind": "Enum", "Required": true, "DefaultValue": "left", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "left", "right", "middle", "none" ] }, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": [ { "Value": "left", "LabelKey": "Enum.MouseClickType.Left", "DisplayName": null }, { "Value": "right", "LabelKey": "Enum.MouseClickType.Right", "DisplayName": null }, { "Value": "middle", "LabelKey": "Enum.MouseClickType.Middle", "DisplayName": null }, { "Value": "none", "LabelKey": "Enum.MouseClickType.None", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_x", "name": "Versatz X (px)", "descriptor": { "Id": "offset_x", "LabelKey": "Ui.Step.Settings.XOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_y", "name": "Versatz Y (px)", "descriptor": { "Id": "offset_y", "LabelKey": "Ui.Step.Settings.YOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "timeout_ms", "name": "Zeitlimit (ms)", "descriptor": { "Id": "timeout_ms", "LabelKey": "Ui.Step.Settings.TimeoutMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "double_click", "name": "Doppelklick", "descriptor": { "Id": "double_click", "LabelKey": "Ui.Step.Settings.DoubleClick", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "KlickOnPointSettings", "options": [], "defaultValue": null }, { "id": "settings.click_type", "name": "click_type", "type": "String", "options": [], "defaultValue": "left" }, { "id": "settings.double_click", "name": "double_click", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.points_source", "name": "points_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.points_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.points_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.timeout_ms", "name": "timeout_ms", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [ { "Key": "points", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "local_value" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "KlickOnPointResult", "DisplayName": "KlickOnPointResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "klick_on_point", "settings": { "double_click": false, "click_type": "left", "timeout_ms": 0, "offset_x": 0, "offset_y": 0, "points_source": { "provider_id": "", "source_id": "" } }, "id": "12ba351e-b0cc-6cb8-3277-7dcc5cc6353f", "inputs": {}, "is_enabled": true } ``` ## Steps: 3D-Ziel anklicken ID: klick_on_point_3d Website: /doku/steps/klick_on_point_3d/ Abbildung: [Detailansicht: 3D-Ziel anklicken. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-klick-on-point-3d.detail.png) 1. Punktquelle: Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. 2. Ursprung: Referenzursprung für die relative Zielbewegung. Die gewählte Koordinatenquelle und ihr Koordinatenraum müssen zum Ziel passen. 3. Maustaste: left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. 4. Bewegungsfaktor X: Skalierung der horizontalen Zielabweichung für die relative Mausbewegung. Zunächst mit kleinen Faktoren testen. 5. Bewegungsfaktor Y: Skalierung der vertikalen Zielabweichung für die relative Mausbewegung. X- und Y-Achse können unterschiedlich reagieren. 6. Versatz X (px): Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. 7. Versatz Y (px): Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. 8. Zeitlimit (ms): Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. 9. Doppelklick: Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. 10. Bewegungstoleranz (px): Inklusive Toleranz in Pixeln auf beiden Achsen für wiederholte ganzzahlige Mausbewegungen. Standard 10; 0 unterdrückt nur exakt gleiche Bewegungen. Nur eine erfolgreich gesendete Bewegung aktualisiert die Vergleichsbasis. ### errors Ein unterdrückter alter Frame oder eine Bewegung innerhalb der Toleranz sendet keine neue Bewegung und keinen Klick. Lies movement_blocked; fehlende Quellen, abgelaufene Eingaben und falsche Typen dürfen nicht als erfolgreiche Aktion behandelt werden. ### example Erkennungspunkt relativ zum Bildschirmmittelpunkt verwenden; Faktoren zunächst klein wählen und movement_blocked im Debugging prüfen. ### field.click_type left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. ### field.click_type.option.left Linke Maustaste. ### field.click_type.option.middle Mittlere Maustaste. ### field.click_type.option.none Keine Maustaste senden; nur die Bewegung ausführen. ### field.click_type.option.right Rechte Maustaste. ### field.double_click Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. ### field.movement_factor_x Skalierung der horizontalen Zielabweichung für die relative Mausbewegung. Zunächst mit kleinen Faktoren testen. ### field.movement_factor_y Skalierung der vertikalen Zielabweichung für die relative Mausbewegung. X- und Y-Achse können unterschiedlich reagieren. ### field.movement_threshold_px Inklusive Toleranz in Pixeln auf beiden Achsen für wiederholte ganzzahlige Mausbewegungen. Standard 10; 0 unterdrückt nur exakt gleiche Bewegungen. Nur eine erfolgreich gesendete Bewegung aktualisiert die Vergleichsbasis. ### field.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.origin Referenzursprung für die relative Zielbewegung. Die gewählte Koordinatenquelle und ihr Koordinatenraum müssen zum Ziel passen. ### field.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### field.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### input.origin Referenzursprung der Bewegung. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.points Punkt-/Erkennungsergebnis. Fehlende erforderliche Werte führen zum Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle Zielpunkt und Ursprung für eine relative Mausbewegung mit getrennten Faktoren für X und Y. Die Bewegungstoleranz unterdrückt wiederholte nahezu identische ganzzahlige Bewegungen. Ein bekannter Quell-Frame, der nicht neuer als die letzte Eingabe ist, wird ebenfalls unterdrückt. movement_blocked unterscheidet diese Sperre von einer erfolgreich gesendeten Bewegung. ### result.click_on_point_3d.applied_delta_x Tatsächlich angewendeter ganzzahliger horizontaler Mausversatz nach Skalierung und Rundung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.applied_delta_y Tatsächlich angewendeter ganzzahliger vertikaler Mausversatz nach Skalierung und Rundung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.delta_x Horizontale Abweichung beziehungsweise Bewegungsanteil in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.delta_y Vertikale Abweichung beziehungsweise Bewegungsanteil in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.movement_blocked Ob die 3D-Eingabe wegen Bewegungstoleranz oder nicht neuerem Quell-Frame unterdrückt wurde. Es wurde dabei keine neue Bewegung und kein Klick gesendet. Einzelwert dieses Ergebnisses. ### result.click_on_point_3d.movement_factor_x Horizontaler Skalierungsfaktor, der für diese Eingabe verwendet wurde. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.movement_factor_y Vertikaler Skalierungsfaktor, der für diese Eingabe verwendet wurde. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.click_type left, right oder middle sendet die entsprechende Maustaste; none führt nur die Mausbewegung aus. ### schema.settings.double_click Sendet einen Doppelklick statt eines Einzelklicks, sofern eine Maustaste gewählt ist. ### schema.settings.movement_factor Zusammengesetzte Bewegungsfaktoren für die relative Maussteuerung. X- und Y-Faktor gehören zu derselben Einstellung. ### schema.settings.movement_factor_x Skalierung der horizontalen Zielabweichung für die relative Mausbewegung. Zunächst mit kleinen Faktoren testen. ### schema.settings.movement_factor_y Skalierung der vertikalen Zielabweichung für die relative Mausbewegung. X- und Y-Achse können unterschiedlich reagieren. ### schema.settings.movement_threshold_px Inklusive Toleranz in Pixeln auf beiden Achsen für wiederholte ganzzahlige Mausbewegungen. Standard 10; 0 unterdrückt nur exakt gleiche Bewegungen. Nur eine erfolgreich gesendete Bewegung aktualisiert die Vergleichsbasis. ### schema.settings.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.origin_coordinate_space Koordinatenraum des Ursprungs. Bildlokale Werte vor der Verwendung als Desktopkoordinate um den passenden Monitorversatz ergänzen. ### schema.settings.origin_monitor_index Nullbasierter Monitor, auf den sich der konfigurierte Ursprung bezieht. ### schema.settings.origin_source Wählt die direkte beziehungsweise referenzierte Herkunft des Bewegungsursprungs. ### schema.settings.origin_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.origin_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.origin_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.origin_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.origin_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.origin_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.origin_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.origin_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.origin_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.origin_x Horizontale Koordinate des direkt konfigurierten Ursprungs in Pixeln. ### schema.settings.origin_y Vertikale Koordinate des direkt konfigurierten Ursprungs in Pixeln. ### schema.settings.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### schema.settings.points_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.points_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.points_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.points_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.points_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.points_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.points_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.points_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.points_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.timeout_ms Zeitlimit in Millisekunden für den betreffenden Vorgang. Das jeweilige Fehler-/Skip-Verhalten steht im Step-Text; es ist keine allgemeine Job-Gesamtdauer. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "klick_on_point_3d", "name": "3D-Ziel anklicken", "description": "Bewegt die Maus per FOV-Berechnung auf ein Zielobjekt und klickt es an.", "category": "MausTastatur", "uiFieldIds": [ "points_source", "origin", "click_type", "movement_factor_x", "movement_factor_y", "offset_x", "offset_y", "timeout_ms", "double_click", "movement_threshold_px" ], "fields": [ { "id": "points_source", "name": "Punktquelle", "descriptor": { "Id": "points_source", "LabelKey": "Ui.Step.Settings.PointSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "points", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "origin", "name": "Ursprung", "descriptor": { "Id": "origin", "LabelKey": "Ui.Step.Settings.Origin", "ValueKind": "Object", "Required": true, "DefaultValue": { "monitor_index": 0, "x": 0, "y": 0, "coordinate_space": "monitor_local", "point_source": null }, "DescriptionKey": "Ui.Step.Settings.OriginLocalHelp", "EditorHint": "screen-point-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": { "DefaultToPrimaryMonitorCenter": true, "WholeValueInputContractId": "origin" }, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "click_type", "name": "Maustaste", "descriptor": { "Id": "click_type", "LabelKey": "Ui.Step.Settings.ClickType", "ValueKind": "Enum", "Required": true, "DefaultValue": "left", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "left", "right", "middle", "none" ] }, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": [ { "Value": "left", "LabelKey": "Enum.MouseClickType.Left", "DisplayName": null }, { "Value": "right", "LabelKey": "Enum.MouseClickType.Right", "DisplayName": null }, { "Value": "middle", "LabelKey": "Enum.MouseClickType.Middle", "DisplayName": null }, { "Value": "none", "LabelKey": "Enum.MouseClickType.None", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "movement_factor_x", "name": "Bewegungsfaktor X", "descriptor": { "Id": "movement_factor_x", "LabelKey": "Ui.Step.Settings.MovementFactorX", "ValueKind": "Number", "Required": false, "DefaultValue": 1, "DescriptionKey": "Ui.Step.Settings.MovementFactorHelp", "EditorHint": null, "Constraints": { "Minimum": 0.01, "Maximum": 100, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "movement_factor_y", "name": "Bewegungsfaktor Y", "descriptor": { "Id": "movement_factor_y", "LabelKey": "Ui.Step.Settings.MovementFactorY", "ValueKind": "Number", "Required": false, "DefaultValue": 1, "DescriptionKey": "Ui.Step.Settings.MovementFactorHelp", "EditorHint": null, "Constraints": { "Minimum": 0.01, "Maximum": 100, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_x", "name": "Versatz X (px)", "descriptor": { "Id": "offset_x", "LabelKey": "Ui.Step.Settings.XOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_y", "name": "Versatz Y (px)", "descriptor": { "Id": "offset_y", "LabelKey": "Ui.Step.Settings.YOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 6, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "timeout_ms", "name": "Zeitlimit (ms)", "descriptor": { "Id": "timeout_ms", "LabelKey": "Ui.Step.Settings.TimeoutMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 7, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "double_click", "name": "Doppelklick", "descriptor": { "Id": "double_click", "LabelKey": "Ui.Step.Settings.DoubleClick", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 8, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "movement_threshold_px", "name": "Bewegungstoleranz (px)", "descriptor": { "Id": "movement_threshold_px", "LabelKey": "Ui.Step.Settings.MovementThresholdPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 10, "DescriptionKey": "Ui.Step.Settings.MovementThresholdHelp", "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": 2147483647, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 9, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "KlickOnPoint3DSettings", "options": [], "defaultValue": null }, { "id": "settings.click_type", "name": "click_type", "type": "String", "options": [], "defaultValue": "left" }, { "id": "settings.double_click", "name": "double_click", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.movement_factor", "name": "movement_factor", "type": "Double", "options": [], "defaultValue": null }, { "id": "settings.movement_factor_x", "name": "movement_factor_x", "type": "Double", "options": [], "defaultValue": null }, { "id": "settings.movement_factor_y", "name": "movement_factor_y", "type": "Double", "options": [], "defaultValue": null }, { "id": "settings.movement_threshold_px", "name": "movement_threshold_px", "type": "Int32", "options": [], "defaultValue": 10 }, { "id": "settings.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.origin_coordinate_space", "name": "origin_coordinate_space", "type": "String", "options": [], "defaultValue": "monitor_local" }, { "id": "settings.origin_monitor_index", "name": "origin_monitor_index", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.origin_source", "name": "origin_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.origin_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.origin_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.origin_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.origin_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.origin_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.origin_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.origin_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.origin_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.origin_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.origin_x", "name": "origin_x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.origin_y", "name": "origin_y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.points_source", "name": "points_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.points_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.points_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.timeout_ms", "name": "timeout_ms", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [ { "Key": "points", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "local_value" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "origin", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "KlickOnPoint3DResult", "DisplayName": "KlickOnPoint3DResult", "Properties": [ { "Name": "DeltaX", "DisplayName": "Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_x" }, { "Name": "DeltaY", "DisplayName": "Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_y" }, { "Name": "MovementFactorX", "DisplayName": "Movement Factor X", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_x" }, { "Name": "MovementFactorY", "DisplayName": "Movement Factor Y", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_y" }, { "Name": "AppliedDeltaX", "DisplayName": "Applied Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_x" }, { "Name": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_y" }, { "Name": "MovementBlocked", "DisplayName": "Movement Blocked", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_blocked", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_blocked" } ], "PropertyTree": [ { "Segment": "DeltaX", "DisplayName": "Delta X", "Property": { "Name": "DeltaX", "DisplayName": "Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_x" }, "Children": [] }, { "Segment": "DeltaY", "DisplayName": "Delta Y", "Property": { "Name": "DeltaY", "DisplayName": "Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_y" }, "Children": [] }, { "Segment": "MovementFactorX", "DisplayName": "Movement Factor X", "Property": { "Name": "MovementFactorX", "DisplayName": "Movement Factor X", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_x" }, "Children": [] }, { "Segment": "MovementFactorY", "DisplayName": "Movement Factor Y", "Property": { "Name": "MovementFactorY", "DisplayName": "Movement Factor Y", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_y" }, "Children": [] }, { "Segment": "AppliedDeltaX", "DisplayName": "Applied Delta X", "Property": { "Name": "AppliedDeltaX", "DisplayName": "Applied Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_x" }, "Children": [] }, { "Segment": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "Property": { "Name": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_y" }, "Children": [] }, { "Segment": "MovementBlocked", "DisplayName": "Movement Blocked", "Property": { "Name": "MovementBlocked", "DisplayName": "Movement Blocked", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_blocked", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_blocked" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "klick_on_point_3d", "settings": { "movement_threshold_px": 10, "double_click": false, "click_type": "left", "timeout_ms": 0, "origin_x": 0, "origin_y": 0, "origin_source": { "provider_id": "", "source_id": "" }, "origin_monitor_index": 0, "origin_coordinate_space": "monitor_local", "movement_factor_x": null, "movement_factor_y": null, "offset_x": 0, "offset_y": 0, "points_source": { "provider_id": "", "source_id": "" } }, "id": "23b322d2-328c-1eab-64b5-9a027aaa036d", "inputs": {}, "is_enabled": true } ``` ## Steps: Makro ausführen ID: makro_execution Website: /doku/steps/makro_execution/ Abbildung: [Ein Makro-Step verweist auf das Beispielmakro Notiz eingeben; im Beispieljob ist dieser Step deaktiviert. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-makro.detail.png) 1. Makro: Im Editor ein vorhandenes Makro wählen; seine Eingaben wirken auf den aktiven Desktop und das aktive Fenster. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Der Unterlagenablauf zeigt das optionale Makro „Notiz eingeben“. Fokussiere einen leeren Editor und teste das Makro zuerst separat; der illustrierte Job-Step ist anfangs deaktiviert. ### field.macro Im Editor ein vorhandenes Makro wählen; seine Eingaben wirken auf den aktiven Desktop und das aktive Fenster. ### purpose Wähle ein gespeichertes Makro per ID und führe dessen Befehle im aktuellen Desktop-Kontext aus. Es verwendet das gerade aktive Fenster. Stelle deshalb vor dem Makro über Prozess- und Fenster-Steps sicher, dass die Eingabe im vorgesehenen Programm landet. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.makro_id GUID des auszuführenden Makros. Beim Duplizieren eines Makros die Referenzen auf dessen neue ID anpassen. ### schema.settings.makro_name Anzeigename der Makroreferenz; die stabile ID bestimmt das Ziel. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "makro_execution", "name": "Makro ausführen", "description": "Führt ein zuvor aufgezeichnetes Makro aus.", "category": "MausTastatur", "uiFieldIds": [ "macro" ], "fields": [ { "id": "macro", "name": "Makro", "descriptor": { "Id": "macro", "LabelKey": "Ui.Step.Settings.Macro", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "macro-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "MakroExecutionSettings", "options": [], "defaultValue": null }, { "id": "settings.makro_id", "name": "makro_id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.makro_name", "name": "makro_name", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [], "result": { "TypeName": "MakroExecutionResult", "DisplayName": "MakroExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "makro_execution", "settings": { "makro_name": "", "makro_id": null }, "id": "9fd9f44c-6450-a88e-c624-8a1b7e809975", "inputs": {}, "is_enabled": true } ``` ## Steps: Text erkennen ID: ocr Website: /doku/steps/ocr/ Abbildung: [Detailansicht: Text erkennen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-ocr.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Sprache: OCR-Sprachdaten: deu für Deutsch, eng für Englisch oder deu+eng für beide. Die Daten müssen installiert sein. 3. Textanordnung: Erwartete Textstruktur der OCR, zum Beispiel TextBlock oder SingleWord. Eine passende Struktur verbessert die Auswertung des gewählten Bildbereichs. 4. Bildbereich (ROI): Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Ein Bildschirmbild mit deutschem Text aufnehmen; Sprache deu und TextBlock wählen; text in „Text auf Desktop anzeigen“ verwenden. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.languages OCR-Sprachdaten: deu für Deutsch, eng für Englisch oder deu+eng für beide. Die Daten müssen installiert sein. ### field.languages.option.deu Deutsche OCR-Sprachdaten verwenden. ### field.languages.option.deu+eng Deutsche und englische OCR-Sprachdaten gemeinsam verwenden. ### field.languages.option.eng Englische OCR-Sprachdaten verwenden. ### field.page_layout Erwartete Textstruktur der OCR, zum Beispiel TextBlock oder SingleWord. Eine passende Struktur verbessert die Auswertung des gewählten Bildbereichs. ### field.page_layout.option.Automatic Überlässt Kamera-/OCR-Moduswahl dem zuständigen Backend gemäß dieser Einstellung. ### field.page_layout.option.SingleWord Ein einzelnes Wort erwarten. ### field.page_layout.option.SparseText Verstreute kurze Textbereiche im Bild suchen. ### field.page_layout.option.TextBlock Zusammenhängenden Textblock erwarten. ### field.page_layout.option.TextLine Eine einzelne Textzeile erwarten. ### field.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### input.dynamicRoi dynamischer Suchbereich. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle Bildquelle, Sprache und Textanordnung. Die Erkennung liefert den gesamten Text, Zeilen und Wörter einschließlich Positionen und Konfidenzen. Verwende beispielsweise text für eine Anzeige und found als Bedingung. Die gewünschten Sprachdaten müssen installiert sein. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.line_count Anzahl erkannter Textzeilen der OCR-Auswertung. Einzelwert dieses Ergebnisses. ### result.lines.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.lines.position Position des Punktes/Fensters im Ergebnis-Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.minimum_confidence Für diese Berechnung verwendete Mindestkonfidenz als Anteil von 0 bis 1. Einzelwert dieses Ergebnisses. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### result.word_count Anzahl erkannter Wörter im betrachteten Textbereich. Einzelwert dieses Ergebnisses. ### result.words.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.words.line_position Position beziehungsweise Zuordnung des OCR-Treffers innerhalb seiner Zeile. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.position Position des Punktes/Fensters im Ergebnis-Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.dynamic_roi_source Kompatible dynamische Rechteckquelle. Eine spätere DynamicRoi-Quelle darf Feedback für den nächsten Durchlauf liefern; dies ist eine besondere Ausnahme von normalen Vorwärtsreferenzen. ### schema.settings.dynamic_roi_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.dynamic_roi_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.dynamic_roi_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.dynamic_roi_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.dynamic_roi_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.dynamic_roi_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.dynamic_roi_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.dynamic_roi_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.dynamic_roi_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.enable_roi Aktiviert den direkt konfigurierten Suchbereich. Ohne Aktivierung wird der Standardbereich der Quelle verwendet, sofern keine dynamische ROI-Quelle greift. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.languages OCR-Sprachdaten: deu für Deutsch, eng für Englisch oder deu+eng für beide. Die Daten müssen installiert sein. ### schema.settings.page_layout Erwartete Textstruktur der OCR, zum Beispiel TextBlock oder SingleWord. Eine passende Struktur verbessert die Auswertung des gewählten Bildbereichs. ### schema.settings.page_layout.option.Automatic Überlässt Kamera-/OCR-Moduswahl dem zuständigen Backend gemäß dieser Einstellung. ### schema.settings.page_layout.option.SingleWord Ein einzelnes Wort erwarten. ### schema.settings.page_layout.option.SparseText Verstreute kurze Textbereiche im Bild suchen. ### schema.settings.page_layout.option.TextBlock Zusammenhängenden Textblock erwarten. ### schema.settings.page_layout.option.TextLine Eine einzelne Textzeile erwarten. ### schema.settings.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### schema.settings.roi.Empty Vom serialisierten Geometrieobjekt angebotener Leerzustand. Kein eigener ROI-Schalter: den Suchbereich mit enable_roi beziehungsweise roi.enabled und den Koordinaten konfigurieren; dieses abgeleitete Mitglied nicht als Eingabequelle verwenden. ### schema.settings.roi.height Höhe des Rechtecks oder Bildformats in Pixeln. Negative Größen sind kein gültiger Suchbereich. ### schema.settings.roi.width Breite des Rechtecks oder Bildformats in Pixeln. Zusammen mit Höhe und Ursprung ergibt sie die räumliche Größe. ### schema.settings.roi.x Horizontale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate X = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.roi.y Vertikale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate Y = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ocr", "name": "Text erkennen", "description": "Erkennt Text in einer Bildquelle und stellt Text sowie Wortpositionen bereit.", "category": "BildAuswerten", "uiFieldIds": [ "image_source", "languages", "page_layout", "roi" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "languages", "name": "Sprache", "descriptor": { "Id": "languages", "LabelKey": "Ui.Step.Settings.OcrLanguages", "ValueKind": "Enum", "Required": true, "DefaultValue": "deu+eng", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "deu", "eng", "deu+eng" ] }, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": [ { "Value": "deu", "LabelKey": "Enum.OcrLanguage.deu", "DisplayName": null }, { "Value": "eng", "LabelKey": "Enum.OcrLanguage.eng", "DisplayName": null }, { "Value": "deu+eng", "LabelKey": "Enum.OcrLanguage.deu+eng", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "page_layout", "name": "Textanordnung", "descriptor": { "Id": "page_layout", "LabelKey": "Ui.Step.Settings.OcrLayout", "ValueKind": "Enum", "Required": true, "DefaultValue": "Automatic", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Automatic", "TextBlock", "TextLine", "SingleWord", "SparseText" ] }, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": [ { "Value": "Automatic", "LabelKey": "Enum.OcrPageLayout.Automatic", "DisplayName": null }, { "Value": "TextBlock", "LabelKey": "Enum.OcrPageLayout.TextBlock", "DisplayName": null }, { "Value": "TextLine", "LabelKey": "Enum.OcrPageLayout.TextLine", "DisplayName": null }, { "Value": "SingleWord", "LabelKey": "Enum.OcrPageLayout.SingleWord", "DisplayName": null }, { "Value": "SparseText", "LabelKey": "Enum.OcrPageLayout.SparseText", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "roi", "name": "Bildbereich (ROI)", "descriptor": { "Id": "roi", "LabelKey": "Ui.Step.Settings.ROI", "ValueKind": "Object", "Required": false, "DefaultValue": { "enabled": false, "x": 0, "y": 0, "width": 0, "height": 0, "dynamic_source": null }, "DescriptionKey": null, "EditorHint": "roi-picker", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": { "DynamicInputContractId": "dynamicRoi" }, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "OcrSettings", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source", "name": "dynamic_roi_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.enable_roi", "name": "enable_roi", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.languages", "name": "languages", "type": "String", "options": [], "defaultValue": "deu+eng" }, { "id": "settings.page_layout", "name": "page_layout", "type": "OcrPageLayout", "options": [ "Automatic", "TextBlock", "TextLine", "SingleWord", "SparseText" ], "defaultValue": "Automatic" }, { "id": "settings.roi", "name": "roi", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.Empty", "name": "Empty", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "dynamicRoi", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "OcrResult", "DisplayName": "OcrResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "MinimumConfidence", "DisplayName": "Minimum Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "minimum_confidence", "EnumDisplayNames": null, "StableId": "minimum_confidence" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "LineCount", "DisplayName": "Line Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "line_count", "EnumDisplayNames": null, "StableId": "line_count" }, { "Name": "WordCount", "DisplayName": "Word Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "word_count", "EnumDisplayNames": null, "StableId": "word_count" }, { "Name": "Lines.Count", "DisplayName": "Lines / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "lines.count", "EnumDisplayNames": null, "StableId": "lines.count" }, { "Name": "Lines[].Text", "DisplayName": "Lines[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.text", "EnumDisplayNames": null, "StableId": "lines.text" }, { "Name": "Lines[].Confidence", "DisplayName": "Lines[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.confidence", "EnumDisplayNames": null, "StableId": "lines.confidence" }, { "Name": "Lines[].BoundingBox", "DisplayName": "Lines[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box", "EnumDisplayNames": null, "StableId": "lines.bounding_box" }, { "Name": "Lines[].BoundingBox.X", "DisplayName": "Lines[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.x" }, { "Name": "Lines[].BoundingBox.Y", "DisplayName": "Lines[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.y" }, { "Name": "Lines[].BoundingBox.Width", "DisplayName": "Lines[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.width", "EnumDisplayNames": null, "StableId": "lines.bounding_box.width" }, { "Name": "Lines[].BoundingBox.Height", "DisplayName": "Lines[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.height", "EnumDisplayNames": null, "StableId": "lines.bounding_box.height" }, { "Name": "Lines[].BoundingBox.Left", "DisplayName": "Lines[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.left", "EnumDisplayNames": null, "StableId": "lines.bounding_box.left" }, { "Name": "Lines[].BoundingBox.Top", "DisplayName": "Lines[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.top", "EnumDisplayNames": null, "StableId": "lines.bounding_box.top" }, { "Name": "Lines[].BoundingBox.Right", "DisplayName": "Lines[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.right", "EnumDisplayNames": null, "StableId": "lines.bounding_box.right" }, { "Name": "Lines[].BoundingBox.Bottom", "DisplayName": "Lines[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "lines.bounding_box.bottom" }, { "Name": "Lines[].BoundingBox.IsEmpty", "DisplayName": "Lines[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "lines.bounding_box.is_empty" }, { "Name": "Lines[].BoundingBox.Location", "DisplayName": "Lines[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location" }, { "Name": "Lines[].BoundingBox.Location.X", "DisplayName": "Lines[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.x" }, { "Name": "Lines[].BoundingBox.Location.Y", "DisplayName": "Lines[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.y" }, { "Name": "Lines[].BoundingBox.Center", "DisplayName": "Lines[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center" }, { "Name": "Lines[].BoundingBox.Center.X", "DisplayName": "Lines[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.x" }, { "Name": "Lines[].BoundingBox.Center.Y", "DisplayName": "Lines[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.y" }, { "Name": "Lines[].Position", "DisplayName": "Lines[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.position", "EnumDisplayNames": null, "StableId": "lines.position" }, { "Name": "Words.Count", "DisplayName": "Words / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "words.count", "EnumDisplayNames": null, "StableId": "words.count" }, { "Name": "Words[].Text", "DisplayName": "Words[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.text", "EnumDisplayNames": null, "StableId": "words.text" }, { "Name": "Words[].Confidence", "DisplayName": "Words[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.confidence", "EnumDisplayNames": null, "StableId": "words.confidence" }, { "Name": "Words[].BoundingBox", "DisplayName": "Words[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box", "EnumDisplayNames": null, "StableId": "words.bounding_box" }, { "Name": "Words[].BoundingBox.X", "DisplayName": "Words[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.x" }, { "Name": "Words[].BoundingBox.Y", "DisplayName": "Words[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.y" }, { "Name": "Words[].BoundingBox.Width", "DisplayName": "Words[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.width", "EnumDisplayNames": null, "StableId": "words.bounding_box.width" }, { "Name": "Words[].BoundingBox.Height", "DisplayName": "Words[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.height", "EnumDisplayNames": null, "StableId": "words.bounding_box.height" }, { "Name": "Words[].BoundingBox.Left", "DisplayName": "Words[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.left", "EnumDisplayNames": null, "StableId": "words.bounding_box.left" }, { "Name": "Words[].BoundingBox.Top", "DisplayName": "Words[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.top", "EnumDisplayNames": null, "StableId": "words.bounding_box.top" }, { "Name": "Words[].BoundingBox.Right", "DisplayName": "Words[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.right", "EnumDisplayNames": null, "StableId": "words.bounding_box.right" }, { "Name": "Words[].BoundingBox.Bottom", "DisplayName": "Words[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "words.bounding_box.bottom" }, { "Name": "Words[].BoundingBox.IsEmpty", "DisplayName": "Words[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "words.bounding_box.is_empty" }, { "Name": "Words[].BoundingBox.Location", "DisplayName": "Words[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location", "EnumDisplayNames": null, "StableId": "words.bounding_box.location" }, { "Name": "Words[].BoundingBox.Location.X", "DisplayName": "Words[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.x" }, { "Name": "Words[].BoundingBox.Location.Y", "DisplayName": "Words[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.y" }, { "Name": "Words[].BoundingBox.Center", "DisplayName": "Words[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center", "EnumDisplayNames": null, "StableId": "words.bounding_box.center" }, { "Name": "Words[].BoundingBox.Center.X", "DisplayName": "Words[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.x" }, { "Name": "Words[].BoundingBox.Center.Y", "DisplayName": "Words[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.y" }, { "Name": "Words[].Position", "DisplayName": "Words[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.position", "EnumDisplayNames": null, "StableId": "words.position" }, { "Name": "Words[].LinePosition", "DisplayName": "Words[] / Line Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.line_position", "EnumDisplayNames": null, "StableId": "words.line_position" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "MinimumConfidence", "DisplayName": "Minimum Confidence", "Property": { "Name": "MinimumConfidence", "DisplayName": "Minimum Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "minimum_confidence", "EnumDisplayNames": null, "StableId": "minimum_confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "LineCount", "DisplayName": "Line Count", "Property": { "Name": "LineCount", "DisplayName": "Line Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "line_count", "EnumDisplayNames": null, "StableId": "line_count" }, "Children": [] }, { "Segment": "WordCount", "DisplayName": "Word Count", "Property": { "Name": "WordCount", "DisplayName": "Word Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "word_count", "EnumDisplayNames": null, "StableId": "word_count" }, "Children": [] }, { "Segment": "Lines", "DisplayName": "Lines", "Property": null, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Lines.Count", "DisplayName": "Lines / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "lines.count", "EnumDisplayNames": null, "StableId": "lines.count" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Lines[].Text", "DisplayName": "Lines[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.text", "EnumDisplayNames": null, "StableId": "lines.text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Lines[].Confidence", "DisplayName": "Lines[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.confidence", "EnumDisplayNames": null, "StableId": "lines.confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "Lines[].BoundingBox", "DisplayName": "Lines[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box", "EnumDisplayNames": null, "StableId": "lines.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.X", "DisplayName": "Lines[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Y", "DisplayName": "Lines[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Lines[].BoundingBox.Width", "DisplayName": "Lines[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.width", "EnumDisplayNames": null, "StableId": "lines.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Lines[].BoundingBox.Height", "DisplayName": "Lines[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.height", "EnumDisplayNames": null, "StableId": "lines.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Lines[].BoundingBox.Left", "DisplayName": "Lines[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.left", "EnumDisplayNames": null, "StableId": "lines.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Lines[].BoundingBox.Top", "DisplayName": "Lines[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.top", "EnumDisplayNames": null, "StableId": "lines.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Lines[].BoundingBox.Right", "DisplayName": "Lines[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.right", "EnumDisplayNames": null, "StableId": "lines.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Lines[].BoundingBox.Bottom", "DisplayName": "Lines[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "lines.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Lines[].BoundingBox.IsEmpty", "DisplayName": "Lines[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "lines.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Lines[].BoundingBox.Location", "DisplayName": "Lines[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.Location.X", "DisplayName": "Lines[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Location.Y", "DisplayName": "Lines[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Lines[].BoundingBox.Center", "DisplayName": "Lines[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.Center.X", "DisplayName": "Lines[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Center.Y", "DisplayName": "Lines[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Position", "DisplayName": "Position", "Property": { "Name": "Lines[].Position", "DisplayName": "Lines[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.position", "EnumDisplayNames": null, "StableId": "lines.position" }, "Children": [] } ] }, { "Segment": "Words", "DisplayName": "Words", "Property": null, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Words.Count", "DisplayName": "Words / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "words.count", "EnumDisplayNames": null, "StableId": "words.count" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Words[].Text", "DisplayName": "Words[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.text", "EnumDisplayNames": null, "StableId": "words.text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Words[].Confidence", "DisplayName": "Words[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.confidence", "EnumDisplayNames": null, "StableId": "words.confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "Words[].BoundingBox", "DisplayName": "Words[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box", "EnumDisplayNames": null, "StableId": "words.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.X", "DisplayName": "Words[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Y", "DisplayName": "Words[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Words[].BoundingBox.Width", "DisplayName": "Words[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.width", "EnumDisplayNames": null, "StableId": "words.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Words[].BoundingBox.Height", "DisplayName": "Words[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.height", "EnumDisplayNames": null, "StableId": "words.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Words[].BoundingBox.Left", "DisplayName": "Words[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.left", "EnumDisplayNames": null, "StableId": "words.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Words[].BoundingBox.Top", "DisplayName": "Words[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.top", "EnumDisplayNames": null, "StableId": "words.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Words[].BoundingBox.Right", "DisplayName": "Words[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.right", "EnumDisplayNames": null, "StableId": "words.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Words[].BoundingBox.Bottom", "DisplayName": "Words[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "words.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Words[].BoundingBox.IsEmpty", "DisplayName": "Words[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "words.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Words[].BoundingBox.Location", "DisplayName": "Words[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location", "EnumDisplayNames": null, "StableId": "words.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.Location.X", "DisplayName": "Words[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Location.Y", "DisplayName": "Words[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Words[].BoundingBox.Center", "DisplayName": "Words[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center", "EnumDisplayNames": null, "StableId": "words.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.Center.X", "DisplayName": "Words[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Center.Y", "DisplayName": "Words[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Position", "DisplayName": "Position", "Property": { "Name": "Words[].Position", "DisplayName": "Words[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.position", "EnumDisplayNames": null, "StableId": "words.position" }, "Children": [] }, { "Segment": "LinePosition", "DisplayName": "Line Position", "Property": { "Name": "Words[].LinePosition", "DisplayName": "Words[] / Line Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.line_position", "EnumDisplayNames": null, "StableId": "words.line_position" }, "Children": [] } ] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "ocr", "settings": { "image_source": { "provider_id": "", "source_id": "" }, "languages": "deu+eng", "page_layout": "Automatic", "roi": { "x": 0, "y": 0, "width": 0, "height": 0 }, "enable_roi": false, "dynamic_roi_source": { "provider_id": "", "source_id": "" } }, "id": "4bfa512d-7ade-7be2-0978-97fc17f2f70d", "inputs": {}, "is_enabled": true } ``` ## Steps: Punkte vergleichen ID: point_comparison Website: /doku/steps/point_comparison/ Abbildung: [Detailansicht: Punkte vergleichen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-point-comparison.detail.png) 1. Modus: Offset vergleicht Punkte mit einer Referenz und erlaubten X-/Y-Abweichungen. Expression wertet die konfigurierten Achsenbedingungen aus. Nur die Einstellungen des gewählten Modus sind aktiv. 2. Erforderliche Treffer: Legt fest, ob alle geprüften Punkte/Bedingungen oder wenigstens einer/eine die Prüfung bestehen müssen. 3. ZU PRÜFENDE PUNKTE: Füge die zu prüfenden Punkte hinzu. Wähle pro Eintrag eine manuelle X-/Y-Koordinate oder die kompatible Punktquelle eines vorherigen Steps. Die Auswahl bestimmt, welche Unterfelder erscheinen. 4. Referenzpunkt: 5. Versatz X (px): Erlaubte horizontale Abweichung vom Referenzpunkt in Pixeln. Mit 10 besteht ein Punkt die X-Prüfung, wenn seine X-Koordinate höchstens 10 px von der Referenz abweicht. 6. Versatz Y (px): Erlaubte vertikale Abweichung vom Referenzpunkt in Pixeln. Mit 10 besteht ein Punkt die Y-Prüfung, wenn seine Y-Koordinate höchstens 10 px von der Referenz abweicht. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Prüfe, ob eine Erkennung in X höchstens zehn Pixel vom Referenzpunkt abweicht, bevor ein nachfolgender Step ausgeführt wird. ### field.combine_mode Verknüpft Achsenbedingungen mit And (UND) oder Or (ODER). ### field.combine_mode.option.And Bedingungen mit logischem UND verknüpfen. ### field.combine_mode.option.Or Bedingungen mit logischem ODER verknüpfen. ### field.expressions Liste von Achsenbedingungen. Jede Bedingung beschreibt Achse, Operator und Vergleichsausdruck. ### field.match_requirement Legt fest, ob alle geprüften Punkte/Bedingungen oder wenigstens einer/eine die Prüfung bestehen müssen. ### field.match_requirement.option.All Alle betrachteten Bedingungen beziehungsweise Punkte müssen passen. ### field.match_requirement.option.Any Mindestens eine betrachtete Bedingung beziehungsweise ein Punkt muss passen. ### field.mode Offset vergleicht Punkte mit einer Referenz und erlaubten X-/Y-Abweichungen. Expression wertet die konfigurierten Achsenbedingungen aus. Nur die Einstellungen des gewählten Modus sind aktiv. ### field.mode.option.Expression Punkte anhand expliziter Achsenbedingungen vergleichen. ### field.mode.option.Offset Punkte anhand einer Referenzposition und erlaubter Versätze vergleichen. ### field.offset_x Erlaubte horizontale Abweichung vom Referenzpunkt in Pixeln. Mit 10 besteht ein Punkt die X-Prüfung, wenn seine X-Koordinate höchstens 10 px von der Referenz abweicht. ### field.offset_y Erlaubte vertikale Abweichung vom Referenzpunkt in Pixeln. Mit 10 besteht ein Punkt die Y-Prüfung, wenn seine Y-Koordinate höchstens 10 px von der Referenz abweicht. ### field.points Füge die zu prüfenden Punkte hinzu. Wähle pro Eintrag eine manuelle X-/Y-Koordinate oder die kompatible Punktquelle eines vorherigen Steps. Die Auswahl bestimmt, welche Unterfelder erscheinen. ### field.reference_points_source Typisierte Punktquelle als Referenz für den Punktvergleich. ### field.reference_source Manual verwendet die direkt angegebenen Referenzkoordinaten; JobResult verwendet reference_points_source. ### field.reference_source.option.JobResult Verwendet einen kompatiblen Ergebniswert eines Job-Steps. ### field.reference_source.option.Manual Verwendet die manuell angegebenen Koordinaten. ### field.reference_x Horizontale Referenzkoordinate für den Offsetvergleich in Pixeln. ### field.reference_y Vertikale Referenzkoordinate für den Offsetvergleich in Pixeln. ### input.points Punkt-/Erkennungsergebnis. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Vergleiche eine oder mehrere Punktquellen entweder mit einem Referenzpunkt und erlaubten Versätzen oder mit Achsenbedingungen. „Alle“ und „Mindestens eine“ bestimmen, wie mehrere Prüfungen zusammengefasst werden. Der Vergleich erzeugt ein Ergebnis; er bewegt die Maus nicht. ### result.match_count Anzahl passender Prozesse oder Merkmalszuordnungen im konkreten Ergebnis; der Ergebnis-Typ bestimmt, was gezählt wird. Einzelwert dieses Ergebnisses. ### result.matches Einzelne OCR-/Punktvergleichstreffer mit ihren Detailwerten. Der Ergebnis-Typ bestimmt die Elementstruktur. Einzelwert dieses Ergebnisses. ### result.total_count Gesamtzahl der im konkreten Abfrageergebnis gelieferten Einträge. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.expression_settings Einstellungen für den Punktvergleich mittels Achsenbedingungen und deren Verknüpfung. ### schema.settings.expression_settings.combine_mode Verknüpft Achsenbedingungen mit And (UND) oder Or (ODER). ### schema.settings.expression_settings.combine_mode.option.And Bedingungen mit logischem UND verknüpfen. ### schema.settings.expression_settings.combine_mode.option.Or Bedingungen mit logischem ODER verknüpfen. ### schema.settings.expression_settings.expressions Liste von Achsenbedingungen. Jede Bedingung beschreibt Achse, Operator und Vergleichsausdruck. ### schema.settings.expression_settings.expressions.axis Zu prüfende Koordinatenachse, etwa X oder Y. Die Bedingung bezieht sich auf diese Komponente des Punktes. ### schema.settings.expression_settings.expressions.operator Vergleichsoperator. Wahrheits-/Leerheitsprüfungen benötigen keinen zusätzlichen Vergleichstext; andere Operatoren verlangen kompatible Werte. ### schema.settings.expression_settings.expressions.operator.option.Equal Prüft die Achsenbedingung auf Gleichheit. ### schema.settings.expression_settings.expressions.operator.option.GreaterThan Linker Wert muss größer sein als der rechte Vergleichswert. ### schema.settings.expression_settings.expressions.operator.option.GreaterThanOrEqual Linker Wert muss größer oder gleich dem Vergleichswert sein. ### schema.settings.expression_settings.expressions.operator.option.LessThan Linker Wert muss kleiner sein als der rechte Vergleichswert. ### schema.settings.expression_settings.expressions.operator.option.LessThanOrEqual Linker Wert muss kleiner oder gleich dem Vergleichswert sein. ### schema.settings.expression_settings.expressions.operator.option.NotEqual Prüft die Achsenbedingung auf Ungleichheit. ### schema.settings.expression_settings.expressions.value Gespeicherter Literal- oder Vergleichswert. Sein JSON-Typ muss zum angegebenen value_kind und zur Kardinalität passen; Zahlen und Booleans nicht versehentlich als Text speichern. ### schema.settings.match_requirement Legt fest, ob alle geprüften Punkte/Bedingungen oder wenigstens einer/eine die Prüfung bestehen müssen. ### schema.settings.match_requirement.option.All Alle betrachteten Bedingungen beziehungsweise Punkte müssen passen. ### schema.settings.match_requirement.option.Any Mindestens eine betrachtete Bedingung beziehungsweise ein Punkt muss passen. ### schema.settings.mode Offset vergleicht Punkte mit einer Referenz und erlaubten X-/Y-Abweichungen. Expression wertet die konfigurierten Achsenbedingungen aus. Nur die Einstellungen des gewählten Modus sind aktiv. ### schema.settings.mode.option.Expression Punkte anhand expliziter Achsenbedingungen vergleichen. ### schema.settings.mode.option.Offset Punkte anhand einer Referenzposition und erlaubter Versätze vergleichen. ### schema.settings.offset_settings Einstellungen für den Punktvergleich mit Referenzpunkt und erlaubten Abweichungen. ### schema.settings.offset_settings.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.offset_settings.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.offset_settings.reference_points_source Typisierte Punktquelle als Referenz für den Punktvergleich. ### schema.settings.offset_settings.reference_points_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.offset_settings.reference_points_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.offset_settings.reference_points_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.offset_settings.reference_points_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.offset_settings.reference_points_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.offset_settings.reference_points_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.offset_settings.reference_points_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.offset_settings.reference_points_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.offset_settings.reference_points_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.offset_settings.reference_source Manual verwendet die direkt angegebenen Referenzkoordinaten; JobResult verwendet reference_points_source. ### schema.settings.offset_settings.reference_source.option.JobResult Verwendet einen kompatiblen Ergebniswert eines Job-Steps. ### schema.settings.offset_settings.reference_source.option.Manual Verwendet die manuell angegebenen Koordinaten. ### schema.settings.offset_settings.reference_x Horizontale Referenzkoordinate für den Offsetvergleich in Pixeln. ### schema.settings.offset_settings.reference_y Vertikale Referenzkoordinate für den Offsetvergleich in Pixeln. ### schema.settings.points Füge die zu prüfenden Punkte hinzu. Wähle pro Eintrag eine manuelle X-/Y-Koordinate oder die kompatible Punktquelle eines vorherigen Steps. Die Auswahl bestimmt, welche Unterfelder erscheinen. ### schema.settings.points.manual_x Direkt eingetragene horizontale Punktkoordinate in Pixeln. ### schema.settings.points.manual_y Direkt eingetragene vertikale Punktkoordinate in Pixeln. ### schema.settings.points.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### schema.settings.points.points_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.points.points_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.points.points_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.points.points_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.points.points_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.points.points_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.points.points_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.points.points_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.points.points_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.points.source Auswahl zwischen einem direkt angegebenen Wert und einem referenzierten Job-Ergebnis, soweit dieser Konfigurationstyp beide Varianten anbietet. ### schema.settings.points.source.option.JobResult Verwendet einen kompatiblen Ergebniswert eines Job-Steps. ### schema.settings.points.source.option.Manual Verwendet die manuell angegebenen Koordinaten. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "point_comparison", "name": "Punkte vergleichen", "description": "Vergleicht Punkte mit einem Referenzpunkt oder Achsenbedingungen.", "category": "BildAuswerten", "uiFieldIds": [ "mode", "match_requirement", "points", "reference_source", "reference_x", "reference_y", "reference_points_source", "offset_x", "offset_y", "combine_mode", "expressions" ], "fields": [ { "id": "mode", "name": "Modus", "descriptor": { "Id": "mode", "LabelKey": "Ui.Step.Settings.Mode", "ValueKind": "Enum", "Required": true, "DefaultValue": "Offset", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Offset", "Expression" ] }, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": [ { "Value": "Offset", "LabelKey": "Ui.Step.Settings.OffsetTolerance", "DisplayName": null }, { "Value": "Expression", "LabelKey": "Ui.Step.Settings.Expression", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "match_requirement", "name": "Erforderliche Treffer", "descriptor": { "Id": "match_requirement", "LabelKey": "Ui.Step.Settings.RequiredMatches", "ValueKind": "Enum", "Required": true, "DefaultValue": "All", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "All", "Any" ] }, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": [ { "Value": "All", "LabelKey": "Ui.Step.Settings.AllAND", "DisplayName": null }, { "Value": "Any", "LabelKey": "Ui.Step.Settings.AtLeastOneOR", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "points", "name": "ZU PRÜFENDE PUNKTE", "descriptor": { "Id": "points", "LabelKey": "Ui.Step.Settings.PointsToCheck", "ValueKind": "Collection", "Required": true, "DefaultValue": [ { "source": "Manual", "manual_x": 0, "manual_y": 0, "points_source": null } ], "DescriptionKey": null, "EditorHint": "point-entry-list", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": "points", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reference_source", "name": "Referenzquelle", "descriptor": { "Id": "reference_source", "LabelKey": "Ui.Step.Settings.ReferenceSource", "ValueKind": "Enum", "Required": true, "DefaultValue": "Manual", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Manual", "JobResult" ] }, "Width": "Full", "Advanced": false, "Order": 3, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": [ { "Value": "Manual", "LabelKey": "Ui.Step.Settings.EnterManually", "DisplayName": null }, { "Value": "JobResult", "LabelKey": "Ui.Step.Settings.FromDetectionResult", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reference_x", "name": "X", "descriptor": { "Id": "reference_x", "LabelKey": "Ui.Step.Settings.X", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 4, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reference_y", "name": "Y", "descriptor": { "Id": "reference_y", "LabelKey": "Ui.Step.Settings.Y", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 5, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reference_points_source", "name": "Punktquelle", "descriptor": { "Id": "reference_points_source", "LabelKey": "Ui.Step.Settings.PointSource", "ValueKind": "ResultBinding", "Required": false, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 6, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": null, "InputContractId": "points", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_x", "name": "Versatz X (px)", "descriptor": { "Id": "offset_x", "LabelKey": "Ui.Step.Settings.XOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 10, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 7, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_y", "name": "Versatz Y (px)", "descriptor": { "Id": "offset_y", "LabelKey": "Ui.Step.Settings.YOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 10, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 8, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Offset", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "combine_mode", "name": "Verknüpfung", "descriptor": { "Id": "combine_mode", "LabelKey": "Ui.Step.Settings.CombineWith", "ValueKind": "Enum", "Required": true, "DefaultValue": "And", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "And", "Or" ] }, "Width": "Full", "Advanced": false, "Order": 9, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Expression", "AnyOfValues": null }, "Options": [ { "Value": "And", "LabelKey": "Ui.Step.Settings.ANDAll", "DisplayName": null }, { "Value": "Or", "LabelKey": "Ui.Step.Settings.ORAny", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "expressions", "name": "Achsenbedingungen", "descriptor": { "Id": "expressions", "LabelKey": "Ui.Step.Settings.AxisExpressions", "ValueKind": "Collection", "Required": true, "DefaultValue": [ { "axis": "X", "operator": "LessThan", "value": 0 } ], "DescriptionKey": null, "EditorHint": "axis-expression-list", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 10, "VisibleWhen": { "FieldId": "mode", "EqualsValue": "Expression", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "PointComparisonSettings", "options": [], "defaultValue": null }, { "id": "settings.expression_settings", "name": "expression_settings", "type": "ExpressionComparisonSettings", "options": [], "defaultValue": null }, { "id": "settings.expression_settings.combine_mode", "name": "combine_mode", "type": "ExpressionCombineMode", "options": [ "And", "Or" ], "defaultValue": "And" }, { "id": "settings.expression_settings.expressions", "name": "expressions", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.expression_settings.expressions.axis", "name": "axis", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.expression_settings.expressions.operator", "name": "operator", "type": "PointAxisOperator", "options": [ "LessThan", "LessThanOrEqual", "GreaterThan", "GreaterThanOrEqual", "Equal", "NotEqual" ], "defaultValue": null }, { "id": "settings.expression_settings.expressions.value", "name": "value", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.match_requirement", "name": "match_requirement", "type": "PointMatchRequirement", "options": [ "All", "Any" ], "defaultValue": "All" }, { "id": "settings.mode", "name": "mode", "type": "PointComparisonMode", "options": [ "Offset", "Expression" ], "defaultValue": "Offset" }, { "id": "settings.offset_settings", "name": "offset_settings", "type": "OffsetComparisonSettings", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": 10 }, { "id": "settings.offset_settings.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": 10 }, { "id": "settings.offset_settings.reference_points_source", "name": "reference_points_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.offset_settings.reference_points_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_points_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.offset_settings.reference_points_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.offset_settings.reference_source", "name": "reference_source", "type": "PointEntrySource", "options": [ "Manual", "JobResult" ], "defaultValue": "Manual" }, { "id": "settings.offset_settings.reference_x", "name": "reference_x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.offset_settings.reference_y", "name": "reference_y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.points", "name": "points", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.points.manual_x", "name": "manual_x", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.points.manual_y", "name": "manual_y", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.points.points_source", "name": "points_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.points_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points.source", "name": "source", "type": "PointEntrySource", "options": [ "Manual", "JobResult" ], "defaultValue": null } ], "inputs": [ { "Key": "points", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "PointComparisonResult", "DisplayName": "PointComparisonResult", "Properties": [ { "Name": "Matches", "DisplayName": "Matches", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "matches", "EnumDisplayNames": null, "StableId": "matches" }, { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, { "Name": "TotalCount", "DisplayName": "Total Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "total_count", "EnumDisplayNames": null, "StableId": "total_count" } ], "PropertyTree": [ { "Segment": "Matches", "DisplayName": "Matches", "Property": { "Name": "Matches", "DisplayName": "Matches", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "matches", "EnumDisplayNames": null, "StableId": "matches" }, "Children": [] }, { "Segment": "MatchCount", "DisplayName": "Match Count", "Property": { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, "Children": [] }, { "Segment": "TotalCount", "DisplayName": "Total Count", "Property": { "Name": "TotalCount", "DisplayName": "Total Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "total_count", "EnumDisplayNames": null, "StableId": "total_count" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "point_comparison", "settings": { "mode": "Offset", "match_requirement": "All", "points": [ { "source": "Manual", "manual_x": 0, "manual_y": 0, "points_source": { "provider_id": "", "source_id": "" } } ], "offset_settings": { "reference_source": "Manual", "reference_x": 0, "reference_y": 0, "reference_points_source": { "provider_id": "", "source_id": "" }, "offset_x": 10, "offset_y": 10 }, "expression_settings": { "expressions": [ { "axis": "X", "operator": "LessThan", "value": 0 } ], "combine_mode": "And" } }, "id": "e82b1d75-e0de-5ff6-a44a-a5c26f839b7f", "inputs": {}, "is_enabled": true } ``` ## Steps: Bewegung vorhersagen ID: predict_movement Website: /doku/steps/predict_movement/ Abbildung: [Detailansicht: Bewegung vorhersagen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-predict-movement.detail.png) 1. Punktquelle: Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. 2. Vorhersagemodell: Modell der Zielvorhersage: automatische Auswahl oder das ausdrücklich gewählte lineare, Beschleunigungs- beziehungsweise Kalman-Modell. 3. Mindestkonfidenz (%): Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. 4. Mindestanzahl Messwerte: Mindestzahl verwertbarer Messpunkte, bevor eine Vorhersage möglich ist. 5. Spur zurücksetzen ab (px): Pixelabstand, ab dem ein Sprung die bisherige Bewegungsspur zurücksetzt. 6. Maximales Alter der Messwerte (ms): Maximales Alter einer Messung in Millisekunden gegen die aktuelle Uhr. Wiederholtes Lesen desselben eingefrorenen Frames verjüngt sie nicht. 7. Maximale Vorhersagedistanz (px): Maximal zulässige Entfernung der Vorhersage vom gemessenen Punkt in Pixeln. 8. Maximaler Modellfehler (px): Maximal akzeptierter Modellfehler in Pixeln. Eine unzuverlässige Anpassung wird nicht als sichere Vorhersage weitergereicht. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example In einem wiederholten Job mehrere zeitlich frische Erkennungspunkte sammeln und 50 ms in die Zukunft vorhersagen; is_predicted prüfen. ### field.max_fit_error Maximal akzeptierter Modellfehler in Pixeln. Eine unzuverlässige Anpassung wird nicht als sichere Vorhersage weitergereicht. ### field.max_prediction_distance Maximal zulässige Entfernung der Vorhersage vom gemessenen Punkt in Pixeln. ### field.max_sample_age_ms Maximales Alter einer Messung in Millisekunden gegen die aktuelle Uhr. Wiederholtes Lesen desselben eingefrorenen Frames verjüngt sie nicht. ### field.min_samples Mindestzahl verwertbarer Messpunkte, bevor eine Vorhersage möglich ist. ### field.minimum_confidence Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. ### field.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### field.prediction_model Modell der Zielvorhersage: automatische Auswahl oder das ausdrücklich gewählte lineare, Beschleunigungs- beziehungsweise Kalman-Modell. ### field.prediction_model.option.Acceleration Bewegungsmodell mit Beschleunigung. ### field.prediction_model.option.Automatic Überlässt die Auswahl des geeigneten Vorhersagemodells dem Backend. ### field.prediction_model.option.Kalman Kalman-Modell für die Bewegungsschätzung. ### field.prediction_model.option.Linear Lineares Bewegungsmodell ohne ausdrücklich modellierte Beschleunigung. ### field.prediction_ms Zeitlicher Vorhersagehorizont in Millisekunden. Größere Horizonte erhöhen typischerweise die Unsicherheit. ### field.reset_distance_threshold Pixelabstand, ab dem ein Sprung die bisherige Bewegungsspur zurücksetzt. ### field.time_basis Zeitgrundlage der Bewegungsschätzung. Prüfe die angebotene Quelle und deren Empfangs-/Frame-Zeitstempel statt ungeprüft die Step-Reihenfolge als Messzeit anzunehmen. ### input.points Punkt-/Erkennungsergebnis. Fehlende erforderliche Werte führen zum Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Sammle Erkennungspunkte und schätze eine zukünftige Position. Mindestkonfidenz, Probenzahl, Alter, Modellfehler und Sprunggrenzen begrenzen die verwendete Spur. Prüfe is_predicted vor der Weiterverwendung; eingefrorene Frames altern gegen die aktuelle Uhr und sind keine neuen Messungen. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.is_predicted Ob ein Vorhersagemodell genügend geeignete Messwerte für eine gültige Prognose hatte. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.predicted_for_utc UTC-Zielzeitpunkt, für den die vorhergesagte Position gilt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.max_fit_error Maximal akzeptierter Modellfehler in Pixeln. Eine unzuverlässige Anpassung wird nicht als sichere Vorhersage weitergereicht. ### schema.settings.max_prediction_distance Maximal zulässige Entfernung der Vorhersage vom gemessenen Punkt in Pixeln. ### schema.settings.max_sample_age_ms Maximales Alter einer Messung in Millisekunden gegen die aktuelle Uhr. Wiederholtes Lesen desselben eingefrorenen Frames verjüngt sie nicht. ### schema.settings.min_samples Mindestzahl verwertbarer Messpunkte, bevor eine Vorhersage möglich ist. ### schema.settings.minimum_confidence Mindestkonfidenz für die Übernahme eines Treffers in ROI/Vorhersage. Erkennungsergebnisse verwenden 0 bis 1; der Editor kann denselben Wert als Prozent darstellen. ### schema.settings.points_source Kompatible Punkt-/Erkennungsquelle. Der betreffende Eingabevertrag bestimmt, ob der erste oder alle Listeneinträge verarbeitet werden. ### schema.settings.points_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.points_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.points_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.points_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.points_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.points_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.points_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.points_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.points_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.prediction_model Modell der Zielvorhersage: automatische Auswahl oder das ausdrücklich gewählte lineare, Beschleunigungs- beziehungsweise Kalman-Modell. ### schema.settings.prediction_ms Zeitlicher Vorhersagehorizont in Millisekunden. Größere Horizonte erhöhen typischerweise die Unsicherheit. ### schema.settings.reset_distance_threshold Pixelabstand, ab dem ein Sprung die bisherige Bewegungsspur zurücksetzt. ### schema.settings.time_basis Zeitgrundlage der Bewegungsschätzung. Prüfe die angebotene Quelle und deren Empfangs-/Frame-Zeitstempel statt ungeprüft die Step-Reihenfolge als Messzeit anzunehmen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "predict_movement", "name": "Bewegung vorhersagen", "description": "Berechnet aus vorherigen Erkennungspunkten eine vorhergesagte Zielposition.", "category": "BildAuswerten", "uiFieldIds": [ "points_source", "prediction_model", "minimum_confidence", "min_samples", "reset_distance_threshold", "max_sample_age_ms", "max_prediction_distance", "max_fit_error" ], "fields": [ { "id": "points_source", "name": "Punktquelle", "descriptor": { "Id": "points_source", "LabelKey": "Ui.Step.Settings.PointSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "points", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "prediction_model", "name": "Vorhersagemodell", "descriptor": { "Id": "prediction_model", "LabelKey": "Ui.Step.Settings.PredictionModel", "ValueKind": "Enum", "Required": true, "DefaultValue": "Automatic", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Automatic", "Linear", "Acceleration", "Kalman" ] }, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": [ { "Value": "Automatic", "LabelKey": "Enum.PredictionModel.Automatic", "DisplayName": null }, { "Value": "Linear", "LabelKey": "Enum.PredictionModel.Linear", "DisplayName": null }, { "Value": "Acceleration", "LabelKey": "Enum.PredictionModel.Acceleration", "DisplayName": null }, { "Value": "Kalman", "LabelKey": "Enum.PredictionModel.Kalman", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "minimum_confidence", "name": "Mindestkonfidenz (%)", "descriptor": { "Id": "minimum_confidence", "LabelKey": "Ui.Step.Settings.MinimumConfidencePercent", "ValueKind": "Number", "Required": false, "DefaultValue": 0.15, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "min_samples", "name": "Mindestanzahl Messwerte", "descriptor": { "Id": "min_samples", "LabelKey": "Ui.Step.Settings.MinValues", "ValueKind": "Integer", "Required": false, "DefaultValue": 3, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 2, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "reset_distance_threshold", "name": "Spur zurücksetzen ab (px)", "descriptor": { "Id": "reset_distance_threshold", "LabelKey": "Ui.Step.Settings.ResetAtDistance", "ValueKind": "Number", "Required": false, "DefaultValue": 250, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "max_sample_age_ms", "name": "Maximales Alter der Messwerte (ms)", "descriptor": { "Id": "max_sample_age_ms", "LabelKey": "Ui.Step.Settings.MaxAgeMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 500, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "max_prediction_distance", "name": "Maximale Vorhersagedistanz (px)", "descriptor": { "Id": "max_prediction_distance", "LabelKey": "Ui.Step.Settings.MaxPredictionDistance", "ValueKind": "Number", "Required": false, "DefaultValue": 500, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 6, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "max_fit_error", "name": "Maximaler Modellfehler (px)", "descriptor": { "Id": "max_fit_error", "LabelKey": "Ui.Step.Settings.MaxFitError", "ValueKind": "Number", "Required": false, "DefaultValue": 75, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 7, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "prediction_ms", "name": "Vorhersage (ms)", "descriptor": { "Id": "prediction_ms", "LabelKey": "Ui.Step.Settings.PredictionMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 8, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "time_basis", "name": "Zeitbasis", "descriptor": { "Id": "time_basis", "LabelKey": "Ui.Step.Settings.TimeBasis", "ValueKind": "Text", "Required": false, "DefaultValue": "Execution", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 9, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "PredictMovementSettings", "options": [], "defaultValue": null }, { "id": "settings.max_fit_error", "name": "max_fit_error", "type": "Double", "options": [], "defaultValue": 75 }, { "id": "settings.max_prediction_distance", "name": "max_prediction_distance", "type": "Double", "options": [], "defaultValue": 500 }, { "id": "settings.max_sample_age_ms", "name": "max_sample_age_ms", "type": "Int32", "options": [], "defaultValue": 500 }, { "id": "settings.minimum_confidence", "name": "minimum_confidence", "type": "Double", "options": [], "defaultValue": 0.15 }, { "id": "settings.min_samples", "name": "min_samples", "type": "Int32", "options": [], "defaultValue": 3 }, { "id": "settings.points_source", "name": "points_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.points_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.points_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.points_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.points_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.prediction_model", "name": "prediction_model", "type": "String", "options": [], "defaultValue": "Automatic" }, { "id": "settings.prediction_ms", "name": "prediction_ms", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.reset_distance_threshold", "name": "reset_distance_threshold", "type": "Double", "options": [], "defaultValue": 250 }, { "id": "settings.time_basis", "name": "time_basis", "type": "String", "options": [], "defaultValue": "Execution" } ], "inputs": [ { "Key": "points", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "PredictMovementResult", "DisplayName": "PredictMovementResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "IsPredicted", "DisplayName": "Is Predicted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_predicted", "EnumDisplayNames": null, "StableId": "is_predicted" }, { "Name": "PredictedForUtc", "DisplayName": "Predicted For Utc", "DataType": "DateTime", "Description": "DateTime, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "predicted_for_utc", "EnumDisplayNames": null, "StableId": "predicted_for_utc" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "IsPredicted", "DisplayName": "Is Predicted", "Property": { "Name": "IsPredicted", "DisplayName": "Is Predicted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_predicted", "EnumDisplayNames": null, "StableId": "is_predicted" }, "Children": [] }, { "Segment": "PredictedForUtc", "DisplayName": "Predicted For Utc", "Property": { "Name": "PredictedForUtc", "DisplayName": "Predicted For Utc", "DataType": "DateTime", "Description": "DateTime, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "predicted_for_utc", "EnumDisplayNames": null, "StableId": "predicted_for_utc" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "predict_movement", "settings": { "points_source": { "provider_id": "", "source_id": "" }, "min_samples": 3, "prediction_ms": 0, "reset_distance_threshold": 250, "max_sample_age_ms": 500, "prediction_model": "Automatic", "time_basis": "Execution", "max_prediction_distance": 500, "max_fit_error": 75, "minimum_confidence": 0.15 }, "id": "85d18ddf-cfef-1f36-8b83-b38783c5f34b", "inputs": {}, "is_enabled": true } ``` ## Steps: Bild speichern ID: save_image Website: /doku/steps/save_image/ Abbildung: [Detailansicht: Bild speichern. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-save-image.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Speicherpfad: Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. 3. Dateiname: Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. 4. Einblendungen: Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Eine Bildschirmaufnahme als PNG in C:\DesktopAutomation-Beispiele\Ausgabe speichern; den zurückgegebenen file_path für eine Folgeaktion verwenden. ### field.file_name Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### field.save_path Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. ### input.detections Einblendungsquellen mit Geometrie. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.text Text beziehungsweise darstellbarer Wert. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle ein Bild, Ausgabeordner und Dateiname. Optional zeichnest du Einblendungen in die gespeicherte Kopie. file_path und saved_at_utc beschreiben die Ausgabe; die Bildquelle selbst bleibt eine Laufzeitressource und wird nicht als Bitmap in die Jobdatei geschrieben. ### result.file_name Name der erzeugten Datei ohne zwingend den ganzen Verzeichnispfad. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.file_path Pfad der erzeugten Bild-/Videodatei auf dem ausführenden Rechner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.file_size_bytes Größe der gespeicherten Datei in Bytes. Einzelwert dieses Ergebnisses. ### result.format Ausgabeformat der Bild-/Videodatei. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.saved_at_utc UTC-Zeitpunkt der Speicherung/Finalisierung. Einzelwert dieses Ergebnisses. ### result.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.file_name Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### schema.settings.overlay.detection_results Liste referenzierter Erkennungsergebnisse für die Einblendung. ### schema.settings.overlay.detection_results.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.detection_results.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.detection_results.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.detection_results.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.detection_results.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.detection_results.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.detection_results.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.detection_results.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.detection_results.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay.text_results Liste referenzierter Text-/Anzeige-Werte für die Einblendung. ### schema.settings.overlay.text_results.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### schema.settings.overlay.text_results.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### schema.settings.overlay.text_results.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### schema.settings.overlay.text_results.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### schema.settings.overlay.text_results.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### schema.settings.overlay.text_results.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.settings.overlay.text_results.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### schema.settings.overlay.text_results.result Typisierte Ergebnisreferenz für den betreffenden Wert; Quelle und Ergebnis-ID auswählen und die Ausführungsreihenfolge beachten. ### schema.settings.overlay.text_results.result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.text_results.result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.text_results.result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.text_results.result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.text_results.result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.text_results.result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.text_results.result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.text_results.result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.text_results.result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.save_path Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "save_image", "name": "Bild speichern", "description": "Speichert die ausgewählte Bildquelle als Bilddatei.", "category": "AnzeigenSpeichern", "uiFieldIds": [ "image_source", "save_path", "file_name", "overlay" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "save_path", "name": "Speicherpfad", "descriptor": { "Id": "save_path", "LabelKey": "Ui.Step.Settings.SavePath", "ValueKind": "DirectoryPath", "Required": true, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "directory-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": { "SuggestedDirectory": "Pictures", "SuggestedSubfolder": "DesktopAutomation" }, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "file_name", "name": "Dateiname", "descriptor": { "Id": "file_name", "LabelKey": "Ui.Step.Settings.FileName", "ValueKind": "Text", "Required": true, "DefaultValue": "image.png", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "overlay", "name": "Einblendungen", "descriptor": { "Id": "overlay", "LabelKey": "Ui.Step.Settings.Overlays", "ValueKind": "Object", "Required": false, "DefaultValue": { "detection_results": [], "text_results": [] }, "DescriptionKey": null, "EditorHint": "visual-overlay", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": { "DetectionInputContractId": "detections", "TextInputContractId": "text", "SupportsDesktopPlacement": false }, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "SaveImageSettings", "options": [], "defaultValue": null }, { "id": "settings.file_name", "name": "file_name", "type": "String", "options": [], "defaultValue": "image.png" }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay", "name": "overlay", "type": "VisualOverlaySettings", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results", "name": "detection_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results", "name": "text_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.clear_on_job_end", "name": "clear_on_job_end", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.desktop_index", "name": "desktop_index", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.duration_ms", "name": "duration_ms", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_color", "name": "font_color", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_size", "name": "font_size", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.id", "name": "id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.opacity", "name": "opacity", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result", "name": "result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.save_path", "name": "save_path", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "detections", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Detection", "Cardinalities": [ "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "text", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Boolean", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Number", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "DateTime", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Color", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Enum", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Detection", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "SaveImageResult", "DisplayName": "SaveImageResult", "Properties": [ { "Name": "FilePath", "DisplayName": "File Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_path", "EnumDisplayNames": null, "StableId": "file_path" }, { "Name": "FileName", "DisplayName": "File Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_name", "EnumDisplayNames": null, "StableId": "file_name" }, { "Name": "Format", "DisplayName": "Format", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "format", "EnumDisplayNames": null, "StableId": "format" }, { "Name": "Width", "DisplayName": "Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "width", "EnumDisplayNames": null, "StableId": "width" }, { "Name": "Height", "DisplayName": "Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "height", "EnumDisplayNames": null, "StableId": "height" }, { "Name": "FileSizeBytes", "DisplayName": "File Size Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "file_size_bytes", "EnumDisplayNames": null, "StableId": "file_size_bytes" }, { "Name": "SavedAtUtc", "DisplayName": "Saved At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "saved_at_utc", "EnumDisplayNames": null, "StableId": "saved_at_utc" } ], "PropertyTree": [ { "Segment": "FilePath", "DisplayName": "File Path", "Property": { "Name": "FilePath", "DisplayName": "File Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_path", "EnumDisplayNames": null, "StableId": "file_path" }, "Children": [] }, { "Segment": "FileName", "DisplayName": "File Name", "Property": { "Name": "FileName", "DisplayName": "File Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_name", "EnumDisplayNames": null, "StableId": "file_name" }, "Children": [] }, { "Segment": "Format", "DisplayName": "Format", "Property": { "Name": "Format", "DisplayName": "Format", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "format", "EnumDisplayNames": null, "StableId": "format" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Width", "DisplayName": "Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "width", "EnumDisplayNames": null, "StableId": "width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Height", "DisplayName": "Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "height", "EnumDisplayNames": null, "StableId": "height" }, "Children": [] }, { "Segment": "FileSizeBytes", "DisplayName": "File Size Bytes", "Property": { "Name": "FileSizeBytes", "DisplayName": "File Size Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "file_size_bytes", "EnumDisplayNames": null, "StableId": "file_size_bytes" }, "Children": [] }, { "Segment": "SavedAtUtc", "DisplayName": "Saved At Utc", "Property": { "Name": "SavedAtUtc", "DisplayName": "Saved At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "saved_at_utc", "EnumDisplayNames": null, "StableId": "saved_at_utc" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "save_image", "settings": { "save_path": "", "file_name": "image.png", "image_source": { "provider_id": "", "source_id": "" }, "overlay": { "detection_results": [], "text_results": [] } }, "id": "469a3886-c8fa-1eba-0a8f-bbed4435a3cc", "inputs": {}, "is_enabled": true } ``` ## Steps: Skript ausführen ID: script_execution Website: /doku/steps/script_execution/ Abbildung: [Detailansicht: Skript ausführen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-script-execution.detail.png) 1. Skriptpfad: Pfad zur vorhandenen .ps1-, .py- oder Batch-Datei. Der entsprechende Interpreter muss auf dem Zielrechner verfügbar sein. 2. Auf Beendigung warten: true wartet an diesem Step auf das Ende des gestarteten Programms/Skripts. Ohne sofortiges Warten bleibt besessene Skriptarbeit bis zum Job-Ende zugeordnet. 3. Argumente: Argumentzeichenfolge für das Programm oder Skript. Passe Anführungszeichen an den Interpreter an; Argumente werden nicht als vollständiger Inhalt in den Verlauf übernommen. ### errors Ein nicht vorhandener Interpreter oder Skriptpfad, ein fehlerhafter Exit beziehungsweise ein fehlgeschlagener Hintergrundprozess kann den Job fehlschlagen lassen. Der Verlauf enthält Kontext und bereinigte Diagnose, nicht automatisch den vollständigen Skriptinhalt oder dessen Argumente. ### example Ein selbst erstelltes .ps1-Skript mit einem Testordner als Argument wählen und wait_for_exit aktivieren; den Verlauf auf Exit-Fehler prüfen. ### field.arguments Argumentzeichenfolge für das Programm oder Skript. Passe Anführungszeichen an den Interpreter an; Argumente werden nicht als vollständiger Inhalt in den Verlauf übernommen. ### field.script_path Pfad zur vorhandenen .ps1-, .py- oder Batch-Datei. Der entsprechende Interpreter muss auf dem Zielrechner verfügbar sein. ### field.wait_for_exit true wartet an diesem Step auf das Ende des gestarteten Programms/Skripts. Ohne sofortiges Warten bleibt besessene Skriptarbeit bis zum Job-Ende zugeordnet. ### purpose Wähle ein vorhandenes PowerShell-, Python- oder Batch-Skript und dessen Argumente. Mit Warten wird sein Ende vor dem nächsten Step abgewartet. Ohne Warten gehört der Hintergrundprozess weiterhin zum Job: Fehler werden dem Besitzer gemeldet und die Endphase beginnt erst nach dem Zusammenführen besessener Arbeit. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.arguments Argumentzeichenfolge für das Programm oder Skript. Passe Anführungszeichen an den Interpreter an; Argumente werden nicht als vollständiger Inhalt in den Verlauf übernommen. ### schema.settings.script_path Pfad zur vorhandenen .ps1-, .py- oder Batch-Datei. Der entsprechende Interpreter muss auf dem Zielrechner verfügbar sein. ### schema.settings.wait_for_exit true wartet an diesem Step auf das Ende des gestarteten Programms/Skripts. Ohne sofortiges Warten bleibt besessene Skriptarbeit bis zum Job-Ende zugeordnet. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "script_execution", "name": "Skript ausführen", "description": "Führt ein externes PowerShell-, Python- oder Batch-Skript aus.", "category": "ProgrammeFenster", "uiFieldIds": [ "script_path", "wait_for_exit", "arguments" ], "fields": [ { "id": "script_path", "name": "Skriptpfad", "descriptor": { "Id": "script_path", "LabelKey": "Ui.Step.Settings.ScriptPath", "ValueKind": "FilePath", "Required": true, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "file-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "wait_for_exit", "name": "Auf Beendigung warten", "descriptor": { "Id": "wait_for_exit", "LabelKey": "Ui.Step.Settings.WaitForCompletion", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "arguments", "name": "Argumente", "descriptor": { "Id": "arguments", "LabelKey": "Ui.Step.Settings.Arguments", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ScriptExecutionSettings", "options": [], "defaultValue": null }, { "id": "settings.arguments", "name": "arguments", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.script_path", "name": "script_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.wait_for_exit", "name": "wait_for_exit", "type": "Boolean", "options": [], "defaultValue": false } ], "inputs": [], "result": { "TypeName": "ScriptExecutionResult", "DisplayName": "ScriptExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "script_execution", "settings": { "script_path": "", "arguments": "", "wait_for_exit": false }, "id": "ed6670e1-efaa-085a-1445-700c4fc2d2bb", "inputs": {}, "is_enabled": true } ``` ## Steps: Bild anzeigen ID: show_image Website: /doku/steps/show_image/ Abbildung: [Detailansicht: Bild anzeigen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-show-image.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Fenstertitel: Name des Bild-Vorschaufensters. Wiederverwendung desselben Namens ermöglicht Aktualisierung derselben Vorschau. 3. Einblendungen: Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Das letzte Kamerabild im Fenster „Kamera-Vorschau“ anzeigen; derselbe Name aktualisiert die Vorschau im wiederholten Job. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### field.window_name Name des Bild-Vorschaufensters. Wiederverwendung desselben Namens ermöglicht Aktualisierung derselben Vorschau. ### input.detections Einblendungsquellen mit Geometrie. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.text Text beziehungsweise darstellbarer Wert. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle die Bildquelle für ein Vorschaufenster. Ein gleichbleibender Fenstername ermöglicht Aktualisierungen desselben Anzeigefensters. Einblendungen können Erkennungen und Text mit dem Bild kombinieren, ohne die Quelldatei zu verändern. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.detections_source Kompatible Erkennungs-, Rechteck- oder Punktquelle für die Einblendung. Der Eingabevertrag beschreibt die Verarbeitung mehrerer Werte. ### schema.settings.detections_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.detections_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.detections_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.detections_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.detections_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.detections_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.detections_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.detections_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.detections_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### schema.settings.overlay.detection_results Liste referenzierter Erkennungsergebnisse für die Einblendung. ### schema.settings.overlay.detection_results.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.detection_results.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.detection_results.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.detection_results.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.detection_results.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.detection_results.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.detection_results.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.detection_results.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.detection_results.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay.text_results Liste referenzierter Text-/Anzeige-Werte für die Einblendung. ### schema.settings.overlay.text_results.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### schema.settings.overlay.text_results.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### schema.settings.overlay.text_results.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### schema.settings.overlay.text_results.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### schema.settings.overlay.text_results.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### schema.settings.overlay.text_results.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.settings.overlay.text_results.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### schema.settings.overlay.text_results.result Typisierte Ergebnisreferenz für den betreffenden Wert; Quelle und Ergebnis-ID auswählen und die Ausführungsreihenfolge beachten. ### schema.settings.overlay.text_results.result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.text_results.result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.text_results.result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.text_results.result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.text_results.result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.text_results.result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.text_results.result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.text_results.result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.text_results.result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.window_name Name des Bild-Vorschaufensters. Wiederverwendung desselben Namens ermöglicht Aktualisierung derselben Vorschau. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "show_image", "name": "Bild anzeigen", "description": "Zeigt das aktuelle Bild in einem Vorschaufenster an.", "category": "AnzeigenSpeichern", "uiFieldIds": [ "image_source", "window_name", "overlay" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "window_name", "name": "Fenstertitel", "descriptor": { "Id": "window_name", "LabelKey": "Ui.Step.Settings.WindowName", "ValueKind": "Text", "Required": true, "DefaultValue": "MyWindow", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "overlay", "name": "Einblendungen", "descriptor": { "Id": "overlay", "LabelKey": "Ui.Step.Settings.Overlays", "ValueKind": "Object", "Required": false, "DefaultValue": { "detection_results": [], "text_results": [] }, "DescriptionKey": null, "EditorHint": "visual-overlay", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": { "DetectionInputContractId": "detections", "TextInputContractId": "text", "SupportsDesktopPlacement": false }, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ShowImageSettings", "options": [], "defaultValue": null }, { "id": "settings.detections_source", "name": "detections_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.detections_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.detections_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay", "name": "overlay", "type": "VisualOverlaySettings", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results", "name": "detection_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results", "name": "text_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.clear_on_job_end", "name": "clear_on_job_end", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.desktop_index", "name": "desktop_index", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.duration_ms", "name": "duration_ms", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_color", "name": "font_color", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_size", "name": "font_size", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.id", "name": "id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.opacity", "name": "opacity", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result", "name": "result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.window_name", "name": "window_name", "type": "String", "options": [], "defaultValue": "MyWindow" } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "detections", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Detection", "Cardinalities": [ "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "text", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Boolean", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Number", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "DateTime", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Color", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Enum", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Detection", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ShowImageResult", "DisplayName": "ShowImageResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "show_image", "settings": { "window_name": "MyWindow", "image_source": { "provider_id": "", "source_id": "" }, "detections_source": { "provider_id": "", "source_id": "" }, "overlay": { "detection_results": [], "text_results": [] } }, "id": "e8080526-e62e-f27f-fe43-49586d257e39", "inputs": {}, "is_enabled": true } ``` ## Steps: Auf Desktop anzeigen ID: show_on_desktop Website: /doku/steps/show_on_desktop/ Abbildung: [Detailansicht: Auf Desktop anzeigen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-show-on-desktop.detail.png) 1. Einblendungen: Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example all_detections einer Erkennung als Rechtecke einblenden und text einer OCR-Quelle daneben darstellen. ### field.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### input.detections Einblendungsquellen mit Geometrie. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.text Text beziehungsweise darstellbarer Wert. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Konfiguriere Erkennungs- und Textquellen für eine transparente Desktop-Einblendung. Sie dient der Darstellung bereits vorhandener Ergebnisse, nicht deren Erkennung. Prüfe Zielmonitor, Versatz und Sichtbarkeit der Darstellung im Zusammenhang mit dem tatsächlichen Desktop. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.detections_source Kompatible Erkennungs-, Rechteck- oder Punktquelle für die Einblendung. Der Eingabevertrag beschreibt die Verarbeitung mehrerer Werte. ### schema.settings.detections_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.detections_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.detections_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.detections_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.detections_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.detections_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.detections_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.detections_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.detections_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### schema.settings.overlay.detection_results Liste referenzierter Erkennungsergebnisse für die Einblendung. ### schema.settings.overlay.detection_results.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.detection_results.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.detection_results.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.detection_results.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.detection_results.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.detection_results.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.detection_results.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.detection_results.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.detection_results.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay.text_results Liste referenzierter Text-/Anzeige-Werte für die Einblendung. ### schema.settings.overlay.text_results.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### schema.settings.overlay.text_results.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### schema.settings.overlay.text_results.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### schema.settings.overlay.text_results.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### schema.settings.overlay.text_results.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### schema.settings.overlay.text_results.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.settings.overlay.text_results.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### schema.settings.overlay.text_results.result Typisierte Ergebnisreferenz für den betreffenden Wert; Quelle und Ergebnis-ID auswählen und die Ausführungsreihenfolge beachten. ### schema.settings.overlay.text_results.result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.text_results.result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.text_results.result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.text_results.result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.text_results.result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.text_results.result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.text_results.result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.text_results.result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.text_results.result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "show_on_desktop", "name": "Auf Desktop anzeigen", "description": "Zeigt Erkennungen und Textwerte als Einblendung auf dem Desktop an.", "category": "AnzeigenSpeichern", "uiFieldIds": [ "overlay" ], "fields": [ { "id": "overlay", "name": "Einblendungen", "descriptor": { "Id": "overlay", "LabelKey": "Ui.Step.Settings.Overlays", "ValueKind": "Object", "Required": true, "DefaultValue": { "detection_results": [], "text_results": [] }, "DescriptionKey": null, "EditorHint": "visual-overlay", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": { "DetectionInputContractId": "detections", "TextInputContractId": "text", "SupportsDesktopPlacement": true }, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ShowOnDesktopSettings", "options": [], "defaultValue": null }, { "id": "settings.detections_source", "name": "detections_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.detections_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.detections_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay", "name": "overlay", "type": "VisualOverlaySettings", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results", "name": "detection_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results", "name": "text_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.clear_on_job_end", "name": "clear_on_job_end", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.desktop_index", "name": "desktop_index", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.duration_ms", "name": "duration_ms", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_color", "name": "font_color", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_size", "name": "font_size", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.id", "name": "id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.opacity", "name": "opacity", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result", "name": "result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null } ], "inputs": [ { "Key": "detections", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Detection", "Cardinalities": [ "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "text", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Boolean", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Number", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "DateTime", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Color", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Enum", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Detection", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ShowOnDesktopResult", "DisplayName": "ShowOnDesktopResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "show_on_desktop", "settings": { "detections_source": { "provider_id": "", "source_id": "" }, "overlay": { "detection_results": [], "text_results": [] } }, "id": "b77b3a43-7414-193b-5f4e-63675ea46498", "inputs": {}, "is_enabled": true } ``` ## Steps: Text auf Desktop anzeigen ID: show_text Website: /doku/steps/show_text/ Abbildung: [Die Desktop-Textausgabe übernimmt die Beschriftung der Benutzerauswahl als Ergebnisquelle. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-werte.detail.png) 1. Text: Text oder kompatibler Anzeige-Wert aus einer Quelle. Für Benutzerauswahlen eignet sich selected_label. 2. Monitor: Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. 3. Schriftgröße (pt): Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. 4. Schriftfarbe: Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. 5. Deckkraft (%): Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. 6. Anzeigedauer (ms): Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. 7. Bei Job-Ende entfernen: Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. 8. Position: ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Die gewählte Antwort aus user_choice über selected_label zwei Sekunden auf Monitor 0 anzeigen. ### field.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### field.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### field.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### field.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### field.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### field.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### field.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### field.text_result Text oder kompatibler Anzeige-Wert aus einer Quelle. Für Benutzerauswahlen eignet sich selected_label. ### input.text Text beziehungsweise darstellbarer Wert. Fehlende erforderliche Werte führen zum Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Trage Text ein oder verbinde einen kompatiblen Wert. Wähle Monitor, Schrift, Farbe, Deckkraft und Anzeigedauer. Die Anzeige kann nach Zeitablauf oder beim Job-Ende entfernt werden. Verwende selected_label einer Benutzerauswahl für eine verständliche Rückmeldung. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### schema.settings.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### schema.settings.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### schema.settings.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### schema.settings.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### schema.settings.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### schema.settings.text Direkt angezeigter beziehungsweise eingegebener Text. Ein Makro schreibt ihn in das aktive Fenster; die Desktop-Anzeige stellt ihn nur dar. ### schema.settings.text_result Text oder kompatibler Anzeige-Wert aus einer Quelle. Für Benutzerauswahlen eignet sich selected_label. ### schema.settings.text_result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.text_result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.text_result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.text_result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.text_result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.text_result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.text_result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.text_result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.text_result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.text_source ExplicitText verwendet den direkten Text, TaskResult den verbundenen Ergebniswert in der älteren settings-Konfiguration. ### schema.settings.text_source.option.ExplicitText Verwendet den direkt eingegebenen Text. ### schema.settings.text_source.option.TaskResult Verwendet den verbundenen Step-Ergebniswert statt des direkten Literals. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "show_text", "name": "Text auf Desktop anzeigen", "description": "Zeigt konfigurierbaren Text auf dem Desktop an.", "category": "AnzeigenSpeichern", "uiFieldIds": [ "text_result", "desktop_index", "font_size", "font_color", "opacity", "duration_ms", "clear_on_job_end", "offset_x", "offset_y" ], "fields": [ { "id": "text_result", "name": "Text", "descriptor": { "Id": "text_result", "LabelKey": "Ui.Step.Settings.DisplayText", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "text", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": true, "MonitorDeviceNameFieldId": null } }, { "id": "desktop_index", "name": "Monitor", "descriptor": { "Id": "desktop_index", "LabelKey": "Ui.Step.Settings.DesktopIndex", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "monitor-picker", "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "font_size", "name": "Schriftgröße (pt)", "descriptor": { "Id": "font_size", "LabelKey": "Ui.Step.Settings.FontSizePt", "ValueKind": "Number", "Required": false, "DefaultValue": 24, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0.01, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "font_color", "name": "Schriftfarbe", "descriptor": { "Id": "font_color", "LabelKey": "Ui.Step.Settings.FontColor", "ValueKind": "Color", "Required": false, "DefaultValue": "#FFFFFF", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "opacity", "name": "Deckkraft (%)", "descriptor": { "Id": "opacity", "LabelKey": "Ui.Step.Settings.OpacityPercent", "ValueKind": "Number", "Required": false, "DefaultValue": 1, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 6, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "duration_ms", "name": "Anzeigedauer (ms)", "descriptor": { "Id": "duration_ms", "LabelKey": "Ui.Step.Settings.DisplayDurationMs", "ValueKind": "Duration", "Required": false, "DefaultValue": 5000, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 7, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "clear_on_job_end", "name": "Bei Job-Ende entfernen", "descriptor": { "Id": "clear_on_job_end", "LabelKey": "Ui.Step.Settings.RemoveWhenJobEnds", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 8, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_x", "name": "Versatz X (px)", "descriptor": { "Id": "offset_x", "LabelKey": "Ui.Step.Settings.XOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 100, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 9, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_y", "name": "Versatz Y (px)", "descriptor": { "Id": "offset_y", "LabelKey": "Ui.Step.Settings.YOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 100, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 10, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "ShowTextSettings", "options": [], "defaultValue": null }, { "id": "settings.clear_on_job_end", "name": "clear_on_job_end", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.desktop_index", "name": "desktop_index", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.duration_ms", "name": "duration_ms", "type": "Int32", "options": [], "defaultValue": 5000 }, { "id": "settings.font_color", "name": "font_color", "type": "String", "options": [], "defaultValue": "#FFFFFF" }, { "id": "settings.font_size", "name": "font_size", "type": "Single", "options": [], "defaultValue": 24 }, { "id": "settings.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": 100 }, { "id": "settings.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": 100 }, { "id": "settings.opacity", "name": "opacity", "type": "Single", "options": [], "defaultValue": 1 }, { "id": "settings.text", "name": "text", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.text_result", "name": "text_result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.text_result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.text_result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.text_result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.text_result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.text_result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.text_result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.text_result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.text_result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.text_result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.text_source", "name": "text_source", "type": "ShowTextSource", "options": [ "ExplicitText", "TaskResult" ], "defaultValue": "TaskResult" } ], "inputs": [ { "Key": "text", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Boolean", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Number", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "DateTime", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Color", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Enum", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Detection", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": true, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "ShowTextResult", "DisplayName": "ShowTextResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "show_text", "settings": { "text_source": "TaskResult", "text": "", "text_result": { "provider_id": "", "source_id": "" }, "font_size": 24, "font_color": "#FFFFFF", "opacity": 1, "desktop_index": 0, "offset_x": 100, "offset_y": 100, "duration_ms": 5000, "clear_on_job_end": false }, "id": "53488c77-d339-7ac1-2fc2-7774b8ec431e", "inputs": {}, "is_enabled": true } ``` ## Steps: Prozess starten ID: start_process Website: /doku/steps/start_process/ Abbildung: [Notepad als Beispielprogramm: ausführbare Datei und Startoptionen im Editor. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-programmstart.detail.png) 1. Programmpfad: Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. 2. Auf Beendigung warten: Mit Häkchen wartet der Job auf das Ende des gestarteten Programms. Ohne Häkchen folgt der nächste Step nach dem Start; für einen geöffneten Editor ist das meist die passende Wahl. 3. Argumente: Zusätzliche Startargumente des Programms, etwa der Pfad zu einer Textdatei für den Editor. Pfade mit Leerzeichen in Anführungszeichen setzen. Leer lassen, wenn keine Argumente nötig sind. 4. Arbeitsverzeichnis: Arbeitsverzeichnis des gestarteten Programms. Relative Pfade des Programms können davon abhängen. 5. Monitor: Nullbasierter Monitor für Programmfenster oder Anzeige. Er bezieht sich auf die aktuelle Bildschirmkonfiguration. 6. Fenstermodus: Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. 7. Position: „Zentriert“ positioniert das Programmfenster mittig auf dem gewählten Monitor; „Benutzerdefiniert“ verwendet die konfigurierten Versätze. 8. Versatz X (px): Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom linken Rand des Arbeitsbereichs des gewählten Monitors zur linken Fensterkante. Beispiel 120 setzt das Fenster 120 px nach rechts. 9. Versatz Y (px): Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom oberen Rand des Arbeitsbereichs des gewählten Monitors zur oberen Fensterkante. Beispiel 80 setzt das Fenster 80 px nach unten. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Der Beispieljob „Arbeitsplatz nach Zeitplan“ startet notepad nur bei Bedarf und öffnet anschließend calc. ### field.action Wähle „Starten“, um ein Programm über seinen Pfad zu öffnen, oder „Beenden“, um die ausgewählte Prozessreferenz zu schließen. Es werden nur die Felder der gewählten Aktion eingeblendet. ### field.action.option.Start Startet das konfigurierte Programm. ### field.action.option.Terminate Beendet die gewählte Programminstanz beziehungsweise die unterstützte Zielsuche. ### field.arguments Zusätzliche Startargumente des Programms, etwa der Pfad zu einer Textdatei für den Editor. Pfade mit Leerzeichen in Anführungszeichen setzen. Leer lassen, wenn keine Argumente nötig sind. ### field.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### field.monitor_index Nullbasierter Monitor für Programmfenster oder Anzeige. Er bezieht sich auf die aktuelle Bildschirmkonfiguration. ### field.offset_x Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom linken Rand des Arbeitsbereichs des gewählten Monitors zur linken Fensterkante. Beispiel 120 setzt das Fenster 120 px nach rechts. ### field.offset_y Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom oberen Rand des Arbeitsbereichs des gewählten Monitors zur oberen Fensterkante. Beispiel 80 setzt das Fenster 80 px nach unten. ### field.placement_mode „Zentriert“ positioniert das Programmfenster mittig auf dem gewählten Monitor; „Benutzerdefiniert“ verwendet die konfigurierten Versätze. ### field.placement_mode.option.Centered Positioniert das Fenster mittig auf dem gewählten Monitor. ### field.placement_mode.option.Custom Verwendet die angegebenen Positionsversätze. ### field.process_target Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### field.wait_for_exit Mit Häkchen wartet der Job auf das Ende des gestarteten Programms. Ohne Häkchen folgt der nächste Step nach dem Start; für einen geöffneten Editor ist das meist die passende Wahl. ### field.window_mode Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. ### field.window_mode.option.ApplicationDefault Überlässt den anfänglichen Fenstermodus dem Programm. ### field.window_mode.option.Maximized Maximiert das Fenster, soweit es dies unterstützt. ### field.window_mode.option.Normal Verwendet ein normales, nicht maximiertes Fenster. ### field.working_directory Arbeitsverzeichnis des gestarteten Programms. Relative Pfade des Programms können davon abhängen. ### input.process konkrete Prozessreferenz. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Starte ein Programm über seinen ausführbaren Pfad. Argumente und Arbeitsverzeichnis bestimmen den Startkontext. Fenstermodus und Position werden angewendet, soweit das Programm ein steuerbares Fenster bereitstellt. Zum Beenden eines Programms verwende den Step „Prozess beenden“. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.action Wähle „Starten“, um ein Programm über seinen Pfad zu öffnen, oder „Beenden“, um die ausgewählte Prozessreferenz zu schließen. Es werden nur die Felder der gewählten Aktion eingeblendet. ### schema.settings.action.option.Start Startet das konfigurierte Programm. ### schema.settings.action.option.Terminate Beendet die gewählte Programminstanz beziehungsweise die unterstützte Zielsuche. ### schema.settings.arguments Zusätzliche Startargumente des Programms, etwa der Pfad zu einer Textdatei für den Editor. Pfade mit Leerzeichen in Anführungszeichen setzen. Leer lassen, wenn keine Argumente nötig sind. ### schema.settings.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.monitor_index Nullbasierter Monitor für Programmfenster oder Anzeige. Er bezieht sich auf die aktuelle Bildschirmkonfiguration. ### schema.settings.offset_x Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom linken Rand des Arbeitsbereichs des gewählten Monitors zur linken Fensterkante. Beispiel 120 setzt das Fenster 120 px nach rechts. ### schema.settings.offset_y Bei Position „Benutzerdefiniert“: Abstand in Pixeln vom oberen Rand des Arbeitsbereichs des gewählten Monitors zur oberen Fensterkante. Beispiel 80 setzt das Fenster 80 px nach unten. ### schema.settings.placement_mode „Zentriert“ positioniert das Programmfenster mittig auf dem gewählten Monitor; „Benutzerdefiniert“ verwendet die konfigurierten Versätze. ### schema.settings.placement_mode.option.Centered Positioniert das Fenster mittig auf dem gewählten Monitor. ### schema.settings.placement_mode.option.Custom Verwendet die angegebenen Positionsversätze. ### schema.settings.target Prozess-Zielkonfiguration aus Name/Pfad/Titel oder einer konkreten Prozessreferenz. Die konkrete Referenz schützt vor Verwechslung gleichnamiger Instanzen. ### schema.settings.target.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.target.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.target.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.target.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### schema.settings.wait_for_exit Mit Häkchen wartet der Job auf das Ende des gestarteten Programms. Ohne Häkchen folgt der nächste Step nach dem Start; für einen geöffneten Editor ist das meist die passende Wahl. ### schema.settings.window_mode Fensterdarstellung: Voreinstellung des Programms, Normal oder Maximiert, soweit der jeweilige Step diese Option unterstützt. ### schema.settings.window_mode.option.ApplicationDefault Überlässt den anfänglichen Fenstermodus dem Programm. ### schema.settings.window_mode.option.Maximized Maximiert das Fenster, soweit es dies unterstützt. ### schema.settings.window_mode.option.Normal Verwendet ein normales, nicht maximiertes Fenster. ### schema.settings.working_directory Arbeitsverzeichnis des gestarteten Programms. Relative Pfade des Programms können davon abhängen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "start_process", "name": "Prozess starten", "description": "Startet ein Programm und konfiguriert optional dessen Fenster.", "category": "ProgrammeFenster", "uiFieldIds": [ "executable_path", "wait_for_exit", "arguments", "working_directory", "monitor_index", "window_mode", "placement_mode", "offset_x", "offset_y" ], "fields": [ { "id": "action", "name": "Aktion", "descriptor": { "Id": "action", "LabelKey": "Ui.Step.Settings.Action", "ValueKind": "Enum", "Required": true, "DefaultValue": "Start", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Start", "Terminate" ] }, "Width": "Full", "Advanced": false, "Order": -2, "VisibleWhen": null, "Options": [ { "Value": "Start", "LabelKey": "Enum.StartProcessAction.Start", "DisplayName": null }, { "Value": "Terminate", "LabelKey": "Enum.StartProcessAction.Terminate", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "process_target", "name": "Prozessreferenz", "descriptor": { "Id": "process_target", "LabelKey": "Ui.Step.Settings.ProcessSource", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "process-target-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": -1, "VisibleWhen": { "FieldId": "action", "EqualsValue": "Terminate", "AnyOfValues": null }, "Options": null, "InputContractId": "process", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "executable_path", "name": "Programmpfad", "descriptor": { "Id": "executable_path", "LabelKey": "Ui.Step.Settings.PathProgram", "ValueKind": "FilePath", "Required": true, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "start-program-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": { "FieldId": "action", "EqualsValue": "Start", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "wait_for_exit", "name": "Auf Beendigung warten", "descriptor": { "Id": "wait_for_exit", "LabelKey": "Ui.Step.Settings.WaitForCompletion", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "arguments", "name": "Argumente", "descriptor": { "Id": "arguments", "LabelKey": "Ui.Step.Settings.Arguments", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "working_directory", "name": "Arbeitsverzeichnis", "descriptor": { "Id": "working_directory", "LabelKey": "Ui.Step.Settings.WorkingDirectory", "ValueKind": "DirectoryPath", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "monitor_index", "name": "Monitor", "descriptor": { "Id": "monitor_index", "LabelKey": "Ui.Step.Settings.Monitor", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "monitor-picker", "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "window_mode", "name": "Fenstermodus", "descriptor": { "Id": "window_mode", "LabelKey": "Ui.Step.Settings.WindowMode", "ValueKind": "Enum", "Required": true, "DefaultValue": "ApplicationDefault", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "ApplicationDefault", "Normal", "Maximized" ] }, "Width": "Full", "Advanced": true, "Order": 5, "VisibleWhen": null, "Options": [ { "Value": "ApplicationDefault", "LabelKey": "Enum.StartProcessWindowMode.ApplicationDefault", "DisplayName": null }, { "Value": "Normal", "LabelKey": "Enum.StartProcessWindowMode.Normal", "DisplayName": null }, { "Value": "Maximized", "LabelKey": "Enum.StartProcessWindowMode.Maximized", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "placement_mode", "name": "Position", "descriptor": { "Id": "placement_mode", "LabelKey": "Ui.Step.Settings.Position", "ValueKind": "Enum", "Required": true, "DefaultValue": "Centered", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "Centered", "Custom" ] }, "Width": "Full", "Advanced": true, "Order": 6, "VisibleWhen": null, "Options": [ { "Value": "Centered", "LabelKey": "Enum.StartProcessPlacementMode.Centered", "DisplayName": null }, { "Value": "Custom", "LabelKey": "Enum.StartProcessPlacementMode.Custom", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_x", "name": "Versatz X (px)", "descriptor": { "Id": "offset_x", "LabelKey": "Ui.Step.Settings.XOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 7, "VisibleWhen": { "FieldId": "placement_mode", "EqualsValue": "Custom", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "offset_y", "name": "Versatz Y (px)", "descriptor": { "Id": "offset_y", "LabelKey": "Ui.Step.Settings.YOffsetPixels", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": true, "Order": 8, "VisibleWhen": { "FieldId": "placement_mode", "EqualsValue": "Custom", "AnyOfValues": null }, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "StartProcessSettings", "options": [], "defaultValue": null }, { "id": "settings.action", "name": "action", "type": "StartProcessAction", "options": [ "Start", "Terminate" ], "defaultValue": "Start" }, { "id": "settings.arguments", "name": "arguments", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.monitor_index", "name": "monitor_index", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.placement_mode", "name": "placement_mode", "type": "StartProcessPlacementMode", "options": [ "Centered", "Custom" ], "defaultValue": "Centered" }, { "id": "settings.target", "name": "target", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.target.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.wait_for_exit", "name": "wait_for_exit", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.window_mode", "name": "window_mode", "type": "StartProcessWindowMode", "options": [ "ApplicationDefault", "Normal", "Maximized" ], "defaultValue": "ApplicationDefault" }, { "id": "settings.working_directory", "name": "working_directory", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "process", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "StartProcessResult", "DisplayName": "StartProcessResult", "Properties": [ { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "start_process", "settings": { "target": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" }, "action": "Start", "executable_path": "", "arguments": "", "working_directory": "", "wait_for_exit": false, "monitor_index": 0, "placement_mode": "Centered", "offset_x": 0, "offset_y": 0, "window_mode": "ApplicationDefault" }, "id": "6fbbf6ae-f17e-bbfb-d307-3c3f4e398d7a", "inputs": {}, "is_enabled": true } ``` ## Steps: Bildvorlage erkennen ID: template_matching Website: /doku/steps/template_matching/ Abbildung: [Detailansicht: Bildvorlage erkennen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-template-matching.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Bildvorlage: Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. 3. Konfidenz (%): Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. 4. Mehrere Treffer zurückgeben: true liefert mehrere Template-Treffer nach Unterdrückung benachbarter Treffer; false verwendet nur den besten Treffer. 5. Bildbereich (ROI): Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. 6. Vergleichsmethode: Vergleichsmethode für die Pixelvorlage. Im aktuellen Step sind ausschließlich die drei normalisierten Methoden CCoeffNormed, CCorrNormed und SqDiffNormed gültig. ### errors Nur CCoeffNormed, CCorrNormed und SqDiffNormed sind im aktuellen Step unterstützt. Andere Namen aus der OpenCV-Enumeration sind in der technischen Typaufzählung sichtbar, aber keine gültige Step-Konfiguration. Prüfe außerdem Vorlagendatei, Bildquelle und Bildgrößen. ### example Bildschirmaufnahme mit einer lokalen Symbolvorlage vergleichen, CCoeffNormed und Schwellenwert 0,9 wählen, danach found prüfen. ### field.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.multiple_points true liefert mehrere Template-Treffer nach Unterdrückung benachbarter Treffer; false verwendet nur den besten Treffer. ### field.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### field.template_match_mode Vergleichsmethode für die Pixelvorlage. Im aktuellen Step sind ausschließlich die drei normalisierten Methoden CCoeffNormed, CCorrNormed und SqDiffNormed gültig. ### field.template_match_mode.option.CCoeffNormed Normalisierte Korrelation mit Zentrierung; Ergebnis-Konfidenz 0 bis 1. ### field.template_match_mode.option.CCorrNormed Normalisierte Kreuzkorrelation; Ergebnis-Konfidenz 0 bis 1. ### field.template_match_mode.option.SqDiffNormed Normalisierte quadratische Differenz. Intern ist ein kleiner Rohwert besser; der Step gibt daraus eine höhere normalisierte Konfidenz aus. ### field.template_path Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. ### input.dynamicRoi dynamischer Suchbereich. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Vergleiche eine Pixelvorlage mit der Bildquelle. Wähle eine der drei unterstützten normalisierten Methoden und einen Schwellenwert. „Mehrere Treffer“ liefert mehrere Erkennungen; alle Konfidenzen werden als 0 bis 1 ausgegeben, auch bei SqDiffNormed, dessen Rohscore intern umgekehrt bewertet wird. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### schema.settings.dynamic_roi_source Kompatible dynamische Rechteckquelle. Eine spätere DynamicRoi-Quelle darf Feedback für den nächsten Durchlauf liefern; dies ist eine besondere Ausnahme von normalen Vorwärtsreferenzen. ### schema.settings.dynamic_roi_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.dynamic_roi_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.dynamic_roi_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.dynamic_roi_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.dynamic_roi_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.dynamic_roi_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.dynamic_roi_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.dynamic_roi_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.dynamic_roi_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.enable_roi Aktiviert den direkt konfigurierten Suchbereich. Ohne Aktivierung wird der Standardbereich der Quelle verwendet, sofern keine dynamische ROI-Quelle greift. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.multiple_points true liefert mehrere Template-Treffer nach Unterdrückung benachbarter Treffer; false verwendet nur den besten Treffer. ### schema.settings.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### schema.settings.roi.Empty Vom serialisierten Geometrieobjekt angebotener Leerzustand. Kein eigener ROI-Schalter: den Suchbereich mit enable_roi beziehungsweise roi.enabled und den Koordinaten konfigurieren; dieses abgeleitete Mitglied nicht als Eingabequelle verwenden. ### schema.settings.roi.height Höhe des Rechtecks oder Bildformats in Pixeln. Negative Größen sind kein gültiger Suchbereich. ### schema.settings.roi.width Breite des Rechtecks oder Bildformats in Pixeln. Zusammen mit Höhe und Ursprung ergibt sie die räumliche Größe. ### schema.settings.roi.x Horizontale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate X = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.roi.y Vertikale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate Y = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.template_match_mode Vergleichsmethode für die Pixelvorlage. Im aktuellen Step sind ausschließlich die drei normalisierten Methoden CCoeffNormed, CCorrNormed und SqDiffNormed gültig. ### schema.settings.template_match_mode.option.CCoeff OpenCV-Typwert, im aktuellen Template-Step nicht unterstützt; CCoeffNormed verwenden. ### schema.settings.template_match_mode.option.CCoeffNormed Normalisierte Korrelation mit Zentrierung; Ergebnis-Konfidenz 0 bis 1. ### schema.settings.template_match_mode.option.CCorr OpenCV-Typwert, im aktuellen Template-Step nicht unterstützt; CCorrNormed verwenden. ### schema.settings.template_match_mode.option.CCorrNormed Normalisierte Kreuzkorrelation; Ergebnis-Konfidenz 0 bis 1. ### schema.settings.template_match_mode.option.SqDiff OpenCV-Typwert, im aktuellen Template-Step nicht unterstützt; SqDiffNormed verwenden. ### schema.settings.template_match_mode.option.SqDiffNormed Normalisierte quadratische Differenz. Intern ist ein kleiner Rohwert besser; der Step gibt daraus eine höhere normalisierte Konfidenz aus. ### schema.settings.template_path Pfad zur lokalen Bildvorlage. Die Datei muss vorhanden und lesbar sein; für Pixelvorlagen darf sie nicht größer als der Suchbereich sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "template_matching", "name": "Bildvorlage erkennen", "description": "Vergleicht eine Bildvorlage mit der ausgewählten Bildquelle.", "category": "BildAuswerten", "uiFieldIds": [ "image_source", "template_path", "confidence_threshold", "multiple_points", "roi", "template_match_mode" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "template_path", "name": "Bildvorlage", "descriptor": { "Id": "template_path", "LabelKey": "Ui.Step.Settings.Template", "ValueKind": "FilePath", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "file-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": { "Kind": "Image", "ShowPreview": true }, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "confidence_threshold", "name": "Konfidenz (%)", "descriptor": { "Id": "confidence_threshold", "LabelKey": "Ui.Step.Settings.ConfidencePercent", "ValueKind": "Number", "Required": false, "DefaultValue": 0.9, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "roi", "name": "Bildbereich (ROI)", "descriptor": { "Id": "roi", "LabelKey": "Ui.Step.Settings.ROI", "ValueKind": "Object", "Required": false, "DefaultValue": { "enabled": false, "x": 0, "y": 0, "width": 0, "height": 0, "dynamic_source": null }, "DescriptionKey": null, "EditorHint": "roi-picker", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": { "DynamicInputContractId": "dynamicRoi" }, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "template_match_mode", "name": "Vergleichsmethode", "descriptor": { "Id": "template_match_mode", "LabelKey": "Ui.Step.Settings.MatchMode", "ValueKind": "Enum", "Required": true, "DefaultValue": "CCoeffNormed", "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": [ "CCoeffNormed", "CCorrNormed", "SqDiffNormed" ] }, "Width": "Full", "Advanced": true, "Order": 4, "VisibleWhen": null, "Options": [ { "Value": "CCoeffNormed", "LabelKey": "Enum.TemplateMatchMode.CCoeffNormed", "DisplayName": null }, { "Value": "CCorrNormed", "LabelKey": "Enum.TemplateMatchMode.CCorrNormed", "DisplayName": null }, { "Value": "SqDiffNormed", "LabelKey": "Enum.TemplateMatchMode.SqDiffNormed", "DisplayName": null } ], "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "multiple_points", "name": "Mehrere Treffer zurückgeben", "descriptor": { "Id": "multiple_points", "LabelKey": "Ui.Step.Settings.MultiplePoints", "ValueKind": "Boolean", "Required": false, "DefaultValue": false, "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 5, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "TemplateMatchingSettings", "options": [], "defaultValue": null }, { "id": "settings.confidence_threshold", "name": "confidence_threshold", "type": "Double", "options": [], "defaultValue": 0.9 }, { "id": "settings.dynamic_roi_source", "name": "dynamic_roi_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.enable_roi", "name": "enable_roi", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.multiple_points", "name": "multiple_points", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.roi", "name": "roi", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.Empty", "name": "Empty", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.template_match_mode", "name": "template_match_mode", "type": "TemplateMatchModes", "options": [ "SqDiff", "SqDiffNormed", "CCorr", "CCorrNormed", "CCoeff", "CCoeffNormed" ], "defaultValue": "CCoeffNormed" }, { "id": "settings.template_path", "name": "template_path", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "dynamicRoi", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "TemplateMatchingResult", "DisplayName": "TemplateMatchingResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "template_matching", "settings": { "template_path": "", "template_match_mode": "CCoeffNormed", "multiple_points": false, "confidence_threshold": 0.9, "roi": { "x": 0, "y": 0, "width": 0, "height": 0 }, "enable_roi": false, "image_source": { "provider_id": "", "source_id": "" }, "dynamic_roi_source": { "provider_id": "", "source_id": "" } }, "id": "fecba802-7139-a95a-9712-cc418e4a3527", "inputs": {}, "is_enabled": true } ``` ## Steps: Prozess beenden ID: terminate_process Website: /doku/steps/terminate_process/ Abbildung: [Detailansicht: Prozess beenden. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-terminate-process.detail.png) 1. Prozessreferenz: Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Eine zuvor über get_process ermittelte Testprogramm-Instanz beenden; keine ungesicherten Dokumente im Testprogramm offen lassen. ### field.process_target Im Editor eine kompatible Prozessreferenz wählen. Suchkriterien einer älteren settings.target-Konfiguration sind kein Ersatz für eine beliebige Textquelle im typisierten Prozesseingang. ### input.process konkrete Prozessreferenz. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Beende die gewählte Programminstanz beziehungsweise passende Instanzen der konfigurierten Suche. Prüfe Prozessreferenz und Titel sorgfältig: das Beenden eines Programms kann ungespeicherte Arbeit verlieren. Eine nicht mehr vorhandene Instanz ist von einem Berechtigungsfehler zu unterscheiden. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.target Prozess-Zielkonfiguration aus Name/Pfad/Titel oder einer konkreten Prozessreferenz. Die konkrete Referenz schützt vor Verwechslung gleichnamiger Instanzen. ### schema.settings.target.executable_path Pfad zur ausführbaren Datei. Beim Start muss er zu einem startbaren Programm führen; bei einer Suche grenzt er die Programminstanz ein. ### schema.settings.target.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### schema.settings.target.process_source Referenz auf eine konkrete laufende Programminstanz, üblicherweise process aus get_process oder start_process. ### schema.settings.target.process_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.target.process_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.target.process_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.target.process_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.target.process_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.target.process_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.target.process_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.target.process_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.target.process_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.target.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "terminate_process", "name": "Prozess beenden", "description": "Beendet laufende Prozesse anhand einer Prozessreferenz oder ihres Namens und optional ihres Fenstertitels.", "category": "ProgrammeFenster", "uiFieldIds": [ "process_target" ], "fields": [ { "id": "process_target", "name": "Prozessreferenz", "descriptor": { "Id": "process_target", "LabelKey": "Ui.Step.Settings.ProcessSource", "ValueKind": "Object", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "process-target-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "process", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "TerminateProcessSettings", "options": [], "defaultValue": null }, { "id": "settings.target", "name": "target", "type": "ProcessTargetSettings", "options": [], "defaultValue": null }, { "id": "settings.target.executable_path", "name": "executable_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source", "name": "process_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.process_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.target.process_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.target.window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "process", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "TerminateProcessResult", "DisplayName": "TerminateProcessResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "terminate_process", "settings": { "target": { "process_source": { "provider_id": "", "source_id": "" }, "process_name": "", "executable_path": "", "window_title_contains": "" } }, "id": "1a0a37d7-cbd4-4080-4162-27be3efcf1d4", "inputs": {}, "is_enabled": true } ``` ## Steps: Warten ID: timeout Website: /doku/steps/timeout/ Abbildung: [Detailansicht: Warten. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-timeout.detail.png) 1. Wartezeit (ms): Wartezeit in Millisekunden. 1000 entspricht einer Sekunde; eine Zeitpause ersetzt keine Statusprüfung eines Programms. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Nach einer Rückmeldung 1000 ms warten und erst dann den nächsten Step ausführen. ### field.delay_ms Wartezeit in Millisekunden. 1000 entspricht einer Sekunde; eine Zeitpause ersetzt keine Statusprüfung eines Programms. ### purpose Füge eine Pause zwischen zwei Aktionen ein. Der Wert ist in Millisekunden; 1000 entspricht einer Sekunde. Die Pause wartet auf Zeitablauf und ist kein Beleg dafür, dass ein anderes Programm bereits fertig geladen hat. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.delay_ms Wartezeit in Millisekunden. 1000 entspricht einer Sekunde; eine Zeitpause ersetzt keine Statusprüfung eines Programms. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "timeout", "name": "Warten", "description": "Wartet eine konfigurierbare Zeit, bevor der nächste Step ausgeführt wird.", "category": "AblaufSteuern", "uiFieldIds": [ "delay_ms" ], "fields": [ { "id": "delay_ms", "name": "Wartezeit (ms)", "descriptor": { "Id": "delay_ms", "LabelKey": "Ui.Step.Settings.WaitTimeMs", "ValueKind": "Duration", "Required": true, "DefaultValue": 1000, "DescriptionKey": null, "EditorHint": null, "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "TimeoutSettings", "options": [], "defaultValue": null }, { "id": "settings.delay_ms", "name": "delay_ms", "type": "Int32", "options": [], "defaultValue": 1000 } ], "inputs": [], "result": { "TypeName": "TimeoutResult", "DisplayName": "TimeoutResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "timeout", "settings": { "delay_ms": 1000 }, "id": "f8468467-aabe-4960-2611-1a0bcd68497c", "inputs": {}, "is_enabled": true } ``` ## Steps: Eingaben freigeben ID: unblock_input Website: /doku/steps/unblock_input/ Abbildung: [Detailansicht: Eingaben freigeben. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-step-unblock-input.detail.png) 1. Eingaben freigeben: Hebt eine zuvor gesetzte Sperre für physische Maus- und Tastatureingaben auf. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Ein Job setzt block_input in der Hauptphase und unblock_input in endSteps, damit normales Beenden die Eingaben freigibt. ### purpose Gib die vom aktuellen Job besessene Maus- und Tastatursperre frei. Verwende diesen Step nach dem geschützten Abschnitt oder im Bereich „Beim Beenden“. Er hebt keine Sperre eines fremden Besitzers auf. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "unblock_input", "name": "Eingaben freigeben", "description": "Gibt blockierte Maus- und Tastatureingaben wieder frei.", "category": "AblaufSteuern", "uiFieldIds": [], "fields": [], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true } ], "inputs": [], "result": { "TypeName": "InputControlResult", "DisplayName": "InputControlResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "unblock_input", "id": "ebfe1a0a-c733-fcf3-dae8-97b992a5ff8e", "inputs": {}, "is_enabled": true } ``` ## Steps: Benutzerauswahl abfragen ID: user_choice Website: /doku/steps/user_choice/ Abbildung: [Eine Rückfrage mit zwei beschrifteten Optionen und getrennten Rückgabewerten. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/step-auswahl.detail.png) 1. Überschrift (optional): Sichtbare Überschrift der Auswahl beziehungsweise Gruppentitel. Sie ist keine technische Identität. 2. Titel (optional): Fragetext der Benutzerauswahl. Formuliere ihn so, dass die angebotenen Antworten eine eindeutige Entscheidung ermöglichen. 3. Beschreibung (optional): Zusätzliche Beschreibung für Menschen; sie ist kein auszuführender Befehl. 4. Monitor: Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. 5. Antwortmöglichkeiten (2 bis 18, verpflichtend): Lege zwei bis achtzehn Antworten an. Jede Antwort benötigt einen sichtbaren Antworttext. Ein optionaler Rückgabewert ermöglicht stabile Bedingungen; bleibt er leer, wird der Antworttext zurückgegeben. Die interne ID bleibt beim Umbenennen oder Umordnen erhalten. ### errors Abbrechen der Auswahl ist von Stoppen des ganzen Jobs zu unterscheiden. Prüfe was_cancelled, bevor du selected_value verwendest. Ungültige, doppelte oder zu wenige/zu viele Antworten werden bei der Konfiguration zurückgewiesen. ### example Zwei Antworten: ID rechnung, Label Rechnungen, Wert rechnung sowie ID notiz, Label Notizen, Wert notiz. Der Wenn-Step verwendet selected_value. ### field.description Zusätzliche Beschreibung für Menschen; sie ist kein auszuführender Befehl. ### field.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### field.options Lege zwei bis achtzehn Antworten an. Jede Antwort benötigt einen sichtbaren Antworttext. Ein optionaler Rückgabewert ermöglicht stabile Bedingungen; bleibt er leer, wird der Antworttext zurückgegeben. Die interne ID bleibt beim Umbenennen oder Umordnen erhalten. ### field.question Fragetext der Benutzerauswahl. Formuliere ihn so, dass die angebotenen Antworten eine eindeutige Entscheidung ermöglichen. ### field.title Sichtbare Überschrift der Auswahl beziehungsweise Gruppentitel. Sie ist keine technische Identität. ### purpose Lege zwei bis achtzehn Antworten an und frage den Benutzer während des Jobs nach einer Auswahl. Jede Antwort hat eine stabile ID, ein sichtbares Label und einen weitergegebenen Textwert. Die Ergebnisse selected_option_id, selected_label und selected_value erfüllen unterschiedliche Zwecke; ein Abbruch wird separat als was_cancelled gemeldet. ### result.selected_index Index der gewählten Antwort, nullbasiert. Vor Verwendung was_cancelled prüfen. Einzelwert dieses Ergebnisses. ### result.selected_label Sichtbarer Text der gewählten Antwort, geeignet für eine verständliche Rückmeldung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.selected_option_id Stabile ID der gewählten Antwort; sie ist vom sichtbaren Label und vom fachlichen Textwert getrennt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.selected_option_id.option.example-option-0 Beispielhafte Antwort-ID einer Benutzerauswahl; bei eigener Antwortliste entstehen deren eigene stabile IDs. Der zugehörige Wert beschreibt nur diese Option. ### result.selected_option_id.option.example-option-1 Beispielhafte Antwort-ID einer Benutzerauswahl; bei eigener Antwortliste entstehen deren eigene stabile IDs. Der zugehörige Wert beschreibt nur diese Option. ### result.selected_value Weitergereichter fachlicher Textwert der Antwort, geeignet für nachfolgende Vergleiche. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.was_cancelled Ob der Benutzer das Auswahlfenster ohne Antwort abgebrochen hat. Dies allein bedeutet nicht, dass der komplette Job gestoppt wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.description Zusätzliche Beschreibung für Menschen; sie ist kein auszuführender Befehl. ### schema.settings.desktopIndex Nullbasierter Monitorindex dieser Konfiguration; die Monitorreihenfolge ist rechnerabhängig. ### schema.settings.options Antwortliste mit zwei bis achtzehn Einträgen. Jeder Eintrag benötigt stabile ID, sichtbares Label und einen weitergereichten Textwert. ### schema.settings.options.id Eindeutige, stabile ID dieser Antwort innerhalb der Antwortliste. Über diese ID können nachfolgende Steps die gewählte Option erkennen. Beim Umbenennen der Beschriftung die ID beibehalten. ### schema.settings.options.label Für Menschen sichtbarer Antworttext. Verwende value für stabile fachliche Vergleiche, wenn das Label später umformuliert werden soll. ### schema.settings.options.value Optionaler Textwert, der bei Auswahl dieser Antwort weitergereicht wird, zum Beispiel „yes“. Leer verwendet den Antworttext. Mit einem stabilen Rückgabewert funktionieren Bedingungen auch nach einer Änderung der sichtbaren Beschriftung. ### schema.settings.question Fragetext der Benutzerauswahl. Formuliere ihn so, dass die angebotenen Antworten eine eindeutige Entscheidung ermöglichen. ### schema.settings.title Sichtbare Überschrift der Auswahl beziehungsweise Gruppentitel. Sie ist keine technische Identität. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "user_choice", "name": "Benutzerauswahl abfragen", "description": "Öffnet während der Job-Ausführung ein Auswahlfenster und stellt die gewählte Antwort nachfolgenden Steps bereit.", "category": "AblaufSteuern", "uiFieldIds": [ "title", "question", "description", "desktop_index", "options" ], "fields": [ { "id": "title", "name": "Überschrift (optional)", "descriptor": { "Id": "title", "LabelKey": "Ui.UserChoice.Title", "ValueKind": "Text", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "single-line-text", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "question", "name": "Titel (optional)", "descriptor": { "Id": "question", "LabelKey": "Ui.UserChoice.Question", "ValueKind": "MultilineText", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "description", "name": "Beschreibung (optional)", "descriptor": { "Id": "description", "LabelKey": "Ui.UserChoice.Description", "ValueKind": "MultilineText", "Required": false, "DefaultValue": "", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "desktop_index", "name": "Monitor", "descriptor": { "Id": "desktop_index", "LabelKey": "Ui.Step.Settings.DesktopIndex", "ValueKind": "Integer", "Required": false, "DefaultValue": 0, "DescriptionKey": null, "EditorHint": "monitor-picker", "Constraints": { "Minimum": 0, "Maximum": null, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "options", "name": "Antwortmöglichkeiten (2 bis 18, verpflichtend)", "descriptor": { "Id": "options", "LabelKey": "Ui.UserChoice.Answers", "ValueKind": "Collection", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "user-choice-options", "Constraints": { "Minimum": null, "Maximum": null, "MinimumLength": 2, "MaximumLength": 18, "AllowedValues": null }, "Width": "Full", "Advanced": false, "Order": 4, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "UserChoiceSettings", "options": [], "defaultValue": null }, { "id": "settings.description", "name": "description", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.desktopIndex", "name": "desktopIndex", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.options", "name": "options", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.options.id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.options.label", "name": "label", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.options.value", "name": "value", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.question", "name": "question", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.title", "name": "title", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [], "result": { "TypeName": "UserChoiceResult", "DisplayName": "UserChoiceResult", "Properties": [ { "Name": "SelectedOptionId", "DisplayName": "Selected Option Id", "DataType": "Enum", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": "UserChoiceResult:documentation-user_choice", "EnumValues": [ "example-option-0", "example-option-1" ], "Id": "selected_option_id", "EnumDisplayNames": { "example-option-0": "", "example-option-1": "" }, "StableId": "selected_option_id" }, { "Name": "SelectedLabel", "DisplayName": "Selected Label", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_label", "EnumDisplayNames": null, "StableId": "selected_label" }, { "Name": "SelectedValue", "DisplayName": "Selected Value", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_value", "EnumDisplayNames": null, "StableId": "selected_value" }, { "Name": "SelectedIndex", "DisplayName": "Selected Index", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "selected_index", "EnumDisplayNames": null, "StableId": "selected_index" }, { "Name": "WasCancelled", "DisplayName": "Was Cancelled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "was_cancelled", "EnumDisplayNames": null, "StableId": "was_cancelled" } ], "PropertyTree": [ { "Segment": "SelectedOptionId", "DisplayName": "Selected Option Id", "Property": { "Name": "SelectedOptionId", "DisplayName": "Selected Option Id", "DataType": "Enum", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": "UserChoiceResult:documentation-user_choice", "EnumValues": [ "example-option-0", "example-option-1" ], "Id": "selected_option_id", "EnumDisplayNames": { "example-option-0": "", "example-option-1": "" }, "StableId": "selected_option_id" }, "Children": [] }, { "Segment": "SelectedLabel", "DisplayName": "Selected Label", "Property": { "Name": "SelectedLabel", "DisplayName": "Selected Label", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_label", "EnumDisplayNames": null, "StableId": "selected_label" }, "Children": [] }, { "Segment": "SelectedValue", "DisplayName": "Selected Value", "Property": { "Name": "SelectedValue", "DisplayName": "Selected Value", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_value", "EnumDisplayNames": null, "StableId": "selected_value" }, "Children": [] }, { "Segment": "SelectedIndex", "DisplayName": "Selected Index", "Property": { "Name": "SelectedIndex", "DisplayName": "Selected Index", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "selected_index", "EnumDisplayNames": null, "StableId": "selected_index" }, "Children": [] }, { "Segment": "WasCancelled", "DisplayName": "Was Cancelled", "Property": { "Name": "WasCancelled", "DisplayName": "Was Cancelled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "was_cancelled", "EnumDisplayNames": null, "StableId": "was_cancelled" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "user_choice", "settings": { "title": "", "question": "", "description": "", "desktopIndex": 0, "options": [ { "id": "c4de30c6-f016-2700-00a7-c656a7abcf11", "label": "", "value": "" }, { "id": "5c562fe4-9360-401a-e540-39a24df5f2aa", "label": "", "value": "" } ] }, "id": "50a7ffc1-3f4c-06a1-4d31-b5461fe898cb", "inputs": {}, "is_enabled": true } ``` ## Steps: Video erstellen ID: video_creation Website: /doku/steps/video_creation/ Abbildung: [Detailansicht: Video erstellen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-video-creation.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. Speicherpfad: Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. 3. Dateiname: Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. 4. Einblendungen: Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example In einem wiederholten Job frische Bildschirmbilder erfassen und an denselben Video-Step mit gleichem Ausgabeziel weiterreichen; den Job regulär beenden. ### field.file_name Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### field.save_path Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. ### input.detections Einblendungsquellen mit Geometrie. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.text Text beziehungsweise darstellbarer Wert. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Alle kompatiblen Listeneinträge werden verarbeitet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Verbinde einen Bildstrom mit Ausgabeordner, Dateiname, Bildrate und optionalen Einblendungen. Die Aufnahme gehört zum produzierenden Step; ihre Finalisierung wird diesem Step im Verlauf zugeordnet. Ein einzelner Bild-Step liefert allein noch keinen fortlaufenden Film: wiederhole Aufnahme und Video-Step passend zum gewünschten Ablauf. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.detections_source Kompatible Erkennungs-, Rechteck- oder Punktquelle für die Einblendung. Der Eingabevertrag beschreibt die Verarbeitung mehrerer Werte. ### schema.settings.detections_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.detections_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.detections_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.detections_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.detections_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.detections_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.detections_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.detections_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.detections_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.file_name Dateiname der Bild-/Videoausgabe. Wähle ein zur Ausgabe passendes Format und prüfe vorhandene Dateien am Ziel. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay Zusammengesetzte Darstellungseinstellungen für Erkennungen und Text. Die zugrunde liegenden Ergebnisse müssen vorher erzeugt worden sein. ### schema.settings.overlay.detection_results Liste referenzierter Erkennungsergebnisse für die Einblendung. ### schema.settings.overlay.detection_results.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.detection_results.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.detection_results.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.detection_results.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.detection_results.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.detection_results.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.detection_results.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.detection_results.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.detection_results.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.overlay.text_results Liste referenzierter Text-/Anzeige-Werte für die Einblendung. ### schema.settings.overlay.text_results.clear_on_job_end Entfernt die durch diesen Job erzeugte Anzeige beim regulären Aufräumen. ### schema.settings.overlay.text_results.desktop_index Nullbasierter Zielmonitor der Desktop-Anzeige oder Benutzerauswahl. Prüfe ihn auf dem Zielrechner. ### schema.settings.overlay.text_results.duration_ms Anzeigedauer in Millisekunden. Beachte die vom Editor angebotenen Grenzen und die zusätzliche Entfernung beim Job-Ende. ### schema.settings.overlay.text_results.font_color Hex-Farbwert der Textanzeige. Wähle einen ausreichenden Kontrast zum Hintergrund. ### schema.settings.overlay.text_results.font_size Schriftgröße der Textanzeige in Punkten. Prüfe Lesbarkeit auf dem tatsächlichen Monitor und dessen Skalierung. ### schema.settings.overlay.text_results.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.settings.overlay.text_results.offset_x Zusätzlicher horizontaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.offset_y Zusätzlicher vertikaler Versatz in Pixeln relativ zum ermittelten Punkt, Referenzpunkt oder Anzeigeursprung. ### schema.settings.overlay.text_results.opacity Deckkraft als Anteil von 0 bis 1, auch im referenzierten localValues-Wert. 1 bedeutet vollständig sichtbar, 0 unsichtbar. Der Editor zeigt Prozent an. ### schema.settings.overlay.text_results.result Typisierte Ergebnisreferenz für den betreffenden Wert; Quelle und Ergebnis-ID auswählen und die Ausführungsreihenfolge beachten. ### schema.settings.overlay.text_results.result.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.overlay.text_results.result.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.overlay.text_results.result.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.overlay.text_results.result.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.overlay.text_results.result.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.overlay.text_results.result.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.overlay.text_results.result.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.overlay.text_results.result.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.overlay.text_results.result.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.save_path Ordner für die Bild-/Videoausgabe. Er muss auf dem Zielrechner erreichbar und beschreibbar sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "video_creation", "name": "Video erstellen", "description": "Speichert den aktuellen Bildstrom als Videodatei.", "category": "AnzeigenSpeichern", "uiFieldIds": [ "image_source", "save_path", "file_name", "overlay" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "save_path", "name": "Speicherpfad", "descriptor": { "Id": "save_path", "LabelKey": "Ui.Step.Settings.SavePath", "ValueKind": "DirectoryPath", "Required": true, "DefaultValue": "", "DescriptionKey": null, "EditorHint": "directory-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": { "SuggestedDirectory": "Videos", "SuggestedSubfolder": "DesktopAutomation" }, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "file_name", "name": "Dateiname", "descriptor": { "Id": "file_name", "LabelKey": "Ui.Step.Settings.FileName", "ValueKind": "Text", "Required": true, "DefaultValue": "output.mp4", "DescriptionKey": null, "EditorHint": null, "Constraints": null, "Width": "Full", "Advanced": false, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "overlay", "name": "Einblendungen", "descriptor": { "Id": "overlay", "LabelKey": "Ui.Step.Settings.Overlays", "ValueKind": "Object", "Required": false, "DefaultValue": { "detection_results": [], "text_results": [] }, "DescriptionKey": null, "EditorHint": "visual-overlay", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": { "DetectionInputContractId": "detections", "TextInputContractId": "text", "SupportsDesktopPlacement": false }, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "VideoCreationSettings", "options": [], "defaultValue": null }, { "id": "settings.detections_source", "name": "detections_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.detections_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.detections_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.detections_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.detections_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.file_name", "name": "file_name", "type": "String", "options": [], "defaultValue": "output.mp4" }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay", "name": "overlay", "type": "VisualOverlaySettings", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results", "name": "detection_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.detection_results.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results", "name": "text_results", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.clear_on_job_end", "name": "clear_on_job_end", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.desktop_index", "name": "desktop_index", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.duration_ms", "name": "duration_ms", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_color", "name": "font_color", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.font_size", "name": "font_size", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.id", "name": "id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_x", "name": "offset_x", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.offset_y", "name": "offset_y", "type": "Int32", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.opacity", "name": "opacity", "type": "Single", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result", "name": "result", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.overlay.text_results.result.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.save_path", "name": "save_path", "type": "String", "options": [], "defaultValue": "" } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "detections", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Detection", "Cardinalities": [ "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "text", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "AllValues", "AcceptedShapes": [ { "ValueKind": "Text", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Boolean", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Integer", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Number", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "DateTime", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Color", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "FilePath", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Enum", "Cardinalities": [ "Single", "OptionalSingle" ] }, { "ValueKind": "Point", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "Detection", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] }, { "ValueKind": "ProcessReference", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [ "secret" ], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "VideoCreationResult", "DisplayName": "VideoCreationResult", "Properties": [], "PropertyTree": [] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "video_creation", "settings": { "save_path": "", "file_name": "output.mp4", "image_source": { "provider_id": "", "source_id": "" }, "detections_source": { "provider_id": "", "source_id": "" }, "overlay": { "detection_results": [], "text_results": [] } }, "id": "2d39ad30-66ba-a116-67f8-f7ef96c0f247", "inputs": {}, "is_enabled": true } ``` ## Steps: Windows-Einstellung ändern ID: windows_setting_change Website: /doku/steps/windows_setting_change/ Abbildung: [Detailansicht: Windows-Einstellung ändern. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-windows-setting-change.detail.png) 1. Windows-Funktion: Windows-Funktion und dazugehörige Parameter im Editor. Wähle eine Funktion, die die gewünschte Abfrage/Änderung tatsächlich unterstützt. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example audio.mute auswählen und state auf on setzen; previous_value für die spätere Wiederherstellung lesen. ### field.capability Windows-Funktion und dazugehörige Parameter im Editor. Wähle eine Funktion, die die gewünschte Abfrage/Änderung tatsächlich unterstützt. ### purpose Wähle eine Windows-Funktion, die Einstellungsänderungen unterstützt, und ergänze deren Parameter. Der Step meldet vorherigen und angewendeten Wert sowie Erfolg oder Fehler. Administratorrechte und gerätespezifische Voraussetzungen stehen auf der jeweiligen Funktionsseite; sie können nicht durch eine JSON-Einstellung ersetzt werden. ### result.windows_setting.applied_value Vom Windows-Provider gemeldeter angewendeter Wert nach der Änderung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.previous_value Vor der Windows-Änderung beobachteter Wert. Für eine Wiederherstellung nur mit derselben Funktion und kompatibler Darstellung verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.restart_required Ob die abgefragte Funktion beziehungsweise Windows Update einen Neustartbedarf meldet. Einzelwert dieses Ergebnisses. ### result.windows_setting.setting_id Kennung der geänderten Windows-Funktion. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.windows_setting.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.windows_setting.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.windows_setting.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.windows_setting.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.windows_setting.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.parameters Benannte Parameter der Windows-Funktion beziehungsweise bereinigte Diagnoseparameter im Log. Parameternamen sind stabil und keine UI-Labels. ### schema.settings.setting_id Stabile Kennung der zu ändernden Windows-Einstellung. Ihre Parameter sind im Windows-Funktionskatalog dokumentiert. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_setting_change", "name": "Windows-Einstellung ändern", "description": "Ändert eine ausgewählte Windows-Einstellung und liefert den vorherigen sowie den angewendeten Wert.", "category": "WindowsSystem", "uiFieldIds": [ "capability" ], "fields": [ { "id": "capability", "name": "Windows-Funktion", "descriptor": { "Id": "capability", "LabelKey": "Ui.Windows.Capability", "ValueKind": "Object", "Required": true, "DefaultValue": { "capability_id": "audio.master_volume", "parameters": { "value": "50" } }, "DescriptionKey": null, "EditorHint": "windows-capability-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": { "Mode": "SettingChange" }, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "WindowsSettingChangeSettings", "options": [], "defaultValue": null }, { "id": "settings.parameters", "name": "parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.setting_id", "name": "setting_id", "type": "String", "options": [], "defaultValue": "audio.master_volume" } ], "inputs": [], "result": { "TypeName": "WindowsSettingChangeResult", "DisplayName": "WindowsSettingChangeResult", "Properties": [ { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "windows_setting.status", "EnumDisplayNames": null, "StableId": "windows_setting.status" }, { "Name": "SettingId", "DisplayName": "Einstellung", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.setting_id", "EnumDisplayNames": null, "StableId": "windows_setting.setting_id" }, { "Name": "PreviousValue", "DisplayName": "Vorheriger Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.previous_value", "EnumDisplayNames": null, "StableId": "windows_setting.previous_value" }, { "Name": "AppliedValue", "DisplayName": "Angewendeter Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.applied_value", "EnumDisplayNames": null, "StableId": "windows_setting.applied_value" }, { "Name": "RestartRequired", "DisplayName": "Neustart erforderlich", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.restart_required", "EnumDisplayNames": null, "StableId": "windows_setting.restart_required" }, { "Name": "ErrorCode", "DisplayName": "Fehlercode", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.error_code", "EnumDisplayNames": null, "StableId": "windows_setting.error_code" } ], "PropertyTree": [ { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "windows_setting.status", "EnumDisplayNames": null, "StableId": "windows_setting.status" }, "Children": [] }, { "Segment": "SettingId", "DisplayName": "Einstellung", "Property": { "Name": "SettingId", "DisplayName": "Einstellung", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.setting_id", "EnumDisplayNames": null, "StableId": "windows_setting.setting_id" }, "Children": [] }, { "Segment": "PreviousValue", "DisplayName": "Vorheriger Wert", "Property": { "Name": "PreviousValue", "DisplayName": "Vorheriger Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.previous_value", "EnumDisplayNames": null, "StableId": "windows_setting.previous_value" }, "Children": [] }, { "Segment": "AppliedValue", "DisplayName": "Angewendeter Wert", "Property": { "Name": "AppliedValue", "DisplayName": "Angewendeter Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.applied_value", "EnumDisplayNames": null, "StableId": "windows_setting.applied_value" }, "Children": [] }, { "Segment": "RestartRequired", "DisplayName": "Neustart erforderlich", "Property": { "Name": "RestartRequired", "DisplayName": "Neustart erforderlich", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.restart_required", "EnumDisplayNames": null, "StableId": "windows_setting.restart_required" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Fehlercode", "Property": { "Name": "ErrorCode", "DisplayName": "Fehlercode", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.error_code", "EnumDisplayNames": null, "StableId": "windows_setting.error_code" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "windows_setting_change", "settings": { "setting_id": "audio.master_volume", "parameters": {} }, "id": "cdf47e67-4f34-aa28-2720-e262a0db31d5", "inputs": {}, "is_enabled": true } ``` ## Steps: Windows-Zustand abfragen ID: windows_state_query Website: /doku/steps/windows_state_query/ Abbildung: [Detailansicht: Windows-Zustand abfragen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-windows-state-query.detail.png) 1. Windows-Funktion: Windows-Funktion und dazugehörige Parameter im Editor. Wähle eine Funktion, die die gewünschte Abfrage/Änderung tatsächlich unterstützt. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example process.running mit name=notepad abfragen und is_running als Bedingung verwenden. ### field.capability Windows-Funktion und dazugehörige Parameter im Editor. Wähle eine Funktion, die die gewünschte Abfrage/Änderung tatsächlich unterstützt. ### purpose Wähle eine Windows-Funktion mit Zustandsabfrage. Ihr konkreter Ergebnisvertrag bestimmt die verfügbaren Werte; ein Wechsel der Funktion kann bestehende nachfolgende Referenzen ungültig machen. Nutze beispielsweise Netzwerkstatus, Leerlauf oder laufende Prozesse für eine Bedingung. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.connection_type Art der ermittelten Netzwerkverbindung, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.connection_type.option.Ethernet Kabelgebundene Ethernet-Verbindung. ### result.connection_type.option.Mobile Mobilfunkverbindung. ### result.connection_type.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.connection_type.option.Virtual Virtueller Netzwerkadapter beziehungsweise virtuelle Verbindung. ### result.connection_type.option.WiFi Drahtlose WLAN-Verbindung. ### result.connectivity Vom Netzwerkprovider gemeldete Verbindungsqualität beziehungsweise Konnektivität. Einzelwert dieses Ergebnisses. ### result.connectivity.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.connectivity.option.Internet Windows meldet Internetkonnektivität. ### result.connectivity.option.LocalNetwork Windows meldet lokale Netzwerkkonnektivität ohne belegten Internetzugang. ### result.connectivity.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.parameters Benannte Parameter der Windows-Funktion beziehungsweise bereinigte Diagnoseparameter im Log. Parameternamen sind stabil und keine UI-Labels. ### schema.settings.query_type Stabile Kennung der Windows-Zustandsabfrage. Nach einem Wechsel nachfolgende Ergebnisbindungen erneut prüfen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_state_query", "name": "Windows-Zustand abfragen", "description": "Fragt einen aktuellen Windows-Zustand ab und stellt das Ergebnis nachfolgenden Steps bereit.", "category": "WindowsSystem", "uiFieldIds": [ "capability" ], "fields": [ { "id": "capability", "name": "Windows-Funktion", "descriptor": { "Id": "capability", "LabelKey": "Ui.Windows.Capability", "ValueKind": "Object", "Required": true, "DefaultValue": { "capability_id": "network.connectivity", "parameters": {} }, "DescriptionKey": null, "EditorHint": "windows-capability-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": { "Mode": "StateQuery" }, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "WindowsStateQuerySettings", "options": [], "defaultValue": null }, { "id": "settings.parameters", "name": "parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.query_type", "name": "query_type", "type": "String", "options": [], "defaultValue": "network.connectivity" } ], "inputs": [], "result": { "TypeName": "NetworkConnectivityQueryResult", "DisplayName": "NetworkConnectivityQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Connectivity", "DisplayName": "Connectivity", "Property": { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, "Children": [] }, { "Segment": "ConnectionType", "DisplayName": "Connection Type", "Property": { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "windows_state_query", "settings": { "query_type": "network.connectivity", "parameters": {} }, "id": "6e1150cf-6454-7283-17b2-4a12a6c84fb9", "inputs": {}, "is_enabled": true } ``` ## Steps: Objekte erkennen ID: yolo_detection Website: /doku/steps/yolo_detection/ Abbildung: [Detailansicht: Objekte erkennen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion. Zusammengestellte Ausschnitte echter Einstellungsfelder mit Beispielwerten; die Nummer markiert Beschriftung und Eingabe gemeinsam.](/ref-step-yolo-detection.detail.png) 1. Bildquelle: Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. 2. YOLO-Modell: Wähle zuerst ein auf dem Zielrechner verfügbares YOLO-Modell und danach die gewünschte Objektklasse aus dessen Klassenliste. Das Modell bestimmt, welche Objekte erkannt werden können; eine freie Klassenbezeichnung ersetzt keinen Modell-Eintrag. 3. Bildbereich (ROI): Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. 4. Konfidenz (%): Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### errors Prüfe die in dieser Referenz beschriebenen aktiven Pflichtfelder, kompatible Wertequellen und die Voraussetzungen auf dem Zielrechner. Ungültige Quellen oder Typen sind Fehler; eine gültige, aber nicht verfügbare optionale Quelle kann gemäß Eingabevertrag zum Überspringen führen. Ein Fehler beendet die Start-/Hauptphase; die vorgesehene Endphase wird zum Aufräumen behandelt. Der Verlauf zeigt den tatsächlich belegten Status. ### example Ein kompatibles installiertes Modell auswählen und Erkennungen einer Bildschirmaufnahme im Vorschaufenster einblenden. ### field.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### field.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### field.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### field.yolo_selection Wähle zuerst ein auf dem Zielrechner verfügbares YOLO-Modell und danach die gewünschte Objektklasse aus dessen Klassenliste. Das Modell bestimmt, welche Objekte erkannt werden können; eine freie Klassenbezeichnung ersetzt keinen Modell-Eintrag. ### input.dynamicRoi dynamischer Suchbereich. Eine gültige, aber noch nicht verfügbare optionale Step-Quelle kann den Verbraucher mit NoInput überspringen; malformed Referenzen bleiben Fehler. Bei kompatiblen Listen wird der erste Wert verwendet. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### input.image Bildobjekt einer Aufnahme. Fehlende erforderliche Werte führen zum Fehler. Es wird kein beliebiges Listenelement ausgewählt. Akzeptierte Typen und Anbieter stehen in den Vertragsspalten; unbegrenzte Anbieterwahl bedeutet weiterhin Typprüfung. ### purpose Wähle ein installiertes YOLO-Modell, Bildquelle und Mindestkonfidenz. Das Modell liefert erkannte Klassen, Rechtecke und Punkte. Seine Klassen und Genauigkeit hängen vom gewählten Modell ab; found und all_detections beschreiben die tatsächlichen Treffer dieses Laufs. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### schema.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### schema.inputs Zuordnung von UI-Feld-ID zu typisierter Wertequelle. Bei vorhandenen inputs serialisiert der kanonische Job-Serializer settings nicht zusätzlich. Leere inputs mit settings bleiben als Legacy-/direkte Konfiguration lesbar. ### schema.inputs.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.inputs.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.inputs.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.inputs.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.inputs.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.inputs.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.inputs.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.inputs.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.inputs.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.is_enabled true führt den Step aus; false deaktiviert ihn. Blockmarker können in der UI nicht beliebig deaktiviert werden, weil ihre Struktur erhalten bleiben muss. ### schema.settings Direkte beziehungsweise ältere Step-Konfiguration. Für neue referenzbasierte Dateien inputs und localValues verwenden; die UI migriert gespeicherte Literalwerte in lokale Quellen. ### schema.settings.class_name Name einer vom gewählten Modell gelieferten Klasse. Verwende vorhandene Modellklassen statt frei erfundener Objektbezeichnungen. ### schema.settings.confidence_threshold Mindestkonfidenz als Anteil von 0 bis 1, auch im referenzierten localValues-Wert: 0.9 bedeutet 90 %. Der Editor zeigt Prozent an. ### schema.settings.dynamic_roi_source Kompatible dynamische Rechteckquelle. Eine spätere DynamicRoi-Quelle darf Feedback für den nächsten Durchlauf liefern; dies ist eine besondere Ausnahme von normalen Vorwärtsreferenzen. ### schema.settings.dynamic_roi_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.dynamic_roi_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.dynamic_roi_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.dynamic_roi_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.dynamic_roi_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.dynamic_roi_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.dynamic_roi_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.dynamic_roi_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.dynamic_roi_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.enable_roi Aktiviert den direkt konfigurierten Suchbereich. Ohne Aktivierung wird der Standardbereich der Quelle verwendet, sofern keine dynamische ROI-Quelle greift. ### schema.settings.image_source Bildobjekt eines Aufnahme-Steps. Ein Dateipfad als Text ist nicht automatisch eine kompatible Bildquelle. ### schema.settings.image_source.items Geordnete Unterbindungen einer Liste. Die Reihenfolge ist Teil der Eingabe; Elemente müssen das Listenelement-Schema erfüllen. ### schema.settings.image_source.members Benannte Unterbindungen eines strukturierten Werts. Jeder Schlüssel ist eine stabile Mitglied-ID des Feldschemas; Unterbindungen können Werte einer Basisquelle gezielt überschreiben. ### schema.settings.image_source.property_id Stabile Ergebnis-ID einer älteren Step-Referenz. Neue Dateien kodieren sie in source_id; nicht mit einem CLR-Propertynamen oder dem UI-Label verwechseln. ### schema.settings.image_source.property_path Älterer Pfad zu einem Ergebnis-Unterwert. Bestehende Dateien bleiben lesbar; neue Referenzen verwenden stabile Ergebnis-IDs und gegebenenfalls value_path. ### schema.settings.image_source.provider_id Anbieter der Wertequelle: local_value, job_variable, step_result oder secret. Ein Quellwert benötigt zusätzlich source_id und muss zum Eingabetyp passen. ### schema.settings.image_source.schema_id Versionierte Form eines zusammengesetzten Eingabewerts. Sie gehört zum Bindungsbaum, nicht als frei erfundener Schlüssel in die Variable. Übernimm die für dieses Feld exportierte Schema-ID. ### schema.settings.image_source.source_id Anbieterbezogene Identität. Bei step_result: v1//; bei lokalen Werten und Jobvariablen deren GUID. Dies ist nicht nur die rohe Step-ID. ### schema.settings.image_source.source_step_id Kompatibilitätsfeld älterer Referenzen. Neue Referenzen verwenden provider_id=step_result und die versionierte source_id. ### schema.settings.image_source.value_path Optionaler Pfad unterhalb einer Anbieterquelle, zum Beispiel zu einem typisierten Objektmitglied. Er ändert den Quellanbieter nicht; der ausgewählte Unterwert muss kompatibel sein. ### schema.settings.model Modellkennung beziehungsweise Modellwahl der betreffenden Erkennung/Vorhersage. Sie bestimmt die unterstützten Ausgaben und muss auf dem Zielrechner verfügbar sein. ### schema.settings.roi Suchrechteck in Pixeln relativ zur Bildquelle. x/y bestimmen die linke obere Ecke, width/height die Größe; es muss zur Quelle passen. ### schema.settings.roi.Empty Vom serialisierten Geometrieobjekt angebotener Leerzustand. Kein eigener ROI-Schalter: den Suchbereich mit enable_roi beziehungsweise roi.enabled und den Koordinaten konfigurieren; dieses abgeleitete Mitglied nicht als Eingabequelle verwenden. ### schema.settings.roi.height Höhe des Rechtecks oder Bildformats in Pixeln. Negative Größen sind kein gültiger Suchbereich. ### schema.settings.roi.width Breite des Rechtecks oder Bildformats in Pixeln. Zusammen mit Höhe und Ursprung ergibt sie die räumliche Größe. ### schema.settings.roi.x Horizontale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate X = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### schema.settings.roi.y Vertikale Position der linken oberen Ecke des Suchrechtecks in Pixeln relativ zum Quellbild. Beispiel 100 startet den Bereich bei Bildkoordinate Y = 100; Bildschirm- und Bildkoordinaten können voneinander abweichen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "yolo_detection", "name": "Objekte erkennen", "description": "Erkennt Objekte mithilfe eines YOLO-Modells und speichert ihre Position.", "category": "BildAuswerten", "uiFieldIds": [ "image_source", "yolo_selection", "roi", "confidence_threshold" ], "fields": [ { "id": "image_source", "name": "Bildquelle", "descriptor": { "Id": "image_source", "LabelKey": "Ui.Step.Settings.ImageSource", "ValueKind": "ResultBinding", "Required": true, "DefaultValue": null, "DescriptionKey": null, "EditorHint": "value-reference-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 0, "VisibleWhen": null, "Options": null, "InputContractId": "image", "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "yolo_selection", "name": "YOLO-Modell", "descriptor": { "Id": "yolo_selection", "LabelKey": "Ui.Step.Settings.Model", "ValueKind": "Object", "Required": true, "DefaultValue": { "model": "", "class_name": "" }, "DescriptionKey": null, "EditorHint": "yolo-picker", "Constraints": null, "Width": "Full", "Advanced": false, "Order": 1, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": { "RecommendedConfidenceTargetFieldId": "confidence_threshold" }, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "roi", "name": "Bildbereich (ROI)", "descriptor": { "Id": "roi", "LabelKey": "Ui.Step.Settings.ROI", "ValueKind": "Object", "Required": false, "DefaultValue": { "enabled": false, "x": 0, "y": 0, "width": 0, "height": 0, "dynamic_source": null }, "DescriptionKey": null, "EditorHint": "roi-picker", "Constraints": null, "Width": "Full", "Advanced": true, "Order": 2, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": { "DynamicInputContractId": "dynamicRoi" }, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } }, { "id": "confidence_threshold", "name": "Konfidenz (%)", "descriptor": { "Id": "confidence_threshold", "LabelKey": "Ui.Step.Settings.ConfidencePercent", "ValueKind": "Number", "Required": false, "DefaultValue": 0.5, "DescriptionKey": null, "EditorHint": "percentage", "Constraints": { "Minimum": 0, "Maximum": 1, "MinimumLength": null, "MaximumLength": null, "AllowedValues": null }, "Width": "Full", "Advanced": true, "Order": 3, "VisibleWhen": null, "Options": null, "InputContractId": null, "VisibleWhenAll": null, "VisualOverlayOptions": null, "DirectoryPickerOptions": null, "FilePickerOptions": null, "RoiPickerOptions": null, "YoloPickerOptions": null, "WindowsCapabilityPickerOptions": null, "ScreenPointPickerOptions": null, "AllowsDirectValue": null, "MonitorDeviceNameFieldId": null } } ], "schema": [ { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs", "name": "inputs", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "inputs.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "inputs.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": null }, { "id": "inputs.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "is_enabled", "name": "is_enabled", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "settings", "name": "settings", "type": "YOLODetectionStepSettings", "options": [], "defaultValue": null }, { "id": "settings.class_name", "name": "class_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.confidence_threshold", "name": "confidence_threshold", "type": "Single", "options": [], "defaultValue": 0.5 }, { "id": "settings.dynamic_roi_source", "name": "dynamic_roi_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.dynamic_roi_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.dynamic_roi_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.enable_roi", "name": "enable_roi", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "settings.image_source", "name": "image_source", "type": "ResultBinding", "options": [], "defaultValue": null }, { "id": "settings.image_source.items", "name": "items", "type": "List`1", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_id", "name": "property_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.property_path", "name": "property_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_step_id", "name": "source_step_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.members", "name": "members", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "settings.image_source.provider_id", "name": "provider_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.schema_id", "name": "schema_id", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.image_source.source_id", "name": "source_id", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.image_source.value_path", "name": "value_path", "type": "String", "options": [], "defaultValue": null }, { "id": "settings.model", "name": "model", "type": "String", "options": [], "defaultValue": "" }, { "id": "settings.roi", "name": "roi", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.Empty", "name": "Empty", "type": "PixelRegion", "options": [], "defaultValue": { "x": 0, "y": 0, "width": 0, "height": 0 } }, { "id": "settings.roi.height", "name": "height", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.width", "name": "width", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "settings.roi.y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 } ], "inputs": [ { "Key": "image", "Required": true, "MissingValuePolicy": "FailStep", "CollectionConsumption": "NotApplicable", "AcceptedShapes": [ { "ValueKind": "Image", "Cardinalities": [ "Single", "OptionalSingle" ] } ], "AllowedProviderIds": [ "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] }, { "Key": "dynamicRoi", "Required": false, "MissingValuePolicy": "SkipStep", "CollectionConsumption": "FirstValue", "AcceptedShapes": [ { "ValueKind": "Rectangle", "Cardinalities": [ "Single", "OptionalSingle", "Collection" ] } ], "AllowedProviderIds": [ "job_variable", "step_result" ], "LegacyAllowedProviderIds": [], "AllowsDirectValue": false, "LegacyAcceptedShapes": [] } ], "result": { "TypeName": "YOLODetectionResult", "DisplayName": "YOLODetectionResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "yolo_detection", "settings": { "model": "", "confidence_threshold": 0.5, "class_name": "", "roi": { "x": 0, "y": 0, "width": 0, "height": 0 }, "enable_roi": false, "image_source": { "provider_id": "", "source_id": "" }, "dynamic_roi_source": { "provider_id": "", "source_id": "" } }, "id": "84d7921e-2d7a-d7f3-ad05-8f65a32352c8", "inputs": {}, "is_enabled": true } ``` ## Automationen: Datei- oder Ordnerereignis ID: file_system_event Website: /doku/automationen/file_system_event/ Abbildung: [Ordnerüberwachung mit Beispieldateipfad und Filter für Textdateien. Der Beispielpfad muss vor Verwendung angepasst werden.](/automation-ordner.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Ereignis: Wählt die Art der Änderung aus, auf die der Trigger reagiert. 3. Dateifilter: Schränkt die überwachten Namen ein, beispielsweise auf *.txt. 4. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 5. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 6. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Sicherungsbeispiel: Created und *.txt im Rechnungsordner starten den Rückfrage-Job. ### field.directory_path Vorhandener beobachteter Ordner des Datei-Triggers. Die App benötigt Zugriff auf ihn; ein nicht vorhandener Ordner ist keine gültige Automation. ### field.event_kind Beobachtetes Fenster-, Datei- oder Systemereignis. Wähle nur die Optionen dieses Trigger-Typs. ### field.event_kind.option.Changed Beobachteter Eintrag wurde geändert. ### field.event_kind.option.Created Datei-/Ordnereintrag wurde erstellt. ### field.event_kind.option.Deleted Beobachteter Eintrag wurde entfernt. ### field.event_kind.option.Renamed Beobachteter Eintrag wurde umbenannt. ### field.filter Optionales Dateimuster wie *.txt. Beim Ordner-Trigger begrenzt es die beobachteten Einträge; bei Dateiaktionen gilt es nur für die dafür angebotene Aktion. ### field.include_subdirectories Beobachtet auch Unterordner unterhalb des angegebenen Pfads. Eine größere Baumstruktur kann mehr Ereignisse erzeugen. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.wait_until_ready Wartet bei unterstützten Datei-Ereignissen auf Verwendbarkeit der Datei, bevor der Zielablauf gestartet wird. Es ersetzt keine Zugriffsrechte. ### purpose Beobachtet einen vorhandenen Ordner mit Dateimuster und optionalen Unterordnern. Created, Changed, Deleted oder Renamed bestimmen die Ereignisart. Dateisystemereignisse können mehrfach auftreten; Readiness und RunPolicy begrenzen Starts, ersetzen aber keine fachliche Deduplizierung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "file_system_event", "name": "Datei- oder Ordnerereignis", "fields": [ { "id": "directory_path", "name": "directory_path", "type": "String", "options": [], "defaultValue": "" }, { "id": "event_kind", "name": "event_kind", "type": "FileSystemAutomationEventKind", "options": [ "Created", "Changed", "Deleted", "Renamed" ], "defaultValue": "Created" }, { "id": "filter", "name": "filter", "type": "String", "options": [], "defaultValue": "*.*" }, { "id": "include_subdirectories", "name": "include_subdirectories", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "FileSystemEvent" }, { "id": "wait_until_ready", "name": "wait_until_ready", "type": "Boolean", "options": [], "defaultValue": true } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "file_system_event", "Kind": "FileSystemEvent", "event_kind": "Created", "directory_path": "", "filter": "*.*", "include_subdirectories": false, "wait_until_ready": true, "kind": "FileSystemEvent" } ``` ## Automationen: Hotkey ID: hotkey Website: /doku/automationen/hotkey/ Abbildung: [Strg+Alt+U als Auslöser für den Job Arbeitsunterlagen vorbereiten.](/automation-hotkey.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Hotkey: Die angezeigte Tastenkombination löst die Automation aus. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Unterlagenbeispiel: Strg+Alt+U startet den ausgewählten Job. ### field.debounce Mindestabstand zur Entprellung mehrfacher Trigger-Ereignisse als TimeSpan-Text, zum Beispiel 00:00:01. Dies ist nicht die allgemeine Ziel-Cooldown-Regel. ### field.delay_after_event Verzögerung zwischen Ereignisbeobachtung und Startentscheidung als TimeSpan-Text, zum Beispiel 00:00:02. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.modifiers Bitmaske der Modifikatortasten: None=0, Alt=1, Control=2, Shift=4, Windows=8; kombinierte Werte addieren, etwa 3 für Strg+Alt. ### field.modifiers.option.Alt Alt-Modifikator; numerische Bitmaske 1. ### field.modifiers.option.Control Strg-Modifikator; numerische Bitmaske 2. ### field.modifiers.option.None Keine Modifikatortaste; numerische Bitmaske 0. ### field.modifiers.option.Shift Umschalt-Modifikator; numerische Bitmaske 4. ### field.modifiers.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.virtual_key_code Windows-Virtual-Key-Code der Trigger-Taste als Zahl, zum Beispiel 85 für U. Mit modifiers kombinieren und auf bestehende Tastenkombinationen prüfen. ### purpose Startet das gewählte Ziel über eine Tastenkombination. Wähle Taste und Modifikatoren, prüfe Konflikte und aktiviere erst nach einem manuellen Test. debounce entprellt den Trigger, delay_after_event verschiebt seine Startentscheidung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "hotkey", "name": "Hotkey", "fields": [ { "id": "debounce", "name": "debounce", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "delay_after_event", "name": "delay_after_event", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "Hotkey" }, { "id": "modifiers", "name": "modifiers", "type": "KeyModifiers", "options": [ "None", "Alt", "Control", "Shift", "Windows" ], "defaultValue": "None" }, { "id": "virtual_key_code", "name": "virtual_key_code", "type": "UInt32", "options": [], "defaultValue": 0 } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "hotkey", "Kind": "Hotkey", "modifiers": 0, "virtual_key_code": 0, "debounce": "00:00:00", "delay_after_event": "00:00:00", "kind": "Hotkey" } ``` ## Automationen: Intervall ID: interval Website: /doku/automationen/interval/ Abbildung: [Detailansicht: Intervall. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-interval.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Intervall: Abstand zwischen zwei geplanten Ausführungen; Zahl und Einheit gehören zusammen. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.interval Positiver Wiederholungsabstand als TimeSpan-Text, zum Beispiel 00:15:00 für fünfzehn Minuten. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.start_immediately Startet die Intervall-Automation beim Aktivieren unmittelbar, bevor das erste Intervall abgewartet wird. ### purpose Startet das Ziel nach einem positiven Wiederholungsintervall. start_immediately entscheidet über den ersten unmittelbaren Start beim Aktivieren. Prüfe bereits laufende Ziele und Cooldown, wenn ein Lauf länger dauert als sein Intervall. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "interval", "name": "Intervall", "fields": [ { "id": "interval", "name": "interval", "type": "TimeSpan", "options": [], "defaultValue": "00:15:00" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "Interval" }, { "id": "start_immediately", "name": "start_immediately", "type": "Boolean", "options": [], "defaultValue": true } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "interval", "Kind": "Interval", "interval": "00:15:00", "start_immediately": true, "kind": "Interval" } ``` ## Automationen: Einmalig ID: once_at Website: /doku/automationen/once_at/ Abbildung: [Detailansicht: Einmalig. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-once-at.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Ausführung: Datum und Uhrzeit des einmaligen Starts. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.run_at Zeitpunkt der einmaligen Ausführung mit Zeitzonenoffset, etwa 2030-01-01T08:00:00+01:00. Er muss für die Einrichtung in der Zukunft liegen. ### purpose Startet das Ziel einmal zu run_at. Gib einen zukünftigen Zeitpunkt mit eindeutigem Zeitzonenoffset an. Nach dem Termin ist dies kein täglich wiederkehrender Zeitplan. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "once_at", "name": "Einmalig", "fields": [ { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "OnceAt" }, { "id": "run_at", "name": "run_at", "type": "DateTimeOffset", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "once_at", "Kind": "OnceAt", "run_at": "2030-01-01T08:00:00+00:00", "kind": "OnceAt" } ``` ## Automationen: Prozess beendet ID: process_exited Website: /doku/automationen/process_exited/ Abbildung: [Detailansicht: Prozess beendet. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-process-exited.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Prozessname: Name des Prozesses, dessen Beenden beobachtet wird. 3. Fenstertitel enthält (optional): Grenzt den beobachteten Prozess auf einen passenden Fenstertitel ein. 4. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 5. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 6. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.delay_after_event Verzögerung zwischen Ereignisbeobachtung und Startentscheidung als TimeSpan-Text, zum Beispiel 00:00:02. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### field.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### purpose Beobachtet das Ende passender Prozesse. Die Automation startet ihre eigene Zielaktion und garantiert nicht, dass ein zuvor beendetes Programm noch für Eingaben verfügbar ist. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "process_exited", "name": "Prozess beendet", "fields": [ { "id": "delay_after_event", "name": "delay_after_event", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "ProcessExited" }, { "id": "process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "process_exited", "Kind": "ProcessExited", "process_name": "", "window_title_contains": "", "delay_after_event": "00:00:00", "kind": "ProcessExited" } ``` ## Automationen: Prozess gestartet ID: process_started Website: /doku/automationen/process_started/ Abbildung: [Detailansicht: Prozess gestartet. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-process-started.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Prozessname: Name des Prozesses, dessen Start beobachtet wird. 3. Fenstertitel enthält (optional): Grenzt den beobachteten Prozess auf einen passenden Fenstertitel ein. 4. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 5. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 6. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.delay_after_event Verzögerung zwischen Ereignisbeobachtung und Startentscheidung als TimeSpan-Text, zum Beispiel 00:00:02. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### field.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### purpose Beobachtet neu erscheinende passende Prozesse. Prozessname und optionaler Titelteil grenzen das Ereignis ein. Ein bereits vor Aktivierung laufender Prozess ist nicht automatisch ein neu beobachteter Start. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "process_started", "name": "Prozess gestartet", "fields": [ { "id": "delay_after_event", "name": "delay_after_event", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "ProcessStarted" }, { "id": "process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "process_started", "Kind": "ProcessStarted", "process_name": "", "window_title_contains": "", "delay_after_event": "00:00:00", "kind": "ProcessStarted" } ``` ## Automationen: Zeitplan ID: schedule Website: /doku/automationen/schedule/ Abbildung: [Zeitplan und Ausführungsregeln einer Automation.](/automationen.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Uhrzeit und Tage: Legt die Uhrzeit und Wochentage der wiederkehrenden Ausführung fest. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Arbeitsplatzbeispiel: Schedule an Werktagen um 08:30 startet den Arbeitsplatz-Job. ### field.days Menge erlaubter Wochentage. Eine leere Menge ist kein gültiger Zeitplan; JSON verwendet DayOfWeek-Namen im Automation-Serializer. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.time_of_day Uhrzeit des Zeitplans als TimeOnly-Text, zum Beispiel 08:30:00. Sie wird zusammen mit days ausgewertet. ### purpose Startet das Ziel an ausgewählten Wochentagen zu time_of_day. Mindestens einen Tag wählen und die lokale Uhrzeit auf dem Zielrechner prüfen. Das tägliche Aktivitätsfenster der RunPolicy ist eine zusätzliche Einschränkung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "schedule", "name": "Zeitplan", "fields": [ { "id": "days", "name": "days", "type": "HashSet`1", "options": [], "defaultValue": null }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "Schedule" }, { "id": "time_of_day", "name": "time_of_day", "type": "TimeOnly", "options": [], "defaultValue": "08:00:00" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "schedule", "Kind": "Schedule", "time_of_day": "08:00:00", "days": [ 1, 2, 3, 4, 5 ], "kind": "Schedule" } ``` ## Automationen: Windows-Systemereignis ID: system_event Website: /doku/automationen/system_event/ Abbildung: [Detailansicht: Windows-Systemereignis. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-system-event.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Systemereignis: Das ausgewählte Windows-Ereignis startet die Automation. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.event_kind Beobachtetes Fenster-, Datei- oder Systemereignis. Wähle nur die Optionen dieses Trigger-Typs. ### field.event_kind.option.Resume Fortsetzen nach einem Energiesparzustand. ### field.event_kind.option.SessionLocked Windows-Sitzung wurde gesperrt. ### field.event_kind.option.SessionUnlocked Windows-Sitzung wurde entsperrt. ### field.event_kind.option.Suspend Wechsel in den Energiespar-/Standbyzustand. ### field.event_kind.option.SystemShutdown Herunterfahren wird beobachtet; verfügbare Ausführungszeit kann begrenzt sein. ### field.event_kind.option.UserLogoff Abmeldung des Benutzers wird beobachtet. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### purpose Beobachtet unterstützte Sitzung-/Systemereignisse wie Sperren, Entsperren, Standby und Fortsetzen. Beim Herunterfahren/Abmelden kann die verbleibende Zeit kurz sein; verwende dafür kurze, bereits getestete Zielabläufe. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system_event", "name": "Windows-Systemereignis", "fields": [ { "id": "event_kind", "name": "event_kind", "type": "SystemAutomationEventKind", "options": [ "SessionLocked", "SessionUnlocked", "UserLogoff", "SystemShutdown", "Suspend", "Resume" ], "defaultValue": "SessionLocked" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "SystemEvent" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "system_event", "Kind": "SystemEvent", "event_kind": "SessionLocked", "kind": "SystemEvent" } ``` ## Automationen: Webhook ID: webhook Website: /doku/automationen/webhook/ Abbildung: [Detailansicht: Webhook. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-webhook.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Erreichbarkeit: Bestimmt, ob der HTTP-Auslöser lokal oder im Netzwerk erreichbar ist. 3. Port: Port des lokalen HTTP-Listeners. 4. Webhook-URL: Zieladresse des authentifizierten POST-Aufrufs; hier mit Beispieldaten. 5. Webhook-Secret: Authentifizierung des Aufrufs; der abgebildete Wert ist ein erfundenes Beispiel. 6. PowerShell-Aufruf: Kopierbares Aufrufmuster mit POST, Authentifizierung und JSON-Body. 7. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.hook_id Stabile GUID des Webhook-Endpunkts /api/v1/webhooks/. Sie ist die Routing-ID und nicht der geheime Zugangsschlüssel. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.network_mode Offline bindet lokal, Lan erlaubt lokale Netzwerkzugriffe, Online benötigt eine konfigurierte HTTPS-Basisadresse. Eine Online-Einstellung richtet keinen Tunnel automatisch ein. ### field.network_mode.option.Lan Webhook-Listener für das lokale Netzwerk binden; Zugriff weiterhin mit Secret authentifizieren. ### field.network_mode.option.Offline Webhook-Listener nur lokal verwenden. ### field.network_mode.option.Online Externen Zugriff über eine separat eingerichtete HTTPS-Adresse konfigurieren. ### field.online_base_url Öffentliche HTTPS-Basisadresse ohne Query und Fragment für Online-Webhooks. Bereitstellung/Weiterleitung muss separat eingerichtet sein. ### field.port Lokaler Listener-Port von 1024 bis 65535; Standard 17843. Er darf nicht bereits von einem anderen Dienst belegt sein. ### field.secret Webhook-Zugangsschlüssel mit mindestens 24 Zeichen. Beim Aufruf X-Webhook-Secret oder Authorization: Bearer verwenden; kein echtes Secret in öffentlich geteilte Beispieldateien schreiben. ### purpose Startet die konfigurierte Aktion über POST /api/v1/webhooks/. Der Aufruf muss X-Webhook-Secret oder Authorization: Bearer mit dem gespeicherten Secret senden. HTTP 202 bestätigt eine angenommene Auslösung, nicht den erfolgreichen Abschluss des Jobs; diesen im Verlauf prüfen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "webhook", "name": "Webhook", "fields": [ { "id": "hook_id", "name": "hook_id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "Webhook" }, { "id": "network_mode", "name": "network_mode", "type": "WebhookNetworkMode", "options": [ "Offline", "Lan", "Online" ], "defaultValue": "Offline" }, { "id": "online_base_url", "name": "online_base_url", "type": "String", "options": [], "defaultValue": "" }, { "id": "port", "name": "port", "type": "Int32", "options": [], "defaultValue": 17843 }, { "id": "secret", "name": "secret", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "webhook", "Kind": "Webhook", "hook_id": "d4fa91c4-b683-2c23-b89c-7ab50f8b606c", "network_mode": "Offline", "port": 17843, "secret": "DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD", "online_base_url": "", "kind": "Webhook" } ``` ## Automationen: Fensterereignis ID: window_event Website: /doku/automationen/window_event/ Abbildung: [Detailansicht: Fensterereignis. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-window-event.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Ereignis: Wählt die zu beobachtende Fensteränderung. 3. Prozessname (optional): Beschränkt die Beobachtung auf den angegebenen Prozess. 4. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 5. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 6. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.delay_after_event Verzögerung zwischen Ereignisbeobachtung und Startentscheidung als TimeSpan-Text, zum Beispiel 00:00:02. ### field.event_kind Beobachtetes Fenster-, Datei- oder Systemereignis. Wähle nur die Optionen dieses Trigger-Typs. ### field.event_kind.option.Closed Passendes Fenster wurde geschlossen. ### field.event_kind.option.Focused Passendes Fenster wurde in den Vordergrund gewechselt. ### field.event_kind.option.Opened Passendes Fenster wurde geöffnet. ### field.event_kind.option.TitleChanged Titel des passenden Fensters wurde geändert. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### field.process_name Name des gesuchten Prozesses, zum Beispiel notepad. Ein Name kann mehrere Instanzen treffen; eine konkrete Prozessreferenz grenzt gezielt ein. ### field.window_title_contains Optionaler Teil des Fenstertitels zum Eingrenzen mehrerer Fenster. Ein leerer Text setzt diesen Filter nicht. ### purpose Beobachtet Öffnen, Schließen, Fokuswechsel oder Titeländerungen passender Fenster. Ein Titelteil und Prozessname grenzen die Fenster ein; mehrere Ereignisse können kurz hintereinander auftreten. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window_event", "name": "Fensterereignis", "fields": [ { "id": "delay_after_event", "name": "delay_after_event", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "event_kind", "name": "event_kind", "type": "WindowAutomationEventKind", "options": [ "Opened", "Closed", "Focused", "TitleChanged" ], "defaultValue": "Opened" }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "WindowEvent" }, { "id": "process_name", "name": "process_name", "type": "String", "options": [], "defaultValue": "" }, { "id": "window_title_contains", "name": "window_title_contains", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "window_event", "Kind": "WindowEvent", "event_kind": "Opened", "process_name": "", "window_title_contains": "", "delay_after_event": "00:00:00", "kind": "WindowEvent" } ``` ## Automationen: Windows-Ereignis ID: windows_event Website: /doku/automationen/windows_event/ Abbildung: [Detailansicht: Windows-Ereignis. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-auto-windows-event.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Kategorie: Gruppiert die verfügbaren Windows-Ereignisse. 3. Windows-Funktion: Wählt das konkrete Ereignis aus der Kategorie. 4. Entprellung (Sekunden): Fasst schnell wiederholte Ereignisse innerhalb der eingestellten Zeit zusammen. 5. Verzögerung (Sekunden): Wartezeit zwischen dem beobachteten Ereignis und dem Start. 6. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.debounce Mindestabstand zur Entprellung mehrfacher Trigger-Ereignisse als TimeSpan-Text, zum Beispiel 00:00:01. Dies ist nicht die allgemeine Ziel-Cooldown-Regel. ### field.delay_after_event Verzögerung zwischen Ereignisbeobachtung und Startentscheidung als TimeSpan-Text, zum Beispiel 00:00:02. ### field.event_type Stabile Kennung eines unterstützten Windows-Ereignisses, zum Beispiel network.availability.changed. Reine Abfrage-/Einstellungsfunktionen sind keine Ereignistrigger. ### field.filters Benannte Filterwerte der Windows-Ereignisfunktion. Erforderliche Parameter des gewählten Ereignisses müssen vorhanden sein. ### field.kind Abgeleitete Triggerart zur Anzeige. Für die polymorphe Deserialisierung ist $type maßgeblich; die kanonische Vorlage zeigt die zusätzlich geschriebenen Kind/kind-Werte. ### field.kind.option.FileSystemEvent Start bei einem passenden Datei-/Ordnerereignis. ### field.kind.option.Hotkey Start über Tastenkombination. ### field.kind.option.Interval Start in einem positiven Wiederholungsintervall. ### field.kind.option.OnceAt Einmaliger Start zu einem zukünftigen Zeitpunkt. ### field.kind.option.ProcessExited Start, wenn ein passender Prozess beendet wird. ### field.kind.option.ProcessStarted Start, wenn ein passender Prozess neu erscheint. ### field.kind.option.Schedule Start zu einer Uhrzeit an ausgewählten Wochentagen. ### field.kind.option.SystemEvent Start bei einem unterstützten Sitzungs-/Energie-/Systemereignis. ### field.kind.option.Webhook Start durch einen authentifizierten HTTP-POST-Aufruf. ### field.kind.option.WindowEvent Start bei einem passenden Fensterereignis. ### field.kind.option.WindowsEvent Start über eine unterstützte Funktion des Windows-Ereigniskatalogs. ### purpose Wähle eine Funktion mit SupportsEvents aus dem Windows-Katalog und ergänze deren erforderliche Filter. Die Funktion bestimmt die tatsächliche Ereignisquelle. Debounce und Startverzögerung sind getrennt von Cooldown und Verhalten bei laufendem Ziel. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_event", "name": "Windows-Ereignis", "fields": [ { "id": "debounce", "name": "debounce", "type": "TimeSpan", "options": [], "defaultValue": "00:00:01" }, { "id": "delay_after_event", "name": "delay_after_event", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "event_type", "name": "event_type", "type": "String", "options": [], "defaultValue": "network.availability.changed" }, { "id": "filters", "name": "filters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "kind", "name": "kind", "type": "AutomationTriggerKind", "options": [ "Hotkey", "OnceAt", "Schedule", "Interval", "ProcessStarted", "ProcessExited", "WindowEvent", "FileSystemEvent", "SystemEvent", "WindowsEvent", "Webhook" ], "defaultValue": "WindowsEvent" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "$type": "windows_event", "Kind": "WindowsEvent", "event_type": "network.availability.changed", "filters": {}, "debounce": "00:00:01", "delay_after_event": "00:00:00", "kind": "WindowsEvent" } ``` ## Automationen: AutomationAction ID: AutomationAction Website: /doku/automationen/AutomationAction/ ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.action_type Job oder Makro bestimmt die Art des Ziels. Fülle entsprechend job_id oder makro_id aus. ### field.action_type.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.action_type.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.job_id GUID des auszuführenden Jobs. Ein Anzeigename alleine reicht für die Zuordnung nicht aus. ### field.makro_id GUID des auszuführenden Makros. Beim Duplizieren eines Makros die Referenzen auf dessen neue ID anpassen. ### field.name Anzeigename für Auswahl und Verlauf. Beziehungen verwenden die stabile ID, nicht diesen frei änderbaren Namen. ### purpose Ordnet den Trigger einem bestehenden Job oder Makro zu. action_type bestimmt, welche GUID verwendet wird. Ein gespeicherter Anzeigename dient der Anzeige und ersetzt die Ziel-ID nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "AutomationAction", "name": "AutomationAction", "fields": [ { "id": "action_type", "name": "action_type", "type": "AutomationActionTarget", "options": [ "Job", "Makro" ], "defaultValue": "Job" }, { "id": "job_id", "name": "job_id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "makro_id", "name": "makro_id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "name", "name": "name", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "name": "", "job_id": null, "makro_id": null, "action_type": "Job" } ``` ## Automationen: AutomationRunPolicy ID: AutomationRunPolicy Website: /doku/automationen/AutomationRunPolicy/ Abbildung: [Zeitplan und Ausführungsregeln einer Automation.](/automationen.detail.png) 1. Trigger-Typ: Hier wählst du, welches Ereignis die Automation startet. 2. Uhrzeit und Tage: Legt die Uhrzeit und Wochentage der wiederkehrenden Ausführung fest. 3. Job oder Makro: Hier steht das Ziel, das bei einer passenden Auslösung gestartet wird. 4. Wenn bereits aktiv: Bestimmt die Startentscheidung, falls dieses Ziel bereits läuft. 5. Cooldown: Mindestabstand zwischen angenommenen Starts; die Einheit ist Sekunden. ### errors Eine Triggerbeobachtung ist noch kein erfolgreicher Zielstart. Prüfe active, Ziel-ID, Pflichtparameter, aktives Zeitfenster, Cooldown und bereits laufendes Ziel. Für Webhooks zusätzlich Port, Netzwerkmodus und Authentifizierung prüfen; für Datei-Trigger muss der Ordner existieren. Diagnose und Startentscheidung stehen im Automationsverlauf. ### example Lege eine deaktivierte Automation an, wähle den beschriebenen Trigger beziehungsweise die Ziel-/Startregel und teste den Zieljob zuerst manuell. Die Dateianleitung zeigt die vollständige Hülle mit trigger, action und run_policy. ### field.already_running_behavior Regel bei bereits laufendem Ziel: parallel starten, stoppen, ignorieren oder neu starten. Ihre Entscheidung wird im Automationsverlauf sichtbar. ### field.already_running_behavior.option.Ignore Das neue Ereignis ignorieren, wenn das Ziel bereits läuft. ### field.already_running_behavior.option.Restart Laufendes Ziel stoppen und erneut starten. ### field.already_running_behavior.option.StartParallel Trotz bereits laufendem Ziel eine weitere Ausführung anfordern; parallele Wirkungen bewusst berücksichtigen. ### field.already_running_behavior.option.Stop Bereits laufendes Ziel stoppen, ohne den neuen Lauf wie bei Restart erneut anzufordern. ### field.cooldown Mindestpause zwischen akzeptierten Starts als TimeSpan. Ein während der Sperrfrist beobachtetes Ereignis ist kein Beweis für einen gestarteten Job. ### field.enabled_from Beginn des aktiven täglichen Uhrzeitfensters. Gemeinsam mit enabled_until setzen oder beide leer lassen. ### field.enabled_until Ende des aktiven täglichen Uhrzeitfensters. Der Partner enabled_from muss ebenfalls gesetzt sein. ### purpose Entscheidet, ob ein beobachtetes Ereignis ein Ziel starten darf: aktives Uhrzeitfenster, Cooldown und Verhalten bei laufendem Ziel werden gemeinsam berücksichtigt. Die Entscheidung und beteiligte Instanzen sind im Automationsverlauf nachvollziehbar. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "AutomationRunPolicy", "name": "AutomationRunPolicy", "fields": [ { "id": "already_running_behavior", "name": "already_running_behavior", "type": "AutomationAlreadyRunningBehavior", "options": [ "StartParallel", "Stop", "Ignore", "Restart" ], "defaultValue": "Ignore" }, { "id": "cooldown", "name": "cooldown", "type": "TimeSpan", "options": [], "defaultValue": "00:00:00" }, { "id": "enabled_from", "name": "enabled_from", "type": "TimeOnly", "options": [], "defaultValue": null }, { "id": "enabled_until", "name": "enabled_until", "type": "TimeOnly", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "already_running_behavior": "Ignore", "cooldown": "00:00:00", "enabled_from": null, "enabled_until": null } ``` ## Makros: Tastenkombination ID: key_combination Website: /doku/makros/key_combination/ Abbildung: [Gruppierte Maus- und Tastaturbefehle mit ausgewählter Tastenkombination.](/makro-editor.detail.png) 1. Key: Taste bzw. Tastenkombination für diesen Befehl. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.durationUs Haltedauer beziehungsweise zusätzliche Dauer dieses Makrobefehls in Mikrosekunden. Sie ist nicht die Millisekunden-Dauer des timeout-Befehls. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.keys Geordnete Tastenkennungen einer Tastenkombination. Sie werden gedrückt und in umgekehrter Reihenfolge freigegeben; doppelte oder ungültige Kennungen vermeiden. ### purpose Drückt eine geordnete Tastenkombination, hält sie für durationUs und gibt die selbst gedrückten Tasten in umgekehrter Reihenfolge frei. Verwende keys für Shortcuts wie Strg+A statt den Text „Strg+A“ als Texteingabe zu schreiben. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "key_combination", "name": "Tastenkombination", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "durationUs", "name": "durationUs", "type": "Int64", "options": [], "defaultValue": 0 }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "keys", "name": "keys", "type": "List`1", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "key_combination", "keys": [], "durationUs": 0, "id": "13effec4-5e09-0872-eac1-b63a4eb7e8e5" } ``` ## Makros: Taste drücken ID: key_down Website: /doku/makros/key_down/ Abbildung: [Detailansicht: Taste drücken. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-key-down.detail.png) 1. Key: Taste bzw. Tastenkombination für diesen Befehl. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.key Windows-Tastenkennung des Makrobefehls, zum Beispiel A oder CONTROL. Der Executor muss die Kennung in einen Virtual-Key-Code übersetzen können. ### purpose Drückt eine einzelne Taste und hält sie bis zum passenden key_up. Füge die Freigabe derselben Taste ein; bei Abbruch gibt der Executor seine noch gehaltenen Tasten beim Aufräumen frei. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "key_down", "name": "Taste drücken", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "key", "name": "key", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "key_down", "key": "", "id": "aef67dd6-b7dd-b8b8-aedc-a7352bb0dd9d" } ``` ## Makros: Taste loslassen ID: key_up Website: /doku/makros/key_up/ Abbildung: [Detailansicht: Taste loslassen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-key-up.detail.png) 1. Key: Taste bzw. Tastenkombination für diesen Befehl. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.key Windows-Tastenkennung des Makrobefehls, zum Beispiel A oder CONTROL. Der Executor muss die Kennung in einen Virtual-Key-Code übersetzen können. ### purpose Gibt die benannte Taste frei. Verwende dieselbe Kennung wie beim vorherigen key_down. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "key_up", "name": "Taste loslassen", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "key", "name": "key", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "key_up", "key": "", "id": "e471f899-41c4-c89c-4e3b-8d51c98356c1" } ``` ## Makros: Maustaste drücken ID: mouse_down Website: /doku/makros/mouse_down/ Abbildung: [Detailansicht: Maustaste drücken. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-mouse-down.detail.png) 1. Button: Wählt die Maustaste, die gedrückt oder losgelassen wird. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.button Maustaste als akzeptierter Name, zum Beispiel left, right oder middle. Down/Up-Paare müssen dieselbe Taste verwenden. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### purpose Drückt die benannte Maustaste. Für einen Klick ein passendes mouse_up ergänzen; für Ziehen können dazwischen Bewegungsbefehle stehen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "mouse_down", "name": "Maustaste drücken", "fields": [ { "id": "button", "name": "button", "type": "String", "options": [], "defaultValue": "" }, { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "mouse_down", "button": "", "id": "57b76900-3086-9cc2-d4ab-dcc175ad9b46" } ``` ## Makros: Maus absolut bewegen ID: mouse_move_absolute Website: /doku/makros/mouse_move_absolute/ Abbildung: [Detailansicht: Maus absolut bewegen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-mouse-move-absolute.detail.png) 1. X: Horizontale Zielposition des Mauszeigers in Pixeln. 2. Y: Vertikale Zielposition des Mauszeigers in Pixeln. 3. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.x Horizontale Pixelkoordinate. Bei Bildschirmwerten den Monitorversatz beziehungsweise bei Makros den virtuellen Desktop berücksichtigen. ### field.y Vertikale Pixelkoordinate. Der Ursprung liegt üblicherweise links oben; Bild- und Desktopkoordinaten dürfen nicht ungeprüft vermischt werden. ### purpose Bewegt den Mauszeiger zu x/y in Pixeln des virtuellen Desktops. Monitoranordnung, Auflösung und Skalierung müssen zum aufgezeichneten Ziel passen; negative Koordinaten sind bei zusätzlichen Monitoren möglich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "mouse_move_absolute", "name": "Maus absolut bewegen", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "x", "name": "x", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "y", "name": "y", "type": "Int32", "options": [], "defaultValue": 0 } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "mouse_move_absolute", "x": 0, "y": 0, "id": "743a6baa-76dc-d235-0599-ad83c3203476" } ``` ## Makros: Maus relativ bewegen ID: mouse_move_relative Website: /doku/makros/mouse_move_relative/ Abbildung: [Detailansicht: Maus relativ bewegen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-mouse-move-relative.detail.png) 1. DeltaX: Horizontaler Versatz: Bei Mausbewegungen in Pixeln, beim Mausrad als Scroll-Delta. 2. DeltaY: Vertikaler Versatz: Bei Mausbewegungen in Pixeln, beim Mausrad als Scroll-Delta. 3. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.deltaX Relative horizontale Mausbewegung beziehungsweise horizontales Mausrad-Delta. Die Bedeutung hängt vom Befehlstyp ab. ### field.deltaY Relative vertikale Mausbewegung beziehungsweise vertikales Mausrad-Delta. Positive/negative Werte bestimmen die Richtung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### purpose Bewegt den Mauszeiger um deltaX/deltaY relativ zur aktuellen Position. Die Endposition hängt deshalb vom Ausgangspunkt und von der Eingabeverarbeitung des Zielprogramms ab. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "mouse_move_relative", "name": "Maus relativ bewegen", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "deltaX", "name": "deltaX", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "deltaY", "name": "deltaY", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "mouse_move_relative", "deltaX": 0, "deltaY": 0, "id": "318c6a13-2d74-5343-dfaf-cf44e5cc1875" } ``` ## Makros: Maustaste loslassen ID: mouse_up Website: /doku/makros/mouse_up/ Abbildung: [Detailansicht: Maustaste loslassen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-mouse-up.detail.png) 1. Button: Wählt die Maustaste, die gedrückt oder losgelassen wird. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.button Maustaste als akzeptierter Name, zum Beispiel left, right oder middle. Down/Up-Paare müssen dieselbe Taste verwenden. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### purpose Gibt die benannte Maustaste frei. Der Befehl beendet einen Klick beziehungsweise eine gehaltene Ziehaktion. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "mouse_up", "name": "Maustaste loslassen", "fields": [ { "id": "button", "name": "button", "type": "String", "options": [], "defaultValue": "" }, { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "mouse_up", "button": "", "id": "7f76f50e-db68-58c0-70e8-e97158e6b0a1" } ``` ## Makros: Mausrad bewegen ID: mouse_wheel Website: /doku/makros/mouse_wheel/ Abbildung: [Detailansicht: Mausrad bewegen. Markierte Beschriftungen zeigen die Einstellungen im Editor. Die Abbildung zeigt eine Beispielkonfiguration, keine ausgeführte Aktion.](/ref-macro-mouse-wheel.detail.png) 1. DeltaX: Horizontaler Versatz: Bei Mausbewegungen in Pixeln, beim Mausrad als Scroll-Delta. 2. DeltaY: Vertikaler Versatz: Bei Mausbewegungen in Pixeln, beim Mausrad als Scroll-Delta. 3. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Füge diesen Befehl im Makro-Editor in einen Testablauf ein. Down-Befehle durch passende Up-Befehle abschließen; die JSON-Vorlage darunter zeigt type, id und die konkreten Wertefelder dieses Befehls. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.deltaX Relative horizontale Mausbewegung beziehungsweise horizontales Mausrad-Delta. Die Bedeutung hängt vom Befehlstyp ab. ### field.deltaY Relative vertikale Mausbewegung beziehungsweise vertikales Mausrad-Delta. Positive/negative Werte bestimmen die Richtung. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### purpose Sendet horizontale/vertikale Mausrad-Deltas. Das fokussierte beziehungsweise unter dem Zeiger befindliche Programm bestimmt deren Wirkung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "mouse_wheel", "name": "Mausrad bewegen", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "deltaX", "name": "deltaX", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "deltaY", "name": "deltaY", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "mouse_wheel", "deltaX": 0, "deltaY": 0, "id": "3015398d-f01d-5b06-9899-4110bf157815" } ``` ## Makros: Text eingeben ID: text_input Website: /doku/makros/text_input/ Abbildung: [Der Textbefehl trägt die Beispielnummer RE-2026-042 ein; die Verzögerung davor wird separat eingestellt.](/makro-text.detail.png) 1. Text: Dieser Text wird in die aktive Anwendung eingegeben. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Das Makrobeispiel kombiniert text_input mit „Notiz aus dem Beispielmakro“ und anschließend timeout mit duration=200. Vor Ausführung einen leeren Editor fokussieren. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.durationUs Haltedauer beziehungsweise zusätzliche Dauer dieses Makrobefehls in Mikrosekunden. Sie ist nicht die Millisekunden-Dauer des timeout-Befehls. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.text Direkt angezeigter beziehungsweise eingegebener Text. Ein Makro schreibt ihn in das aktive Fenster; die Desktop-Anzeige stellt ihn nur dar. ### purpose Sendet den angegebenen Unicode-Text an das aktive Eingabeziel. Dies ist keine OCR und keine garantierte Zwischenablagenoperation. Fokussiere vorher das gewünschte Textfeld. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "text_input", "name": "Text eingeben", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "durationUs", "name": "durationUs", "type": "Int64", "options": [], "defaultValue": 0 }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "text", "name": "text", "type": "String", "options": [], "defaultValue": "" } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "text_input", "text": "", "durationUs": 0, "id": "8175bccd-480d-2892-ec75-d89f4337f976" } ``` ## Makros: Wartezeit ID: timeout Website: /doku/makros/timeout/ Abbildung: [Eine Wartezeit von 500 ms innerhalb der Eingabegruppe, zusätzlich zur Verzögerung vor dem Befehl.](/makro-wartezeit.detail.png) 1. Dauer: Dauer der zusätzlichen Pause. Sie ist unabhängig von der Verzögerung davor. 2. Verzögerung davor: Wartezeit seit dem vorherigen Befehl. Den Zahlenwert und die Einheit separat einstellen. ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Das Makrobeispiel kombiniert text_input mit „Notiz aus dem Beispielmakro“ und anschließend timeout mit duration=200. Vor Ausführung einen leeren Editor fokussieren. ### field.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.duration Dauer des Makro-timeout in Millisekunden. 200 bedeutet 0,2 Sekunden; nicht mit durationUs verwechseln. ### field.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### purpose Wartet die in duration gespeicherten Millisekunden auf der Makro-Zeitachse. durationUs und delayBeforeUs anderer Befehle verwenden dagegen Mikrosekunden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "timeout", "name": "Wartezeit", "fields": [ { "id": "delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "duration", "name": "duration", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "String", "options": [], "defaultValue": null } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "type": "timeout", "duration": 0, "id": "f8468467-aabe-4960-2611-1a0bcd68497c" } ``` ## Makros: Aufnahme und Gruppen ID: recording Website: /doku/makros/recording/ ### errors Ungültige Tasten-/Maustastenkennungen, doppelte IDs, fehlerhafte Gruppenreferenzen und negative/ungültige Zeitwerte vor Ausführung korrigieren. Eingaben wirken auf das aktive Fenster. Bei absoluten Bewegungen die Aufnahmeumgebung prüfen; ein Abbruch gibt die vom Executor gehaltenen Tasten/Maustasten frei, rekonstruiert aber keine bereits eingegebenen Texte. ### example Das Makrobeispiel kombiniert text_input mit „Notiz aus dem Beispielmakro“ und anschließend timeout mit duration=200. Vor Ausführung einen leeren Editor fokussieren. ### field.commands Geordnete Makrobefehle mit type und eindeutiger id. Die Reihenfolge ist die Ausführungsreihenfolge; UI-Gruppierung ersetzt diese Liste nicht. ### field.commands.delayBeforeUs Wartezeit vor diesem Makrobefehl in Mikrosekunden; 1000 µs sind 1 ms. null kennzeichnet ältere oder manuell angelegte Befehle ohne aufgezeichnete Vorverzögerung. ### field.commands.groupId Optionale Referenz auf groups[].id. Gruppen ordnen zusammengehörige aufgezeichnete Befehle, ändern aber nicht ihre Reihenfolge in commands. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.commands.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.formatVersion Versionsnummer des gespeicherten Formats. Aktuell Job=4, Makro=3, Automation=1. Eine Änderung ist keine Methode, eine inkompatible Datei zu reparieren. ### field.groups Gruppenmetadaten eines Makros. Jeder referenzierte groupId muss auf eine gültige Gruppe zeigen. Jede Gruppe muss Befehle enthalten; Befehle derselben Gruppe müssen einen zusammenhängenden Block bilden. ### field.groups.automatic Markiert eine automatisch bei der Aufnahme erzeugte Gruppe; Titel und Befehlszuordnung bleiben Metadaten des Makros. ### field.groups.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.groups.title Sichtbare Überschrift der Auswahl beziehungsweise Gruppentitel. Sie ist keine technische Identität. ### field.id Stabile Identität dieses Eintrags. In einem Job müssen Step-IDs eindeutig sein; beim Kopieren eines eigenständigen Jobs/Makros eine neue Objekt-GUID erzeugen und interne Referenzen gezielt anpassen. ### field.name Anzeigename für Auswahl und Verlauf. Beziehungen verwenden die stabile ID, nicht diesen frei änderbaren Namen. ### field.recordedEnvironment Optionaler Snapshot der Aufnahmeumgebung. Er hilft, Abweichungen der Bildschirmgeometrie bei absoluten Makros zu erkennen. ### field.recordedEnvironment.recordedAtUtc UTC-Zeitpunkt der Aufnahme. Er ist Metadatum und keine Befehlsverzögerung. ### field.recordedEnvironment.startCursorX Optionale horizontale Startposition des Mauszeigers bei der Aufnahme in Desktop-Pixeln. ### field.recordedEnvironment.startCursorY Optionale vertikale Startposition des Mauszeigers bei der Aufnahme in Desktop-Pixeln. ### field.recordedEnvironment.virtualDesktopHeight Gesamthöhe der aufgezeichneten Desktop-Anordnung in Pixeln. ### field.recordedEnvironment.virtualDesktopWidth Gesamtbreite der aufgezeichneten Desktop-Anordnung in Pixeln. Abweichende Anordnungen können absolute Mauspositionen verändern. ### field.recordedEnvironment.virtualDesktopX Linke Kante des gesamten virtuellen Desktops bei Aufnahme; sie kann bei Monitoren links vom Hauptmonitor negativ sein. ### field.recordedEnvironment.virtualDesktopY Obere Kante des virtuellen Desktops bei Aufnahme; sie kann bei Monitoren oberhalb des Hauptmonitors negativ sein. ### field.recordingSettings Optionen für neue Makroaufnahmen. Änderungen an diesen Optionen wandeln vorhandene commands nicht automatisch in andere Bewegungstypen um. ### field.recordingSettings.automaticMovementGroups Erzeugt bei der Aufnahme Gruppen für zusammengehörige Bewegungen. Befehlszeiten und Reihenfolge bleiben ausdrücklich gespeichert. ### field.recordingSettings.combineKeyboardInputs Fasst geeignete aufgezeichnete Tastatureingaben zusammen, etwa zu Text-/Kombinationsbefehlen. ### field.recordingSettings.minimumDistancePixels Kleinste räumliche Distanz zwischen aufgezeichneten Bewegungsproben in Pixeln. ### field.recordingSettings.minimumIntervalUs Kleinster zeitlicher Abstand aufgezeichneter Bewegungsproben in Mikrosekunden. Er beeinflusst Datenmenge und zeitliche Genauigkeit. ### field.recordingSettings.mode Aufnahmemodus: 0=ClicksOnly, 1=ScreenAccurateAbsolute, 2=MotionFaithfulRelative. Im Makro-JSON wird dieser Enum als Zahl gespeichert; die Optionen ändern nur zukünftige Aufnahmen. ### field.recordingSettings.mode.option.ClicksOnly Aufnahmemodus 0: Klick-/Tastenaktionen statt einer vollständigen Bewegungsspur aufzeichnen. ### field.recordingSettings.mode.option.MotionFaithfulRelative Aufnahmemodus 2: relative Mausbewegungen aufzeichnen. ### field.recordingSettings.mode.option.ScreenAccurateAbsolute Aufnahmemodus 1: Bildschirmpositionen als absolute Pixelkoordinaten aufzeichnen. ### field.recordingSettings.recordKeyboard Zeichnet Tastatureingaben für neue Makroaufnahmen auf. Vorhandene Tastenbefehle werden dadurch nicht entfernt. ### field.recordingSettings.recordMouseButtons Zeichnet Maustasten für neue Aufnahmen auf; reine Bewegungsaufzeichnung ist davon getrennt. ### field.recordingSettings.recordingHotkeyModifiers Bitmaske der Aufnahme-Hotkey-Modifikatoren: Alt=1, Control=2, Shift=4, Windows=8, None=0. ### field.recordingSettings.recordingHotkeyModifiers.option.Alt Alt-Modifikator; numerische Bitmaske 1. ### field.recordingSettings.recordingHotkeyModifiers.option.Control Strg-Modifikator; numerische Bitmaske 2. ### field.recordingSettings.recordingHotkeyModifiers.option.None Keine Modifikatortaste; numerische Bitmaske 0. ### field.recordingSettings.recordingHotkeyModifiers.option.Shift Umschalt-Modifikator; numerische Bitmaske 4. ### field.recordingSettings.recordingHotkeyModifiers.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.recordingSettings.recordingHotkeyVirtualKey Virtual-Key-Code der Aufnahme-Taste; Standard 120 entspricht F9. Prüfe Konflikte mit anderen Hotkeys. ### field.recordingSettings.removeStopGesture Entfernt die konfigurierte Stop-Geste aus der Aufnahme, damit sie später nicht als gewünschte Eingabe wiederholt wird. ### purpose Ein Makro speichert geordnete Befehle, optionale Gruppen, Aufnahmeoptionen und gegebenenfalls die Aufnahmeumgebung. Gruppen sind Bearbeitungsmetadaten; die Ausführung folgt commands. Der Executor führt Makros exklusiv über seinen Ausführungsgate aus und gibt selbst gehaltene Eingaben auch bei Abbruch frei. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "recording", "name": "Aufnahme und Gruppen", "fields": [ { "id": "commands", "name": "commands", "type": "ObservableCollection`1", "options": [], "defaultValue": null }, { "id": "commands.delayBeforeUs", "name": "delayBeforeUs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "commands.groupId", "name": "groupId", "type": "String", "options": [], "defaultValue": null }, { "id": "commands.id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "formatVersion", "name": "formatVersion", "type": "Int32", "options": [], "defaultValue": 3 }, { "id": "groups", "name": "groups", "type": "ObservableCollection`1", "options": [], "defaultValue": null }, { "id": "groups.id", "name": "id", "type": "String", "options": [], "defaultValue": null }, { "id": "groups.automatic", "name": "automatic", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "groups.title", "name": "title", "type": "String", "options": [], "defaultValue": null }, { "id": "id", "name": "id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "name", "name": "name", "type": "String", "options": [], "defaultValue": "" }, { "id": "recordedEnvironment", "name": "recordedEnvironment", "type": "MakroRecordedEnvironment", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.recordedAtUtc", "name": "recordedAtUtc", "type": "DateTime", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.startCursorX", "name": "startCursorX", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.startCursorY", "name": "startCursorY", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.virtualDesktopHeight", "name": "virtualDesktopHeight", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.virtualDesktopWidth", "name": "virtualDesktopWidth", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.virtualDesktopX", "name": "virtualDesktopX", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordedEnvironment.virtualDesktopY", "name": "virtualDesktopY", "type": "Int32", "options": [], "defaultValue": null }, { "id": "recordingSettings", "name": "recordingSettings", "type": "MakroRecordingSettings", "options": [], "defaultValue": null }, { "id": "recordingSettings.automaticMovementGroups", "name": "automaticMovementGroups", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "recordingSettings.combineKeyboardInputs", "name": "combineKeyboardInputs", "type": "Boolean", "options": [], "defaultValue": false }, { "id": "recordingSettings.minimumDistancePixels", "name": "minimumDistancePixels", "type": "Int32", "options": [], "defaultValue": 0 }, { "id": "recordingSettings.minimumIntervalUs", "name": "minimumIntervalUs", "type": "Int32", "options": [], "defaultValue": 1000 }, { "id": "recordingSettings.mode", "name": "mode", "type": "MakroRecordingMode", "options": [ "ClicksOnly", "ScreenAccurateAbsolute", "MotionFaithfulRelative" ], "defaultValue": "ScreenAccurateAbsolute" }, { "id": "recordingSettings.recordingHotkeyModifiers", "name": "recordingHotkeyModifiers", "type": "KeyModifiers", "options": [ "None", "Alt", "Control", "Shift", "Windows" ], "defaultValue": "None" }, { "id": "recordingSettings.recordingHotkeyVirtualKey", "name": "recordingHotkeyVirtualKey", "type": "UInt32", "options": [], "defaultValue": 120 }, { "id": "recordingSettings.recordKeyboard", "name": "recordKeyboard", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "recordingSettings.recordMouseButtons", "name": "recordMouseButtons", "type": "Boolean", "options": [], "defaultValue": true }, { "id": "recordingSettings.removeStopGesture", "name": "removeStopGesture", "type": "Boolean", "options": [], "defaultValue": true } ] } ``` ### Strukturelle Serializer-Vorlage ```json { "formatVersion": 3, "id": "95725efa-50bf-07cb-abf1-4f87f86b2103", "name": "Mein Makro", "commands": [], "groups": [], "recordingSettings": { "mode": 1, "minimumIntervalUs": 1000, "minimumDistancePixels": 0, "recordKeyboard": true, "combineKeyboardInputs": false, "recordMouseButtons": true, "removeStopGesture": true, "automaticMovementGroups": true, "recordingHotkeyModifiers": 0, "recordingHotkeyVirtualKey": 120 }, "recordedEnvironment": null } ``` ## Logs: LogEvent ID: LogEvent Website: /doku/logs/LogEvent/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### field.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.BranchDecision Strukturierte Entscheidung eines Bedingungsblocks mit Aktivität, Grund und Operatoren ohne rohe Vergleichswerte. ### field.BranchDecision.BranchActive Ob der betreffende Zweig bei dieser Entscheidung gewählt wurde. ### field.BranchDecision.Conditions Ausgewertete Bedingungen mit Position, Zustand und Operator; bewusst ohne sensible Rohvergleichswerte. ### field.BranchDecision.Conditions.Operator Operator der ausgewerteten Bedingung, ohne deren rohen Vergleichsinhalt. ### field.BranchDecision.Conditions.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.BranchDecision.Conditions.State Zustand einer Bedingung/Beobachtung. Fehlende Belege nicht als false oder erfolgreich umdeuten. ### field.BranchDecision.MatchMode Verknüpfung der Bedingungsliste, soweit diese Entscheidung einen Vergleich besitzt. ### field.BranchDecision.ParentActive Ob der übergeordnete Block bei dieser Entscheidung aktiv war. ### field.BranchDecision.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.Category.option.Video Videoaufnahme und Finalisierung. ### field.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.Details Optionale bereinigte Zusatzdiagnose. Eingabewerte, Skriptargumente und Secrets werden nicht vollständig hineinkopiert. ### field.DiagnosticCode Stabiler Diagnosecode für bekannte Fehler-/Speicherfälle, soweit vorhanden. ### field.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.FlowEffect Strukturierter Einfluss auf den Ablauf, etwa beendete Hauptphase oder nächster Durchlauf. ### field.FlowEffect.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Level Schweregrad Debug, Information, Warning oder Error. Eine Warning ist nicht automatisch ein abgebrochener Lauf. ### field.Level.option.Debug Technische Detailbeobachtung. ### field.Level.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.Level.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.Level.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.Message Lesbare, bereinigte Nachricht. Sie ist eine Anzeige und keine stabile Programmierschnittstelle. ### field.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.Paths Explizit erlaubte strukturierte Aktionspfade. Werden getrennt von beliebigen Eingabetexten erfasst und bei Export erneut bereinigt. ### field.Paths.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Paths.Value Wert eines strukturierten erlaubten Pfad-/Diagnoseeintrags, entsprechend seinem umgebenden Typ. ### field.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.ProblemId Gemeinsame Problemidentität für mehrere Diagnosen desselben Vorfalls; dadurch werden Probleme nicht anhand ihrer Textzeilen doppelt gezählt. ### field.RelatedInstanceIds Instanzen, die an einer Automationsentscheidung beteiligt waren, zum Beispiel bereits laufende Ziele bei Restart/Ignore. ### field.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.Sequence Repositoryweit aufsteigende Ereignissequenz für Reihenfolge und Seitencursor, unabhängig von gleichzeitigen Zeitstempeln. ### field.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.SourceName Zum Ereigniszeitpunkt gespeicherter Anzeigename der Quelle. ### field.Timestamp Zeitpunkt des Ereignisses mit Zeitzonenoffset. Für Vergleiche UTC verwenden. ### field.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### purpose Ein einzelnes strukturiertes Ereignis des Schema-2-Verlaufs. Nutze Code, Context und Sequence für maschinelle Auswertungen; Message und Details sind bereinigte Anzeigen. Einzelereignisse und aggregierte StepSummaries ergänzen sich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogEvent", "name": "LogEvent", "options": [], "fields": [ { "id": "Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "BranchDecision", "name": "BranchDecision", "type": "LogBranchDecision", "options": [], "defaultValue": null }, { "id": "BranchDecision.BranchActive", "name": "BranchActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "BranchDecision.Conditions", "name": "Conditions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "BranchDecision.Conditions.Operator", "name": "Operator", "type": "String", "options": [], "defaultValue": null }, { "id": "BranchDecision.Conditions.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "BranchDecision.Conditions.State", "name": "State", "type": "String", "options": [], "defaultValue": null }, { "id": "BranchDecision.MatchMode", "name": "MatchMode", "type": "String", "options": [], "defaultValue": null }, { "id": "BranchDecision.ParentActive", "name": "ParentActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "BranchDecision.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Details", "name": "Details", "type": "String", "options": [], "defaultValue": null }, { "id": "DiagnosticCode", "name": "DiagnosticCode", "type": "String", "options": [], "defaultValue": null }, { "id": "DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "FlowEffect", "name": "FlowEffect", "type": "LogFlowEffect", "options": [], "defaultValue": null }, { "id": "FlowEffect.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Level", "name": "Level", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "Message", "name": "Message", "type": "String", "options": [], "defaultValue": null }, { "id": "Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "Paths", "name": "Paths", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Paths.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Paths.Value", "name": "Value", "type": "String", "options": [], "defaultValue": null }, { "id": "Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "ProblemId", "name": "ProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "RelatedInstanceIds", "name": "RelatedInstanceIds", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Sequence", "name": "Sequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "SourceName", "name": "SourceName", "type": "String", "options": [], "defaultValue": null }, { "id": "Timestamp", "name": "Timestamp", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null } ] } ``` ## Logs: LogContext ID: LogContext Website: /doku/logs/LogContext/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### field.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### purpose Korrelationsobjekt zur Verknüpfung eines Ereignisses mit Run, Instanz, Trigger, Automation, Step-Ausführung und Elternlauf. Fehlende optionale IDs sind bei nicht zugeordneten Anwendungsmeldungen zulässig. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogContext", "name": "LogContext", "options": [], "fields": [ { "id": "AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null } ] } ``` ## Logs: LogRun ID: LogRun Website: /doku/logs/LogRun/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### field.CatalogSequence Checkpoint der Lauf-Liste zur stabilen Seitennavigation; nicht mit der Sequenz jedes Einzelereignisses verwechseln. ### field.CompletedIterations Anzahl abgeschlossener Hauptdurchläufe dieses Laufs. ### field.CompletionReason Grund des Laufabschlusses; im Zusammenhang mit Outcome auswerten. ### field.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.EndedAt Gespeicherter Endzeitpunkt, falls ein Abschluss belegt ist. Bei nach Neustart unterbrochenen Läufen wird kein Enddatum erfunden. ### field.ErrorCount Erfasste Fehleranzahl des Laufs nach gemeinsamen Problemregeln; nicht einfach alle Nachrichtenzeilen zählen. ### field.ExecutionNumber Fortlaufender Ausführungszähler der Quelle. Er bleibt nach Aufbewahrungsbereinigung von Ereignissen erhalten. ### field.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.IsComplete Ob die aufbewahrten Daten als vollständig gelten. false verlangt, Grenzen der Diagnose ausdrücklich zu berücksichtigen. ### field.IterationDurationMs Gesamtdauer abgeschlossener Hauptdurchläufe in Millisekunden. ### field.LostEntries Bekannte Anzahl verlorener beziehungsweise abgelehnter Logeinträge. 0 beweist keine Rekonstruktion nie erfasster Vorgänge. ### field.Name Im Lauf-Snapshot gespeicherter Quellenname; spätere Umbenennung ändert alte Ereignisse nicht. ### field.Origin Startursprung des Laufs, zum Beispiel manuell, Automation oder Unterjob. ### field.OriginId Identität des Startursprungs, falls vorhanden. ### field.OriginName Zum Start gespeicherter Anzeigename des Ursprungs. ### field.Outcome Lebenszyklus und Qualität des Laufs. Successful, WithWarnings und WithErrors unterscheiden Abschluss von Problemfreiheit. ### field.Outcome.option.Failed Lauf wegen Fehler fehlgeschlagen. ### field.Outcome.option.Interrupted Lauf hatte beim Neustart keinen belegten Abschluss und gilt als unterbrochen/unvollständig. ### field.Outcome.option.Paused Lauf ist pausiert; das ist kein erfolgreicher Abschluss. ### field.Outcome.option.Running Lauf ist noch aktiv und hat keinen belegten Abschluss. ### field.Outcome.option.Stopped Lauf wurde ausdrücklich gestoppt/abgebrochen. ### field.Outcome.option.Successful Lauf erfolgreich beendet, ohne die Qualität als Warnung/Fehler einzustufen. ### field.Outcome.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### field.Outcome.option.WithErrors Lauf abgeschlossen, aber Fehler beeinträchtigen seine Qualität; nicht als problemfrei auswerten. ### field.Outcome.option.WithWarnings Lauf beendet, dabei wurden Warnungen erfasst. ### field.PrimaryProblemId Hauptproblem des Laufs zur direkten Problemnavigation. ### field.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.StartedAt Gespeicherter Startzeitpunkt des Laufs mit Offset. ### field.StepSummaries Aggregierte erfolgreiche/übersprungene Wiederholungen der Hauptphase; Problemereignisse bleiben einzeln nachvollziehbar. ### field.StepSummaries.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.StepSummaries.Count Anzahl der in dieser Zusammenfassung enthaltenen Beobachtungen. ### field.StepSummaries.IterationCoverageComplete Ob die Zuordnung aller zusammengefassten Durchläufe vollständig belegt ist. ### field.StepSummaries.Iterations Zusammengefasste Durchlaufbereiche dieser Beobachtung; anhand First und Last lesen. ### field.StepSummaries.Iterations.First Erster Durchlauf eines zusammengefassten Bereichs. ### field.StepSummaries.Iterations.Last Letzter Durchlauf eines zusammengefassten Bereichs, einschließlich dieser Grenze. ### field.StepSummaries.LastEvent Letzte bereinigte Beobachtung der Zusammenfassung. Sie ist nicht automatisch ein zusätzliches individuelles Ereignis im JSONL-Strom. ### field.StepSummaries.LastEvent.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.StepSummaries.LastEvent.BranchDecision Strukturierte Entscheidung eines Bedingungsblocks mit Aktivität, Grund und Operatoren ohne rohe Vergleichswerte. ### field.StepSummaries.LastEvent.BranchDecision.BranchActive Ob der betreffende Zweig bei dieser Entscheidung gewählt wurde. ### field.StepSummaries.LastEvent.BranchDecision.Conditions Ausgewertete Bedingungen mit Position, Zustand und Operator; bewusst ohne sensible Rohvergleichswerte. ### field.StepSummaries.LastEvent.BranchDecision.Conditions.Operator Operator der ausgewerteten Bedingung, ohne deren rohen Vergleichsinhalt. ### field.StepSummaries.LastEvent.BranchDecision.Conditions.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.StepSummaries.LastEvent.BranchDecision.Conditions.State Zustand einer Bedingung/Beobachtung. Fehlende Belege nicht als false oder erfolgreich umdeuten. ### field.StepSummaries.LastEvent.BranchDecision.MatchMode Verknüpfung der Bedingungsliste, soweit diese Entscheidung einen Vergleich besitzt. ### field.StepSummaries.LastEvent.BranchDecision.ParentActive Ob der übergeordnete Block bei dieser Entscheidung aktiv war. ### field.StepSummaries.LastEvent.BranchDecision.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.StepSummaries.LastEvent.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.StepSummaries.LastEvent.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.StepSummaries.LastEvent.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.StepSummaries.LastEvent.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.StepSummaries.LastEvent.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.StepSummaries.LastEvent.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.StepSummaries.LastEvent.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.StepSummaries.LastEvent.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.StepSummaries.LastEvent.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.StepSummaries.LastEvent.Category.option.Video Videoaufnahme und Finalisierung. ### field.StepSummaries.LastEvent.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.StepSummaries.LastEvent.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.StepSummaries.LastEvent.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.StepSummaries.LastEvent.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.StepSummaries.LastEvent.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.StepSummaries.LastEvent.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.StepSummaries.LastEvent.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.StepSummaries.LastEvent.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.StepSummaries.LastEvent.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.StepSummaries.LastEvent.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.StepSummaries.LastEvent.Details Optionale bereinigte Zusatzdiagnose. Eingabewerte, Skriptargumente und Secrets werden nicht vollständig hineinkopiert. ### field.StepSummaries.LastEvent.DiagnosticCode Stabiler Diagnosecode für bekannte Fehler-/Speicherfälle, soweit vorhanden. ### field.StepSummaries.LastEvent.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.StepSummaries.LastEvent.FlowEffect Strukturierter Einfluss auf den Ablauf, etwa beendete Hauptphase oder nächster Durchlauf. ### field.StepSummaries.LastEvent.FlowEffect.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.StepSummaries.LastEvent.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.StepSummaries.LastEvent.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.StepSummaries.LastEvent.Level Schweregrad Debug, Information, Warning oder Error. Eine Warning ist nicht automatisch ein abgebrochener Lauf. ### field.StepSummaries.LastEvent.Level.option.Debug Technische Detailbeobachtung. ### field.StepSummaries.LastEvent.Level.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.StepSummaries.LastEvent.Level.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.StepSummaries.LastEvent.Level.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.StepSummaries.LastEvent.Message Lesbare, bereinigte Nachricht. Sie ist eine Anzeige und keine stabile Programmierschnittstelle. ### field.StepSummaries.LastEvent.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.StepSummaries.LastEvent.Paths Explizit erlaubte strukturierte Aktionspfade. Werden getrennt von beliebigen Eingabetexten erfasst und bei Export erneut bereinigt. ### field.StepSummaries.LastEvent.Paths.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.StepSummaries.LastEvent.Paths.Value Wert eines strukturierten erlaubten Pfad-/Diagnoseeintrags, entsprechend seinem umgebenden Typ. ### field.StepSummaries.LastEvent.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.StepSummaries.LastEvent.ProblemId Gemeinsame Problemidentität für mehrere Diagnosen desselben Vorfalls; dadurch werden Probleme nicht anhand ihrer Textzeilen doppelt gezählt. ### field.StepSummaries.LastEvent.RelatedInstanceIds Instanzen, die an einer Automationsentscheidung beteiligt waren, zum Beispiel bereits laufende Ziele bei Restart/Ignore. ### field.StepSummaries.LastEvent.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.StepSummaries.LastEvent.Sequence Repositoryweit aufsteigende Ereignissequenz für Reihenfolge und Seitencursor, unabhängig von gleichzeitigen Zeitstempeln. ### field.StepSummaries.LastEvent.Source Ursprungsart Job, Automation, Application oder Makro. ### field.StepSummaries.LastEvent.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.StepSummaries.LastEvent.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.StepSummaries.LastEvent.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.StepSummaries.LastEvent.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.StepSummaries.LastEvent.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.StepSummaries.LastEvent.SourceName Zum Ereigniszeitpunkt gespeicherter Anzeigename der Quelle. ### field.StepSummaries.LastEvent.Timestamp Zeitpunkt des Ereignisses mit Zeitzonenoffset. Für Vergleiche UTC verwenden. ### field.StepSummaries.LastEvent.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.StepSummaries.LastEvent.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.StepSummaries.LastEvent.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.StepSummaries.LastEvent.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.StepSummaries.LastEvent.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.StepSummaries.LastEvent.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.StepSummaries.LastEvent.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### field.StepSummaries.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.StepSummaries.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.StepSummaries.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.StepSummaries.TotalDurationMs Summe der gemessenen Dauer der zusammengefassten Beobachtungen in Millisekunden. ### field.Steps Unveränderlicher Step-Snapshot mit ID, Typ, Position, Phase und Aktivierung. Enthält keine vollständigen settings oder Eingabewerte. ### field.Steps.Enabled Ob der Step im Lauf-Snapshot aktiviert war. Disabled ist von einem aktivierten, aber nicht erreichten Step zu unterscheiden. ### field.Steps.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Steps.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Steps.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.Steps.TypeId Kanonische Step-Typ-ID, zum Beispiel file_system_operation, unabhängig vom sichtbaren Label. ### field.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### field.WarningCount Erfasste Warnungsanzahl des Laufs. ### purpose Unveränderliche Quellen-/Step-Snapshots und fortgeschriebene Lebenszyklus-/Qualitätsdaten eines Laufs. Der Status ist nicht allein aus einer Startanforderung oder Nachricht abzuleiten. IsComplete und LostEntries zeigen bekannte Grenzen der Belege. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogRun", "name": "LogRun", "options": [], "fields": [ { "id": "CatalogSequence", "name": "CatalogSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "CompletedIterations", "name": "CompletedIterations", "type": "Int64", "options": [], "defaultValue": null }, { "id": "CompletionReason", "name": "CompletionReason", "type": "String", "options": [], "defaultValue": null }, { "id": "Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "EndedAt", "name": "EndedAt", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "ErrorCount", "name": "ErrorCount", "type": "Int32", "options": [], "defaultValue": null }, { "id": "ExecutionNumber", "name": "ExecutionNumber", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "IsComplete", "name": "IsComplete", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "IterationDurationMs", "name": "IterationDurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "LostEntries", "name": "LostEntries", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Name", "name": "Name", "type": "String", "options": [], "defaultValue": null }, { "id": "Origin", "name": "Origin", "type": "String", "options": [], "defaultValue": null }, { "id": "OriginId", "name": "OriginId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "OriginName", "name": "OriginName", "type": "String", "options": [], "defaultValue": null }, { "id": "Outcome", "name": "Outcome", "type": "LogOutcome", "options": [ "Running", "Paused", "Successful", "WithWarnings", "WithErrors", "Failed", "Stopped", "Interrupted", "Unknown" ], "defaultValue": null }, { "id": "PrimaryProblemId", "name": "PrimaryProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StartedAt", "name": "StartedAt", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Steps", "name": "Steps", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Steps.Enabled", "name": "Enabled", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Steps.Id", "name": "Id", "type": "String", "options": [], "defaultValue": null }, { "id": "Steps.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Steps.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Steps.TypeId", "name": "TypeId", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries", "name": "StepSummaries", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "StepSummaries.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.Count", "name": "Count", "type": "Int64", "options": [], "defaultValue": null }, { "id": "StepSummaries.IterationCoverageComplete", "name": "IterationCoverageComplete", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "StepSummaries.Iterations", "name": "Iterations", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "StepSummaries.Iterations.First", "name": "First", "type": "Int32", "options": [], "defaultValue": null }, { "id": "StepSummaries.Iterations.Last", "name": "Last", "type": "Int32", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent", "name": "LastEvent", "type": "LogEvent", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision", "name": "BranchDecision", "type": "LogBranchDecision", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.BranchActive", "name": "BranchActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.Conditions", "name": "Conditions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.Conditions.Operator", "name": "Operator", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.Conditions.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.Conditions.State", "name": "State", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.MatchMode", "name": "MatchMode", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.ParentActive", "name": "ParentActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.BranchDecision.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Details", "name": "Details", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.DiagnosticCode", "name": "DiagnosticCode", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.FlowEffect", "name": "FlowEffect", "type": "LogFlowEffect", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.FlowEffect.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Level", "name": "Level", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Message", "name": "Message", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Paths", "name": "Paths", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Paths.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Paths.Value", "name": "Value", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.ProblemId", "name": "ProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.RelatedInstanceIds", "name": "RelatedInstanceIds", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Sequence", "name": "Sequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "StepSummaries.LastEvent.SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.SourceName", "name": "SourceName", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Timestamp", "name": "Timestamp", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.LastEvent.Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "StepSummaries.TotalDurationMs", "name": "TotalDurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null }, { "id": "WarningCount", "name": "WarningCount", "type": "Int32", "options": [], "defaultValue": null } ] } ``` ## Logs: LogStepSnapshot ID: LogStepSnapshot Website: /doku/logs/LogStepSnapshot/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### field.Enabled Ob der Step im Lauf-Snapshot aktiviert war. Disabled ist von einem aktivierten, aber nicht erreichten Step zu unterscheiden. ### field.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.TypeId Kanonische Step-Typ-ID, zum Beispiel file_system_operation, unabhängig vom sichtbaren Label. ### purpose Gespeicherte Step-Struktur dieses Laufs: ID, kanonischer Typ, Reihenfolge, Phase und Aktivierung. Spätere Änderungen am Job verändern den damaligen Snapshot nicht. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogStepSnapshot", "name": "LogStepSnapshot", "options": [], "fields": [ { "id": "Enabled", "name": "Enabled", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Id", "name": "Id", "type": "String", "options": [], "defaultValue": null }, { "id": "Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "TypeId", "name": "TypeId", "type": "String", "options": [], "defaultValue": null } ] } ``` ## Logs: LogTriggerSnapshot ID: LogTriggerSnapshot Website: /doku/logs/LogTriggerSnapshot/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### field.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.TargetKind Art des Automationsziels: Job oder Makro. ### field.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### purpose Gespeicherte Ereignis- und Zielzuordnung einer Automation. Ermöglicht die Frage, welches Ereignis welche Aktion angefordert hat, ohne mutable aktuelle Konfigurationen als historische Wahrheit zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogTriggerSnapshot", "name": "LogTriggerSnapshot", "options": [], "fields": [ { "id": "EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null } ] } ``` ## Logs: LogOutcome ID: LogOutcome Website: /doku/logs/LogOutcome/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Failed Lauf wegen Fehler fehlgeschlagen. ### option.Interrupted Lauf hatte beim Neustart keinen belegten Abschluss und gilt als unterbrochen/unvollständig. ### option.Paused Lauf ist pausiert; das ist kein erfolgreicher Abschluss. ### option.Running Lauf ist noch aktiv und hat keinen belegten Abschluss. ### option.Stopped Lauf wurde ausdrücklich gestoppt/abgebrochen. ### option.Successful Lauf erfolgreich beendet, ohne die Qualität als Warnung/Fehler einzustufen. ### option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### option.WithErrors Lauf abgeschlossen, aber Fehler beeinträchtigen seine Qualität; nicht als problemfrei auswerten. ### option.WithWarnings Lauf beendet, dabei wurden Warnungen erfasst. ### purpose Lebenszyklus und Qualität eines Laufs. Ein abgeschlossener Lauf kann Warnungen oder Fehler enthalten; ein unterbrochener Lauf hat keinen erfundenen erfolgreichen Abschluss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogOutcome", "name": "LogOutcome", "options": [ "Running", "Paused", "Successful", "WithWarnings", "WithErrors", "Failed", "Stopped", "Interrupted", "Unknown" ], "fields": [] } ``` ## Logs: StepLogOutcome ID: StepLogOutcome Website: /doku/logs/StepLogOutcome/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Cancelled Eine begonnene Step-Ausführung wurde abgebrochen. ### option.Failed Lauf wegen Fehler fehlgeschlagen. ### option.NotExecuted Der Step wurde in diesem Ablauf nicht ausgeführt. ### option.Pending Noch kein terminales Step-Ergebnis vorhanden. ### option.Running Lauf ist noch aktiv und hat keinen belegten Abschluss. ### option.Skipped Der Step wurde übersprungen; Reason für deaktiviert, inaktiven Zweig oder fehlende Eingabe prüfen. ### option.Successful Lauf erfolgreich beendet, ohne die Qualität als Warnung/Fehler einzustufen. ### option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### purpose Status einer Step-Beobachtung beziehungsweise Timeline-Projektion. Disabled, inactive, skipped und noch nicht ausgeführt haben unterschiedliche Ursachen; fehlende Belege nicht als Ausführung zählen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "StepLogOutcome", "name": "StepLogOutcome", "options": [ "Running", "Successful", "Warning", "Failed", "Skipped", "Cancelled", "NotExecuted", "Pending", "Unknown" ], "fields": [] } ``` ## Logs: ExecutionLogLevel ID: ExecutionLogLevel Website: /doku/logs/ExecutionLogLevel/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Debug Technische Detailbeobachtung. ### option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### option.Information Normale Lebenszyklus-/Aktionsinformation. ### option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### purpose Schweregrad eines einzelnen Ereignisses. Filtern über MinimumLevel kann technische Details verbergen; bei Diagnose zusätzlich Run-Status und Vollständigkeit prüfen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ExecutionLogLevel", "name": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "fields": [] } ``` ## Logs: LogReadState ID: LogReadState Website: /doku/logs/LogReadState/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Available Logdaten sind verfügbar; zusätzlich IsComplete und Issues prüfen. ### option.Empty Der abgefragte Logbereich enthält keine Ereignisse; das beweist keine erfolgreiche Ausführung. ### option.Partial Daten sind teilweise lesbar; Fehler und bekannte Lücken bleiben sichtbar. ### option.Unavailable Logdaten sind nicht verfügbar; Abwesenheit von Fehlern ist dann keine Erfolgsaussage. ### purpose Qualität des Leseergebnisses: vollständig, teilweise oder nicht verfügbar gemäß den konkreten Enum-Werten. Teilweise lesbare Daten werden nicht verworfen, aber verlorene Daten nicht rekonstruiert. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogReadState", "name": "LogReadState", "options": [ "Available", "Empty", "Partial", "Unavailable" ], "fields": [] } ``` ## Logs: LogSource ID: LogSource Website: /doku/logs/LogSource/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Application Ereignis stammt aus der Anwendung selbst. ### option.Automation Triggerbeobachtung und Automationsentscheidungen. ### option.Job Quelle beziehungsweise Ziel ist ein Job. ### option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### purpose Ursprungsart des Ereignisses: Job, Automation, Anwendung oder Makro. Zusammen mit SourceId und RunId werden einzelne Läufe eingegrenzt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogSource", "name": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "fields": [] } ``` ## Logs: LogArea ID: LogArea Website: /doku/logs/LogArea/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### option.Automation Triggerbeobachtung und Automationsentscheidungen. ### option.Capture Bildschirm-/Kameraaufnahme. ### option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### option.Execution Ausführung und Ablaufsteuerung. ### option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### option.Process Programmstart, Suche, Fokus und Beenden. ### option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### option.Video Videoaufnahme und Finalisierung. ### option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### purpose Typisierter Fachbereich für Diagnose und Filter. Er beschreibt die fachliche Herkunft und wird nicht aus frei formulierten Nachrichtentexten erraten. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogArea", "name": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "fields": [] } ``` ## Logs: LogQuery ID: LogQuery Website: /doku/logs/LogQuery/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.AfterSequence Untere exklusive Sequenzgrenze: nur spätere Ereignisse lesen. Zusammen mit SnapshotSequence eine stabile Abfrage begrenzen. ### field.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.BeforeSequence Obere exklusive Sequenzgrenze für rückwärtige Seiten. Den NextBeforeSequence-Wert der vorherigen Seite übernehmen, statt Ereignisnummern selbst zu schaetzen. ### field.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.Category.option.Video Videoaufnahme und Finalisierung. ### field.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.From Optionaler Anfang des Ereignis-Zeitbereichs als DateTimeOffset. Zeitpunkte mit Offset vergleichen. ### field.MinimumLevel Mindestschweregrad für die Abfrage: Debug, Information, Warning oder Error. Höhere Grenzen koennen wichtige Diagnoseereignisse ausblenden. ### field.MinimumLevel.option.Debug Technische Detailbeobachtung. ### field.MinimumLevel.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.MinimumLevel.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.MinimumLevel.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.OnlyProblems Beschraenkt die Abfrage auf Problemereignisse. Fuer vollständige Ablaufanalyse auch normale Start-, Status- und Abschlussereignisse lesen. ### field.PageSize Gewuenschte Anzahl Ereignisse je Seite. Fuer Folgeseiten dieselben Filter und SnapshotSequence verwenden. ### field.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Search Optionaler Suchtext für die vorhandene Logsuche. Suche ersetzt keine stabile Auswertung von Code, Context und Status. ### field.SnapshotSequence Obere Snapshot-Sequenz der Abfrage. Bei Folgeseiten denselben Wert verwenden, damit neu angehängte Ereignisse den abgefragten Bestand nicht verschieben. ### field.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.Until Optionales Ende des Ereignis-Zeitbereichs als DateTimeOffset. Kein Lauf-Endzeitpunkt und kein Beleg eines erfolgreichen Abschlusses. ### purpose Filter- und Seitengrenzen einer strukturierten Logabfrage. Source, SourceId, RunId, TriggerId, Category, Zeitraum und MinimumLevel grenzen den Bestand ein. Sequenz-/Snapshotgrenzen halten die Seitenauswertung stabil. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogQuery", "name": "LogQuery", "options": [], "fields": [ { "id": "AfterSequence", "name": "AfterSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "BeforeSequence", "name": "BeforeSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "From", "name": "From", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "MinimumLevel", "name": "MinimumLevel", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "OnlyProblems", "name": "OnlyProblems", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "PageSize", "name": "PageSize", "type": "Int32", "options": [], "defaultValue": null }, { "id": "RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Search", "name": "Search", "type": "String", "options": [], "defaultValue": null }, { "id": "SnapshotSequence", "name": "SnapshotSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Until", "name": "Until", "type": "DateTimeOffset", "options": [], "defaultValue": null } ] } ``` ## Logs: LogPage ID: LogPage Website: /doku/logs/LogPage/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.AvailableCount Anzahl der verfügbaren Ereignisse im betrachteten Abfragebestand. Nicht als Zahl aller jemals ausgefuehrten Steps interpretieren. ### field.Entries Die auf dieser Seite gelieferten strukturierten LogEvent-Objekte. Fuer weitere Seiten NextBeforeSequence auswerten. ### field.Entries.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.Entries.BranchDecision Strukturierte Entscheidung eines Bedingungsblocks mit Aktivität, Grund und Operatoren ohne rohe Vergleichswerte. ### field.Entries.BranchDecision.BranchActive Ob der betreffende Zweig bei dieser Entscheidung gewählt wurde. ### field.Entries.BranchDecision.Conditions Ausgewertete Bedingungen mit Position, Zustand und Operator; bewusst ohne sensible Rohvergleichswerte. ### field.Entries.BranchDecision.Conditions.Operator Operator der ausgewerteten Bedingung, ohne deren rohen Vergleichsinhalt. ### field.Entries.BranchDecision.Conditions.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.Entries.BranchDecision.Conditions.State Zustand einer Bedingung/Beobachtung. Fehlende Belege nicht als false oder erfolgreich umdeuten. ### field.Entries.BranchDecision.MatchMode Verknüpfung der Bedingungsliste, soweit diese Entscheidung einen Vergleich besitzt. ### field.Entries.BranchDecision.ParentActive Ob der übergeordnete Block bei dieser Entscheidung aktiv war. ### field.Entries.BranchDecision.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Entries.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.Entries.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Entries.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.Entries.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.Entries.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.Entries.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.Entries.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.Entries.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.Entries.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.Entries.Category.option.Video Videoaufnahme und Finalisierung. ### field.Entries.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.Entries.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.Entries.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.Entries.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Entries.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.Entries.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.Entries.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Entries.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.Entries.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Entries.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.Entries.Details Optionale bereinigte Zusatzdiagnose. Eingabewerte, Skriptargumente und Secrets werden nicht vollständig hineinkopiert. ### field.Entries.DiagnosticCode Stabiler Diagnosecode für bekannte Fehler-/Speicherfälle, soweit vorhanden. ### field.Entries.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.Entries.FlowEffect Strukturierter Einfluss auf den Ablauf, etwa beendete Hauptphase oder nächster Durchlauf. ### field.Entries.FlowEffect.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Entries.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Entries.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Entries.Level Schweregrad Debug, Information, Warning oder Error. Eine Warning ist nicht automatisch ein abgebrochener Lauf. ### field.Entries.Level.option.Debug Technische Detailbeobachtung. ### field.Entries.Level.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.Entries.Level.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.Entries.Level.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.Entries.Message Lesbare, bereinigte Nachricht. Sie ist eine Anzeige und keine stabile Programmierschnittstelle. ### field.Entries.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.Entries.Paths Explizit erlaubte strukturierte Aktionspfade. Werden getrennt von beliebigen Eingabetexten erfasst und bei Export erneut bereinigt. ### field.Entries.Paths.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Entries.Paths.Value Wert eines strukturierten erlaubten Pfad-/Diagnoseeintrags, entsprechend seinem umgebenden Typ. ### field.Entries.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Entries.ProblemId Gemeinsame Problemidentität für mehrere Diagnosen desselben Vorfalls; dadurch werden Probleme nicht anhand ihrer Textzeilen doppelt gezählt. ### field.Entries.RelatedInstanceIds Instanzen, die an einer Automationsentscheidung beteiligt waren, zum Beispiel bereits laufende Ziele bei Restart/Ignore. ### field.Entries.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.Entries.Sequence Repositoryweit aufsteigende Ereignissequenz für Reihenfolge und Seitencursor, unabhängig von gleichzeitigen Zeitstempeln. ### field.Entries.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Entries.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Entries.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Entries.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Entries.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.Entries.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.Entries.SourceName Zum Ereigniszeitpunkt gespeicherter Anzeigename der Quelle. ### field.Entries.Timestamp Zeitpunkt des Ereignisses mit Zeitzonenoffset. Für Vergleiche UTC verwenden. ### field.Entries.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.Entries.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Entries.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Entries.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.Entries.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.Entries.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.Entries.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### field.Issues Bekannte Probleme beim Lesen oder Speichern. Lesbare Teile koennen vorliegen; fehlende Belege nicht rekonstruieren. ### field.MatchCount Anzahl passender Ereignisse für die gesetzten Filter. Nicht gleich der Anzahl von Jobläufen oder aggregierten Step-Ausfuehrungen. ### field.NextBeforeSequence Optionale obere Grenze der nächsten rückwärtigen Seite. null bedeutet keine weitere Seite; vorhandene Leseluecken bleiben trotzdem möglich. ### field.SnapshotSequence Obere Snapshot-Sequenz der Abfrage. Bei Folgeseiten denselben Wert verwenden, damit neu angehängte Ereignisse den abgefragten Bestand nicht verschieben. ### field.State LogReadState dieser Abfrage: Available, Empty, Partial oder Unavailable. Issues und verfügbare Entries gemeinsam auswerten. ### field.State.option.Available Logdaten sind verfügbar; zusätzlich IsComplete und Issues prüfen. ### field.State.option.Empty Der abgefragte Logbereich enthält keine Ereignisse; das beweist keine erfolgreiche Ausführung. ### field.State.option.Partial Daten sind teilweise lesbar; Fehler und bekannte Lücken bleiben sichtbar. ### field.State.option.Unavailable Logdaten sind nicht verfügbar; Abwesenheit von Fehlern ist dann keine Erfolgsaussage. ### purpose Eine Seite einer Logabfrage mit Ereignissen, Zählern, Folgeseitengrenze und Lesequalitaet. Teilweise lesbare Daten bleiben nutzbar, ihre bekannten Probleme bleiben jedoch Teil des Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogPage", "name": "LogPage", "options": [], "fields": [ { "id": "AvailableCount", "name": "AvailableCount", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Entries", "name": "Entries", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Entries.Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision", "name": "BranchDecision", "type": "LogBranchDecision", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.BranchActive", "name": "BranchActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.Conditions", "name": "Conditions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.Conditions.Operator", "name": "Operator", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.Conditions.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.Conditions.State", "name": "State", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.MatchMode", "name": "MatchMode", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.ParentActive", "name": "ParentActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Entries.BranchDecision.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "Entries.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "Entries.Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Details", "name": "Details", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.DiagnosticCode", "name": "DiagnosticCode", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Entries.FlowEffect", "name": "FlowEffect", "type": "LogFlowEffect", "options": [], "defaultValue": null }, { "id": "Entries.FlowEffect.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Entries.Level", "name": "Level", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "Entries.Message", "name": "Message", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "Entries.Paths", "name": "Paths", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Entries.Paths.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Paths.Value", "name": "Value", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.ProblemId", "name": "ProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.RelatedInstanceIds", "name": "RelatedInstanceIds", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Entries.SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Entries.Sequence", "name": "Sequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Entries.Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "Entries.SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.SourceName", "name": "SourceName", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Timestamp", "name": "Timestamp", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Entries.Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "Entries.Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null }, { "id": "Issues", "name": "Issues", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "MatchCount", "name": "MatchCount", "type": "Int32", "options": [], "defaultValue": null }, { "id": "NextBeforeSequence", "name": "NextBeforeSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "SnapshotSequence", "name": "SnapshotSequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "State", "name": "State", "type": "LogReadState", "options": [ "Available", "Empty", "Partial", "Unavailable" ], "defaultValue": null } ] } ``` ## Logs: LogStepExecution ID: LogStepExecution Website: /doku/logs/LogStepExecution/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.Cause Strukturierte Ursache dieser Step-Ausfuehrung beziehungsweise Nichtausfuehrung mit StepId, ExecutionId, Reason, Phase und Iteration. Nicht aus Nachrichtentexten erraten. ### field.Cause.ExecutionId Optionale konkrete Ausführungs-ID eines Steps. Bei nicht ausgefuehrten Steps kann sie fehlen; sie ist nicht die konfigurierte Step-ID. ### field.Cause.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Cause.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Cause.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Cause.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.Events Zugeordnete Ereignisse dieser konkreten Step-Ausfuehrung. Zusätzliche aggregierte Summary gemeinsam berücksichtigen. ### field.Events.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.Events.BranchDecision Strukturierte Entscheidung eines Bedingungsblocks mit Aktivität, Grund und Operatoren ohne rohe Vergleichswerte. ### field.Events.BranchDecision.BranchActive Ob der betreffende Zweig bei dieser Entscheidung gewählt wurde. ### field.Events.BranchDecision.Conditions Ausgewertete Bedingungen mit Position, Zustand und Operator; bewusst ohne sensible Rohvergleichswerte. ### field.Events.BranchDecision.Conditions.Operator Operator der ausgewerteten Bedingung, ohne deren rohen Vergleichsinhalt. ### field.Events.BranchDecision.Conditions.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.Events.BranchDecision.Conditions.State Zustand einer Bedingung/Beobachtung. Fehlende Belege nicht als false oder erfolgreich umdeuten. ### field.Events.BranchDecision.MatchMode Verknüpfung der Bedingungsliste, soweit diese Entscheidung einen Vergleich besitzt. ### field.Events.BranchDecision.ParentActive Ob der übergeordnete Block bei dieser Entscheidung aktiv war. ### field.Events.BranchDecision.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Events.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.Events.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Events.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.Events.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.Events.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.Events.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.Events.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.Events.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.Events.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.Events.Category.option.Video Videoaufnahme und Finalisierung. ### field.Events.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.Events.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.Events.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.Events.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Events.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.Events.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.Events.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Events.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.Events.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Events.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.Events.Details Optionale bereinigte Zusatzdiagnose. Eingabewerte, Skriptargumente und Secrets werden nicht vollständig hineinkopiert. ### field.Events.DiagnosticCode Stabiler Diagnosecode für bekannte Fehler-/Speicherfälle, soweit vorhanden. ### field.Events.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.Events.FlowEffect Strukturierter Einfluss auf den Ablauf, etwa beendete Hauptphase oder nächster Durchlauf. ### field.Events.FlowEffect.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Events.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Events.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Events.Level Schweregrad Debug, Information, Warning oder Error. Eine Warning ist nicht automatisch ein abgebrochener Lauf. ### field.Events.Level.option.Debug Technische Detailbeobachtung. ### field.Events.Level.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.Events.Level.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.Events.Level.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.Events.Message Lesbare, bereinigte Nachricht. Sie ist eine Anzeige und keine stabile Programmierschnittstelle. ### field.Events.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.Events.Paths Explizit erlaubte strukturierte Aktionspfade. Werden getrennt von beliebigen Eingabetexten erfasst und bei Export erneut bereinigt. ### field.Events.Paths.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Events.Paths.Value Wert eines strukturierten erlaubten Pfad-/Diagnoseeintrags, entsprechend seinem umgebenden Typ. ### field.Events.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Events.ProblemId Gemeinsame Problemidentität für mehrere Diagnosen desselben Vorfalls; dadurch werden Probleme nicht anhand ihrer Textzeilen doppelt gezählt. ### field.Events.RelatedInstanceIds Instanzen, die an einer Automationsentscheidung beteiligt waren, zum Beispiel bereits laufende Ziele bei Restart/Ignore. ### field.Events.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.Events.Sequence Repositoryweit aufsteigende Ereignissequenz für Reihenfolge und Seitencursor, unabhängig von gleichzeitigen Zeitstempeln. ### field.Events.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Events.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Events.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Events.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Events.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.Events.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.Events.SourceName Zum Ereigniszeitpunkt gespeicherter Anzeigename der Quelle. ### field.Events.Timestamp Zeitpunkt des Ereignisses mit Zeitzonenoffset. Für Vergleiche UTC verwenden. ### field.Events.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.Events.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Events.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Events.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.Events.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.Events.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.Events.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### field.ExecutionId Optionale konkrete Ausführungs-ID eines Steps. Bei nicht ausgefuehrten Steps kann sie fehlen; sie ist nicht die konfigurierte Step-ID. ### field.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Outcome Lebenszyklus und Qualität des Laufs. Successful, WithWarnings und WithErrors unterscheiden Abschluss von Problemfreiheit. ### field.Outcome.option.Cancelled Eine begonnene Step-Ausführung wurde abgebrochen. ### field.Outcome.option.Failed Lauf wegen Fehler fehlgeschlagen. ### field.Outcome.option.NotExecuted Der Step wurde in diesem Ablauf nicht ausgeführt. ### field.Outcome.option.Pending Noch kein terminales Step-Ergebnis vorhanden. ### field.Outcome.option.Running Lauf ist noch aktiv und hat keinen belegten Abschluss. ### field.Outcome.option.Skipped Der Step wurde übersprungen; Reason für deaktiviert, inaktiven Zweig oder fehlende Eingabe prüfen. ### field.Outcome.option.Successful Lauf erfolgreich beendet, ohne die Qualität als Warnung/Fehler einzustufen. ### field.Outcome.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### field.Outcome.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Step Snapshot der Step-Konfiguration: Id, TypeId, Position, Phase und Enabled zum Laufzeitpunkt. ### field.Step.Enabled Ob der Step im Lauf-Snapshot aktiviert war. Disabled ist von einem aktivierten, aber nicht erreichten Step zu unterscheiden. ### field.Step.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Step.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Step.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.Step.TypeId Kanonische Step-Typ-ID, zum Beispiel file_system_operation, unabhängig vom sichtbaren Label. ### field.Summary Optionale aggregierte Step-Zusammenfassung, insbesondere für wiederholte Hauptphasen. Count, Iterations, LastEvent und IterationCoverageComplete gemeinsam lesen. ### field.Summary.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.Summary.Count Anzahl der in dieser Zusammenfassung enthaltenen Beobachtungen. ### field.Summary.IterationCoverageComplete Ob die Zuordnung aller zusammengefassten Durchläufe vollständig belegt ist. ### field.Summary.Iterations Zusammengefasste Durchlaufbereiche dieser Beobachtung; anhand First und Last lesen. ### field.Summary.Iterations.First Erster Durchlauf eines zusammengefassten Bereichs. ### field.Summary.Iterations.Last Letzter Durchlauf eines zusammengefassten Bereichs, einschließlich dieser Grenze. ### field.Summary.LastEvent Letzte bereinigte Beobachtung der Zusammenfassung. Sie ist nicht automatisch ein zusätzliches individuelles Ereignis im JSONL-Strom. ### field.Summary.LastEvent.Area Textuelle Kontext-/Bereichsangabe. Für fachliche Filter zusätzlich die typisierte Category verwenden. ### field.Summary.LastEvent.BranchDecision Strukturierte Entscheidung eines Bedingungsblocks mit Aktivität, Grund und Operatoren ohne rohe Vergleichswerte. ### field.Summary.LastEvent.BranchDecision.BranchActive Ob der betreffende Zweig bei dieser Entscheidung gewählt wurde. ### field.Summary.LastEvent.BranchDecision.Conditions Ausgewertete Bedingungen mit Position, Zustand und Operator; bewusst ohne sensible Rohvergleichswerte. ### field.Summary.LastEvent.BranchDecision.Conditions.Operator Operator der ausgewerteten Bedingung, ohne deren rohen Vergleichsinhalt. ### field.Summary.LastEvent.BranchDecision.Conditions.Position Position des Steps beziehungsweise der Bedingung im gespeicherten Snapshot. ### field.Summary.LastEvent.BranchDecision.Conditions.State Zustand einer Bedingung/Beobachtung. Fehlende Belege nicht als false oder erfolgreich umdeuten. ### field.Summary.LastEvent.BranchDecision.MatchMode Verknüpfung der Bedingungsliste, soweit diese Entscheidung einen Vergleich besitzt. ### field.Summary.LastEvent.BranchDecision.ParentActive Ob der übergeordnete Block bei dieser Entscheidung aktiv war. ### field.Summary.LastEvent.BranchDecision.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Summary.LastEvent.Category Typisierter Fachbereich, zum Beispiel FileAccess, Capture oder Script. Daraus wird keine Ausführung anhand des Nachrichtentexts abgeleitet. ### field.Summary.LastEvent.Category.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Summary.LastEvent.Category.option.Capture Bildschirm-/Kameraaufnahme. ### field.Summary.LastEvent.Category.option.Detection Bild-/Text-/Punkterkennung und Auswertung. ### field.Summary.LastEvent.Category.option.Execution Ausführung und Ablaufsteuerung. ### field.Summary.LastEvent.Category.option.FileAccess Datei-/Ordnerzugriffe und ihre Diagnose. ### field.Summary.LastEvent.Category.option.General Allgemeiner Log-Fachbereich ohne spezielleren Ausführungsbereich. ### field.Summary.LastEvent.Category.option.Process Programmstart, Suche, Fokus und Beenden. ### field.Summary.LastEvent.Category.option.Script Skriptausführung und zugehörige Hintergrundarbeit. ### field.Summary.LastEvent.Category.option.Video Videoaufnahme und Finalisierung. ### field.Summary.LastEvent.Category.option.Windows Windows-Taste als Modifikator (Bitmaske 8) beziehungsweise Windows-Fachbereich, wenn diese Option zu einem Log-Bereich gehört. ### field.Summary.LastEvent.Code Stabiler Ereignistoken wie step.completed. Für Auswertungen diesen Token verwenden statt übersetzte Nachrichtentexte zu parsen. ### field.Summary.LastEvent.Context Korrelationsobjekt mit Lauf-, Step-, Trigger- und gegebenenfalls Elternlauf-Identitäten. ### field.Summary.LastEvent.Context.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Summary.LastEvent.Context.InstanceId Dispatcher-Instanz-ID der Ausführung. Mehrere Ausführungen desselben Jobs besitzen unterschiedliche Instanzen. ### field.Summary.LastEvent.Context.ParentRunId Übergeordneter Lauf eines Unterjobs. Ermöglicht die Navigation von besitzender Arbeit zu Kindläufen. ### field.Summary.LastEvent.Context.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Summary.LastEvent.Context.StepExecutionId Identität einer tatsächlichen Step-Ausführung. Start und terminales Ereignis teilen sie; eine Wiederholung erhält eine neue Identität. ### field.Summary.LastEvent.Context.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Summary.LastEvent.Context.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### field.Summary.LastEvent.Details Optionale bereinigte Zusatzdiagnose. Eingabewerte, Skriptargumente und Secrets werden nicht vollständig hineinkopiert. ### field.Summary.LastEvent.DiagnosticCode Stabiler Diagnosecode für bekannte Fehler-/Speicherfälle, soweit vorhanden. ### field.Summary.LastEvent.DurationMs Gemessene Dauer in Millisekunden. Ein fehlender Wert ist keine Dauer von null. ### field.Summary.LastEvent.FlowEffect Strukturierter Einfluss auf den Ablauf, etwa beendete Hauptphase oder nächster Durchlauf. ### field.Summary.LastEvent.FlowEffect.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Summary.LastEvent.Id Eindeutige Identität des Ereignisses beziehungsweise Laufs. Ereignis-ID und RunId haben unterschiedliche Aufgaben. ### field.Summary.LastEvent.Iteration Nummer des Hauptdurchlaufs, soweit das Ereignis einem Durchlauf zugeordnet ist. ### field.Summary.LastEvent.Level Schweregrad Debug, Information, Warning oder Error. Eine Warning ist nicht automatisch ein abgebrochener Lauf. ### field.Summary.LastEvent.Level.option.Debug Technische Detailbeobachtung. ### field.Summary.LastEvent.Level.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### field.Summary.LastEvent.Level.option.Information Normale Lebenszyklus-/Aktionsinformation. ### field.Summary.LastEvent.Level.option.Warning Problemhinweis, der nicht zwingend den Lauf beendet. ### field.Summary.LastEvent.Message Lesbare, bereinigte Nachricht. Sie ist eine Anzeige und keine stabile Programmierschnittstelle. ### field.Summary.LastEvent.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.Summary.LastEvent.Paths Explizit erlaubte strukturierte Aktionspfade. Werden getrennt von beliebigen Eingabetexten erfasst und bei Export erneut bereinigt. ### field.Summary.LastEvent.Paths.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Summary.LastEvent.Paths.Value Wert eines strukturierten erlaubten Pfad-/Diagnoseeintrags, entsprechend seinem umgebenden Typ. ### field.Summary.LastEvent.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Summary.LastEvent.ProblemId Gemeinsame Problemidentität für mehrere Diagnosen desselben Vorfalls; dadurch werden Probleme nicht anhand ihrer Textzeilen doppelt gezählt. ### field.Summary.LastEvent.RelatedInstanceIds Instanzen, die an einer Automationsentscheidung beteiligt waren, zum Beispiel bereits laufende Ziele bei Restart/Ignore. ### field.Summary.LastEvent.SchemaVersion Version des strukturierten Logformats; der aktuelle Repository-Vertrag ist Schema 2. ### field.Summary.LastEvent.Sequence Repositoryweit aufsteigende Ereignissequenz für Reihenfolge und Seitencursor, unabhängig von gleichzeitigen Zeitstempeln. ### field.Summary.LastEvent.Source Ursprungsart Job, Automation, Application oder Makro. ### field.Summary.LastEvent.Source.option.Application Ereignis stammt aus der Anwendung selbst. ### field.Summary.LastEvent.Source.option.Automation Triggerbeobachtung und Automationsentscheidungen. ### field.Summary.LastEvent.Source.option.Job Quelle beziehungsweise Ziel ist ein Job. ### field.Summary.LastEvent.Source.option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### field.Summary.LastEvent.SourceId Stabile ID des ursprünglichen Jobs/Makros/der Automation; sie ist nicht die Identität eines einzelnen Laufs. ### field.Summary.LastEvent.SourceName Zum Ereigniszeitpunkt gespeicherter Anzeigename der Quelle. ### field.Summary.LastEvent.Timestamp Zeitpunkt des Ereignisses mit Zeitzonenoffset. Für Vergleiche UTC verwenden. ### field.Summary.LastEvent.Trigger Snapshot der auslösenden Ereignisart und Zielzuordnung, soweit vorhanden. ### field.Summary.LastEvent.Trigger.EventKind Konkrete Ereignisart des Trigger-Snapshots. ### field.Summary.LastEvent.Trigger.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.Summary.LastEvent.Trigger.TargetId Stabile ID des von der Automation angesprochenen Jobs/Makros. ### field.Summary.LastEvent.Trigger.TargetKind Art des Automationsziels: Job oder Makro. ### field.Summary.LastEvent.Trigger.TargetName Gespeicherter Anzeigename des Ziels zum Zeitpunkt der Beobachtung. ### field.Summary.LastEvent.Trigger.WatchedDirectory Explizit erlaubter beobachteter Ordnerpfad für eine Datei-Automation. ### field.Summary.Phase Bereich der Ausführung: Startphase, Hauptphase oder Endphase. Er beeinflusst die Bedeutung fehlender und übersprungener Steps. ### field.Summary.Reason Stabiler Grund für Skip, Entscheidung oder Abschluss. Im Zusammenhang mit Code und Phase interpretieren. ### field.Summary.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.Summary.TotalDurationMs Summe der gemessenen Dauer der zusammengefassten Beobachtungen in Millisekunden. ### purpose Auswertung einer konkreten Step-Ausfuehrung: Konfigurationssnapshot, Status, Dauer, Ereignisse, Ursache und optionale aggregierte Summary. Nicht ausgefuehrte Steps koennen ohne ExecutionId erscheinen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogStepExecution", "name": "LogStepExecution", "options": [], "fields": [ { "id": "Cause", "name": "Cause", "type": "LogStepCause", "options": [], "defaultValue": null }, { "id": "Cause.ExecutionId", "name": "ExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Cause.Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Cause.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Cause.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Cause.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Events", "name": "Events", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Events.Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision", "name": "BranchDecision", "type": "LogBranchDecision", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.BranchActive", "name": "BranchActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.Conditions", "name": "Conditions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.Conditions.Operator", "name": "Operator", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.Conditions.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.Conditions.State", "name": "State", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.MatchMode", "name": "MatchMode", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.ParentActive", "name": "ParentActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Events.BranchDecision.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "Events.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "Events.Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Details", "name": "Details", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.DiagnosticCode", "name": "DiagnosticCode", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Events.FlowEffect", "name": "FlowEffect", "type": "LogFlowEffect", "options": [], "defaultValue": null }, { "id": "Events.FlowEffect.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Events.Level", "name": "Level", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "Events.Message", "name": "Message", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "Events.Paths", "name": "Paths", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Events.Paths.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Paths.Value", "name": "Value", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.ProblemId", "name": "ProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.RelatedInstanceIds", "name": "RelatedInstanceIds", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Events.SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Events.Sequence", "name": "Sequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Events.Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "Events.SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.SourceName", "name": "SourceName", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Timestamp", "name": "Timestamp", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Events.Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "Events.Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Events.Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "Events.Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null }, { "id": "ExecutionId", "name": "ExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Outcome", "name": "Outcome", "type": "StepLogOutcome", "options": [ "Running", "Successful", "Warning", "Failed", "Skipped", "Cancelled", "NotExecuted", "Pending", "Unknown" ], "defaultValue": null }, { "id": "Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Step", "name": "Step", "type": "LogStepSnapshot", "options": [], "defaultValue": null }, { "id": "Step.Enabled", "name": "Enabled", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Step.Id", "name": "Id", "type": "String", "options": [], "defaultValue": null }, { "id": "Step.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Step.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Step.TypeId", "name": "TypeId", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary", "name": "Summary", "type": "LogStepSummary", "options": [], "defaultValue": null }, { "id": "Summary.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.Count", "name": "Count", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Summary.IterationCoverageComplete", "name": "IterationCoverageComplete", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Summary.Iterations", "name": "Iterations", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Summary.Iterations.First", "name": "First", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Summary.Iterations.Last", "name": "Last", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent", "name": "LastEvent", "type": "LogEvent", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Area", "name": "Area", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision", "name": "BranchDecision", "type": "LogBranchDecision", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.BranchActive", "name": "BranchActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.Conditions", "name": "Conditions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.Conditions.Operator", "name": "Operator", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.Conditions.Position", "name": "Position", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.Conditions.State", "name": "State", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.MatchMode", "name": "MatchMode", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.ParentActive", "name": "ParentActive", "type": "Boolean", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.BranchDecision.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Category", "name": "Category", "type": "LogArea", "options": [ "General", "Execution", "Automation", "FileAccess", "Capture", "Detection", "Process", "Script", "Video", "Windows" ], "defaultValue": null }, { "id": "Summary.LastEvent.Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context", "name": "Context", "type": "LogContext", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.InstanceId", "name": "InstanceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.ParentRunId", "name": "ParentRunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.StepExecutionId", "name": "StepExecutionId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Context.TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Details", "name": "Details", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.DiagnosticCode", "name": "DiagnosticCode", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.DurationMs", "name": "DurationMs", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.FlowEffect", "name": "FlowEffect", "type": "LogFlowEffect", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.FlowEffect.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Id", "name": "Id", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Iteration", "name": "Iteration", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Level", "name": "Level", "type": "ExecutionLogLevel", "options": [ "Debug", "Information", "Warning", "Error" ], "defaultValue": null }, { "id": "Summary.LastEvent.Message", "name": "Message", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Paths", "name": "Paths", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Paths.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Paths.Value", "name": "Value", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.ProblemId", "name": "ProblemId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.RelatedInstanceIds", "name": "RelatedInstanceIds", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.SchemaVersion", "name": "SchemaVersion", "type": "Int32", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Sequence", "name": "Sequence", "type": "Int64", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Source", "name": "Source", "type": "LogSource", "options": [ "Job", "Automation", "Application", "Makro" ], "defaultValue": null }, { "id": "Summary.LastEvent.SourceId", "name": "SourceId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.SourceName", "name": "SourceName", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Timestamp", "name": "Timestamp", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger", "name": "Trigger", "type": "LogTriggerSnapshot", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.EventKind", "name": "EventKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.TargetId", "name": "TargetId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.TargetKind", "name": "TargetKind", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.TargetName", "name": "TargetName", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.LastEvent.Trigger.WatchedDirectory", "name": "WatchedDirectory", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.Phase", "name": "Phase", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.Reason", "name": "Reason", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "Summary.TotalDurationMs", "name": "TotalDurationMs", "type": "Int64", "options": [], "defaultValue": null } ] } ``` ## Logs: LogAction ID: LogAction Website: /doku/logs/LogAction/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.Kind Art der angebotenen Diagnoseaktion. RunId, StepId oder Path sind nur im Kontext dieser Art relevant; keine Trigger-Art und kein Step-type. ### field.Path Optionaler strukturierter Pfad einer Diagnoseaktion. Nur im beschriebenen Aktionskontext verwenden; ein vorhandener Pfad beweist weder Existenz noch erfolgreiche Dateioperation. ### field.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### purpose Eine konkrete Hilfs- beziehungsweise Navigationsaktion der Diagnose. Kind bestimmt die Bedeutung der optionalen RunId, StepId und Path; dieses Objekt ist kein Auftrag zur Jobausfuehrung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogAction", "name": "LogAction", "options": [], "fields": [ { "id": "Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Path", "name": "Path", "type": "String", "options": [], "defaultValue": null }, { "id": "RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null } ] } ``` ## Logs: LogDiagnostic ID: LogDiagnostic Website: /doku/logs/LogDiagnostic/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.Actions Angebotene Diagnoseaktionen mit Kind und optional RunId, StepId oder Path. Verweisen auf konkrete Hilfs-/Navigationsziele; sind keine ausgefuehrten Jobs. ### field.Actions.Kind Art der jeweiligen Diagnose-Hilfsaktion; die optionalen Ziel-IDs und Pfade passend zu dieser Art interpretieren. ### field.Actions.Path Optionaler strukturierter Pfad einer Diagnoseaktion. Nur im beschriebenen Aktionskontext verwenden; ein vorhandener Pfad beweist weder Existenz noch erfolgreiche Dateioperation. ### field.Actions.RunId ID genau dieses Laufs. Verknüpft Starts, Steps, Probleme und Abschluss desselben Laufs. ### field.Actions.StepId Stabile ID des Job-Steps; derselbe Step kann in mehreren Durchläufen ausgeführt werden. ### field.CauseKey Lokalisierungsschlüssel der Diagnoseursache. Fuer Anzeige aufloesen, für maschinelle Identitaet den stabilen Code verwenden. ### field.Code Stabiler Diagnosecode, unabhaengig von lokalisierter Ursache und Hilfe. Mit CauseKey, HelpKey und Actions für die Anzeige kombinieren. ### field.HelpKey Lokalisierungsschlüssel des konkreten Hilfetexts zur Diagnose. Kein freier Skriptbefehl. ### purpose Stabiler Diagnosecode mit lokalisierten Ursachen-/Hilfeschlüsseln und angebotenen Hilfsaktionen. Übersetzte Texte nicht als maschinelle Identitaet verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LogDiagnostic", "name": "LogDiagnostic", "options": [], "fields": [ { "id": "Actions", "name": "Actions", "type": "IReadOnlyList`1", "options": [], "defaultValue": null }, { "id": "Actions.Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "Actions.Path", "name": "Path", "type": "String", "options": [], "defaultValue": null }, { "id": "Actions.RunId", "name": "RunId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Actions.StepId", "name": "StepId", "type": "String", "options": [], "defaultValue": null }, { "id": "CauseKey", "name": "CauseKey", "type": "String", "options": [], "defaultValue": null }, { "id": "Code", "name": "Code", "type": "String", "options": [], "defaultValue": null }, { "id": "HelpKey", "name": "HelpKey", "type": "String", "options": [], "defaultValue": null } ] } ``` ## Logs: AutomationTriggerContext ID: AutomationTriggerContext Website: /doku/logs/AutomationTriggerContext/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### field.AutomationId ID der auslösenden Automation, falls der Lauf aus einer Automation stammt. ### field.Kind Art des Triggers beziehungsweise der strukturierten Beobachtung. ### field.ObservedAt Zeitpunkt der Triggerbeobachtung mit Offset. Er ist noch kein Zeitpunkt eines erfolgreichen Zielstarts oder Zielabschlusses. ### field.Parameters Explizit erlaubte, bereinigte Diagnosewerte. Keine vollständige Kopie der Step-settings oder frei verfügbarer Eingabeinhalte. ### field.TriggerId Identität der konkreten Ereignisbeobachtung, nicht nur der gespeicherten Triggerkonfiguration. ### purpose Identitaet und Zeitpunkt einer konkreten Triggerbeobachtung. AutomationId referenziert die Definition, TriggerId diese Beobachtung; Parameters enthaelt deren strukturierte Angaben. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "AutomationTriggerContext", "name": "AutomationTriggerContext", "options": [], "fields": [ { "id": "AutomationId", "name": "AutomationId", "type": "Guid", "options": [], "defaultValue": null }, { "id": "Kind", "name": "Kind", "type": "String", "options": [], "defaultValue": null }, { "id": "ObservedAt", "name": "ObservedAt", "type": "DateTimeOffset", "options": [], "defaultValue": null }, { "id": "Parameters", "name": "Parameters", "type": "Dictionary`2", "options": [], "defaultValue": null }, { "id": "TriggerId", "name": "TriggerId", "type": "Guid", "options": [], "defaultValue": null } ] } ``` ## Logs: ExecutionLogKind ID: ExecutionLogKind Website: /doku/logs/ExecutionLogKind/ ### errors State, Issues und IsComplete begrenzen die Aussagekraft. Ein leerer beziehungsweise nicht verfuegbarer Bestand ist kein Erfolgsbeleg. Fehlende ExecutionId oder Endzeitpunkte nicht erfinden. ### example Filtere einen konkreten RunId und lese LogPage mit unveraenderter SnapshotSequence bis NextBeforeSequence=null. Ordne danach StepExecutionId, StepSummaries und Laufstatus gemeinsam zu. Der Log-Leitfaden zeigt ein synthetisches Ereignis im echten Serializerformat. ### option.Job Quelle beziehungsweise Ziel ist ein Job. ### option.Makro Quelle beziehungsweise Ziel ist ein Makro. ### purpose Art eines ausfuehrbaren Laufziels: Job oder Makro. Anders als LogSource umfasst dieser Vertrag weder Application noch Automation. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ExecutionLogKind", "name": "ExecutionLogKind", "options": [ "Job", "Makro" ], "fields": [] } ``` ## Logs: AccessDenied ID: LOG-ACCESS-001 Website: /doku/logs/LOG-ACCESS-001/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Zugriff wurde verweigert. Rechte und Zugriffskontext der Anwendung auf dem Zielrechner prüfen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LOG-ACCESS-001", "name": "AccessDenied" } ``` ## Logs: AutomationDecision ID: automation.decision Website: /doku/logs/automation.decision/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Startregel wurde ausgewertet, zum Beispiel Cooldown oder Verhalten bei laufendem Ziel. RelatedInstanceIds helfen bei der Zuordnung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "automation.decision", "name": "AutomationDecision" } ``` ## Logs: FileUnavailable ID: LOG-FILE-004 Website: /doku/logs/LOG-FILE-004/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Eine benötigte Datei beziehungsweise Logdatei ist nicht verfügbar. Prüfe angegebene erlaubte Pfade und die Vollständigkeit der Belege. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LOG-FILE-004", "name": "FileUnavailable" } ``` ## Logs: IterationCompleted ID: run.iteration-completed Website: /doku/logs/run.iteration-completed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Beleg eines abgeschlossenen Hauptdurchlaufs; Wiederholungszähler können aggregiert gespeichert werden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "run.iteration-completed", "name": "IterationCompleted" } ``` ## Logs: Message ID: diagnostic.message Website: /doku/logs/diagnostic.message/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Normale bereinigte Beobachtung; daraus allein keinen Laufabschluss ableiten. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "diagnostic.message", "name": "Message" } ``` ## Logs: RunCompleted ID: run.completed Website: /doku/logs/run.completed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Belegter Laufabschluss. Outcome und CompletionReason unterscheiden Qualität und Abschlussgrund. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "run.completed", "name": "RunCompleted" } ``` ## Logs: RunStarted ID: run.started Website: /doku/logs/run.started/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Der Lauf wurde angelegt und gestartet; sein späterer Outcome entscheidet über den Abschluss. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "run.started", "name": "RunStarted" } ``` ## Logs: RunState ID: run.state Website: /doku/logs/run.state/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Änderung des Ausführungszustands, zum Beispiel Pause oder angeforderter Stopp. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "run.state", "name": "RunState" } ``` ## Logs: StartRejected ID: run.start-rejected Website: /doku/logs/run.start-rejected/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Eine Startanforderung wurde abgewiesen; sie ist keine erfolgreiche Step-Ausführung. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "run.start-rejected", "name": "StartRejected" } ``` ## Logs: StepBackgroundCancelled ID: step.background-cancelled Website: /doku/logs/step.background-cancelled/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Die zugeordnete Hintergrundarbeit wurde abgebrochen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.background-cancelled", "name": "StepBackgroundCancelled" } ``` ## Logs: StepBackgroundCompleted ID: step.background-completed Website: /doku/logs/step.background-completed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Die zugeordnete Hintergrundarbeit wurde erfolgreich abgeschlossen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.background-completed", "name": "StepBackgroundCompleted" } ``` ## Logs: StepBackgroundFailed ID: step.background-failed Website: /doku/logs/step.background-failed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Die zugeordnete Hintergrundarbeit ist fehlgeschlagen und kann ihren besitzenden Job fehlschlagen lassen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.background-failed", "name": "StepBackgroundFailed" } ``` ## Logs: StepBackgroundStarted ID: step.background-started Website: /doku/logs/step.background-started/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Besessene Hintergrundarbeit wurde gestartet; die Step-Startanforderung ist noch kein Abschluss dieser Arbeit. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.background-started", "name": "StepBackgroundStarted" } ``` ## Logs: StepCancelled ID: step.cancelled Website: /doku/logs/step.cancelled/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Eine begonnene Step-Ausführung wurde abgebrochen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.cancelled", "name": "StepCancelled" } ``` ## Logs: StepCompleted ID: step.completed Website: /doku/logs/step.completed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Die Step-Ausführung ist beendet. Das fachliche Ergebnis kann trotzdem found=false sein. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.completed", "name": "StepCompleted" } ``` ## Logs: StepFailed ID: step.failed Website: /doku/logs/step.failed/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Die Step-Ausführung hat einen Fehler gemeldet; Grund und Diagnose im selben Kontext prüfen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.failed", "name": "StepFailed" } ``` ## Logs: StepOutput ID: step.output Website: /doku/logs/step.output/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Bereinigte Beobachtung einer Step-/Skriptausgabe. Der Verlauf erfasst beispielsweise Stream und Zeichenanzahl statt kompletten Eingabetext. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.output", "name": "StepOutput" } ``` ## Logs: StepPaths ID: step.paths Website: /doku/logs/step.paths/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Explizit erlaubte strukturierte Pfade einer Datei-/Ausgabeaktion. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.paths", "name": "StepPaths" } ``` ## Logs: StepSkipped ID: step.skipped Website: /doku/logs/step.skipped/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Der Step wurde bewusst nicht ausgeführt, zum Beispiel deaktiviert, inaktiv oder ohne verfügbare optionale Eingabe. Reason erklärt den Unterschied. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.skipped", "name": "StepSkipped" } ``` ## Logs: StepStarted ID: step.started Website: /doku/logs/step.started/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Eine tatsächliche Step-Ausführung beginnt; StepExecutionId verbindet sie mit ihrem terminalen Ereignis. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "step.started", "name": "StepStarted" } ``` ## Logs: StorageGap ID: storage.gap Website: /doku/logs/storage.gap/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Bekannte Lücke in gespeicherten Belegen. IsComplete, LostEntries und Issues berücksichtigen; keine erfolgreiche Ausführung erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.gap", "name": "StorageGap" } ``` ## Logs: Trigger ID: automation.trigger Website: /doku/logs/automation.trigger/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Eine konkrete Triggerbeobachtung wurde erfasst; sie muss noch die Startregeln passieren. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "automation.trigger", "name": "Trigger" } ``` ## Logs: Unexpected ID: LOG-UNEXPECTED-001 Website: /doku/logs/LOG-UNEXPECTED-001/ ### errors Eine Datenlücke, nicht verfügbare Datei oder IsComplete=false begrenzt die Aussagekraft. Ein Start-/Dispatch-Ereignis beweist keinen Abschluss. Nicht ausgeführte, deaktivierte und übersprungene Steps getrennt behandeln; übersetzte Message-Texte nicht als stabile Statuscodes parsen. ### example Öffne Logs, filtere die Quelle und den Zeitraum, öffne einen Lauf und verknüpfe die Ereignisse über Context.RunId. Für eine technische Untersuchung den Bericht exportieren und runs.json zusammen mit den JSONL-Ereignissen lesen. Einzelereignisse und StepSummaries gemeinsam berücksichtigen. ### purpose Unerwartete Diagnose außerhalb eines spezielleren stabilen Codes. Bereinigte Ausnahmetypen und Kontext für Untersuchung verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "LOG-UNEXPECTED-001", "name": "Unexpected" } ``` ## Werte und Ergebnisse: ActiveProcessResult ID: ActiveProcessResult Website: /doku/werte/ActiveProcessResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ActiveProcessResult. Wird von Prozessstatus prüfen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.is_running Ob die geprüfte Prozessinstanz beziehungsweise die Prozessabfrage einen laufenden Prozess festgestellt hat. Einzelwert dieses Ergebnisses. ### result.match_count Anzahl passender Prozesse oder Merkmalszuordnungen im konkreten Ergebnis; der Ergebnis-Typ bestimmt, was gezählt wird. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ActiveProcessResult", "name": "ActiveProcessResult", "result": { "TypeName": "ActiveProcessResult", "DisplayName": "ActiveProcessResult", "Properties": [ { "Name": "IsRunning", "DisplayName": "Is Running", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_running", "EnumDisplayNames": null, "StableId": "is_running" }, { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "IsRunning", "DisplayName": "Is Running", "Property": { "Name": "IsRunning", "DisplayName": "Is Running", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_running", "EnumDisplayNames": null, "StableId": "is_running" }, "Children": [] }, { "Segment": "MatchCount", "DisplayName": "Match Count", "Property": { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: ActiveWindowResult ID: ActiveWindowResult Website: /doku/werte/ActiveWindowResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ActiveWindowResult. Wird von Vordergrundfenster prüfen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.is_active Ob das geprüfte Fenster zum Abfragezeitpunkt im Vordergrund ist. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ActiveWindowResult", "name": "ActiveWindowResult", "result": { "TypeName": "ActiveWindowResult", "DisplayName": "ActiveWindowResult", "Properties": [ { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, { "Name": "WindowHandle", "DisplayName": "Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "window_handle", "EnumDisplayNames": null, "StableId": "window_handle" } ], "PropertyTree": [ { "Segment": "IsActive", "DisplayName": "Is Active", "Property": { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "WindowHandle", "DisplayName": "Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "window_handle", "EnumDisplayNames": null, "StableId": "window_handle" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: AudioDevicesQueryResult ID: AudioDevicesQueryResult Website: /doku/werte/AudioDevicesQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag AudioDevicesQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "AudioDevicesQueryResult", "name": "AudioDevicesQueryResult", "result": { "TypeName": "AudioDevicesQueryResult", "DisplayName": "AudioDevicesQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: AudioVolumeQueryResult ID: AudioVolumeQueryResult Website: /doku/werte/AudioVolumeQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag AudioVolumeQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.device_exists Ob das gefilterte Hardwaregerät in der aktuellen Abfrage vorhanden ist. Einzelwert dieses Ergebnisses. ### result.device_id Vom System ermittelte Geräte-ID; sie ist kein frei gewählter Anzeigename. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_muted Ob die Audioausgabe stummgeschaltet ist. Einzelwert dieses Ergebnisses. ### result.on_off_state Ein-/Aus-Zustand der entsprechenden Gerätefunktion gemäß Ergebnisvertrag. Einzelwert dieses Ergebnisses. ### result.on_off_state.option.Off Der abgefragte Schalter ist ausgeschaltet. ### result.on_off_state.option.On Der abgefragte Schalter ist eingeschaltet. ### result.on_off_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.volume_percentage Aktuelle Lautstärke als Prozentwert von 0 bis 100; dies ist anders als Erkennungskonfidenzen bereits eine Prozentskala. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "AudioVolumeQueryResult", "name": "AudioVolumeQueryResult", "result": { "TypeName": "AudioVolumeQueryResult", "DisplayName": "AudioVolumeQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "device_exists", "EnumDisplayNames": null, "StableId": "device_exists" }, { "Name": "IsMuted", "DisplayName": "Is Muted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_muted", "EnumDisplayNames": null, "StableId": "is_muted" }, { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "volume_percentage", "EnumDisplayNames": null, "StableId": "volume_percentage" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "device_id", "EnumDisplayNames": null, "StableId": "device_id" }, { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "device_exists", "EnumDisplayNames": null, "StableId": "device_exists" }, "Children": [] }, { "Segment": "IsMuted", "DisplayName": "Is Muted", "Property": { "Name": "IsMuted", "DisplayName": "Is Muted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_muted", "EnumDisplayNames": null, "StableId": "is_muted" }, "Children": [] }, { "Segment": "Percentage", "DisplayName": "Percentage", "Property": { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "volume_percentage", "EnumDisplayNames": null, "StableId": "volume_percentage" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "device_id", "EnumDisplayNames": null, "StableId": "device_id" }, "Children": [] }, { "Segment": "OnOffState", "DisplayName": "On Off State", "Property": { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: CameraCaptureResult ID: CameraCaptureResult Website: /doku/werte/CameraCaptureResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag CameraCaptureResult. Wird von Kamerabild aufnehmen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.bounds Ermitteltes Rechteck im Koordinatenraum des entsprechenden Ergebnisobjekts. Einzelwert dieses Ergebnisses. ### result.bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Einzelwert dieses Ergebnisses. ### result.bounds.left Linke Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Einzelwert dieses Ergebnisses. ### result.bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.top Obere Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.capture_timestamp_utc UTC-Zeitpunkt des erfassten Bildes; bei wiederverwendeten Frames bleibt der ursprüngliche Zeitpunkt erhalten. Einzelwert dieses Ergebnisses. ### result.frame_timestamp Monotoner Stopwatch/QPC-Zeitstempel des Frames. 0 bedeutet unbekannt; dies ist kein Datum in Millisekunden seit 1970. Einzelwert dieses Ergebnisses. ### result.frame_version Laufzeit-Identität des Frames innerhalb seines Aufnahmeproduzenten. Cache-/Zeigeraktualisierungen sind keine neuen Desktop-Bildversionen; nicht zwischen unabhängigen Kameras/Monitorquellen vergleichen. Einzelwert dieses Ergebnisses. ### result.has_image Ob die Zwischenablage ein Bild enthält. Daraus folgt nicht automatisch, dass ein Bild als persistierbares JSON-Literal vorliegt. Einzelwert dieses Ergebnisses. ### result.image Laufzeit-Bildobjekt für Bildverbraucher. Es wird nicht als Bitmap-Payload in der Jobdatei gespeichert. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_fresh Ob die Aufnahme einen frischen Frame statt einer zwischengespeicherten Aufnahme geliefert hat. Einzelwert dieses Ergebnisses. ### result.offset Pixelversatz der Bildquelle gegenüber dem globalen Desktop. Bei bildlokalen Punkten addieren, bevor sie global verwendet werden. Einzelwert dieses Ergebnisses. ### result.offset.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.offset.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "CameraCaptureResult", "name": "CameraCaptureResult", "result": { "TypeName": "CameraCaptureResult", "DisplayName": "CameraCaptureResult", "Properties": [ { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" } ], "PropertyTree": [ { "Segment": "Image", "DisplayName": "Image", "Property": { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, "Children": [] }, { "Segment": "Bounds", "DisplayName": "Bounds", "Property": { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "Offset", "DisplayName": "Offset", "Property": { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, "Children": [] } ] }, { "Segment": "IsFresh", "DisplayName": "Is Fresh", "Property": { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, "Children": [] }, { "Segment": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "Property": { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, "Children": [] }, { "Segment": "FrameVersion", "DisplayName": "Frame Version", "Property": { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, "Children": [] }, { "Segment": "FrameTimestamp", "DisplayName": "Frame Timestamp", "Property": { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, "Children": [] }, { "Segment": "HasImage", "DisplayName": "Has Image", "Property": { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: ClipboardContentQueryResult ID: ClipboardContentQueryResult Website: /doku/werte/ClipboardContentQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ClipboardContentQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ClipboardContentQueryResult", "name": "ClipboardContentQueryResult", "result": { "TypeName": "ClipboardContentQueryResult", "DisplayName": "ClipboardContentQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: ColorDetectionResult ID: ColorDetectionResult Website: /doku/werte/ColorDetectionResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ColorDetectionResult. Wird von Farberkennung geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ColorDetectionResult", "name": "ColorDetectionResult", "result": { "TypeName": "ColorDetectionResult", "DisplayName": "ColorDetectionResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: DesktopDuplicationResult ID: DesktopDuplicationResult Website: /doku/werte/DesktopDuplicationResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag DesktopDuplicationResult. Wird von Bildschirm aufnehmen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.bounds Ermitteltes Rechteck im Koordinatenraum des entsprechenden Ergebnisobjekts. Einzelwert dieses Ergebnisses. ### result.bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Einzelwert dieses Ergebnisses. ### result.bounds.left Linke Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Einzelwert dieses Ergebnisses. ### result.bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Einzelwert dieses Ergebnisses. ### result.bounds.top Obere Rechteckkante in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### result.capture_timestamp_utc UTC-Zeitpunkt des erfassten Bildes; bei wiederverwendeten Frames bleibt der ursprüngliche Zeitpunkt erhalten. Einzelwert dieses Ergebnisses. ### result.frame_timestamp Monotoner Stopwatch/QPC-Zeitstempel des Frames. 0 bedeutet unbekannt; dies ist kein Datum in Millisekunden seit 1970. Einzelwert dieses Ergebnisses. ### result.frame_version Laufzeit-Identität des Frames innerhalb seines Aufnahmeproduzenten. Cache-/Zeigeraktualisierungen sind keine neuen Desktop-Bildversionen; nicht zwischen unabhängigen Kameras/Monitorquellen vergleichen. Einzelwert dieses Ergebnisses. ### result.has_image Ob die Zwischenablage ein Bild enthält. Daraus folgt nicht automatisch, dass ein Bild als persistierbares JSON-Literal vorliegt. Einzelwert dieses Ergebnisses. ### result.image Laufzeit-Bildobjekt für Bildverbraucher. Es wird nicht als Bitmap-Payload in der Jobdatei gespeichert. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_fresh Ob die Aufnahme einen frischen Frame statt einer zwischengespeicherten Aufnahme geliefert hat. Einzelwert dieses Ergebnisses. ### result.offset Pixelversatz der Bildquelle gegenüber dem globalen Desktop. Bei bildlokalen Punkten addieren, bevor sie global verwendet werden. Einzelwert dieses Ergebnisses. ### result.offset.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Einzelwert dieses Ergebnisses. ### result.offset.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "DesktopDuplicationResult", "name": "DesktopDuplicationResult", "result": { "TypeName": "DesktopDuplicationResult", "DisplayName": "DesktopDuplicationResult", "Properties": [ { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" } ], "PropertyTree": [ { "Segment": "Image", "DisplayName": "Image", "Property": { "Name": "Image", "DisplayName": "Image", "DataType": "Image", "Description": "Image, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "image", "EnumDisplayNames": null, "StableId": "image" }, "Children": [] }, { "Segment": "Bounds", "DisplayName": "Bounds", "Property": { "Name": "Bounds", "DisplayName": "Bounds", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds", "EnumDisplayNames": null, "StableId": "bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.X", "DisplayName": "Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.x", "EnumDisplayNames": null, "StableId": "bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Y", "DisplayName": "Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.y", "EnumDisplayNames": null, "StableId": "bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Bounds.Width", "DisplayName": "Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.width", "EnumDisplayNames": null, "StableId": "bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Bounds.Height", "DisplayName": "Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.height", "EnumDisplayNames": null, "StableId": "bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Bounds.Left", "DisplayName": "Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.left", "EnumDisplayNames": null, "StableId": "bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Bounds.Top", "DisplayName": "Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.top", "EnumDisplayNames": null, "StableId": "bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Bounds.Right", "DisplayName": "Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.right", "EnumDisplayNames": null, "StableId": "bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Bounds.Bottom", "DisplayName": "Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.bottom", "EnumDisplayNames": null, "StableId": "bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Bounds.IsEmpty", "DisplayName": "Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.is_empty", "EnumDisplayNames": null, "StableId": "bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Bounds.Location", "DisplayName": "Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location", "EnumDisplayNames": null, "StableId": "bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Location.X", "DisplayName": "Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.x", "EnumDisplayNames": null, "StableId": "bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Location.Y", "DisplayName": "Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.location.y", "EnumDisplayNames": null, "StableId": "bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Bounds.Center", "DisplayName": "Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center", "EnumDisplayNames": null, "StableId": "bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Bounds.Center.X", "DisplayName": "Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.x", "EnumDisplayNames": null, "StableId": "bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Bounds.Center.Y", "DisplayName": "Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "bounds.center.y", "EnumDisplayNames": null, "StableId": "bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "Offset", "DisplayName": "Offset", "Property": { "Name": "Offset", "DisplayName": "Offset", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset", "EnumDisplayNames": null, "StableId": "offset" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Offset.X", "DisplayName": "Offset / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.x", "EnumDisplayNames": null, "StableId": "offset.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Offset.Y", "DisplayName": "Offset / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "offset.y", "EnumDisplayNames": null, "StableId": "offset.y" }, "Children": [] } ] }, { "Segment": "IsFresh", "DisplayName": "Is Fresh", "Property": { "Name": "IsFresh", "DisplayName": "Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_fresh", "EnumDisplayNames": null, "StableId": "is_fresh" }, "Children": [] }, { "Segment": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "Property": { "Name": "CaptureTimestampUtc", "DisplayName": "Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "capture_timestamp_utc" }, "Children": [] }, { "Segment": "FrameVersion", "DisplayName": "Frame Version", "Property": { "Name": "FrameVersion", "DisplayName": "Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_version", "EnumDisplayNames": null, "StableId": "frame_version" }, "Children": [] }, { "Segment": "FrameTimestamp", "DisplayName": "Frame Timestamp", "Property": { "Name": "FrameTimestamp", "DisplayName": "Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "frame_timestamp", "EnumDisplayNames": null, "StableId": "frame_timestamp" }, "Children": [] }, { "Segment": "HasImage", "DisplayName": "Has Image", "Property": { "Name": "HasImage", "DisplayName": "Has Image", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "has_image", "EnumDisplayNames": null, "StableId": "has_image" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: DeviceCollectionQueryResult ID: DeviceCollectionQueryResult Website: /doku/werte/DeviceCollectionQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag DeviceCollectionQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "DeviceCollectionQueryResult", "name": "DeviceCollectionQueryResult", "result": { "TypeName": "DeviceCollectionQueryResult", "DisplayName": "DeviceCollectionQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: DynamicRoiResult ID: DynamicRoiResult Website: /doku/werte/DynamicRoiResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag DynamicRoiResult. Wird von Dynamischen Bildbereich erstellen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.consecutive_misses Anzahl aufeinanderfolgender nicht verwertbarer Treffer seit der letzten gültigen Aktualisierung. Einzelwert dieses Ergebnisses. ### result.full_search_interval Konfigurierter Abstand regelmäßiger Vollsuchen in Durchläufen; 0 bedeutet keine regelmäßige Vollsuche. Einzelwert dieses Ergebnisses. ### result.global_bounds Suchrechteck in globalen Desktopkoordinaten. Für bildlokale Verbraucher muss dessen Quelle/Versatz berücksichtigt werden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.global_bounds.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.roi_reset Ob der Suchbereich wegen der Rücksetzregel auf den Ausgangsbereich zurückgesetzt wurde. Einzelwert dieses Ergebnisses. ### result.roi_updated Ob der dynamische Suchbereich in diesem Step neu aus einem verwertbaren Treffer aktualisiert wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "DynamicRoiResult", "name": "DynamicRoiResult", "result": { "TypeName": "DynamicRoiResult", "DisplayName": "DynamicRoiResult", "Properties": [ { "Name": "RoiUpdated", "DisplayName": "Roi Updated", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_updated", "EnumDisplayNames": null, "StableId": "roi_updated" }, { "Name": "RoiReset", "DisplayName": "Roi Reset", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_reset", "EnumDisplayNames": null, "StableId": "roi_reset" }, { "Name": "GlobalBounds", "DisplayName": "Global Bounds", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds", "EnumDisplayNames": null, "StableId": "global_bounds" }, { "Name": "GlobalBounds.X", "DisplayName": "Global Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.x", "EnumDisplayNames": null, "StableId": "global_bounds.x" }, { "Name": "GlobalBounds.Y", "DisplayName": "Global Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.y", "EnumDisplayNames": null, "StableId": "global_bounds.y" }, { "Name": "GlobalBounds.Width", "DisplayName": "Global Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.width", "EnumDisplayNames": null, "StableId": "global_bounds.width" }, { "Name": "GlobalBounds.Height", "DisplayName": "Global Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.height", "EnumDisplayNames": null, "StableId": "global_bounds.height" }, { "Name": "GlobalBounds.Left", "DisplayName": "Global Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.left", "EnumDisplayNames": null, "StableId": "global_bounds.left" }, { "Name": "GlobalBounds.Top", "DisplayName": "Global Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.top", "EnumDisplayNames": null, "StableId": "global_bounds.top" }, { "Name": "GlobalBounds.Right", "DisplayName": "Global Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.right", "EnumDisplayNames": null, "StableId": "global_bounds.right" }, { "Name": "GlobalBounds.Bottom", "DisplayName": "Global Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.bottom", "EnumDisplayNames": null, "StableId": "global_bounds.bottom" }, { "Name": "GlobalBounds.IsEmpty", "DisplayName": "Global Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.is_empty", "EnumDisplayNames": null, "StableId": "global_bounds.is_empty" }, { "Name": "GlobalBounds.Location", "DisplayName": "Global Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location", "EnumDisplayNames": null, "StableId": "global_bounds.location" }, { "Name": "GlobalBounds.Location.X", "DisplayName": "Global Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.x", "EnumDisplayNames": null, "StableId": "global_bounds.location.x" }, { "Name": "GlobalBounds.Location.Y", "DisplayName": "Global Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.y", "EnumDisplayNames": null, "StableId": "global_bounds.location.y" }, { "Name": "GlobalBounds.Center", "DisplayName": "Global Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center", "EnumDisplayNames": null, "StableId": "global_bounds.center" }, { "Name": "GlobalBounds.Center.X", "DisplayName": "Global Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.x", "EnumDisplayNames": null, "StableId": "global_bounds.center.x" }, { "Name": "GlobalBounds.Center.Y", "DisplayName": "Global Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.y", "EnumDisplayNames": null, "StableId": "global_bounds.center.y" }, { "Name": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "consecutive_misses", "EnumDisplayNames": null, "StableId": "consecutive_misses" }, { "Name": "FullSearchInterval", "DisplayName": "Full Search Interval", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "full_search_interval", "EnumDisplayNames": null, "StableId": "full_search_interval" } ], "PropertyTree": [ { "Segment": "RoiUpdated", "DisplayName": "Roi Updated", "Property": { "Name": "RoiUpdated", "DisplayName": "Roi Updated", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_updated", "EnumDisplayNames": null, "StableId": "roi_updated" }, "Children": [] }, { "Segment": "RoiReset", "DisplayName": "Roi Reset", "Property": { "Name": "RoiReset", "DisplayName": "Roi Reset", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "roi_reset", "EnumDisplayNames": null, "StableId": "roi_reset" }, "Children": [] }, { "Segment": "GlobalBounds", "DisplayName": "Global Bounds", "Property": { "Name": "GlobalBounds", "DisplayName": "Global Bounds", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds", "EnumDisplayNames": null, "StableId": "global_bounds" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.X", "DisplayName": "Global Bounds / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.x", "EnumDisplayNames": null, "StableId": "global_bounds.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Y", "DisplayName": "Global Bounds / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.y", "EnumDisplayNames": null, "StableId": "global_bounds.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "GlobalBounds.Width", "DisplayName": "Global Bounds / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.width", "EnumDisplayNames": null, "StableId": "global_bounds.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "GlobalBounds.Height", "DisplayName": "Global Bounds / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.height", "EnumDisplayNames": null, "StableId": "global_bounds.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "GlobalBounds.Left", "DisplayName": "Global Bounds / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.left", "EnumDisplayNames": null, "StableId": "global_bounds.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "GlobalBounds.Top", "DisplayName": "Global Bounds / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.top", "EnumDisplayNames": null, "StableId": "global_bounds.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "GlobalBounds.Right", "DisplayName": "Global Bounds / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.right", "EnumDisplayNames": null, "StableId": "global_bounds.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "GlobalBounds.Bottom", "DisplayName": "Global Bounds / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.bottom", "EnumDisplayNames": null, "StableId": "global_bounds.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "GlobalBounds.IsEmpty", "DisplayName": "Global Bounds / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.is_empty", "EnumDisplayNames": null, "StableId": "global_bounds.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "GlobalBounds.Location", "DisplayName": "Global Bounds / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location", "EnumDisplayNames": null, "StableId": "global_bounds.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.Location.X", "DisplayName": "Global Bounds / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.x", "EnumDisplayNames": null, "StableId": "global_bounds.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Location.Y", "DisplayName": "Global Bounds / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.location.y", "EnumDisplayNames": null, "StableId": "global_bounds.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "GlobalBounds.Center", "DisplayName": "Global Bounds / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center", "EnumDisplayNames": null, "StableId": "global_bounds.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "GlobalBounds.Center.X", "DisplayName": "Global Bounds / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.x", "EnumDisplayNames": null, "StableId": "global_bounds.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "GlobalBounds.Center.Y", "DisplayName": "Global Bounds / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "global_bounds.center.y", "EnumDisplayNames": null, "StableId": "global_bounds.center.y" }, "Children": [] } ] } ] }, { "Segment": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "Property": { "Name": "ConsecutiveMisses", "DisplayName": "Consecutive Misses", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "consecutive_misses", "EnumDisplayNames": null, "StableId": "consecutive_misses" }, "Children": [] }, { "Segment": "FullSearchInterval", "DisplayName": "Full Search Interval", "Property": { "Name": "FullSearchInterval", "DisplayName": "Full Search Interval", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "full_search_interval", "EnumDisplayNames": null, "StableId": "full_search_interval" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: FileSystemOperationResult ID: FileSystemOperationResult Website: /doku/werte/FileSystemOperationResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag FileSystemOperationResult. Wird von Datei oder Ordner bearbeiten geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.affected_bytes Umfang der betroffenen Dateidaten in Bytes. Einzelwert dieses Ergebnisses. ### result.affected_count Gesamtzahl betroffener Einträge der Dateiaktion. Einzelwert dieses Ergebnisses. ### result.affected_directory_count Anzahl betroffener Ordner, getrennt von Dateien. Einzelwert dieses Ergebnisses. ### result.affected_file_count Anzahl betroffener Dateien, getrennt von Ordnern. Einzelwert dieses Ergebnisses. ### result.affected_paths Liste der von der Dateiaktion betroffenen Pfade. Ein erfolgreicher Zähler ist nicht automatisch ein Backup-Versionsnachweis. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.affected_paths.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.completed_at_utc UTC-Abschlusszeitpunkt der Aktion. Einzelwert dieses Ergebnisses. ### result.item_type Ob Datei, Ordner oder mehrere Einträge von der Dateiaktion betroffen waren. Einzelwert dieses Ergebnisses. ### result.item_type.option.Directory Betroffener Eintrag ist ein Ordner. ### result.item_type.option.File Betroffener Eintrag ist eine Datei. ### result.item_type.option.Multiple Mehrere Einträge wurden bearbeitet. ### result.operation Tatsächlich angeforderte Dateiaktion. Zusammen mit den Zählern und Pfaden lesen, um deren Auswirkungen zu verstehen. Einzelwert dieses Ergebnisses. ### result.operation.option.Copy Kopiert die Quelle zum Ziel; die Quelle bleibt erhalten. ### result.operation.option.Delete Entfernt passende Quelleinträge; zuerst mit entbehrlichen Testdaten prüfen. ### result.operation.option.Move Verschiebt die Quelle zum Ziel; bei Erfolg liegt sie dort statt am ursprünglichen Ort. ### result.operation.option.Rename Benennt den Quelleintrag mit new_name um. ### result.source_path Verwendeter Quellpfad der Dateiaktion. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.target_path Verwendeter Zielpfad der Dateiaktion, soweit die gewählte Aktion ein Ziel besitzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "FileSystemOperationResult", "name": "FileSystemOperationResult", "result": { "TypeName": "FileSystemOperationResult", "DisplayName": "FileSystemOperationResult", "Properties": [ { "Name": "Operation", "DisplayName": "Operation", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Jobs.FileSystemOperation", "EnumValues": [ "Copy", "Move", "Rename", "Delete" ], "Id": "operation", "EnumDisplayNames": null, "StableId": "operation" }, { "Name": "SourcePath", "DisplayName": "Source Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "source_path", "EnumDisplayNames": null, "StableId": "source_path" }, { "Name": "TargetPath", "DisplayName": "Target Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "target_path", "EnumDisplayNames": null, "StableId": "target_path" }, { "Name": "ItemType", "DisplayName": "Item Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Steps.FileSystemItemType", "EnumValues": [ "File", "Directory", "Multiple" ], "Id": "item_type", "EnumDisplayNames": null, "StableId": "item_type" }, { "Name": "AffectedCount", "DisplayName": "Affected Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_count", "EnumDisplayNames": null, "StableId": "affected_count" }, { "Name": "AffectedFileCount", "DisplayName": "Affected File Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_file_count", "EnumDisplayNames": null, "StableId": "affected_file_count" }, { "Name": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_directory_count", "EnumDisplayNames": null, "StableId": "affected_directory_count" }, { "Name": "AffectedBytes", "DisplayName": "Affected Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_bytes", "EnumDisplayNames": null, "StableId": "affected_bytes" }, { "Name": "AffectedPaths", "DisplayName": "Affected Paths", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths", "EnumDisplayNames": null, "StableId": "affected_paths" }, { "Name": "AffectedPaths.Count", "DisplayName": "Affected Paths / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths.count", "EnumDisplayNames": null, "StableId": "affected_paths.count" }, { "Name": "CompletedAtUtc", "DisplayName": "Completed At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "completed_at_utc", "EnumDisplayNames": null, "StableId": "completed_at_utc" } ], "PropertyTree": [ { "Segment": "Operation", "DisplayName": "Operation", "Property": { "Name": "Operation", "DisplayName": "Operation", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Jobs.FileSystemOperation", "EnumValues": [ "Copy", "Move", "Rename", "Delete" ], "Id": "operation", "EnumDisplayNames": null, "StableId": "operation" }, "Children": [] }, { "Segment": "SourcePath", "DisplayName": "Source Path", "Property": { "Name": "SourcePath", "DisplayName": "Source Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "source_path", "EnumDisplayNames": null, "StableId": "source_path" }, "Children": [] }, { "Segment": "TargetPath", "DisplayName": "Target Path", "Property": { "Name": "TargetPath", "DisplayName": "Target Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "target_path", "EnumDisplayNames": null, "StableId": "target_path" }, "Children": [] }, { "Segment": "ItemType", "DisplayName": "Item Type", "Property": { "Name": "ItemType", "DisplayName": "Item Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.Steps.FileSystemItemType", "EnumValues": [ "File", "Directory", "Multiple" ], "Id": "item_type", "EnumDisplayNames": null, "StableId": "item_type" }, "Children": [] }, { "Segment": "AffectedCount", "DisplayName": "Affected Count", "Property": { "Name": "AffectedCount", "DisplayName": "Affected Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_count", "EnumDisplayNames": null, "StableId": "affected_count" }, "Children": [] }, { "Segment": "AffectedFileCount", "DisplayName": "Affected File Count", "Property": { "Name": "AffectedFileCount", "DisplayName": "Affected File Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_file_count", "EnumDisplayNames": null, "StableId": "affected_file_count" }, "Children": [] }, { "Segment": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "Property": { "Name": "AffectedDirectoryCount", "DisplayName": "Affected Directory Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_directory_count", "EnumDisplayNames": null, "StableId": "affected_directory_count" }, "Children": [] }, { "Segment": "AffectedBytes", "DisplayName": "Affected Bytes", "Property": { "Name": "AffectedBytes", "DisplayName": "Affected Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_bytes", "EnumDisplayNames": null, "StableId": "affected_bytes" }, "Children": [] }, { "Segment": "AffectedPaths", "DisplayName": "Affected Paths", "Property": { "Name": "AffectedPaths", "DisplayName": "Affected Paths", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths", "EnumDisplayNames": null, "StableId": "affected_paths" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AffectedPaths.Count", "DisplayName": "Affected Paths / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "affected_paths.count", "EnumDisplayNames": null, "StableId": "affected_paths.count" }, "Children": [] } ] }, { "Segment": "CompletedAtUtc", "DisplayName": "Completed At Utc", "Property": { "Name": "CompletedAtUtc", "DisplayName": "Completed At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "completed_at_utc", "EnumDisplayNames": null, "StableId": "completed_at_utc" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: FileSystemPathQueryResult ID: FileSystemPathQueryResult Website: /doku/werte/FileSystemPathQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag FileSystemPathQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.path Pfad des abgefragten Dateisystemobjekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "FileSystemPathQueryResult", "name": "FileSystemPathQueryResult", "result": { "TypeName": "FileSystemPathQueryResult", "DisplayName": "FileSystemPathQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Path", "DisplayName": "Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "path", "EnumDisplayNames": null, "StableId": "path" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Value", "DisplayName": "Value", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Path", "DisplayName": "Path", "Property": { "Name": "Path", "DisplayName": "Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "path", "EnumDisplayNames": null, "StableId": "path" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Value", "DisplayName": "Value", "Property": { "Name": "Value", "DisplayName": "Value", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: FocusProcessResult ID: FocusProcessResult Website: /doku/werte/FocusProcessResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag FocusProcessResult. Wird von Fenster anzeigen oder minimieren geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "FocusProcessResult", "name": "FocusProcessResult", "result": { "TypeName": "FocusProcessResult", "DisplayName": "FocusProcessResult", "Properties": [ { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: ForegroundWindowQueryResult ID: ForegroundWindowQueryResult Website: /doku/werte/ForegroundWindowQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ForegroundWindowQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ForegroundWindowQueryResult", "name": "ForegroundWindowQueryResult", "result": { "TypeName": "ForegroundWindowQueryResult", "DisplayName": "ForegroundWindowQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: GetProcessResult ID: GetProcessResult Website: /doku/werte/GetProcessResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag GetProcessResult. Wird von Laufenden Prozess suchen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "GetProcessResult", "name": "GetProcessResult", "result": { "TypeName": "GetProcessResult", "DisplayName": "GetProcessResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: InputControlResult ID: InputControlResult Website: /doku/werte/InputControlResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag InputControlResult. Wird von Eingaben blockieren, Eingaben freigeben geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "InputControlResult", "name": "InputControlResult", "result": { "TypeName": "InputControlResult", "DisplayName": "InputControlResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: InputIdleQueryResult ID: InputIdleQueryResult Website: /doku/werte/InputIdleQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag InputIdleQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "InputIdleQueryResult", "name": "InputIdleQueryResult", "result": { "TypeName": "InputIdleQueryResult", "DisplayName": "InputIdleQueryResult", "Properties": [ { "Name": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "IdleSeconds", "DisplayName": "Idle Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "Property": { "Name": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "IdleSeconds", "DisplayName": "Idle Seconds", "Property": { "Name": "IdleSeconds", "DisplayName": "Idle Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: JobExecutionResult ID: JobExecutionResult Website: /doku/werte/JobExecutionResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag JobExecutionResult. Wird von Job ausführen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "JobExecutionResult", "name": "JobExecutionResult", "result": { "TypeName": "JobExecutionResult", "DisplayName": "JobExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: KeyPointMatchingResult ID: KeyPointMatchingResult Website: /doku/werte/KeyPointMatchingResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag KeyPointMatchingResult. Wird von Bildmerkmale vergleichen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "KeyPointMatchingResult", "name": "KeyPointMatchingResult", "result": { "TypeName": "KeyPointMatchingResult", "DisplayName": "KeyPointMatchingResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: KlickOnPoint3DResult ID: KlickOnPoint3DResult Website: /doku/werte/KlickOnPoint3DResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag KlickOnPoint3DResult. Wird von 3D-Ziel anklicken geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.click_on_point_3d.applied_delta_x Tatsächlich angewendeter ganzzahliger horizontaler Mausversatz nach Skalierung und Rundung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.applied_delta_y Tatsächlich angewendeter ganzzahliger vertikaler Mausversatz nach Skalierung und Rundung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.delta_x Horizontale Abweichung beziehungsweise Bewegungsanteil in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.delta_y Vertikale Abweichung beziehungsweise Bewegungsanteil in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.movement_blocked Ob die 3D-Eingabe wegen Bewegungstoleranz oder nicht neuerem Quell-Frame unterdrückt wurde. Es wurde dabei keine neue Bewegung und kein Klick gesendet. Einzelwert dieses Ergebnisses. ### result.click_on_point_3d.movement_factor_x Horizontaler Skalierungsfaktor, der für diese Eingabe verwendet wurde. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.click_on_point_3d.movement_factor_y Vertikaler Skalierungsfaktor, der für diese Eingabe verwendet wurde. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "KlickOnPoint3DResult", "name": "KlickOnPoint3DResult", "result": { "TypeName": "KlickOnPoint3DResult", "DisplayName": "KlickOnPoint3DResult", "Properties": [ { "Name": "DeltaX", "DisplayName": "Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_x" }, { "Name": "DeltaY", "DisplayName": "Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_y" }, { "Name": "MovementFactorX", "DisplayName": "Movement Factor X", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_x" }, { "Name": "MovementFactorY", "DisplayName": "Movement Factor Y", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_y" }, { "Name": "AppliedDeltaX", "DisplayName": "Applied Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_x" }, { "Name": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_y" }, { "Name": "MovementBlocked", "DisplayName": "Movement Blocked", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_blocked", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_blocked" } ], "PropertyTree": [ { "Segment": "DeltaX", "DisplayName": "Delta X", "Property": { "Name": "DeltaX", "DisplayName": "Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_x" }, "Children": [] }, { "Segment": "DeltaY", "DisplayName": "Delta Y", "Property": { "Name": "DeltaY", "DisplayName": "Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.delta_y" }, "Children": [] }, { "Segment": "MovementFactorX", "DisplayName": "Movement Factor X", "Property": { "Name": "MovementFactorX", "DisplayName": "Movement Factor X", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_x" }, "Children": [] }, { "Segment": "MovementFactorY", "DisplayName": "Movement Factor Y", "Property": { "Name": "MovementFactorY", "DisplayName": "Movement Factor Y", "DataType": "Number", "Description": "Number, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_factor_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_factor_y" }, "Children": [] }, { "Segment": "AppliedDeltaX", "DisplayName": "Applied Delta X", "Property": { "Name": "AppliedDeltaX", "DisplayName": "Applied Delta X", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_x", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_x" }, "Children": [] }, { "Segment": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "Property": { "Name": "AppliedDeltaY", "DisplayName": "Applied Delta Y", "DataType": "Integer", "Description": "Integer, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.applied_delta_y", "EnumDisplayNames": null, "StableId": "click_on_point_3d.applied_delta_y" }, "Children": [] }, { "Segment": "MovementBlocked", "DisplayName": "Movement Blocked", "Property": { "Name": "MovementBlocked", "DisplayName": "Movement Blocked", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "click_on_point_3d.movement_blocked", "EnumDisplayNames": null, "StableId": "click_on_point_3d.movement_blocked" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: KlickOnPointResult ID: KlickOnPointResult Website: /doku/werte/KlickOnPointResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag KlickOnPointResult. Wird von Punkt anklicken geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "KlickOnPointResult", "name": "KlickOnPointResult", "result": { "TypeName": "KlickOnPointResult", "DisplayName": "KlickOnPointResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: MakroExecutionResult ID: MakroExecutionResult Website: /doku/werte/MakroExecutionResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag MakroExecutionResult. Wird von Makro ausführen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "MakroExecutionResult", "name": "MakroExecutionResult", "result": { "TypeName": "MakroExecutionResult", "DisplayName": "MakroExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: MonitorCollectionQueryResult ID: MonitorCollectionQueryResult Website: /doku/werte/MonitorCollectionQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag MonitorCollectionQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "MonitorCollectionQueryResult", "name": "MonitorCollectionQueryResult", "result": { "TypeName": "MonitorCollectionQueryResult", "DisplayName": "MonitorCollectionQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: NetworkConnectivityQueryResult ID: NetworkConnectivityQueryResult Website: /doku/werte/NetworkConnectivityQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag NetworkConnectivityQueryResult. Wird von Windows-Zustand abfragen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.connection_type Art der ermittelten Netzwerkverbindung, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.connection_type.option.Ethernet Kabelgebundene Ethernet-Verbindung. ### result.connection_type.option.Mobile Mobilfunkverbindung. ### result.connection_type.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.connection_type.option.Virtual Virtueller Netzwerkadapter beziehungsweise virtuelle Verbindung. ### result.connection_type.option.WiFi Drahtlose WLAN-Verbindung. ### result.connectivity Vom Netzwerkprovider gemeldete Verbindungsqualität beziehungsweise Konnektivität. Einzelwert dieses Ergebnisses. ### result.connectivity.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.connectivity.option.Internet Windows meldet Internetkonnektivität. ### result.connectivity.option.LocalNetwork Windows meldet lokale Netzwerkkonnektivität ohne belegten Internetzugang. ### result.connectivity.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "NetworkConnectivityQueryResult", "name": "NetworkConnectivityQueryResult", "result": { "TypeName": "NetworkConnectivityQueryResult", "DisplayName": "NetworkConnectivityQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Connectivity", "DisplayName": "Connectivity", "Property": { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, "Children": [] }, { "Segment": "ConnectionType", "DisplayName": "Connection Type", "Property": { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: OcrResult ID: OcrResult Website: /doku/werte/OcrResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag OcrResult. Wird von Text erkennen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.line_count Anzahl erkannter Textzeilen der OCR-Auswertung. Einzelwert dieses Ergebnisses. ### result.lines.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.lines.position Position des Punktes/Fensters im Ergebnis-Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.lines.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.minimum_confidence Für diese Berechnung verwendete Mindestkonfidenz als Anteil von 0 bis 1. Einzelwert dieses Ergebnisses. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### result.word_count Anzahl erkannter Wörter im betrachteten Textbereich. Einzelwert dieses Ergebnisses. ### result.words.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.words.line_position Position beziehungsweise Zuordnung des OCR-Treffers innerhalb seiner Zeile. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.position Position des Punktes/Fensters im Ergebnis-Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.words.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "OcrResult", "name": "OcrResult", "result": { "TypeName": "OcrResult", "DisplayName": "OcrResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "MinimumConfidence", "DisplayName": "Minimum Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "minimum_confidence", "EnumDisplayNames": null, "StableId": "minimum_confidence" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "LineCount", "DisplayName": "Line Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "line_count", "EnumDisplayNames": null, "StableId": "line_count" }, { "Name": "WordCount", "DisplayName": "Word Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "word_count", "EnumDisplayNames": null, "StableId": "word_count" }, { "Name": "Lines.Count", "DisplayName": "Lines / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "lines.count", "EnumDisplayNames": null, "StableId": "lines.count" }, { "Name": "Lines[].Text", "DisplayName": "Lines[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.text", "EnumDisplayNames": null, "StableId": "lines.text" }, { "Name": "Lines[].Confidence", "DisplayName": "Lines[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.confidence", "EnumDisplayNames": null, "StableId": "lines.confidence" }, { "Name": "Lines[].BoundingBox", "DisplayName": "Lines[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box", "EnumDisplayNames": null, "StableId": "lines.bounding_box" }, { "Name": "Lines[].BoundingBox.X", "DisplayName": "Lines[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.x" }, { "Name": "Lines[].BoundingBox.Y", "DisplayName": "Lines[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.y" }, { "Name": "Lines[].BoundingBox.Width", "DisplayName": "Lines[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.width", "EnumDisplayNames": null, "StableId": "lines.bounding_box.width" }, { "Name": "Lines[].BoundingBox.Height", "DisplayName": "Lines[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.height", "EnumDisplayNames": null, "StableId": "lines.bounding_box.height" }, { "Name": "Lines[].BoundingBox.Left", "DisplayName": "Lines[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.left", "EnumDisplayNames": null, "StableId": "lines.bounding_box.left" }, { "Name": "Lines[].BoundingBox.Top", "DisplayName": "Lines[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.top", "EnumDisplayNames": null, "StableId": "lines.bounding_box.top" }, { "Name": "Lines[].BoundingBox.Right", "DisplayName": "Lines[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.right", "EnumDisplayNames": null, "StableId": "lines.bounding_box.right" }, { "Name": "Lines[].BoundingBox.Bottom", "DisplayName": "Lines[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "lines.bounding_box.bottom" }, { "Name": "Lines[].BoundingBox.IsEmpty", "DisplayName": "Lines[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "lines.bounding_box.is_empty" }, { "Name": "Lines[].BoundingBox.Location", "DisplayName": "Lines[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location" }, { "Name": "Lines[].BoundingBox.Location.X", "DisplayName": "Lines[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.x" }, { "Name": "Lines[].BoundingBox.Location.Y", "DisplayName": "Lines[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.y" }, { "Name": "Lines[].BoundingBox.Center", "DisplayName": "Lines[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center" }, { "Name": "Lines[].BoundingBox.Center.X", "DisplayName": "Lines[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.x" }, { "Name": "Lines[].BoundingBox.Center.Y", "DisplayName": "Lines[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.y" }, { "Name": "Lines[].Position", "DisplayName": "Lines[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.position", "EnumDisplayNames": null, "StableId": "lines.position" }, { "Name": "Words.Count", "DisplayName": "Words / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "words.count", "EnumDisplayNames": null, "StableId": "words.count" }, { "Name": "Words[].Text", "DisplayName": "Words[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.text", "EnumDisplayNames": null, "StableId": "words.text" }, { "Name": "Words[].Confidence", "DisplayName": "Words[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.confidence", "EnumDisplayNames": null, "StableId": "words.confidence" }, { "Name": "Words[].BoundingBox", "DisplayName": "Words[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box", "EnumDisplayNames": null, "StableId": "words.bounding_box" }, { "Name": "Words[].BoundingBox.X", "DisplayName": "Words[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.x" }, { "Name": "Words[].BoundingBox.Y", "DisplayName": "Words[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.y" }, { "Name": "Words[].BoundingBox.Width", "DisplayName": "Words[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.width", "EnumDisplayNames": null, "StableId": "words.bounding_box.width" }, { "Name": "Words[].BoundingBox.Height", "DisplayName": "Words[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.height", "EnumDisplayNames": null, "StableId": "words.bounding_box.height" }, { "Name": "Words[].BoundingBox.Left", "DisplayName": "Words[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.left", "EnumDisplayNames": null, "StableId": "words.bounding_box.left" }, { "Name": "Words[].BoundingBox.Top", "DisplayName": "Words[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.top", "EnumDisplayNames": null, "StableId": "words.bounding_box.top" }, { "Name": "Words[].BoundingBox.Right", "DisplayName": "Words[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.right", "EnumDisplayNames": null, "StableId": "words.bounding_box.right" }, { "Name": "Words[].BoundingBox.Bottom", "DisplayName": "Words[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "words.bounding_box.bottom" }, { "Name": "Words[].BoundingBox.IsEmpty", "DisplayName": "Words[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "words.bounding_box.is_empty" }, { "Name": "Words[].BoundingBox.Location", "DisplayName": "Words[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location", "EnumDisplayNames": null, "StableId": "words.bounding_box.location" }, { "Name": "Words[].BoundingBox.Location.X", "DisplayName": "Words[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.x" }, { "Name": "Words[].BoundingBox.Location.Y", "DisplayName": "Words[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.y" }, { "Name": "Words[].BoundingBox.Center", "DisplayName": "Words[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center", "EnumDisplayNames": null, "StableId": "words.bounding_box.center" }, { "Name": "Words[].BoundingBox.Center.X", "DisplayName": "Words[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.x" }, { "Name": "Words[].BoundingBox.Center.Y", "DisplayName": "Words[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.y" }, { "Name": "Words[].Position", "DisplayName": "Words[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.position", "EnumDisplayNames": null, "StableId": "words.position" }, { "Name": "Words[].LinePosition", "DisplayName": "Words[] / Line Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.line_position", "EnumDisplayNames": null, "StableId": "words.line_position" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "MinimumConfidence", "DisplayName": "Minimum Confidence", "Property": { "Name": "MinimumConfidence", "DisplayName": "Minimum Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "minimum_confidence", "EnumDisplayNames": null, "StableId": "minimum_confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "LineCount", "DisplayName": "Line Count", "Property": { "Name": "LineCount", "DisplayName": "Line Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "line_count", "EnumDisplayNames": null, "StableId": "line_count" }, "Children": [] }, { "Segment": "WordCount", "DisplayName": "Word Count", "Property": { "Name": "WordCount", "DisplayName": "Word Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "word_count", "EnumDisplayNames": null, "StableId": "word_count" }, "Children": [] }, { "Segment": "Lines", "DisplayName": "Lines", "Property": null, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Lines.Count", "DisplayName": "Lines / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "lines.count", "EnumDisplayNames": null, "StableId": "lines.count" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Lines[].Text", "DisplayName": "Lines[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.text", "EnumDisplayNames": null, "StableId": "lines.text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Lines[].Confidence", "DisplayName": "Lines[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.confidence", "EnumDisplayNames": null, "StableId": "lines.confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "Lines[].BoundingBox", "DisplayName": "Lines[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box", "EnumDisplayNames": null, "StableId": "lines.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.X", "DisplayName": "Lines[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Y", "DisplayName": "Lines[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Lines[].BoundingBox.Width", "DisplayName": "Lines[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.width", "EnumDisplayNames": null, "StableId": "lines.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Lines[].BoundingBox.Height", "DisplayName": "Lines[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.height", "EnumDisplayNames": null, "StableId": "lines.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Lines[].BoundingBox.Left", "DisplayName": "Lines[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.left", "EnumDisplayNames": null, "StableId": "lines.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Lines[].BoundingBox.Top", "DisplayName": "Lines[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.top", "EnumDisplayNames": null, "StableId": "lines.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Lines[].BoundingBox.Right", "DisplayName": "Lines[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.right", "EnumDisplayNames": null, "StableId": "lines.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Lines[].BoundingBox.Bottom", "DisplayName": "Lines[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "lines.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Lines[].BoundingBox.IsEmpty", "DisplayName": "Lines[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "lines.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Lines[].BoundingBox.Location", "DisplayName": "Lines[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.Location.X", "DisplayName": "Lines[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Location.Y", "DisplayName": "Lines[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Lines[].BoundingBox.Center", "DisplayName": "Lines[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Lines[].BoundingBox.Center.X", "DisplayName": "Lines[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Lines[].BoundingBox.Center.Y", "DisplayName": "Lines[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "lines.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Position", "DisplayName": "Position", "Property": { "Name": "Lines[].Position", "DisplayName": "Lines[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "lines.position", "EnumDisplayNames": null, "StableId": "lines.position" }, "Children": [] } ] }, { "Segment": "Words", "DisplayName": "Words", "Property": null, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Words.Count", "DisplayName": "Words / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "words.count", "EnumDisplayNames": null, "StableId": "words.count" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Words[].Text", "DisplayName": "Words[] / Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.text", "EnumDisplayNames": null, "StableId": "words.text" }, "Children": [] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Words[].Confidence", "DisplayName": "Words[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.confidence", "EnumDisplayNames": null, "StableId": "words.confidence" }, "Children": [] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "Words[].BoundingBox", "DisplayName": "Words[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box", "EnumDisplayNames": null, "StableId": "words.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.X", "DisplayName": "Words[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Y", "DisplayName": "Words[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Words[].BoundingBox.Width", "DisplayName": "Words[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.width", "EnumDisplayNames": null, "StableId": "words.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Words[].BoundingBox.Height", "DisplayName": "Words[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.height", "EnumDisplayNames": null, "StableId": "words.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "Words[].BoundingBox.Left", "DisplayName": "Words[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.left", "EnumDisplayNames": null, "StableId": "words.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "Words[].BoundingBox.Top", "DisplayName": "Words[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.top", "EnumDisplayNames": null, "StableId": "words.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "Words[].BoundingBox.Right", "DisplayName": "Words[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.right", "EnumDisplayNames": null, "StableId": "words.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "Words[].BoundingBox.Bottom", "DisplayName": "Words[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "words.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "Words[].BoundingBox.IsEmpty", "DisplayName": "Words[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "words.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "Words[].BoundingBox.Location", "DisplayName": "Words[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location", "EnumDisplayNames": null, "StableId": "words.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.Location.X", "DisplayName": "Words[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Location.Y", "DisplayName": "Words[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "Words[].BoundingBox.Center", "DisplayName": "Words[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center", "EnumDisplayNames": null, "StableId": "words.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Words[].BoundingBox.Center.X", "DisplayName": "Words[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Words[].BoundingBox.Center.Y", "DisplayName": "Words[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "words.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Position", "DisplayName": "Position", "Property": { "Name": "Words[].Position", "DisplayName": "Words[] / Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.position", "EnumDisplayNames": null, "StableId": "words.position" }, "Children": [] }, { "Segment": "LinePosition", "DisplayName": "Line Position", "Property": { "Name": "Words[].LinePosition", "DisplayName": "Words[] / Line Position", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "words.line_position", "EnumDisplayNames": null, "StableId": "words.line_position" }, "Children": [] } ] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: PointComparisonResult ID: PointComparisonResult Website: /doku/werte/PointComparisonResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag PointComparisonResult. Wird von Punkte vergleichen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.match_count Anzahl passender Prozesse oder Merkmalszuordnungen im konkreten Ergebnis; der Ergebnis-Typ bestimmt, was gezählt wird. Einzelwert dieses Ergebnisses. ### result.matches Einzelne OCR-/Punktvergleichstreffer mit ihren Detailwerten. Der Ergebnis-Typ bestimmt die Elementstruktur. Einzelwert dieses Ergebnisses. ### result.total_count Gesamtzahl der im konkreten Abfrageergebnis gelieferten Einträge. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "PointComparisonResult", "name": "PointComparisonResult", "result": { "TypeName": "PointComparisonResult", "DisplayName": "PointComparisonResult", "Properties": [ { "Name": "Matches", "DisplayName": "Matches", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "matches", "EnumDisplayNames": null, "StableId": "matches" }, { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, { "Name": "TotalCount", "DisplayName": "Total Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "total_count", "EnumDisplayNames": null, "StableId": "total_count" } ], "PropertyTree": [ { "Segment": "Matches", "DisplayName": "Matches", "Property": { "Name": "Matches", "DisplayName": "Matches", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "matches", "EnumDisplayNames": null, "StableId": "matches" }, "Children": [] }, { "Segment": "MatchCount", "DisplayName": "Match Count", "Property": { "Name": "MatchCount", "DisplayName": "Match Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "match_count", "EnumDisplayNames": null, "StableId": "match_count" }, "Children": [] }, { "Segment": "TotalCount", "DisplayName": "Total Count", "Property": { "Name": "TotalCount", "DisplayName": "Total Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "total_count", "EnumDisplayNames": null, "StableId": "total_count" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: PowerStatusQueryResult ID: PowerStatusQueryResult Website: /doku/werte/PowerStatusQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag PowerStatusQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_charging Ob das System ein Laden des Akkus meldet. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.power_source Gemeldete Energiequelle, etwa Netzbetrieb oder Akkubetrieb. Einzelwert dieses Ergebnisses. ### result.power_source.option.Ac Stromversorgung über Netzstrom. ### result.power_source.option.Battery Stromversorgung über Akku. ### result.power_source.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "PowerStatusQueryResult", "name": "PowerStatusQueryResult", "result": { "TypeName": "PowerStatusQueryResult", "DisplayName": "PowerStatusQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "IsCharging", "DisplayName": "Is Charging", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_charging", "EnumDisplayNames": null, "StableId": "is_charging" }, { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "PowerSource", "DisplayName": "Power Source", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsPowerSource", "EnumValues": [ "Unknown", "Ac", "Battery" ], "Id": "power_source", "EnumDisplayNames": null, "StableId": "power_source" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "IsCharging", "DisplayName": "Is Charging", "Property": { "Name": "IsCharging", "DisplayName": "Is Charging", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_charging", "EnumDisplayNames": null, "StableId": "is_charging" }, "Children": [] }, { "Segment": "Percentage", "DisplayName": "Percentage", "Property": { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "PowerSource", "DisplayName": "Power Source", "Property": { "Name": "PowerSource", "DisplayName": "Power Source", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsPowerSource", "EnumValues": [ "Unknown", "Ac", "Battery" ], "Id": "power_source", "EnumDisplayNames": null, "StableId": "power_source" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: PredictMovementResult ID: PredictMovementResult Website: /doku/werte/PredictMovementResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag PredictMovementResult. Wird von Bewegung vorhersagen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.is_predicted Ob ein Vorhersagemodell genügend geeignete Messwerte für eine gültige Prognose hatte. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.predicted_for_utc UTC-Zielzeitpunkt, für den die vorhergesagte Position gilt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "PredictMovementResult", "name": "PredictMovementResult", "result": { "TypeName": "PredictMovementResult", "DisplayName": "PredictMovementResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "IsPredicted", "DisplayName": "Is Predicted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_predicted", "EnumDisplayNames": null, "StableId": "is_predicted" }, { "Name": "PredictedForUtc", "DisplayName": "Predicted For Utc", "DataType": "DateTime", "Description": "DateTime, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "predicted_for_utc", "EnumDisplayNames": null, "StableId": "predicted_for_utc" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "IsPredicted", "DisplayName": "Is Predicted", "Property": { "Name": "IsPredicted", "DisplayName": "Is Predicted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_predicted", "EnumDisplayNames": null, "StableId": "is_predicted" }, "Children": [] }, { "Segment": "PredictedForUtc", "DisplayName": "Predicted For Utc", "Property": { "Name": "PredictedForUtc", "DisplayName": "Predicted For Utc", "DataType": "DateTime", "Description": "DateTime, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "predicted_for_utc", "EnumDisplayNames": null, "StableId": "predicted_for_utc" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: PrinterStatusQueryResult ID: PrinterStatusQueryResult Website: /doku/werte/PrinterStatusQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag PrinterStatusQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "PrinterStatusQueryResult", "name": "PrinterStatusQueryResult", "result": { "TypeName": "PrinterStatusQueryResult", "DisplayName": "PrinterStatusQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: ProcessRunningQueryResult ID: ProcessRunningQueryResult Website: /doku/werte/ProcessRunningQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ProcessRunningQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ProcessRunningQueryResult", "name": "ProcessRunningQueryResult", "result": { "TypeName": "ProcessRunningQueryResult", "DisplayName": "ProcessRunningQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: SaveImageResult ID: SaveImageResult Website: /doku/werte/SaveImageResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag SaveImageResult. Wird von Bild speichern geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.file_name Name der erzeugten Datei ohne zwingend den ganzen Verzeichnispfad. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.file_path Pfad der erzeugten Bild-/Videodatei auf dem ausführenden Rechner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.file_size_bytes Größe der gespeicherten Datei in Bytes. Einzelwert dieses Ergebnisses. ### result.format Ausgabeformat der Bild-/Videodatei. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.height Höhe des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### result.saved_at_utc UTC-Zeitpunkt der Speicherung/Finalisierung. Einzelwert dieses Ergebnisses. ### result.width Breite des Ergebnisrechtecks in Pixeln. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "SaveImageResult", "name": "SaveImageResult", "result": { "TypeName": "SaveImageResult", "DisplayName": "SaveImageResult", "Properties": [ { "Name": "FilePath", "DisplayName": "File Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_path", "EnumDisplayNames": null, "StableId": "file_path" }, { "Name": "FileName", "DisplayName": "File Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_name", "EnumDisplayNames": null, "StableId": "file_name" }, { "Name": "Format", "DisplayName": "Format", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "format", "EnumDisplayNames": null, "StableId": "format" }, { "Name": "Width", "DisplayName": "Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "width", "EnumDisplayNames": null, "StableId": "width" }, { "Name": "Height", "DisplayName": "Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "height", "EnumDisplayNames": null, "StableId": "height" }, { "Name": "FileSizeBytes", "DisplayName": "File Size Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "file_size_bytes", "EnumDisplayNames": null, "StableId": "file_size_bytes" }, { "Name": "SavedAtUtc", "DisplayName": "Saved At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "saved_at_utc", "EnumDisplayNames": null, "StableId": "saved_at_utc" } ], "PropertyTree": [ { "Segment": "FilePath", "DisplayName": "File Path", "Property": { "Name": "FilePath", "DisplayName": "File Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_path", "EnumDisplayNames": null, "StableId": "file_path" }, "Children": [] }, { "Segment": "FileName", "DisplayName": "File Name", "Property": { "Name": "FileName", "DisplayName": "File Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "file_name", "EnumDisplayNames": null, "StableId": "file_name" }, "Children": [] }, { "Segment": "Format", "DisplayName": "Format", "Property": { "Name": "Format", "DisplayName": "Format", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "format", "EnumDisplayNames": null, "StableId": "format" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "Width", "DisplayName": "Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "width", "EnumDisplayNames": null, "StableId": "width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "Height", "DisplayName": "Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "height", "EnumDisplayNames": null, "StableId": "height" }, "Children": [] }, { "Segment": "FileSizeBytes", "DisplayName": "File Size Bytes", "Property": { "Name": "FileSizeBytes", "DisplayName": "File Size Bytes", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "file_size_bytes", "EnumDisplayNames": null, "StableId": "file_size_bytes" }, "Children": [] }, { "Segment": "SavedAtUtc", "DisplayName": "Saved At Utc", "Property": { "Name": "SavedAtUtc", "DisplayName": "Saved At Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "saved_at_utc", "EnumDisplayNames": null, "StableId": "saved_at_utc" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: ScriptExecutionResult ID: ScriptExecutionResult Website: /doku/werte/ScriptExecutionResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ScriptExecutionResult. Wird von Skript ausführen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ScriptExecutionResult", "name": "ScriptExecutionResult", "result": { "TypeName": "ScriptExecutionResult", "DisplayName": "ScriptExecutionResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: SecurityStatusQueryResult ID: SecurityStatusQueryResult Website: /doku/werte/SecurityStatusQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag SecurityStatusQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_enabled Ob die abgefragte Funktion/Hardware vom System als aktiviert gemeldet wird. Einzelwert dieses Ergebnisses. ### result.on_off_state Ein-/Aus-Zustand der entsprechenden Gerätefunktion gemäß Ergebnisvertrag. Einzelwert dieses Ergebnisses. ### result.on_off_state.option.Off Der abgefragte Schalter ist ausgeschaltet. ### result.on_off_state.option.On Der abgefragte Schalter ist eingeschaltet. ### result.on_off_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "SecurityStatusQueryResult", "name": "SecurityStatusQueryResult", "result": { "TypeName": "SecurityStatusQueryResult", "DisplayName": "SecurityStatusQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsEnabled", "DisplayName": "Is Enabled", "Property": { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, "Children": [] }, { "Segment": "OnOffState", "DisplayName": "On Off State", "Property": { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: SessionStateQueryResult ID: SessionStateQueryResult Website: /doku/werte/SessionStateQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag SessionStateQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_active Ob das geprüfte Fenster zum Abfragezeitpunkt im Vordergrund ist. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.session_state Aktueller Zustand der Windows-Sitzung, etwa gesperrt oder entsperrt gemäß Systemmeldung. Einzelwert dieses Ergebnisses. ### result.session_state.option.Active Die Windows-Sitzung ist aktiv. ### result.session_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.session_state.option.Locked Die Windows-Sitzung ist gesperrt. ### result.session_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "SessionStateQueryResult", "name": "SessionStateQueryResult", "result": { "TypeName": "SessionStateQueryResult", "DisplayName": "SessionStateQueryResult", "Properties": [ { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "SessionState", "DisplayName": "Session State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsSessionState", "EnumValues": [ "Unknown", "Active", "Locked", "Disconnected" ], "Id": "session_state", "EnumDisplayNames": null, "StableId": "session_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsActive", "DisplayName": "Is Active", "Property": { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "SessionState", "DisplayName": "Session State", "Property": { "Name": "SessionState", "DisplayName": "Session State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsSessionState", "EnumValues": [ "Unknown", "Active", "Locked", "Disconnected" ], "Id": "session_state", "EnumDisplayNames": null, "StableId": "session_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: ShowImageResult ID: ShowImageResult Website: /doku/werte/ShowImageResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ShowImageResult. Wird von Bild anzeigen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ShowImageResult", "name": "ShowImageResult", "result": { "TypeName": "ShowImageResult", "DisplayName": "ShowImageResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: ShowOnDesktopResult ID: ShowOnDesktopResult Website: /doku/werte/ShowOnDesktopResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ShowOnDesktopResult. Wird von Auf Desktop anzeigen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ShowOnDesktopResult", "name": "ShowOnDesktopResult", "result": { "TypeName": "ShowOnDesktopResult", "DisplayName": "ShowOnDesktopResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: ShowTextResult ID: ShowTextResult Website: /doku/werte/ShowTextResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag ShowTextResult. Wird von Text auf Desktop anzeigen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "ShowTextResult", "name": "ShowTextResult", "result": { "TypeName": "ShowTextResult", "DisplayName": "ShowTextResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: StartProcessResult ID: StartProcessResult Website: /doku/werte/StartProcessResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag StartProcessResult. Wird von Prozess starten geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.process Konkrete Prozessreferenz mit Identität und optionalen Programmdaten. Bei keinem Treffer kann sie fehlen; nicht nur process_name als Instanzidentität verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.executable_path Ermittelter Pfad des Programms. Bei fehlenden Rechten oder fehlender Information kann ein optionaler Wert leer sein. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_id Windows-Prozess-ID. PIDs können später wiederverwendet werden; die Prozessreferenz ergänzt daher gegebenenfalls Startzeit und weitere Merkmale. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.process_name Vom System ermittelter Prozessname, nicht notwendigerweise der sichtbare Fenstertitel. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.start_time_utc UTC-Startzeit der Prozessinstanz zur Unterscheidung wiederverwendeter PIDs. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.process.window_handle Native Fensterkennung der Programminstanz. Sie gilt im laufenden System und ist kein stabiler Dateipfad oder dauerhafter Job-Bezeichner. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "StartProcessResult", "name": "StartProcessResult", "result": { "TypeName": "StartProcessResult", "DisplayName": "StartProcessResult", "Properties": [ { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" } ], "PropertyTree": [ { "Segment": "Process", "DisplayName": "Process", "Property": { "Name": "Process", "DisplayName": "Process", "DataType": "ProcessReference", "Description": "ProcessReference, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process", "EnumDisplayNames": null, "StableId": "process" }, "Children": [ { "Segment": "ProcessId", "DisplayName": "Process Id", "Property": { "Name": "Process.ProcessId", "DisplayName": "Process / Process Id", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_id", "EnumDisplayNames": null, "StableId": "process.process_id" }, "Children": [] }, { "Segment": "StartTimeUtc", "DisplayName": "Start Time Utc", "Property": { "Name": "Process.StartTimeUtc", "DisplayName": "Process / Start Time Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.start_time_utc", "EnumDisplayNames": null, "StableId": "process.start_time_utc" }, "Children": [] }, { "Segment": "ProcessName", "DisplayName": "Process Name", "Property": { "Name": "Process.ProcessName", "DisplayName": "Process / Process Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.process_name", "EnumDisplayNames": null, "StableId": "process.process_name" }, "Children": [] }, { "Segment": "ExecutablePath", "DisplayName": "Executable Path", "Property": { "Name": "Process.ExecutablePath", "DisplayName": "Process / Executable Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.executable_path", "EnumDisplayNames": null, "StableId": "process.executable_path" }, "Children": [] }, { "Segment": "WindowHandle", "DisplayName": "Window Handle", "Property": { "Name": "Process.WindowHandle", "DisplayName": "Process / Window Handle", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "process.window_handle", "EnumDisplayNames": null, "StableId": "process.window_handle" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: StorageDrivesQueryResult ID: StorageDrivesQueryResult Website: /doku/werte/StorageDrivesQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag StorageDrivesQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.free_space_gb Vom Speicherprovider ermittelter freier Speicher in Gigabyte. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "StorageDrivesQueryResult", "name": "StorageDrivesQueryResult", "result": { "TypeName": "StorageDrivesQueryResult", "DisplayName": "StorageDrivesQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "FreeSpaceGb", "DisplayName": "Free Space Gb", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "free_space_gb", "EnumDisplayNames": null, "StableId": "free_space_gb" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "FreeSpaceGb", "DisplayName": "Free Space Gb", "Property": { "Name": "FreeSpaceGb", "DisplayName": "Free Space Gb", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "free_space_gb", "EnumDisplayNames": null, "StableId": "free_space_gb" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: SystemLifecycleQueryResult ID: SystemLifecycleQueryResult Website: /doku/werte/SystemLifecycleQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag SystemLifecycleQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "SystemLifecycleQueryResult", "name": "SystemLifecycleQueryResult", "result": { "TypeName": "SystemLifecycleQueryResult", "DisplayName": "SystemLifecycleQueryResult", "Properties": [ { "Name": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "UptimeSeconds", "DisplayName": "Uptime Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "OperatingSystemVersion", "DisplayName": "Operating System Version", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "Property": { "Name": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "UptimeSeconds", "DisplayName": "Uptime Seconds", "Property": { "Name": "UptimeSeconds", "DisplayName": "Uptime Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "OperatingSystemVersion", "DisplayName": "Operating System Version", "Property": { "Name": "OperatingSystemVersion", "DisplayName": "Operating System Version", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: SystemSettingsQueryResult ID: SystemSettingsQueryResult Website: /doku/werte/SystemSettingsQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag SystemSettingsQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_enabled Ob die abgefragte Funktion/Hardware vom System als aktiviert gemeldet wird. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "SystemSettingsQueryResult", "name": "SystemSettingsQueryResult", "result": { "TypeName": "SystemSettingsQueryResult", "DisplayName": "SystemSettingsQueryResult", "Properties": [ { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "IsEnabled", "DisplayName": "Is Enabled", "Property": { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: TemplateMatchingResult ID: TemplateMatchingResult Website: /doku/werte/TemplateMatchingResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag TemplateMatchingResult. Wird von Bildvorlage erkennen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "TemplateMatchingResult", "name": "TemplateMatchingResult", "result": { "TypeName": "TemplateMatchingResult", "DisplayName": "TemplateMatchingResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: TerminateProcessResult ID: TerminateProcessResult Website: /doku/werte/TerminateProcessResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag TerminateProcessResult. Wird von Prozess beenden geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "TerminateProcessResult", "name": "TerminateProcessResult", "result": { "TypeName": "TerminateProcessResult", "DisplayName": "TerminateProcessResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: TimeoutResult ID: TimeoutResult Website: /doku/werte/TimeoutResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag TimeoutResult. Wird von Warten geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "TimeoutResult", "name": "TimeoutResult", "result": { "TypeName": "TimeoutResult", "DisplayName": "TimeoutResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: UnsupportedWindowsQueryResult ID: UnsupportedWindowsQueryResult Website: /doku/werte/UnsupportedWindowsQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag UnsupportedWindowsQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "UnsupportedWindowsQueryResult", "name": "UnsupportedWindowsQueryResult", "result": { "TypeName": "UnsupportedWindowsQueryResult", "DisplayName": "UnsupportedWindowsQueryResult", "Properties": [ { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: UserChoiceResult ID: UserChoiceResult Website: /doku/werte/UserChoiceResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag UserChoiceResult. Wird von Benutzerauswahl abfragen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.selected_index Index der gewählten Antwort, nullbasiert. Vor Verwendung was_cancelled prüfen. Einzelwert dieses Ergebnisses. ### result.selected_label Sichtbarer Text der gewählten Antwort, geeignet für eine verständliche Rückmeldung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.selected_option_id Stabile ID der gewählten Antwort; sie ist vom sichtbaren Label und vom fachlichen Textwert getrennt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.selected_value Weitergereichter fachlicher Textwert der Antwort, geeignet für nachfolgende Vergleiche. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.was_cancelled Ob der Benutzer das Auswahlfenster ohne Antwort abgebrochen hat. Dies allein bedeutet nicht, dass der komplette Job gestoppt wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "UserChoiceResult", "name": "UserChoiceResult", "result": { "TypeName": "UserChoiceResult", "DisplayName": "UserChoiceResult", "Properties": [ { "Name": "SelectedOptionId", "DisplayName": "Selected Option Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_option_id", "EnumDisplayNames": null, "StableId": "selected_option_id" }, { "Name": "SelectedLabel", "DisplayName": "Selected Label", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_label", "EnumDisplayNames": null, "StableId": "selected_label" }, { "Name": "SelectedValue", "DisplayName": "Selected Value", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_value", "EnumDisplayNames": null, "StableId": "selected_value" }, { "Name": "SelectedIndex", "DisplayName": "Selected Index", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "selected_index", "EnumDisplayNames": null, "StableId": "selected_index" }, { "Name": "WasCancelled", "DisplayName": "Was Cancelled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "was_cancelled", "EnumDisplayNames": null, "StableId": "was_cancelled" } ], "PropertyTree": [ { "Segment": "SelectedOptionId", "DisplayName": "Selected Option Id", "Property": { "Name": "SelectedOptionId", "DisplayName": "Selected Option Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_option_id", "EnumDisplayNames": null, "StableId": "selected_option_id" }, "Children": [] }, { "Segment": "SelectedLabel", "DisplayName": "Selected Label", "Property": { "Name": "SelectedLabel", "DisplayName": "Selected Label", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_label", "EnumDisplayNames": null, "StableId": "selected_label" }, "Children": [] }, { "Segment": "SelectedValue", "DisplayName": "Selected Value", "Property": { "Name": "SelectedValue", "DisplayName": "Selected Value", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "selected_value", "EnumDisplayNames": null, "StableId": "selected_value" }, "Children": [] }, { "Segment": "SelectedIndex", "DisplayName": "Selected Index", "Property": { "Name": "SelectedIndex", "DisplayName": "Selected Index", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "selected_index", "EnumDisplayNames": null, "StableId": "selected_index" }, "Children": [] }, { "Segment": "WasCancelled", "DisplayName": "Was Cancelled", "Property": { "Name": "WasCancelled", "DisplayName": "Was Cancelled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "was_cancelled", "EnumDisplayNames": null, "StableId": "was_cancelled" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: VideoCreationResult ID: VideoCreationResult Website: /doku/werte/VideoCreationResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag VideoCreationResult. Wird von Video erstellen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "VideoCreationResult", "name": "VideoCreationResult", "result": { "TypeName": "VideoCreationResult", "DisplayName": "VideoCreationResult", "Properties": [], "PropertyTree": [] } } ``` ## Werte und Ergebnisse: WindowsSettingChangeResult ID: WindowsSettingChangeResult Website: /doku/werte/WindowsSettingChangeResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag WindowsSettingChangeResult. Wird von Windows-Einstellung ändern geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.windows_setting.applied_value Vom Windows-Provider gemeldeter angewendeter Wert nach der Änderung. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.previous_value Vor der Windows-Änderung beobachteter Wert. Für eine Wiederherstellung nur mit derselben Funktion und kompatibler Darstellung verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.restart_required Ob die abgefragte Funktion beziehungsweise Windows Update einen Neustartbedarf meldet. Einzelwert dieses Ergebnisses. ### result.windows_setting.setting_id Kennung der geänderten Windows-Funktion. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.windows_setting.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.windows_setting.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.windows_setting.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.windows_setting.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.windows_setting.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.windows_setting.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "WindowsSettingChangeResult", "name": "WindowsSettingChangeResult", "result": { "TypeName": "WindowsSettingChangeResult", "DisplayName": "WindowsSettingChangeResult", "Properties": [ { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "windows_setting.status", "EnumDisplayNames": null, "StableId": "windows_setting.status" }, { "Name": "SettingId", "DisplayName": "Einstellung", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.setting_id", "EnumDisplayNames": null, "StableId": "windows_setting.setting_id" }, { "Name": "PreviousValue", "DisplayName": "Vorheriger Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.previous_value", "EnumDisplayNames": null, "StableId": "windows_setting.previous_value" }, { "Name": "AppliedValue", "DisplayName": "Angewendeter Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.applied_value", "EnumDisplayNames": null, "StableId": "windows_setting.applied_value" }, { "Name": "RestartRequired", "DisplayName": "Neustart erforderlich", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.restart_required", "EnumDisplayNames": null, "StableId": "windows_setting.restart_required" }, { "Name": "ErrorCode", "DisplayName": "Fehlercode", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.error_code", "EnumDisplayNames": null, "StableId": "windows_setting.error_code" } ], "PropertyTree": [ { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "windows_setting.status", "EnumDisplayNames": null, "StableId": "windows_setting.status" }, "Children": [] }, { "Segment": "SettingId", "DisplayName": "Einstellung", "Property": { "Name": "SettingId", "DisplayName": "Einstellung", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.setting_id", "EnumDisplayNames": null, "StableId": "windows_setting.setting_id" }, "Children": [] }, { "Segment": "PreviousValue", "DisplayName": "Vorheriger Wert", "Property": { "Name": "PreviousValue", "DisplayName": "Vorheriger Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.previous_value", "EnumDisplayNames": null, "StableId": "windows_setting.previous_value" }, "Children": [] }, { "Segment": "AppliedValue", "DisplayName": "Angewendeter Wert", "Property": { "Name": "AppliedValue", "DisplayName": "Angewendeter Wert", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.applied_value", "EnumDisplayNames": null, "StableId": "windows_setting.applied_value" }, "Children": [] }, { "Segment": "RestartRequired", "DisplayName": "Neustart erforderlich", "Property": { "Name": "RestartRequired", "DisplayName": "Neustart erforderlich", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.restart_required", "EnumDisplayNames": null, "StableId": "windows_setting.restart_required" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Fehlercode", "Property": { "Name": "ErrorCode", "DisplayName": "Fehlercode", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "windows_setting.error_code", "EnumDisplayNames": null, "StableId": "windows_setting.error_code" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: WindowsUpdateStatusQueryResult ID: WindowsUpdateStatusQueryResult Website: /doku/werte/WindowsUpdateStatusQueryResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag WindowsUpdateStatusQueryResult. Wird von der zugehörigen Windows-Abfrage geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.pending_restart Ob Windows Update noch einen Neustart verlangt. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "WindowsUpdateStatusQueryResult", "name": "WindowsUpdateStatusQueryResult", "result": { "TypeName": "WindowsUpdateStatusQueryResult", "DisplayName": "WindowsUpdateStatusQueryResult", "Properties": [ { "Name": "PendingRestart", "DisplayName": "Pending Restart", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "pending_restart", "EnumDisplayNames": null, "StableId": "pending_restart" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "PendingRestart", "DisplayName": "Pending Restart", "Property": { "Name": "PendingRestart", "DisplayName": "Pending Restart", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "pending_restart", "EnumDisplayNames": null, "StableId": "pending_restart" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: YOLODetectionResult ID: YOLODetectionResult Website: /doku/werte/YOLODetectionResult/ ### errors Ein konfigurierte Quelle hat noch nicht zwingend einen Wert geliefert. Prüfe den fachlichen Erfolgswert, fehlende optionale Eigenschaften und den Ausführungszustand des Produzenten. Nur DynamicRoi besitzt die dokumentierte Ausnahme für späteres Feedback; andere Verbraucher dürfen keine beliebigen Vorwärtsreferenzen verwenden. ### example Eine Ergebnisreferenz verwendet provider_id=step_result und source_id=v1//. Die Anleitung „Werte verbinden“ zeigt eine vollständige Verbindung. Prüfe Typ und Kardinalität vor der Verwendung in einer Bedingung oder Folgeaktion. ### purpose Typisierter Ergebnisvertrag YOLODetectionResult. Wird von Objekte erkennen geliefert. Die stabilen Ergebnis-IDs unten sind unabhängig von CLR-Namen und UI-Übersetzungen. Wähle im Ergebnis-Auswahldialog eine kompatible Eigenschaft statt das ganze Objekt ungeprüft als Text zu verwenden. ### result.all_detections Liste einzelner Erkennungen mit eigenen Punkten, Rechtecken und Konfidenzen. Die Anzahl ist nicht gleich einer pauschalen Erfolgsbewertung. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.left Linke Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.top Obere Rechteckkante in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.all_detections.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.applied_roi Tatsächlich angewendeter Suchbereich. Damit lässt sich prüfen, ob eine direkte oder dynamische Eingrenzung aktiv war. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.applied_roi.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box Begrenzendes Rechteck eines Treffers; bei fehlender Erkennung kann ein optionales Rechteck fehlen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.bottom Untere Rechteckkante in Pixeln, aus Ursprung und Höhe abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center Mittelpunkt einer einzelnen Erkennung in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.center.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.height Höhe des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.is_empty Ob die Zwischenablage im abgefragten Kontext leer ist. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.left Linke Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location Pixelposition/-bereich eines erkannten Wortes oder Trefferobjekts; verwende den im Ergebnis ausgewiesenen Koordinatenraum. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.location.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.right Rechte Rechteckkante in Pixeln, aus Ursprung und Breite abgeleitet. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.top Obere Rechteckkante in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.width Breite des Ergebnisrechtecks in Pixeln. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.bounding_box.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.confidence Normalisierte Trefferkonfidenz zwischen 0 und 1. 0.9 entspricht 90 %; mehrere Treffer können unterschiedliche Konfidenzen besitzen. Einzelwert dieses Ergebnisses. ### result.found Ob die Erkennung/Suche in diesem Lauf einen passenden Treffer geliefert hat. false ist ein fachliches Ergebnis und nicht automatisch ein Step-Fehler. Einzelwert dieses Ergebnisses. ### result.point Ermittelter Zielpunkt. Bei Bildschirmquellen ist der Quelle-zu-Desktop-Versatz bereits entsprechend dem Ergebnisvertrag berücksichtigt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.x Horizontale Punkt-/Versatzkoordinate in Pixeln; den im übergeordneten Ergebnis beschriebenen Koordinatenraum beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.point.y Vertikale Punkt-/Versatzkoordinate in Pixeln; nicht ungeprüft bildlokale und globale Werte mischen. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.source_capture_is_fresh Frischezustand der verwendeten Aufnahme, unverändert in das Erkennungsergebnis übernommen. Einzelwert dieses Ergebnisses. ### result.source_capture_timestamp_utc UTC-Aufnahmezeit der Bildquelle, aus der dieses Ergebnis berechnet wurde. Einzelwert dieses Ergebnisses. ### result.source_frame_timestamp Monotoner Zeitstempel des zugrunde liegenden Frames. 0 bedeutet unbekannte zeitliche Herkunft. Einzelwert dieses Ergebnisses. ### result.source_frame_version Frame-Identität der verwendeten Bildquelle; auch ein Erkennungsfehlschlag behält die Herkunftsinformation. Einzelwert dieses Ergebnisses. ### result.used_dynamic_roi Ob für diese Auswertung ein dynamischer Suchbereich verwendet wurde. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "YOLODetectionResult", "name": "YOLODetectionResult", "result": { "TypeName": "YOLODetectionResult", "DisplayName": "YOLODetectionResult", "Properties": [ { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" } ], "PropertyTree": [ { "Segment": "Found", "DisplayName": "Found", "Property": { "Name": "Found", "DisplayName": "Found", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "found", "EnumDisplayNames": null, "StableId": "found" }, "Children": [] }, { "Segment": "Point", "DisplayName": "Point", "Property": { "Name": "Point", "DisplayName": "Point", "DataType": "Point", "Description": "Point, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point", "EnumDisplayNames": null, "StableId": "point" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "Point.X", "DisplayName": "Point / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.x", "EnumDisplayNames": null, "StableId": "point.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "Point.Y", "DisplayName": "Point / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "point.y", "EnumDisplayNames": null, "StableId": "point.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "BoundingBox", "DisplayName": "Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box", "EnumDisplayNames": null, "StableId": "bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.X", "DisplayName": "Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.x", "EnumDisplayNames": null, "StableId": "bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Y", "DisplayName": "Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.y", "EnumDisplayNames": null, "StableId": "bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "BoundingBox.Width", "DisplayName": "Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.width", "EnumDisplayNames": null, "StableId": "bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "BoundingBox.Height", "DisplayName": "Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.height", "EnumDisplayNames": null, "StableId": "bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "BoundingBox.Left", "DisplayName": "Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.left", "EnumDisplayNames": null, "StableId": "bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "BoundingBox.Top", "DisplayName": "Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.top", "EnumDisplayNames": null, "StableId": "bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "BoundingBox.Right", "DisplayName": "Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.right", "EnumDisplayNames": null, "StableId": "bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "BoundingBox.Bottom", "DisplayName": "Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.bottom", "EnumDisplayNames": null, "StableId": "bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "BoundingBox.IsEmpty", "DisplayName": "Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "BoundingBox.Location", "DisplayName": "Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location", "EnumDisplayNames": null, "StableId": "bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Location.X", "DisplayName": "Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.x", "EnumDisplayNames": null, "StableId": "bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Location.Y", "DisplayName": "Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.location.y", "EnumDisplayNames": null, "StableId": "bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "BoundingBox.Center", "DisplayName": "Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center", "EnumDisplayNames": null, "StableId": "bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "BoundingBox.Center.X", "DisplayName": "Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.x", "EnumDisplayNames": null, "StableId": "bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "BoundingBox.Center.Y", "DisplayName": "Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "bounding_box.center.y", "EnumDisplayNames": null, "StableId": "bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "Confidence", "DisplayName": "Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "confidence", "EnumDisplayNames": null, "StableId": "confidence" }, "Children": [] }, { "Segment": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "Property": { "Name": "SourceCaptureIsFresh", "DisplayName": "Source Capture Is Fresh", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_is_fresh", "EnumDisplayNames": null, "StableId": "source_capture_is_fresh" }, "Children": [] }, { "Segment": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "Property": { "Name": "SourceCaptureTimestampUtc", "DisplayName": "Source Capture Timestamp Utc", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_capture_timestamp_utc", "EnumDisplayNames": null, "StableId": "source_capture_timestamp_utc" }, "Children": [] }, { "Segment": "SourceFrameVersion", "DisplayName": "Source Frame Version", "Property": { "Name": "SourceFrameVersion", "DisplayName": "Source Frame Version", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_version", "EnumDisplayNames": null, "StableId": "source_frame_version" }, "Children": [] }, { "Segment": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "Property": { "Name": "SourceFrameTimestamp", "DisplayName": "Source Frame Timestamp", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "source_frame_timestamp", "EnumDisplayNames": null, "StableId": "source_frame_timestamp" }, "Children": [] }, { "Segment": "AppliedRoi", "DisplayName": "Applied Roi", "Property": { "Name": "AppliedRoi", "DisplayName": "Applied Roi", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": "{X=10,Y=20,Width=300,Height=200}", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi", "EnumDisplayNames": null, "StableId": "applied_roi" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.X", "DisplayName": "Applied Roi / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.x", "EnumDisplayNames": null, "StableId": "applied_roi.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Y", "DisplayName": "Applied Roi / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.y", "EnumDisplayNames": null, "StableId": "applied_roi.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AppliedRoi.Width", "DisplayName": "Applied Roi / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.width", "EnumDisplayNames": null, "StableId": "applied_roi.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AppliedRoi.Height", "DisplayName": "Applied Roi / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.height", "EnumDisplayNames": null, "StableId": "applied_roi.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AppliedRoi.Left", "DisplayName": "Applied Roi / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.left", "EnumDisplayNames": null, "StableId": "applied_roi.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AppliedRoi.Top", "DisplayName": "Applied Roi / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.top", "EnumDisplayNames": null, "StableId": "applied_roi.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AppliedRoi.Right", "DisplayName": "Applied Roi / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.right", "EnumDisplayNames": null, "StableId": "applied_roi.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AppliedRoi.Bottom", "DisplayName": "Applied Roi / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.bottom", "EnumDisplayNames": null, "StableId": "applied_roi.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AppliedRoi.IsEmpty", "DisplayName": "Applied Roi / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.is_empty", "EnumDisplayNames": null, "StableId": "applied_roi.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AppliedRoi.Location", "DisplayName": "Applied Roi / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location", "EnumDisplayNames": null, "StableId": "applied_roi.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Location.X", "DisplayName": "Applied Roi / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.x", "EnumDisplayNames": null, "StableId": "applied_roi.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Location.Y", "DisplayName": "Applied Roi / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.location.y", "EnumDisplayNames": null, "StableId": "applied_roi.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AppliedRoi.Center", "DisplayName": "Applied Roi / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center", "EnumDisplayNames": null, "StableId": "applied_roi.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AppliedRoi.Center.X", "DisplayName": "Applied Roi / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.x", "EnumDisplayNames": null, "StableId": "applied_roi.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AppliedRoi.Center.Y", "DisplayName": "Applied Roi / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "applied_roi.center.y", "EnumDisplayNames": null, "StableId": "applied_roi.center.y" }, "Children": [] } ] } ] }, { "Segment": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "Property": { "Name": "UsedDynamicRoi", "DisplayName": "Used Dynamic Roi", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "used_dynamic_roi", "EnumDisplayNames": null, "StableId": "used_dynamic_roi" }, "Children": [] }, { "Segment": "AllDetections", "DisplayName": "All Detections", "Property": { "Name": "AllDetections", "DisplayName": "All Detections", "DataType": "Detection", "Description": "Detection", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections", "EnumDisplayNames": null, "StableId": "all_detections" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "AllDetections.Count", "DisplayName": "All Detections / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.count", "EnumDisplayNames": null, "StableId": "all_detections.count" }, "Children": [] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].Center", "DisplayName": "All Detections[] / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center", "EnumDisplayNames": null, "StableId": "all_detections.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].Center.X", "DisplayName": "All Detections[] / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.x", "EnumDisplayNames": null, "StableId": "all_detections.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].Center.Y", "DisplayName": "All Detections[] / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.center.y", "EnumDisplayNames": null, "StableId": "all_detections.center.y" }, "Children": [] } ] }, { "Segment": "BoundingBox", "DisplayName": "Bounding Box", "Property": { "Name": "AllDetections[].BoundingBox", "DisplayName": "All Detections[] / Bounding Box", "DataType": "Rectangle", "Description": "Rectangle, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.X", "DisplayName": "All Detections[] / Bounding Box / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Y", "DisplayName": "All Detections[] / Bounding Box / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.y" }, "Children": [] }, { "Segment": "Width", "DisplayName": "Width", "Property": { "Name": "AllDetections[].BoundingBox.Width", "DisplayName": "All Detections[] / Bounding Box / Width", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.width", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.width" }, "Children": [] }, { "Segment": "Height", "DisplayName": "Height", "Property": { "Name": "AllDetections[].BoundingBox.Height", "DisplayName": "All Detections[] / Bounding Box / Height", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.height", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.height" }, "Children": [] }, { "Segment": "Left", "DisplayName": "Left", "Property": { "Name": "AllDetections[].BoundingBox.Left", "DisplayName": "All Detections[] / Bounding Box / Left", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.left", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.left" }, "Children": [] }, { "Segment": "Top", "DisplayName": "Top", "Property": { "Name": "AllDetections[].BoundingBox.Top", "DisplayName": "All Detections[] / Bounding Box / Top", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.top", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.top" }, "Children": [] }, { "Segment": "Right", "DisplayName": "Right", "Property": { "Name": "AllDetections[].BoundingBox.Right", "DisplayName": "All Detections[] / Bounding Box / Right", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.right", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.right" }, "Children": [] }, { "Segment": "Bottom", "DisplayName": "Bottom", "Property": { "Name": "AllDetections[].BoundingBox.Bottom", "DisplayName": "All Detections[] / Bounding Box / Bottom", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.bottom", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.bottom" }, "Children": [] }, { "Segment": "IsEmpty", "DisplayName": "Is Empty", "Property": { "Name": "AllDetections[].BoundingBox.IsEmpty", "DisplayName": "All Detections[] / Bounding Box / Is Empty", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.is_empty", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.is_empty" }, "Children": [] }, { "Segment": "Location", "DisplayName": "Location", "Property": { "Name": "AllDetections[].BoundingBox.Location", "DisplayName": "All Detections[] / Bounding Box / Location", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Location.X", "DisplayName": "All Detections[] / Bounding Box / Location / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Location.Y", "DisplayName": "All Detections[] / Bounding Box / Location / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.location.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.location.y" }, "Children": [] } ] }, { "Segment": "Center", "DisplayName": "Center", "Property": { "Name": "AllDetections[].BoundingBox.Center", "DisplayName": "All Detections[] / Bounding Box / Center", "DataType": "Point", "Description": "Point", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center" }, "Children": [ { "Segment": "X", "DisplayName": "X", "Property": { "Name": "AllDetections[].BoundingBox.Center.X", "DisplayName": "All Detections[] / Bounding Box / Center / X", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.x", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.x" }, "Children": [] }, { "Segment": "Y", "DisplayName": "Y", "Property": { "Name": "AllDetections[].BoundingBox.Center.Y", "DisplayName": "All Detections[] / Bounding Box / Center / Y", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.bounding_box.center.y", "EnumDisplayNames": null, "StableId": "all_detections.bounding_box.center.y" }, "Children": [] } ] } ] }, { "Segment": "Confidence", "DisplayName": "Confidence", "Property": { "Name": "AllDetections[].Confidence", "DisplayName": "All Detections[] / Confidence", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "all_detections.confidence", "EnumDisplayNames": null, "StableId": "all_detections.confidence" }, "Children": [] } ] } ] } } ``` ## Werte und Ergebnisse: audio.default_input ID: audio.default_input Website: /doku/werte/audio.default_input/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.default_input im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.device_name Name eines auf dem Zielrechner vorhandenen Audiogeräts. Die dynamische Auswahl des Editors berücksichtigt Ausgabe- beziehungsweise Eingabegeräte. ### purpose Wählt ein vorhandenes Standard-Mikrofon über dessen Gerätenamen. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.default_input", "name": "audio.default_input", "fields": [ { "id": "device_name", "name": "Mikrofon", "type": "Text", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: audio.default_output ID: audio.default_output Website: /doku/werte/audio.default_output/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.default_output im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.device_name Name eines auf dem Zielrechner vorhandenen Audiogeräts. Die dynamische Auswahl des Editors berücksichtigt Ausgabe- beziehungsweise Eingabegeräte. ### purpose Wählt ein vorhandenes Standard-Ausgabegerät über dessen Gerätenamen. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.default_output", "name": "audio.default_output", "fields": [ { "id": "device_name", "name": "Ausgabegerät", "type": "Text", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerät hinzugefügt ID: audio.device.added Website: /doku/werte/audio.device.added/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.added als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerät hinzugefügt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.added", "name": "Audiogerät hinzugefügt", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerät geändert ID: audio.device.changed Website: /doku/werte/audio.device.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerät geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.changed", "name": "Audiogerät geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerät verbunden ID: audio.device.connected Website: /doku/werte/audio.device.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerät verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.connected", "name": "Audiogerät verbunden", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Standard-Audiogerät geändert ID: audio.device.default_changed Website: /doku/werte/audio.device.default_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.default_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Standard-Audiogerät geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.default_changed", "name": "Standard-Audiogerät geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerät getrennt ID: audio.device.disconnected Website: /doku/werte/audio.device.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerät getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.disconnected", "name": "Audiogerät getrennt", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogeräteeigenschaft geändert ID: audio.device.property_changed Website: /doku/werte/audio.device.property_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.property_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogeräteeigenschaft geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.property_changed", "name": "Audiogeräteeigenschaft geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerät entfernt ID: audio.device.removed Website: /doku/werte/audio.device.removed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.removed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerät entfernt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.removed", "name": "Audiogerät entfernt", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogerätestatus geändert ID: audio.device.state_changed Website: /doku/werte/audio.device.state_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.device.state_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Audiogerätestatus geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.device.state_changed", "name": "Audiogerätestatus geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Audiogeräte ID: audio.devices Website: /doku/werte/audio.devices/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.devices im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Audiogeräte. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.devices", "name": "Audiogeräte", "fields": [], "result": { "TypeName": "AudioDevicesQueryResult", "DisplayName": "AudioDevicesQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: audio.master_volume ID: audio.master_volume Website: /doku/werte/audio.master_volume/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.master_volume im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.value Neuer Hauptlautstärke-Wert als Prozentzahl von 0 bis 100. ### purpose Ändert die Hauptlautstärke der Audioausgabe; value ist ein Prozentwert. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.master_volume", "name": "audio.master_volume", "fields": [ { "id": "value", "name": "Lautstärke (0–100)", "type": "Integer", "Required": true, "defaultValue": "50", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: audio.mute ID: audio.mute Website: /doku/werte/audio.mute/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.mute im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.state Gewünschte Stummschaltung: true aktiviert sie, false hebt sie auf. ### field.state.option.off Den angegebenen Schalter ausschalten. ### field.state.option.on Den angegebenen Schalter einschalten. ### field.state.option.toggle Den aktuellen Schalterzustand umkehren. ### purpose Schaltet die Audioausgabe über state stumm oder hebt die Stummschaltung auf. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.mute", "name": "audio.mute", "fields": [ { "id": "state", "name": "Stummschaltung", "type": "Enum", "Required": true, "defaultValue": "on", "options": [ "on", "off", "toggle" ] } ], "result": null } ``` ## Werte und Ergebnisse: Lautstärke und Stummschaltung ID: audio.volume Website: /doku/werte/audio.volume/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.volume im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Lautstärke und Stummschaltung. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.device_exists Ob das gefilterte Hardwaregerät in der aktuellen Abfrage vorhanden ist. Einzelwert dieses Ergebnisses. ### result.device_id Vom System ermittelte Geräte-ID; sie ist kein frei gewählter Anzeigename. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_muted Ob die Audioausgabe stummgeschaltet ist. Einzelwert dieses Ergebnisses. ### result.on_off_state Ein-/Aus-Zustand der entsprechenden Gerätefunktion gemäß Ergebnisvertrag. Einzelwert dieses Ergebnisses. ### result.on_off_state.option.Off Der abgefragte Schalter ist ausgeschaltet. ### result.on_off_state.option.On Der abgefragte Schalter ist eingeschaltet. ### result.on_off_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.volume_percentage Aktuelle Lautstärke als Prozentwert von 0 bis 100; dies ist anders als Erkennungskonfidenzen bereits eine Prozentskala. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.volume", "name": "Lautstärke und Stummschaltung", "fields": [], "result": { "TypeName": "AudioVolumeQueryResult", "DisplayName": "AudioVolumeQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "device_exists", "EnumDisplayNames": null, "StableId": "device_exists" }, { "Name": "IsMuted", "DisplayName": "Is Muted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_muted", "EnumDisplayNames": null, "StableId": "is_muted" }, { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "volume_percentage", "EnumDisplayNames": null, "StableId": "volume_percentage" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "device_id", "EnumDisplayNames": null, "StableId": "device_id" }, { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "device_exists", "EnumDisplayNames": null, "StableId": "device_exists" }, "Children": [] }, { "Segment": "IsMuted", "DisplayName": "Is Muted", "Property": { "Name": "IsMuted", "DisplayName": "Is Muted", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_muted", "EnumDisplayNames": null, "StableId": "is_muted" }, "Children": [] }, { "Segment": "Percentage", "DisplayName": "Percentage", "Property": { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "volume_percentage", "EnumDisplayNames": null, "StableId": "volume_percentage" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "device_id", "EnumDisplayNames": null, "StableId": "device_id" }, "Children": [] }, { "Segment": "OnOffState", "DisplayName": "On Off State", "Property": { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Lautstärke geändert ID: audio.volume.changed Website: /doku/werte/audio.volume.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.volume.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Lautstärke geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.volume.changed", "name": "Lautstärke geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Lautstärke geändert ID: audio.volume.level_changed Website: /doku/werte/audio.volume.level_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.volume.level_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Lautstärke geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.volume.level_changed", "name": "Lautstärke geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Audio stummgeschaltet ID: audio.volume.muted Website: /doku/werte/audio.volume.muted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.volume.muted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Audio stummgeschaltet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.volume.muted", "name": "Audio stummgeschaltet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Stummschaltung aufgehoben ID: audio.volume.unmuted Website: /doku/werte/audio.volume.unmuted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle audio.volume.unmuted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Stummschaltung aufgehoben. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "audio.volume.unmuted", "name": "Stummschaltung aufgehoben", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bluetooth-Geräte ID: bluetooth.devices Website: /doku/werte/bluetooth.devices/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle bluetooth.devices im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Zustandsabfrage: Bluetooth-Geräte. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "bluetooth.devices", "name": "Bluetooth-Geräte", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": { "TypeName": "DeviceCollectionQueryResult", "DisplayName": "DeviceCollectionQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Bluetooth-Geräteliste geändert ID: bluetooth.state.changed Website: /doku/werte/bluetooth.state.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle bluetooth.state.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Bluetooth-Geräteliste geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "bluetooth.state.changed", "name": "Bluetooth-Geräteliste geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Zwischenablage geändert ID: clipboard.changed Website: /doku/werte/clipboard.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Zwischenablage geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.changed", "name": "Zwischenablage geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Zwischenablage geleert ID: clipboard.cleared Website: /doku/werte/clipboard.cleared/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.cleared als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Zwischenablage geleert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.cleared", "name": "Zwischenablage geleert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Zwischenablageninhalt ID: clipboard.content Website: /doku/werte/clipboard.content/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.content im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Zwischenablageninhalt. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.content", "name": "Zwischenablageninhalt", "fields": [], "result": { "TypeName": "ClipboardContentQueryResult", "DisplayName": "ClipboardContentQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Zwischenablageninhalt geändert ID: clipboard.content_changed Website: /doku/werte/clipboard.content_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.content_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Zwischenablageninhalt geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.content_changed", "name": "Zwischenablageninhalt geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Dateien in Zwischenablage ID: clipboard.files_changed Website: /doku/werte/clipboard.files_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.files_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Dateien in Zwischenablage. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.files_changed", "name": "Dateien in Zwischenablage", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bild in Zwischenablage ID: clipboard.image_changed Website: /doku/werte/clipboard.image_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.image_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bild in Zwischenablage. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.image_changed", "name": "Bild in Zwischenablage", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Text in Zwischenablage ID: clipboard.text_changed Website: /doku/werte/clipboard.text_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle clipboard.text_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Text in Zwischenablage. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "clipboard.text_changed", "name": "Text in Zwischenablage", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Hardwaregeräte ID: device.hardware Website: /doku/werte/device.hardware/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.hardware im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Zustandsabfrage: Hardwaregeräte. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.hardware", "name": "Hardwaregeräte", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": { "TypeName": "DeviceCollectionQueryResult", "DisplayName": "DeviceCollectionQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Hardwaregerät geändert ID: device.hardware.changed Website: /doku/werte/device.hardware.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.hardware.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Hardwaregerät geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.hardware.changed", "name": "Hardwaregerät geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Hardwaregerät verbunden ID: device.hardware.connected Website: /doku/werte/device.hardware.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.hardware.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Hardwaregerät verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.hardware.connected", "name": "Hardwaregerät verbunden", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Hardwaregerät getrennt ID: device.hardware.disconnected Website: /doku/werte/device.hardware.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.hardware.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Hardwaregerät getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.hardware.disconnected", "name": "Hardwaregerät getrennt", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Hardwarekonfiguration aktualisiert ID: device.hardware.updated Website: /doku/werte/device.hardware.updated/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.hardware.updated als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: Hardwarekonfiguration aktualisiert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.hardware.updated", "name": "Hardwarekonfiguration aktualisiert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: USB-Geräte ID: device.usb Website: /doku/werte/device.usb/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.usb im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Zustandsabfrage: USB-Geräte. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.usb", "name": "USB-Geräte", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": { "TypeName": "DeviceCollectionQueryResult", "DisplayName": "DeviceCollectionQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: USB-Gerät geändert ID: device.usb.changed Website: /doku/werte/device.usb.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.usb.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: USB-Gerät geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.usb.changed", "name": "USB-Gerät geändert", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: USB-Gerät verbunden ID: device.usb.connected Website: /doku/werte/device.usb.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.usb.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: USB-Gerät verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.usb.connected", "name": "USB-Gerät verbunden", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: USB-Gerät getrennt ID: device.usb.disconnected Website: /doku/werte/device.usb.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle device.usb.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.filter_value Optionaler Textfilter für die angebotene Geräteabfrage beziehungsweise Ereignisquelle. Seine konkrete Wirkung hängt vom Geräteprovider ab. ### purpose Ereignis: USB-Gerät getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "device.usb.disconnected", "name": "USB-Gerät getrennt", "fields": [ { "id": "filter_value", "name": "Filter", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Bildschirmkonfiguration geändert ID: display.configuration.changed Website: /doku/werte/display.configuration.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.configuration.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirmkonfiguration geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.configuration.changed", "name": "Bildschirmkonfiguration geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bildschirm verbunden ID: display.connected Website: /doku/werte/display.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirm verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.connected", "name": "Bildschirm verbunden", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bildschirm getrennt ID: display.disconnected Website: /doku/werte/display.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirm getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.disconnected", "name": "Bildschirm getrennt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: display.mode ID: display.mode Website: /doku/werte/display.mode/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.mode im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.mode Konkreter Betriebs-/Projektions- beziehungsweise Nicht-stören-Modus; exakt eine der für diese Funktion angebotenen Optionen verwenden. ### field.mode.option.duplicate Bildschirme duplizieren. ### field.mode.option.extend Desktop über Bildschirme erweitern. ### field.mode.option.external Nur den externen Bildschirm verwenden. ### field.mode.option.internal Nur den internen Bildschirm verwenden. ### purpose Ändert den Bildschirm-Betriebsmodus auf eine vom Katalog angebotene Projektionsart. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.mode", "name": "display.mode", "fields": [ { "id": "mode", "name": "Bildschirmmodus", "type": "Enum", "Required": true, "defaultValue": "extend", "options": [ "extend", "duplicate", "internal", "external" ] } ], "result": null } ``` ## Werte und Ergebnisse: Angeschlossene Monitore ID: display.monitors Website: /doku/werte/display.monitors/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.monitors im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Angeschlossene Monitore. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.monitors", "name": "Angeschlossene Monitore", "fields": [], "result": { "TypeName": "MonitorCollectionQueryResult", "DisplayName": "MonitorCollectionQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Bildschirmausrichtung geändert ID: display.orientation_changed Website: /doku/werte/display.orientation_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.orientation_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirmausrichtung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.orientation_changed", "name": "Bildschirmausrichtung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: display.primary ID: display.primary Website: /doku/werte/display.primary/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.primary im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.display_name Systemname eines vorhandenen Displays, etwa \\.\DISPLAY2, nicht ein frei formulierter Fenstertitel. ### purpose Wählt den vorhandenen Bildschirm mit display_name als Hauptbildschirm. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.primary", "name": "display.primary", "fields": [ { "id": "display_name", "name": "Hauptbildschirm", "type": "Text", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Hauptbildschirm geändert ID: display.primary_changed Website: /doku/werte/display.primary_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.primary_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Hauptbildschirm geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.primary_changed", "name": "Hauptbildschirm geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bildschirmauflösung geändert ID: display.resolution_changed Website: /doku/werte/display.resolution_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.resolution_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirmauflösung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.resolution_changed", "name": "Bildschirmauflösung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bildschirmeinstellungen geändert ID: display.settings.changed Website: /doku/werte/display.settings.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle display.settings.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirmeinstellungen geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "display.settings.changed", "name": "Bildschirmeinstellungen geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Datei oder Ordner geändert ID: filesystem.changed Website: /doku/werte/filesystem.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle filesystem.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.include_subdirectories Bei Dateisystemereignissen auch Unterordner beobachten. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Ereignis: Datei oder Ordner geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "filesystem.changed", "name": "Datei oder Ordner geändert", "fields": [ { "id": "path", "name": "Datei oder Ordner", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] }, { "id": "include_subdirectories", "name": "Unterordner", "type": "Boolean", "Required": false, "defaultValue": "false", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Datei oder Ordner erstellt ID: filesystem.created Website: /doku/werte/filesystem.created/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle filesystem.created als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.include_subdirectories Bei Dateisystemereignissen auch Unterordner beobachten. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Ereignis: Datei oder Ordner erstellt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "filesystem.created", "name": "Datei oder Ordner erstellt", "fields": [ { "id": "path", "name": "Datei oder Ordner", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] }, { "id": "include_subdirectories", "name": "Unterordner", "type": "Boolean", "Required": false, "defaultValue": "false", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Datei oder Ordner gelöscht ID: filesystem.deleted Website: /doku/werte/filesystem.deleted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle filesystem.deleted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.include_subdirectories Bei Dateisystemereignissen auch Unterordner beobachten. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Ereignis: Datei oder Ordner gelöscht. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "filesystem.deleted", "name": "Datei oder Ordner gelöscht", "fields": [ { "id": "path", "name": "Datei oder Ordner", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] }, { "id": "include_subdirectories", "name": "Unterordner", "type": "Boolean", "Required": false, "defaultValue": "false", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Datei- oder Ordnerzustand ID: filesystem.path Website: /doku/werte/filesystem.path/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle filesystem.path im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Zustandsabfrage: Datei- oder Ordnerzustand. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.path Pfad des abgefragten Dateisystemobjekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "filesystem.path", "name": "Datei- oder Ordnerzustand", "fields": [ { "id": "path", "name": "Datei oder Ordner", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] } ], "result": { "TypeName": "FileSystemPathQueryResult", "DisplayName": "FileSystemPathQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Path", "DisplayName": "Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "path", "EnumDisplayNames": null, "StableId": "path" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Value", "DisplayName": "Value", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Path", "DisplayName": "Path", "Property": { "Name": "Path", "DisplayName": "Path", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "path", "EnumDisplayNames": null, "StableId": "path" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Value", "DisplayName": "Value", "Property": { "Name": "Value", "DisplayName": "Value", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Datei oder Ordner umbenannt ID: filesystem.renamed Website: /doku/werte/filesystem.renamed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle filesystem.renamed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.include_subdirectories Bei Dateisystemereignissen auch Unterordner beobachten. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Ereignis: Datei oder Ordner umbenannt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "filesystem.renamed", "name": "Datei oder Ordner umbenannt", "fields": [ { "id": "path", "name": "Datei oder Ordner", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] }, { "id": "include_subdirectories", "name": "Unterordner", "type": "Boolean", "Required": false, "defaultValue": "false", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Zeit seit letzter Eingabe ID: input.idle Website: /doku/werte/input.idle/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle input.idle im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Zeit seit letzter Eingabe. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "input.idle", "name": "Zeit seit letzter Eingabe", "fields": [], "result": { "TypeName": "InputIdleQueryResult", "DisplayName": "InputIdleQueryResult", "Properties": [ { "Name": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "IdleSeconds", "DisplayName": "Idle Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "Property": { "Name": "IdleMilliseconds", "DisplayName": "Idle Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "IdleSeconds", "DisplayName": "Idle Seconds", "Property": { "Name": "IdleSeconds", "DisplayName": "Idle Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Leerlaufgrenze erreicht oder verlassen ID: input.idle.changed Website: /doku/werte/input.idle.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle input.idle.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.threshold_ms Leerlaufgrenze in Millisekunden; 60000 entspricht einer Minute ohne Eingabe. ### purpose Ereignis: Leerlaufgrenze erreicht oder verlassen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "input.idle.changed", "name": "Leerlaufgrenze erreicht oder verlassen", "fields": [ { "id": "threshold_ms", "name": "Leerlaufgrenze (ms)", "type": "Duration", "Required": true, "defaultValue": "60000", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Leerlaufgrenze erreicht ID: input.idle.entered Website: /doku/werte/input.idle.entered/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle input.idle.entered als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.threshold_ms Leerlaufgrenze in Millisekunden; 60000 entspricht einer Minute ohne Eingabe. ### purpose Ereignis: Leerlaufgrenze erreicht. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "input.idle.entered", "name": "Leerlaufgrenze erreicht", "fields": [ { "id": "threshold_ms", "name": "Leerlaufgrenze (ms)", "type": "Duration", "Required": true, "defaultValue": "60000", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Leerlauf beendet ID: input.idle.left Website: /doku/werte/input.idle.left/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle input.idle.left als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.threshold_ms Leerlaufgrenze in Millisekunden; 60000 entspricht einer Minute ohne Eingabe. ### purpose Ereignis: Leerlauf beendet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "input.idle.left", "name": "Leerlauf beendet", "fields": [ { "id": "threshold_ms", "name": "Leerlaufgrenze (ms)", "type": "Duration", "Required": true, "defaultValue": "60000", "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Netzwerkadresse geändert ID: network.address.changed Website: /doku/werte/network.address.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.address.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzwerkadresse geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.address.changed", "name": "Netzwerkadresse geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Netzwerkverfügbarkeit geändert ID: network.availability.changed Website: /doku/werte/network.availability.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.availability.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzwerkverfügbarkeit geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.availability.changed", "name": "Netzwerkverfügbarkeit geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Netzwerk verfügbar ID: network.connected Website: /doku/werte/network.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzwerk verfügbar. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.connected", "name": "Netzwerk verfügbar", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Aktuelle Netzwerkverbindung ID: network.connectivity Website: /doku/werte/network.connectivity/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.connectivity im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Aktuelle Netzwerkverbindung. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.connection_type Art der ermittelten Netzwerkverbindung, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.connection_type.option.Ethernet Kabelgebundene Ethernet-Verbindung. ### result.connection_type.option.Mobile Mobilfunkverbindung. ### result.connection_type.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.connection_type.option.Virtual Virtueller Netzwerkadapter beziehungsweise virtuelle Verbindung. ### result.connection_type.option.WiFi Drahtlose WLAN-Verbindung. ### result.connectivity Vom Netzwerkprovider gemeldete Verbindungsqualität beziehungsweise Konnektivität. Einzelwert dieses Ergebnisses. ### result.connectivity.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.connectivity.option.Internet Windows meldet Internetkonnektivität. ### result.connectivity.option.LocalNetwork Windows meldet lokale Netzwerkkonnektivität ohne belegten Internetzugang. ### result.connectivity.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.connectivity", "name": "Aktuelle Netzwerkverbindung", "fields": [], "result": { "TypeName": "NetworkConnectivityQueryResult", "DisplayName": "NetworkConnectivityQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Connectivity", "DisplayName": "Connectivity", "Property": { "Name": "Connectivity", "DisplayName": "Connectivity", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectivity", "EnumValues": [ "Unknown", "Disconnected", "LocalNetwork", "Internet" ], "Id": "connectivity", "EnumDisplayNames": null, "StableId": "connectivity" }, "Children": [] }, { "Segment": "ConnectionType", "DisplayName": "Connection Type", "Property": { "Name": "ConnectionType", "DisplayName": "Connection Type", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsConnectionType", "EnumValues": [ "Unknown", "Ethernet", "WiFi", "Mobile", "Virtual" ], "Id": "connection_type", "EnumDisplayNames": null, "StableId": "connection_type" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Netzwerk nicht verfügbar ID: network.disconnected Website: /doku/werte/network.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzwerk nicht verfügbar. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.disconnected", "name": "Netzwerk nicht verfügbar", "fields": [], "result": null } ``` ## Werte und Ergebnisse: network.vpn_connection ID: network.vpn_connection Website: /doku/werte/network.vpn_connection/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.vpn_connection im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.action connect verbindet das bestehende Profil/die Verbindung, disconnect trennt sie. ### field.action.option.connect Mit dem angegebenen vorhandenen Profil verbinden. ### field.action.option.disconnect Die angegebene Verbindung trennen. ### field.connection_name Name einer bereits eingerichteten VPN-Verbindung. ### purpose Verbindet oder trennt eine vorhandene VPN-Verbindung über connection_name. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.vpn_connection", "name": "network.vpn_connection", "fields": [ { "id": "action", "name": "Aktion", "type": "Enum", "Required": true, "defaultValue": "connect", "options": [ "connect", "disconnect" ] }, { "id": "connection_name", "name": "VPN-Verbindung", "type": "Text", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: network.wifi_connection ID: network.wifi_connection Website: /doku/werte/network.wifi_connection/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi_connection im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.action connect verbindet das bestehende Profil/die Verbindung, disconnect trennt sie. ### field.action.option.connect Mit dem angegebenen vorhandenen Profil verbinden. ### field.action.option.disconnect Die angegebene Verbindung trennen. ### field.profile Name eines bereits vorhandenen WLAN-Profils. Die Funktion legt nicht automatisch ein neues Profil mit Zugangsdaten an. ### purpose Verbindet ein bestehendes WLAN-Profil oder trennt die Verbindung entsprechend action. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi_connection", "name": "network.wifi_connection", "fields": [ { "id": "action", "name": "Aktion", "type": "Enum", "Required": true, "defaultValue": "connect", "options": [ "connect", "disconnect" ] }, { "id": "profile", "name": "WLAN-Profil", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN-Schnittstelle hinzugefügt oder aktiviert ID: network.wifi.adapter_added Website: /doku/werte/network.wifi.adapter_added/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.adapter_added als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Schnittstelle hinzugefügt oder aktiviert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.adapter_added", "name": "WLAN-Schnittstelle hinzugefügt oder aktiviert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Schnittstelle entfernt oder deaktiviert ID: network.wifi.adapter_removed Website: /doku/werte/network.wifi.adapter_removed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.adapter_removed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Schnittstelle entfernt oder deaktiviert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.adapter_removed", "name": "WLAN-Schnittstelle entfernt oder deaktiviert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN zugeordnet ID: network.wifi.associated Website: /doku/werte/network.wifi.associated/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.associated als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN zugeordnet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.associated", "name": "WLAN zugeordnet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Zuordnung wird aufgebaut ID: network.wifi.associating Website: /doku/werte/network.wifi.associating/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.associating als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Zuordnung wird aufgebaut. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.associating", "name": "WLAN-Zuordnung wird aufgebaut", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN wird authentifiziert ID: network.wifi.authenticating Website: /doku/werte/network.wifi.authenticating/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.authenticating als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN wird authentifiziert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.authenticating", "name": "WLAN wird authentifiziert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Autokonfiguration deaktiviert ID: network.wifi.autoconfig_disabled Website: /doku/werte/network.wifi.autoconfig_disabled/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.autoconfig_disabled als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Autokonfiguration deaktiviert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.autoconfig_disabled", "name": "WLAN-Autokonfiguration deaktiviert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Autokonfiguration aktiviert ID: network.wifi.autoconfig_enabled Website: /doku/werte/network.wifi.autoconfig_enabled/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.autoconfig_enabled als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Autokonfiguration aktiviert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.autoconfig_enabled", "name": "WLAN-Autokonfiguration aktiviert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Ereignis ID: network.wifi.changed Website: /doku/werte/network.wifi.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Ereignis. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.changed", "name": "WLAN-Ereignis", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN verbunden ID: network.wifi.connected Website: /doku/werte/network.wifi.connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.ssid Optionaler WLAN-Netzname zum Eingrenzen der dafür angebotenen WLAN-Ereignisse. ### purpose Ereignis: WLAN verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.connected", "name": "WLAN verbunden", "fields": [ { "id": "ssid", "name": "WLAN-Name (SSID)", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN-Verbindung wird aufgebaut ID: network.wifi.connecting Website: /doku/werte/network.wifi.connecting/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.connecting als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.ssid Optionaler WLAN-Netzname zum Eingrenzen der dafür angebotenen WLAN-Ereignisse. ### purpose Ereignis: WLAN-Verbindung wird aufgebaut. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.connecting", "name": "WLAN-Verbindung wird aufgebaut", "fields": [ { "id": "ssid", "name": "WLAN-Name (SSID)", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN-Verbindung fehlgeschlagen ID: network.wifi.connection_failed Website: /doku/werte/network.wifi.connection_failed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.connection_failed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.ssid Optionaler WLAN-Netzname zum Eingrenzen der dafür angebotenen WLAN-Ereignisse. ### purpose Ereignis: WLAN-Verbindung fehlgeschlagen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.connection_failed", "name": "WLAN-Verbindung fehlgeschlagen", "fields": [ { "id": "ssid", "name": "WLAN-Name (SSID)", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN-Verbindung getrennt ID: network.wifi.disconnected Website: /doku/werte/network.wifi.disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.ssid Optionaler WLAN-Netzname zum Eingrenzen der dafür angebotenen WLAN-Ereignisse. ### purpose Ereignis: WLAN-Verbindung getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.disconnected", "name": "WLAN-Verbindung getrennt", "fields": [ { "id": "ssid", "name": "WLAN-Name (SSID)", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN wird getrennt ID: network.wifi.disconnecting Website: /doku/werte/network.wifi.disconnecting/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.disconnecting als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.ssid Optionaler WLAN-Netzname zum Eingrenzen der dafür angebotenen WLAN-Ereignisse. ### purpose Ereignis: WLAN wird getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.disconnecting", "name": "WLAN wird getrennt", "fields": [ { "id": "ssid", "name": "WLAN-Name (SSID)", "type": "Text", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: WLAN-Netzwerk verfügbar ID: network.wifi.network_available Website: /doku/werte/network.wifi.network_available/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.network_available als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Netzwerk verfügbar. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.network_available", "name": "WLAN-Netzwerk verfügbar", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Netzwerk nicht verfügbar ID: network.wifi.network_unavailable Website: /doku/werte/network.wifi.network_unavailable/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.network_unavailable als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Netzwerk nicht verfügbar. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.network_unavailable", "name": "WLAN-Netzwerk nicht verfügbar", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Profil geändert ID: network.wifi.profile_changed Website: /doku/werte/network.wifi.profile_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.profile_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Profil geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.profile_changed", "name": "WLAN-Profil geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Funkstatus geändert ID: network.wifi.radio_state_changed Website: /doku/werte/network.wifi.radio_state_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.radio_state_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Funkstatus geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.radio_state_changed", "name": "WLAN-Funkstatus geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Roaming abgeschlossen ID: network.wifi.roaming_completed Website: /doku/werte/network.wifi.roaming_completed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.roaming_completed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Roaming abgeschlossen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.roaming_completed", "name": "WLAN-Roaming abgeschlossen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Roaming gestartet ID: network.wifi.roaming_started Website: /doku/werte/network.wifi.roaming_started/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.roaming_started als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Roaming gestartet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.roaming_started", "name": "WLAN-Roaming gestartet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Suche abgeschlossen ID: network.wifi.scan_completed Website: /doku/werte/network.wifi.scan_completed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.scan_completed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Suche abgeschlossen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.scan_completed", "name": "WLAN-Suche abgeschlossen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Suche fehlgeschlagen ID: network.wifi.scan_failed Website: /doku/werte/network.wifi.scan_failed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.scan_failed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Suche fehlgeschlagen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.scan_failed", "name": "WLAN-Suche fehlgeschlagen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: WLAN-Signalstärke geändert ID: network.wifi.signal_quality_changed Website: /doku/werte/network.wifi.signal_quality_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle network.wifi.signal_quality_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: WLAN-Signalstärke geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "network.wifi.signal_quality_changed", "name": "WLAN-Signalstärke geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: notifications.focus_mode ID: notifications.focus_mode Website: /doku/werte/notifications.focus_mode/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle notifications.focus_mode im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.mode Konkreter Betriebs-/Projektions- beziehungsweise Nicht-stören-Modus; exakt eine der für diese Funktion angebotenen Optionen verwenden. ### field.mode.option.off Den angegebenen Schalter ausschalten. ### field.mode.option.on Den angegebenen Schalter einschalten. ### purpose Ändert die unterstützte Nicht-stören-Einstellung mit mode=on oder off. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "notifications.focus_mode", "name": "notifications.focus_mode", "fields": [ { "id": "mode", "name": "Nicht stören", "type": "Enum", "Required": true, "defaultValue": "off", "options": [ "off", "on" ] } ], "result": null } ``` ## Werte und Ergebnisse: personalization.theme ID: personalization.theme Website: /doku/werte/personalization.theme/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle personalization.theme im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.theme Gewünschte Windows-Theme-Option aus der angebotenen Liste. ### field.theme.option.dark Windows-Farbmodus Dunkel auswählen. ### field.theme.option.light Windows-Farbmodus Hell auswählen. ### purpose Ändert die unterstützte Windows-Farb-/Theme-Einstellung entsprechend theme. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "personalization.theme", "name": "personalization.theme", "fields": [ { "id": "theme", "name": "Darstellung", "type": "Enum", "Required": true, "defaultValue": "dark", "options": [ "light", "dark" ] } ], "result": null } ``` ## Werte und Ergebnisse: personalization.wallpaper ID: personalization.wallpaper Website: /doku/werte/personalization.wallpaper/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle personalization.wallpaper im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.path Lokaler Datei-/Ordnerpfad beziehungsweise vorhandene Hintergrundbilddatei, entsprechend der Funktion. ### purpose Setzt die vorhandene Bilddatei aus path als Desktop-Hintergrund. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "personalization.wallpaper", "name": "personalization.wallpaper", "fields": [ { "id": "path", "name": "Hintergrundbild", "type": "FilePath", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Netzteil angeschlossen ID: power.ac_connected Website: /doku/werte/power.ac_connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.ac_connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzteil angeschlossen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.ac_connected", "name": "Netzteil angeschlossen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Netzteil getrennt ID: power.ac_disconnected Website: /doku/werte/power.ac_disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.ac_disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Netzteil getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.ac_disconnected", "name": "Netzteil getrennt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Akkustand geändert ID: power.battery_level_changed Website: /doku/werte/power.battery_level_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.battery_level_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Akkustand geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.battery_level_changed", "name": "Akkustand geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Laden begonnen ID: power.charging_started Website: /doku/werte/power.charging_started/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.charging_started als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Laden begonnen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.charging_started", "name": "Laden begonnen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Laden beendet ID: power.charging_stopped Website: /doku/werte/power.charging_stopped/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.charging_stopped als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Laden beendet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.charging_stopped", "name": "Laden beendet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: power.display_timeout ID: power.display_timeout Website: /doku/werte/power.display_timeout/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.display_timeout im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.minutes Zeit bis zur Energieaktion in Minuten. Die vom Katalog angegebenen Grenzen und die gewählte Energiequelle beachten. ### field.power_source Energiequelle, für die die Einstellung gilt, gemäß den angebotenen Optionen. ### field.power_source.option.ac Die Änderung gilt bei Netzstrom. ### field.power_source.option.both Die Änderung gilt bei Netzstrom und Akkubetrieb. ### field.power_source.option.dc Die Änderung gilt bei Akkubetrieb. ### purpose Ändert die Bildschirm-Ausschaltzeit in Minuten für die angegebene Energiequelle. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.display_timeout", "name": "power.display_timeout", "fields": [ { "id": "minutes", "name": "Bildschirm-Timeout (Minuten)", "type": "Integer", "Required": true, "defaultValue": "10", "options": [] }, { "id": "power_source", "name": "Stromquelle", "type": "Enum", "Required": true, "defaultValue": "both", "options": [ "both", "ac", "dc" ] } ], "result": null } ``` ## Werte und Ergebnisse: Energiemodus geändert ID: power.mode.changed Website: /doku/werte/power.mode.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.mode.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Energiemodus geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.mode.changed", "name": "Energiemodus geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Standby beendet ID: power.resumed Website: /doku/werte/power.resumed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.resumed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Standby beendet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.resumed", "name": "Standby beendet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: power.scheme ID: power.scheme Website: /doku/werte/power.scheme/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.scheme im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.scheme Kennung eines vorhandenen Energiesparplans; keine beliebige Bezeichnung eines neuen Plans. ### field.scheme.option.balanced Den vorhandenen ausgewogenen Energiesparplan aktivieren. ### field.scheme.option.high_performance Den vorhandenen Hochleistungsplan aktivieren. ### field.scheme.option.power_saver Den vorhandenen Energiesparplan aktivieren. ### purpose Aktiviert den angegebenen vorhandenen Energiesparplan. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.scheme", "name": "power.scheme", "fields": [ { "id": "scheme", "name": "Energieschema", "type": "Enum", "Required": true, "defaultValue": "balanced", "options": [ "balanced", "high_performance", "power_saver" ] } ], "result": null } ``` ## Werte und Ergebnisse: power.sleep_timeout ID: power.sleep_timeout Website: /doku/werte/power.sleep_timeout/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.sleep_timeout im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.minutes Zeit bis zur Energieaktion in Minuten. Die vom Katalog angegebenen Grenzen und die gewählte Energiequelle beachten. ### field.power_source Energiequelle, für die die Einstellung gilt, gemäß den angebotenen Optionen. ### field.power_source.option.ac Die Änderung gilt bei Netzstrom. ### field.power_source.option.both Die Änderung gilt bei Netzstrom und Akkubetrieb. ### field.power_source.option.dc Die Änderung gilt bei Akkubetrieb. ### purpose Ändert die Standby-Zeit in Minuten für die angegebene Energiequelle. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.sleep_timeout", "name": "power.sleep_timeout", "fields": [ { "id": "minutes", "name": "Standby-Timeout (Minuten)", "type": "Integer", "Required": true, "defaultValue": "30", "options": [] }, { "id": "power_source", "name": "Stromquelle", "type": "Enum", "Required": true, "defaultValue": "both", "options": [ "both", "ac", "dc" ] } ], "result": null } ``` ## Werte und Ergebnisse: Akku und Energiequelle ID: power.status Website: /doku/werte/power.status/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.status im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Akku und Energiequelle. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_charging Ob das System ein Laden des Akkus meldet. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.power_source Gemeldete Energiequelle, etwa Netzbetrieb oder Akkubetrieb. Einzelwert dieses Ergebnisses. ### result.power_source.option.Ac Stromversorgung über Netzstrom. ### result.power_source.option.Battery Stromversorgung über Akku. ### result.power_source.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.status", "name": "Akku und Energiequelle", "fields": [], "result": { "TypeName": "PowerStatusQueryResult", "DisplayName": "PowerStatusQueryResult", "Properties": [ { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "IsCharging", "DisplayName": "Is Charging", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_charging", "EnumDisplayNames": null, "StableId": "is_charging" }, { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "PowerSource", "DisplayName": "Power Source", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsPowerSource", "EnumValues": [ "Unknown", "Ac", "Battery" ], "Id": "power_source", "EnumDisplayNames": null, "StableId": "power_source" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "IsCharging", "DisplayName": "Is Charging", "Property": { "Name": "IsCharging", "DisplayName": "Is Charging", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_charging", "EnumDisplayNames": null, "StableId": "is_charging" }, "Children": [] }, { "Segment": "Percentage", "DisplayName": "Percentage", "Property": { "Name": "Percentage", "DisplayName": "Percentage", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "PowerSource", "DisplayName": "Power Source", "Property": { "Name": "PowerSource", "DisplayName": "Power Source", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsPowerSource", "EnumValues": [ "Unknown", "Ac", "Battery" ], "Id": "power_source", "EnumDisplayNames": null, "StableId": "power_source" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Energiestatus geändert ID: power.status.changed Website: /doku/werte/power.status.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.status.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Energiestatus geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.status.changed", "name": "Energiestatus geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Standby gestartet ID: power.suspended Website: /doku/werte/power.suspended/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle power.suspended als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Standby gestartet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "power.suspended", "name": "Standby gestartet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Drucker hinzugefügt ID: printer.added Website: /doku/werte/printer.added/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.added als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Drucker hinzugefügt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.added", "name": "Drucker hinzugefügt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckerverbindung fehlgeschlagen ID: printer.connection_failed Website: /doku/werte/printer.connection_failed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.connection_failed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckerverbindung fehlgeschlagen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.connection_failed", "name": "Druckerverbindung fehlgeschlagen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: printer.default ID: printer.default Website: /doku/werte/printer.default/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.default im Step „Windows-Einstellung ändern“, wähle ein vorhandenes Systemziel und prüfe danach previous_value und applied_value. ### field.printer_name Name eines auf diesem Rechner installierten Druckers. ### purpose Setzt den installierten Drucker mit printer_name als Standarddrucker. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.default", "name": "printer.default", "fields": [ { "id": "printer_name", "name": "Standarddrucker", "type": "Text", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Druckauftrag hinzugefügt ID: printer.job.added Website: /doku/werte/printer.job.added/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.job.added als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckauftrag hinzugefügt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.job.added", "name": "Druckauftrag hinzugefügt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckauftrag geändert ID: printer.job.changed Website: /doku/werte/printer.job.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.job.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckauftrag geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.job.changed", "name": "Druckauftrag geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckauftrag entfernt ID: printer.job.deleted Website: /doku/werte/printer.job.deleted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.job.deleted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckauftrag entfernt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.job.deleted", "name": "Druckauftrag entfernt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckerwarteschlange geändert ID: printer.queue.changed Website: /doku/werte/printer.queue.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.queue.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckerwarteschlange geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.queue.changed", "name": "Druckerwarteschlange geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Drucker entfernt ID: printer.removed Website: /doku/werte/printer.removed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.removed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Drucker entfernt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.removed", "name": "Drucker entfernt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckerstatus oder Einstellungen geändert ID: printer.settings_changed Website: /doku/werte/printer.settings_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.settings_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Druckerstatus oder Einstellungen geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.settings_changed", "name": "Druckerstatus oder Einstellungen geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Weiteres Druckerereignis ID: printer.state.changed Website: /doku/werte/printer.state.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.state.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Weiteres Druckerereignis. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.state.changed", "name": "Weiteres Druckerereignis", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Druckerstatus ID: printer.status Website: /doku/werte/printer.status/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle printer.status im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Druckerstatus. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.device_state Vom Windows-Geräteprovider gemeldeter Gerätezustand. Einzelwert dieses Ergebnisses. ### result.device_state.option.Connected Das Gerät beziehungsweise die Verbindung ist verbunden. ### result.device_state.option.Disabled Das Gerät ist deaktiviert. ### result.device_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.device_state.option.Error Fehlerbeobachtung; den tatsächlichen Laufabschluss zusätzlich über Outcome prüfen. ### result.device_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "printer.status", "name": "Druckerstatus", "fields": [], "result": { "TypeName": "PrinterStatusQueryResult", "DisplayName": "PrinterStatusQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "DeviceState", "DisplayName": "Device State", "Property": { "Name": "DeviceState", "DisplayName": "Device State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsDeviceState", "EnumValues": [ "Unknown", "Connected", "Disconnected", "Disabled", "Error" ], "Id": "device_state", "EnumDisplayNames": null, "StableId": "device_state" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Prozess beendet ID: process.exited Website: /doku/werte/process.exited/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle process.exited als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Ereignis: Prozess beendet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "process.exited", "name": "Prozess beendet", "fields": [ { "id": "name", "name": "Prozessname", "type": "ProcessName", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Läuft ein Prozess? ID: process.running Website: /doku/werte/process.running/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle process.running im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Zustandsabfrage: Läuft ein Prozess?. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "process.running", "name": "Läuft ein Prozess?", "fields": [ { "id": "name", "name": "Prozessname", "type": "ProcessName", "Required": true, "defaultValue": null, "options": [] } ], "result": { "TypeName": "ProcessRunningQueryResult", "DisplayName": "ProcessRunningQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Prozess gestartet ID: process.started Website: /doku/werte/process.started/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle process.started als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Ereignis: Prozess gestartet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "process.started", "name": "Prozess gestartet", "fields": [ { "id": "name", "name": "Prozessname", "type": "ProcessName", "Required": true, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Sicherheitseinstellung geändert ID: security.settings.changed Website: /doku/werte/security.settings.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle security.settings.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Sicherheitseinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Administratorrechte sind erforderlich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "security.settings.changed", "name": "Sicherheitseinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Windows-Sicherheit geändert ID: security.state.changed Website: /doku/werte/security.state.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle security.state.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Windows-Sicherheit geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Administratorrechte sind erforderlich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "security.state.changed", "name": "Windows-Sicherheit geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Windows-Sicherheitsstatus ID: security.status Website: /doku/werte/security.status/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle security.status im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Windows-Sicherheitsstatus. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Administratorrechte sind erforderlich. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.is_enabled Ob die abgefragte Funktion/Hardware vom System als aktiviert gemeldet wird. Einzelwert dieses Ergebnisses. ### result.on_off_state Ein-/Aus-Zustand der entsprechenden Gerätefunktion gemäß Ergebnisvertrag. Einzelwert dieses Ergebnisses. ### result.on_off_state.option.Off Der abgefragte Schalter ist ausgeschaltet. ### result.on_off_state.option.On Der abgefragte Schalter ist eingeschaltet. ### result.on_off_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "security.status", "name": "Windows-Sicherheitsstatus", "fields": [], "result": { "TypeName": "SecurityStatusQueryResult", "DisplayName": "SecurityStatusQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsEnabled", "DisplayName": "Is Enabled", "Property": { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, "Children": [] }, { "Segment": "OnOffState", "DisplayName": "On Off State", "Property": { "Name": "OnOffState", "DisplayName": "On Off State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsOnOffState", "EnumValues": [ "Unknown", "Off", "On" ], "Id": "on_off_state", "EnumDisplayNames": null, "StableId": "on_off_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Sicherheitsmaßnahme ausgeführt ID: security.threat.action_taken Website: /doku/werte/security.threat.action_taken/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle security.threat.action_taken als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Sicherheitsmaßnahme ausgeführt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Administratorrechte sind erforderlich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "security.threat.action_taken", "name": "Sicherheitsmaßnahme ausgeführt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bedrohung erkannt ID: security.threat.detected Website: /doku/werte/security.threat.detected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle security.threat.detected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bedrohung erkannt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Administratorrechte sind erforderlich. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "security.threat.detected", "name": "Bedrohung erkannt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Konsolensitzung verbunden ID: session.console_connected Website: /doku/werte/session.console_connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.console_connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Konsolensitzung verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.console_connected", "name": "Konsolensitzung verbunden", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Konsolensitzung getrennt ID: session.console_disconnected Website: /doku/werte/session.console_disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.console_disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Konsolensitzung getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.console_disconnected", "name": "Konsolensitzung getrennt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Sitzung gesperrt ID: session.locked Website: /doku/werte/session.locked/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.locked als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Sitzung gesperrt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.locked", "name": "Sitzung gesperrt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Benutzer abgemeldet ID: session.logged_off Website: /doku/werte/session.logged_off/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.logged_off als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Benutzer abgemeldet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.logged_off", "name": "Benutzer abgemeldet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Benutzer angemeldet ID: session.logged_on Website: /doku/werte/session.logged_on/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.logged_on als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Benutzer angemeldet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.logged_on", "name": "Benutzer angemeldet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Remotesitzung verbunden ID: session.remote_connected Website: /doku/werte/session.remote_connected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.remote_connected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Remotesitzung verbunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.remote_connected", "name": "Remotesitzung verbunden", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Remotesitzung getrennt ID: session.remote_disconnected Website: /doku/werte/session.remote_disconnected/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.remote_disconnected als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Remotesitzung getrennt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.remote_disconnected", "name": "Remotesitzung getrennt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Aktuelle Windows-Sitzung ID: session.state Website: /doku/werte/session.state/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.state im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Aktuelle Windows-Sitzung. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_active Ob das geprüfte Fenster zum Abfragezeitpunkt im Vordergrund ist. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.session_state Aktueller Zustand der Windows-Sitzung, etwa gesperrt oder entsperrt gemäß Systemmeldung. Einzelwert dieses Ergebnisses. ### result.session_state.option.Active Die Windows-Sitzung ist aktiv. ### result.session_state.option.Disconnected Verbindung getrennt beziehungsweise Sitzung nicht verbunden; Bedeutung ergibt sich aus dem jeweiligen Ergebnisfeld. ### result.session_state.option.Locked Die Windows-Sitzung ist gesperrt. ### result.session_state.option.Unknown Die vorhandenen Daten erlauben keinen eindeutigeren Zustand. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.state", "name": "Aktuelle Windows-Sitzung", "fields": [], "result": { "TypeName": "SessionStateQueryResult", "DisplayName": "SessionStateQueryResult", "Properties": [ { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "SessionState", "DisplayName": "Session State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsSessionState", "EnumValues": [ "Unknown", "Active", "Locked", "Disconnected" ], "Id": "session_state", "EnumDisplayNames": null, "StableId": "session_state" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "IsActive", "DisplayName": "Is Active", "Property": { "Name": "IsActive", "DisplayName": "Is Active", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_active", "EnumDisplayNames": null, "StableId": "is_active" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "SessionState", "DisplayName": "Session State", "Property": { "Name": "SessionState", "DisplayName": "Session State", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsSessionState", "EnumValues": [ "Unknown", "Active", "Locked", "Disconnected" ], "Id": "session_state", "EnumDisplayNames": null, "StableId": "session_state" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Windows-Sitzung geändert ID: session.state.changed Website: /doku/werte/session.state.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.state.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Windows-Sitzung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.state.changed", "name": "Windows-Sitzung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Sitzung entsperrt ID: session.unlocked Website: /doku/werte/session.unlocked/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle session.unlocked als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Sitzung entsperrt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "session.unlocked", "name": "Sitzung entsperrt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Laufwerk geändert ID: storage.drive.changed Website: /doku/werte/storage.drive.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.drive.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Ereignis: Laufwerk geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.drive.changed", "name": "Laufwerk geändert", "fields": [ { "id": "name", "name": "Laufwerk", "type": "Drive", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Laufwerk eingebunden ID: storage.drive.mounted Website: /doku/werte/storage.drive.mounted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.drive.mounted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Ereignis: Laufwerk eingebunden. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.drive.mounted", "name": "Laufwerk eingebunden", "fields": [ { "id": "name", "name": "Laufwerk", "type": "Drive", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Laufwerk entfernt ID: storage.drive.unmounted Website: /doku/werte/storage.drive.unmounted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.drive.unmounted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Ereignis: Laufwerk entfernt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.drive.unmounted", "name": "Laufwerk entfernt", "fields": [ { "id": "name", "name": "Laufwerk", "type": "Drive", "Required": false, "defaultValue": null, "options": [] } ], "result": null } ``` ## Werte und Ergebnisse: Laufwerke und freier Speicher ID: storage.drives Website: /doku/werte/storage.drives/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.drives im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### field.name Prozessname (etwa notepad) beziehungsweise Laufwerksname (etwa C:), entsprechend der Windows-Funktion. ### purpose Zustandsabfrage: Laufwerke und freier Speicher. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.free_space_gb Vom Speicherprovider ermittelter freier Speicher in Gigabyte. Einzelwert dieses Ergebnisses. ### result.is_connected Ob die Verbindung zum Zeitpunkt der Abfrage hergestellt war. Einzelwert dieses Ergebnisses. ### result.items Liste abgefragter Objekte, zum Beispiel Geräte, Monitore, Drucker oder Laufwerke. Mitglieder besitzen die in dieser Referenz aufgeführten Unterwerte. Geordnete Liste; ein Verbraucher entscheidet gemäß seinem Eingabevertrag über erstes Element oder alle Elemente. ### result.items.count Anzahl der Elemente der referenzierten Sammlung, automatisch als zusätzlicher Ergebniswert verfügbar. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.drives", "name": "Laufwerke und freier Speicher", "fields": [ { "id": "name", "name": "Laufwerk", "type": "Drive", "Required": false, "defaultValue": null, "options": [] } ], "result": { "TypeName": "StorageDrivesQueryResult", "DisplayName": "StorageDrivesQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "FreeSpaceGb", "DisplayName": "Free Space Gb", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "free_space_gb", "EnumDisplayNames": null, "StableId": "free_space_gb" }, { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "IsConnected", "DisplayName": "Is Connected", "Property": { "Name": "IsConnected", "DisplayName": "Is Connected", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_connected", "EnumDisplayNames": null, "StableId": "is_connected" }, "Children": [] }, { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Count", "DisplayName": "Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "count", "EnumDisplayNames": null, "StableId": "count" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "FreeSpaceGb", "DisplayName": "Free Space Gb", "Property": { "Name": "FreeSpaceGb", "DisplayName": "Free Space Gb", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "free_space_gb", "EnumDisplayNames": null, "StableId": "free_space_gb" }, "Children": [] }, { "Segment": "Items", "DisplayName": "Items", "Property": { "Name": "Items", "DisplayName": "Items", "DataType": "Text", "Description": "Text", "IsNullable": false, "Example": null, "Cardinality": "Collection", "EnumTypeName": null, "EnumValues": null, "Id": "items", "EnumDisplayNames": null, "StableId": "items" }, "Children": [ { "Segment": "Count", "DisplayName": "Count", "Property": { "Name": "Items.Count", "DisplayName": "Items / Count", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "items.count", "EnumDisplayNames": null, "StableId": "items.count" }, "Children": [] } ] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Wechselmedium eingelegt ID: storage.media.inserted Website: /doku/werte/storage.media.inserted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.media.inserted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Wechselmedium eingelegt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.media.inserted", "name": "Wechselmedium eingelegt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Wechselmedium entfernt ID: storage.media.removed Website: /doku/werte/storage.media.removed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle storage.media.removed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Wechselmedium entfernt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "storage.media.removed", "name": "Wechselmedium entfernt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Systemlaufzeit ID: system.lifecycle Website: /doku/werte/system.lifecycle/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.lifecycle im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Systemlaufzeit. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.percentage Aktueller Akkuladestand als Prozentwert, soweit vom System verfügbar. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.value Der von dieser Windows-Abfrage gelieferte fachliche Wert; die Typ- und Kardinalitätsspalten beschreiben seine Darstellung. Einzelwert dieses Ergebnisses. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.lifecycle", "name": "Systemlaufzeit", "fields": [], "result": { "TypeName": "SystemLifecycleQueryResult", "DisplayName": "SystemLifecycleQueryResult", "Properties": [ { "Name": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, { "Name": "UptimeSeconds", "DisplayName": "Uptime Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, { "Name": "OperatingSystemVersion", "DisplayName": "Operating System Version", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "Property": { "Name": "UptimeMilliseconds", "DisplayName": "Uptime Milliseconds", "DataType": "Integer", "Description": "Integer", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "value", "EnumDisplayNames": null, "StableId": "value" }, "Children": [] }, { "Segment": "UptimeSeconds", "DisplayName": "Uptime Seconds", "Property": { "Name": "UptimeSeconds", "DisplayName": "Uptime Seconds", "DataType": "Number", "Description": "Number", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "percentage", "EnumDisplayNames": null, "StableId": "percentage" }, "Children": [] }, { "Segment": "OperatingSystemVersion", "DisplayName": "Operating System Version", "Property": { "Name": "OperatingSystemVersion", "DisplayName": "Operating System Version", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Abmelden oder Herunterfahren ID: system.lifecycle.changed Website: /doku/werte/system.lifecycle.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.lifecycle.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Abmelden oder Herunterfahren. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.lifecycle.changed", "name": "Abmelden oder Herunterfahren", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Benutzer wird abgemeldet ID: system.lifecycle.logoff Website: /doku/werte/system.lifecycle.logoff/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.lifecycle.logoff als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Benutzer wird abgemeldet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.lifecycle.logoff", "name": "Benutzer wird abgemeldet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Windows wird heruntergefahren ID: system.lifecycle.shutdown Website: /doku/werte/system.lifecycle.shutdown/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.lifecycle.shutdown als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Windows wird heruntergefahren. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.lifecycle.shutdown", "name": "Windows wird heruntergefahren", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Zeit, Sprache und Darstellung ID: system.settings Website: /doku/werte/system.settings/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Zeit, Sprache und Darstellung. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.is_enabled Ob die abgefragte Funktion/Hardware vom System als aktiviert gemeldet wird. Einzelwert dieses Ergebnisses. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings", "name": "Zeit, Sprache und Darstellung", "fields": [], "result": { "TypeName": "SystemSettingsQueryResult", "DisplayName": "SystemSettingsQueryResult", "Properties": [ { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "IsEnabled", "DisplayName": "Is Enabled", "Property": { "Name": "IsEnabled", "DisplayName": "Is Enabled", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "is_enabled", "EnumDisplayNames": null, "StableId": "is_enabled" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Systemeinstellung geändert ID: system.settings.changed Website: /doku/werte/system.settings.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Systemeinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.changed", "name": "Systemeinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Farben geändert ID: system.settings.colors_changed Website: /doku/werte/system.settings.colors_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.colors_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Farben geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.colors_changed", "name": "Farben geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Desktop-Einstellung geändert ID: system.settings.desktop_changed Website: /doku/werte/system.settings.desktop_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.desktop_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Desktop-Einstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.desktop_changed", "name": "Desktop-Einstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Allgemeine Systemeinstellung geändert ID: system.settings.general_changed Website: /doku/werte/system.settings.general_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.general_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Allgemeine Systemeinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.general_changed", "name": "Allgemeine Systemeinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Symbole geändert ID: system.settings.icons_changed Website: /doku/werte/system.settings.icons_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.icons_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Symbole geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.icons_changed", "name": "Symbole geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Tastatureinstellung geändert ID: system.settings.keyboard_changed Website: /doku/werte/system.settings.keyboard_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.keyboard_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Tastatureinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.keyboard_changed", "name": "Tastatureinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Region oder Sprache geändert ID: system.settings.locale_changed Website: /doku/werte/system.settings.locale_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.locale_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Region oder Sprache geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.locale_changed", "name": "Region oder Sprache geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Menüeinstellung geändert ID: system.settings.menu_changed Website: /doku/werte/system.settings.menu_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.menu_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Menüeinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.menu_changed", "name": "Menüeinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Mauseinstellung geändert ID: system.settings.mouse_changed Website: /doku/werte/system.settings.mouse_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.mouse_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Mauseinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.mouse_changed", "name": "Mauseinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Energieeinstellung geändert ID: system.settings.power_changed Website: /doku/werte/system.settings.power_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.power_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Energieeinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.power_changed", "name": "Energieeinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Bildschirmschoner geändert ID: system.settings.screensaver_changed Website: /doku/werte/system.settings.screensaver_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.screensaver_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Bildschirmschoner geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.screensaver_changed", "name": "Bildschirmschoner geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenstereinstellung geändert ID: system.settings.window_changed Website: /doku/werte/system.settings.window_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.settings.window_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenstereinstellung geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.settings.window_changed", "name": "Fenstereinstellung geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Systemzeit geändert ID: system.time.changed Website: /doku/werte/system.time.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.time.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Systemzeit geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.time.changed", "name": "Systemzeit geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Systemuhr angepasst ID: system.time.clock_adjusted Website: /doku/werte/system.time.clock_adjusted/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.time.clock_adjusted als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Systemuhr angepasst. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.time.clock_adjusted", "name": "Systemuhr angepasst", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Zeitzone geändert ID: system.time.timezone_changed Website: /doku/werte/system.time.timezone_changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle system.time.timezone_changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Zeitzone geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "system.time.timezone_changed", "name": "Zeitzone geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster geändert ID: window.changed Website: /doku/werte/window.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.changed", "name": "Fenster geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster geschlossen ID: window.closed Website: /doku/werte/window.closed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.closed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster geschlossen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.closed", "name": "Fenster geschlossen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster in den Vordergrund gewechselt ID: window.focused Website: /doku/werte/window.focused/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.focused als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster in den Vordergrund gewechselt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.focused", "name": "Fenster in den Vordergrund gewechselt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Aktives Fenster ID: window.foreground Website: /doku/werte/window.foreground/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.foreground im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Aktives Fenster. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.exists Ob der abgefragte Datei-/Ordnerpfad zum Beobachtungszeitpunkt existiert. Einzelwert dieses Ergebnisses. ### result.id System-/Geräteidentität des jeweiligen Ergebnisobjekts. Ihre Lebensdauer und Form hängen von der abgefragten Windows-Funktion ab. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.name Lesbarer Name des abgefragten Geräts, Monitors, Laufwerks oder Objekts. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### result.text Erkannter oder abgefragter Text. Er kann leer sein; Datentyp und Leerheitsprüfung vor einem nachfolgenden Vergleich beachten. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.foreground", "name": "Aktives Fenster", "fields": [], "result": { "TypeName": "ForegroundWindowQueryResult", "DisplayName": "ForegroundWindowQueryResult", "Properties": [ { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "Exists", "DisplayName": "Exists", "Property": { "Name": "Exists", "DisplayName": "Exists", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "exists", "EnumDisplayNames": null, "StableId": "exists" }, "Children": [] }, { "Segment": "Name", "DisplayName": "Name", "Property": { "Name": "Name", "DisplayName": "Name", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "name", "EnumDisplayNames": null, "StableId": "name" }, "Children": [] }, { "Segment": "Text", "DisplayName": "Text", "Property": { "Name": "Text", "DisplayName": "Text", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "text", "EnumDisplayNames": null, "StableId": "text" }, "Children": [] }, { "Segment": "Id", "DisplayName": "Id", "Property": { "Name": "Id", "DisplayName": "Id", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "id", "EnumDisplayNames": null, "StableId": "id" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ``` ## Werte und Ergebnisse: Fenster ausgeblendet ID: window.hidden Website: /doku/werte/window.hidden/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.hidden als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster ausgeblendet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.hidden", "name": "Fenster ausgeblendet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster minimiert ID: window.minimized Website: /doku/werte/window.minimized/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.minimized als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster minimiert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.minimized", "name": "Fenster minimiert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster verschoben oder skaliert ID: window.moved_or_resized Website: /doku/werte/window.moved_or_resized/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.moved_or_resized als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster verschoben oder skaliert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.moved_or_resized", "name": "Fenster verschoben oder skaliert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster geöffnet ID: window.opened Website: /doku/werte/window.opened/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.opened als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster geöffnet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.opened", "name": "Fenster geöffnet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster wiederhergestellt ID: window.restored Website: /doku/werte/window.restored/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.restored als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster wiederhergestellt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.restored", "name": "Fenster wiederhergestellt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Fenster angezeigt ID: window.shown Website: /doku/werte/window.shown/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle window.shown als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Fenster angezeigt. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "window.shown", "name": "Fenster angezeigt", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Windows Update geändert ID: windows_update.changed Website: /doku/werte/windows_update.changed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.changed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Windows Update geändert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.changed", "name": "Windows Update geändert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Update-Download gestartet ID: windows_update.download_started Website: /doku/werte/windows_update.download_started/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.download_started als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Update-Download gestartet. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.download_started", "name": "Update-Download gestartet", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Update heruntergeladen ID: windows_update.downloaded Website: /doku/werte/windows_update.downloaded/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.downloaded als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Update heruntergeladen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.downloaded", "name": "Update heruntergeladen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Update fehlgeschlagen ID: windows_update.failed Website: /doku/werte/windows_update.failed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.failed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Update fehlgeschlagen. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.failed", "name": "Update fehlgeschlagen", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Update installiert ID: windows_update.installed Website: /doku/werte/windows_update.installed/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.installed als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Update installiert. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.installed", "name": "Update installiert", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Update erfordert Neustart ID: windows_update.restart_required Website: /doku/werte/windows_update.restart_required/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.restart_required als Windows-Ereignis einer deaktivierten Automation und ergänze die angebotenen Filter; teste das Ziel zunächst manuell. ### purpose Ereignis: Update erfordert Neustart. Die Automation reagiert auf eine beobachtete Änderung; ein Ereignis ersetzt keine aktuelle Zustandsabfrage. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.restart_required", "name": "Update erfordert Neustart", "fields": [], "result": null } ``` ## Werte und Ergebnisse: Windows-Update-Status ID: windows_update.status Website: /doku/werte/windows_update.status/ ### errors Verfügbarkeit und Ereignisevidenz hängen von Windows-Version, installiertem Gerät/Dienst und Rechten ab. Die Abfrage ist ein zeitlicher Snapshot. Nur die im Katalog gesetzten Unterstützungsmerkmale verwenden: eine reine Änderungsfunktion liefert keinen eigenen Abfragevertrag, eine reine Abfrage ist kein Ereignistrigger. Bei Windows-Einstellungen den Erfolg und Fehlercode im Step-Ergebnis prüfen. ### example Wähle windows_update.status im Step „Windows-Zustand abfragen“ und verbinde einen unten beschriebenen Ergebniswert mit einer Bedingung. ### purpose Zustandsabfrage: Windows-Update-Status. Liest den aktuellen vom System angebotenen Zustand und stellt die hier aufgeführten typisierten Werte bereit. Wähle die Funktion im Windows-Auswahldialog; die verfügbaren Parameter stehen unten. Der Katalog verlangt keine erhöhte Ausführung; einzelne Systemzugriffe können dennoch Rechte voraussetzen. ### result.captured_at Zeitpunkt der Windows-Abfrage beziehungsweise Erfassung im Ergebnis. Er zeigt den Beobachtungsstand, nicht einen garantierten späteren Systemzustand. Einzelwert dieses Ergebnisses. ### result.error_code Maschinenlesbarer Fehlercode einer Windows-Operation; bei Erfolg entsprechend dem Vertrag leer beziehungsweise nicht gesetzt. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.error_message Lesbare Diagnose der Windows-Operation. Für Entscheidungen vorzugsweise Status und stabilen Code verwenden. Optionaler Einzelwert: bei fehlender Information keine Eigenschaft erfinden. ### result.pending_restart Ob Windows Update noch einen Neustart verlangt. Einzelwert dieses Ergebnisses. ### result.status Vom zuständigen Windows-Dienst gemeldeter Zustand. Nicht durch frei erfundene Statusnamen ersetzen. Einzelwert dieses Ergebnisses. ### result.status.option.AccessDenied Windows verweigert den Zugriff; kein negativer fachlicher Zustand, sondern fehlende Berechtigung. ### result.status.option.Failed Lauf wegen Fehler fehlgeschlagen. ### result.status.option.Success Windows-Aufruf erfolgreich. Erst anschließend den fachlichen Ergebniswert auswerten. ### result.status.option.Timeout Windows-Aufruf überschritt seine Zeitgrenze; daraus keinen Systemzustand ableiten. ### result.status.option.Unsupported Funktion auf diesem Zielsystem nicht unterstützt. ### Vertrag (Metadaten; keine Konfigurationsdatei) ```json { "id": "windows_update.status", "name": "Windows-Update-Status", "fields": [], "result": { "TypeName": "WindowsUpdateStatusQueryResult", "DisplayName": "WindowsUpdateStatusQueryResult", "Properties": [ { "Name": "PendingRestart", "DisplayName": "Pending Restart", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "pending_restart", "EnumDisplayNames": null, "StableId": "pending_restart" }, { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" } ], "PropertyTree": [ { "Segment": "PendingRestart", "DisplayName": "Pending Restart", "Property": { "Name": "PendingRestart", "DisplayName": "Pending Restart", "DataType": "Boolean", "Description": "Boolean", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "pending_restart", "EnumDisplayNames": null, "StableId": "pending_restart" }, "Children": [] }, { "Segment": "Status", "DisplayName": "Status", "Property": { "Name": "Status", "DisplayName": "Status", "DataType": "Enum", "Description": "Enum", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": "TaskAutomation.WindowsIntegration.WindowsCapabilityStatus", "EnumValues": [ "Success", "Unsupported", "AccessDenied", "Timeout", "Failed" ], "Id": "status", "EnumDisplayNames": null, "StableId": "status" }, "Children": [] }, { "Segment": "CapturedAt", "DisplayName": "Captured At", "Property": { "Name": "CapturedAt", "DisplayName": "Captured At", "DataType": "DateTime", "Description": "DateTime", "IsNullable": false, "Example": null, "Cardinality": "Single", "EnumTypeName": null, "EnumValues": null, "Id": "captured_at", "EnumDisplayNames": null, "StableId": "captured_at" }, "Children": [] }, { "Segment": "ErrorCode", "DisplayName": "Error Code", "Property": { "Name": "ErrorCode", "DisplayName": "Error Code", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": null, "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_code", "EnumDisplayNames": null, "StableId": "error_code" }, "Children": [] }, { "Segment": "ErrorMessage", "DisplayName": "Error Message", "Property": { "Name": "ErrorMessage", "DisplayName": "Error Message", "DataType": "Text", "Description": "Text, kann leer sein", "IsNullable": true, "Example": "No detection point available", "Cardinality": "OptionalSingle", "EnumTypeName": null, "EnumValues": null, "Id": "error_message", "EnumDisplayNames": null, "StableId": "error_message" }, "Children": [] } ] } } ```