labvanced logoLabVanced
  • Research
    • Publications
    • Researcher Interviews
    • Use Cases
      • Behavioral Psychology
      • Personality & Social Psychology
      • Cognitive & Neuro Psychology
      • Developmental & Educational Psychology
      • Clinical & Health Psychology
      • Sports & Movement Psychology
      • Marketing & Consumer Psychology
    • Labvanced Blog
  • Technology
    • Feature Overview
    • Desktop App
    • Phone App
    • Precise Timing
    • Experimental Control
    • Eye Tracking
    • Multi User Studies
    • More ...
      • Questionnaires
      • Artificial Intelligence (AI) Integration
      • Mouse Tracking
      • Data Privacy & Security
  • Learn
    • Guide
    • Videos
    • Walkthroughs
    • FAQ
    • Release Notes
    • Documents
    • Classroom
  • Experiments
    • Public Experiment Library
    • Labvanced Sample Studies
  • Pricing
    • Pricing Overview
    • License Configurator
    • Single License
    • Research Group
    • Departments & Consortia
  • About
    • About Us
    • Contact
    • Downloads
    • Careers
    • Impressum
    • Disclaimer
    • Privacy & Security
    • Terms & Conditions
  • Appgo to app icon
  • Logingo to app icon
Learn
Leitfaden
Videos
Schritt-für-Schritt-Anleitungen
Häufig gestellte Fragen
Versionshinweise
Klassenzimmer
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
Leitfaden
Videos
Schritt-für-Schritt-Anleitungen
Häufig gestellte Fragen
Versionshinweise
Klassenzimmer
  • 中國人
  • Deutsch
  • Français
  • Español
  • English
  • Leitfaden
    • ERSTE SCHRITTE

      • Objekte
      • Ereignisse
      • Variablen
      • Aufgaben-Assistent
      • Versuchssystem
      • Studien-Design
        • Aufgaben
        • Blöcke
        • Sitzungen
        • Gruppen
    • HERVORGEHOBENE THEMEN

      • Randomisierung & Balance
      • Augenverfolgung
      • Fragebögen
      • Desktop-App
      • Beispielstudien
      • Teilnehmer-Rekrutierung
      • API-Zugriff
        • REST API
        • Webhook-API
        • WebSocket API
      • Weitere Themen

        • Präzise Stimuluszeiten
        • Multinutzerstudien
        • Kopfverfolgung in Labvanced | Anleitung
    • HAUPT-APP-TABS

      • Übersicht: Haupt-Tabs
      • Dashboard
      • Meine Studien
      • Geteilte Studien
      • Meine Dateien
      • Experiment-Bibliothek
      • Mein Konto
      • Meine Lizenz
    • STUDY TABS

      • Übersicht: Studien-spezifische Tabs
      • Studien-Design
        • Aufgaben
        • Blöcke
        • Sitzungen
        • Gruppen
      • Aufgaben-Editor
        • Hauptfunktionen und Einstellungen
        • Das Versuchssystem
        • Canvas- und Seitenrahmen
        • Objekte
        • Objekt Eigenschaften Tabellen
        • Variablen
        • Systemvariablen-Tabellen
        • Das Ereignissystem
        • Versuchszufälligkeit
        • Texteditor-Funktionen
        • Eyetracking in einer Aufgabe
        • Kopfverfolgung in einer Aufgabe
        • Multi-User-Studien
      • Studieneinstellungen
        • Start und Haupt Einstellungen
        • Browsers & Devices Einstellungen
        • Einstellungen für experimentelle Funktionen
      • Beschreibung
        • Weitere Informationen zu den Beschreibungsinformationen
        • Bilder, Links und Referenzen in Beschreibungen
      • Variablen
      • Medien
      • Übersetzen
      • Ausführen
      • Veröffentlichen und Aufzeichnen
        • Anforderungen für die Veröffentlichung einer Studie in Labvanced
        • Rekrutierung von Teilnehmern und Crowdsourcing
        • Lizenzauswahl und Bestätigung
        • Nach der Veröffentlichung Ihrer Labvanced-Studie
      • Teilen
      • Teilnehmer
      • Datensicht und Export
        • Datensicht und Variablen- & Aufgaben Auswahl (alte Version)
        • Zugriff auf Aufnahmen (ALTE Version)
  • Videos
    • Videoübersicht
    • Erste Schritte mit Labvanced
    • Aufgaben erstellen
    • Element-Videos
    • Ereignisse & Variablen
    • Erweiterte Themen
  • Anleitungen
    • Einführung
    • Stroop-Aufgabe
    • Lexikalische Entscheidungsaufgabe
    • Posner-Gaze-Cueing-Aufgabe
    • Change Blindness Flicker Paradigma
    • Augenverfolgung Beispielstudie
    • Augenverfolgungsstudie mit Kleinkindern
    • Aufmerksamkeitserfassung mit Mausverfolgung
    • Schnelle serielle visuelle Präsentation
    • ChatGPT-Studie
    • Augenverfolgungsdemo: SVGs als AOIs
    • Multinutzer-Demo: Cursors der Teilnehmer anzeigen
    • Gamepad / Joystick-Controller - Grundlegende Einrichtung
    • Desktop-App-Studie mit EEG-Integration
  • FAQ
    • Funktionen
    • Sicherheit & Datenschutz
    • Lizenzierung
    • Präzision von Labvanced
    • Programmgesteuertes Nutzen & API
    • Labvanced offline nutzen
    • Fehlerbehebung
    • Fragen zur Studienerstellung
  • Versionshinweise
  • Klassenzimmer

Ereignissystem

Illustration des Ereignissystems in Labvanced.

Beschreibung

Das Ereignissystem ist für jede Studie unerlässlich. Es legt fest, welche Werte aufgezeichnet werden, lässt das Experiment fortschreiten und erstellt Aufgaben. Benutzer können ein Ereignissystem erstellen, um die gesamte Funktionalität, Logik und Interaktionen in einer Aufgabe auszuführen. Ein Ereignis fungiert oft als Vermittler zwischen Objekten und Variablen.

Das Ereignissystem besteht aus Auslösern und Aktionen. Hier legen Sie Regeln fest, wie z.B. 'wenn dies passiert' (Auslöser), dann 'machen Sie dies' (Aktion). Zum Beispiel: Wenn ein Teilnehmer ein bestimmtes Bild anklickt (Auslöser), dann wird ein anderes, zufälliges Bild angezeigt (Aktion).

Überblick darüber, wie Auslöser und Aktionen in Labvanced verwendet werden.

Für eine Einführung darüber, wie Ereignisse in Labvanced funktionieren, sehen Sie sich bitte dieses kurze Video an:

Erstellung von Ereignissen - Übersicht

Ereignisse werden im Aufgaben-Editor unter dem Tab "Ereignisse" in der oberen rechten Ecke verwaltet. Neue Ereignisse können durch einen Klick auf + Frame Event für Ereignisse erstellt werden, die auf diesem Rahmen auftreten sollen, oder durch einen Klick auf + Trial Event, das das Ereignis auf alle Rahmen anwendet. Alle vorhandenen Ereignisse werden in einer Listenansicht im rechten Seitenfeld angezeigt. Ereignisse werden auf Rahmenebene definiert und können für jeden Rahmen separat/spezifisch oder dupliziert/dasselbe für jeden Rahmen über einen Versuch hinweg definiert werden.

Hinzufügen eines Ereignisses in Labvanced

So oder so ist ein Ereignis immer für alle Trials innerhalb einer Versuchsgruppe für den angegebenen Rahmen definiert. Die benutzerdefinierte Logik erlaubt es Benutzern jedoch, Ereignisse nur in bestimmten Trials, Bedingungen oder unter anderen Umständen auszuführen.

Das folgende Video gibt einen Überblick über die in Labvanced verfügbaren Auslöser und Aktionen:

Die Ausführungsreihenfolge der Ereignisse kann angepasst werden. Standardmäßig stehen Ereignisse mit demselben Auslöser weiter oben auf der Liste und werden zuerst ausgeführt. Ereignisse können auch kopiert und gelöscht werden. Beim Auswählen eines vorhandenen Ereignisses werden die Einzelheiten im unteren rechten Feld (Ereigniseigenschaften) angezeigt. Zur besseren Übersicht können vorhandene Ereignisse auch wieder geöffnet werden (Symbol neben dem Namensfeld).

Auslöser

Der Auslöser definiert, wann das Ereignis ausgeführt wird. Dies könnte ein Mausklick auf ein bestimmtes Objekt, eine bestimmte Tastatureingabe, eine Änderung einer Variablen, der Start einer Videodatei oder viele andere Dinge sein. Alle Auslöser und deren Einstellungen/Parameter werden in der folgenden Liste erklärt:

Auslöser Kategorie Auslöser Optionen Beschreibung
Benutzereingabe-Auslöser
  • Mausauslöser
  • Tastenauslöser
  • Tasten-Klicks
  • Enter bei Eingabe
  • Scroll-Auslöser
  • Gamepad/Joystick-Auslöser
Benutzereingabe-Auslöser beziehen sich auf jeden Auslöser, der manuell vom Benutzer/Teilnehmer aktiviert werden kann, indem er beispielsweise seine Maus bewegt, auf ein Tastenelement klickt, scrollt usw.
Physiologische Signal-Auslöser
  • Eyetracking-Gaze
  • Eyetracking-Fixation
  • Headtracking
Physiologische Signal-Auslöser treten auf, wenn es einen angegebenen physiologischen Input gibt, wie das Ansehen eines bestimmten Elements oder Änderungen der Kopfbewegungen.
Versuchs- und Rahmenauslöser
  • Aufgabenbeginn
  • Rahmenbeginn
  • Rahmenstart
  • Rahmenende
Diese Auslöser treten in Bezug auf die Experimentversuche und Rahmen auf, z.B. wenn ein Rahmen beginnt oder endet.
Wertänderungs-AuslöserVariable (Wert geändert)Ein Auslöser für das Ereignis tritt auf, wenn es eine Änderung des Wertes einer bestimmten Variablen gibt.
MedienobjektauslöserMedienobjektauslöserDieser Auslöser tritt in Bezug auf Medienobjekte auf, z.B. wenn es eine Pause in einer Video-/Audio-Datei gibt, eine Aufnahme abgeschlossen ist usw.
API-Auslöser
  • Websocket-Auslöser
  • Open AI-Auslöser
Dies sind Auslöser, die auftreten, wenn Daten von einer API eingehen.
Globale Auslöser
  • Experiment pausieren / fortsetzen
  • Teilnehmer hat Multi-User-Studie verlassen
Globale Auslöser beziehen sich auf alle wesentlichen Änderungen in einem Experiment, wie z.B. eine Pause oder wenn ein Teilnehmer in einer Multi-User-Studie geht.

Benutzereingabe-Auslöser

Benutzereingabe-Auslöser beziehen sich auf jeden Auslöser, der manuell vom Benutzer/Teilnehmer aktiviert werden kann.

Das Benutzereingabe-Auslöser-Menü in Labvanced

Die folgende Tabelle bietet einen einführenden Überblick über alle in Labvanced verfügbaren Benutzereingabe-Auslöser. Jeder von ihnen wird in den kommenden Abschnitten näher beschrieben.

Benutzereingabe-Auslöser-OptionÜbersicht
Mausauslöser Jede Mausbewegung kann als Auslöser verwendet werden, um ein Ereignis zu initiieren, wie z.B.: Scrollen, Klicken, Überfahren, usw. Sie können auch spezifische Elemente oder Ziele mit einem Auslöser verknüpfen. Wenn beispielsweise auf ein bestimmtes Bild geklickt wird, wird dies nur als Auslöser verwendet.
TastenauslöserJeder Tastendruck kann als Auslöser verwendet werden, um ein Ereignis zu initiieren. Sie können spezifische Buchstaben oder Zahlen auf der Tastatur als Auslöser festlegen.
Tasten-KlicksTastenobjekte, die in Labvanced erstellt wurden, können als Auslöser verwendet werden, um Ereignisse zu initiieren.
Enter bei EingabeDieser Auslöser wird häufig verwendet, wenn ein Teilnehmer während eines Experiments 'Enter' drückt, um seine schriftliche Antwort oder Eingabe in Textfeldbereichen zu übermitteln.
Scroll-AuslöserDieser Auslöser tritt auf, wenn der Teilnehmer scrollt. Sie können die X- oder Y-Scrollrichtungen angeben sowie über welche Elemente das Scrollen erfolgt, um als Ereignisauslöser verwendet zu werden.
Gamepad/Joystick-AuslöserDieser Auslöser ermöglicht es Ihnen, Gamepad- und Joystick-Controller in Ihrem experimentellen Design als Eingabegerät zur Datenerfassung zu verwenden.

Mausauslöser

Die Option 'Mausauslöser' ist ein sehr beliebter Ereignisauslöser, da sie ein Ereignis basierend auf jeder Mausinteraktion initiiert, wie: die Maus nach oben / unten bewegen, klicken, über ein bestimmtes Objekt fahren, ein bestimmtes Objekt verlassen oder jede Bewegung überhaupt!

Die 'Mausauslöser-Menü'-Option im Eingabe-Auszähler in Labvanced.

Im folgenden Beispiel wird ein 'Mausauslöser' angezeigt, der ausgelöst wird, wenn ein 'Klick' mit dem 'Linken' Mausklick auf das 'Ziel'-Objekt namens 'Bild_1' ausgeführt wird:

Beispiel der Verwendung der Mausauslöseroption in Labvanced.

Hier ist ein vollständiger Überblick über die Optionen, die Sie beim Arbeiten mit Mausauslösern haben:

MenüpunktMenübereichOptionen und Spezifikationen des Mausauslösers
Aktion

Dropdown-Liste:
Verfügbare Mausaktionen zur Festlegung des AuslöserverhaltensDie folgenden Mausauslöseroptionen sind in der Dropdown-Liste verfügbar:
  • Klick: Ausgelöst durch Mausklick
  • Drücken: Ausgelöst durch Mausdruck
  • Loslassen: Ausgelöst durch Maustaste loslassen
  • Überfahren: Ausgelöst durch das Überfahren eines Objekts
  • Verlassen: Ausgelöst durch das Verlassen eines Objekts
  • Bewegen: Ausgelöst durch jede Mausbewegung
Taste

Dropdown-Liste:
Erläuterung der Maus-Tasteinstellung
  • Links: Ausgelöst durch die linke Maustaste
  • Rechts: Ausgelöst durch die rechte Maustaste
Ziele

Optionen:
Nahaufnahme des Mauszielebereichs

Im obigen Beispiel ist 'Bild_1' das Ziel des Button-Klicks, der das Ereignis auslöst.

Mehrere Ziele können hinzugefügt werden, indem Sie die Option ‘+Ziel hinzufügen’ am unteren Ende auswählen.
Wenn Sie ein Ziel angeben, sind die folgenden Optionen verfügbar:
  • Auslösen im Rahmenhintergrund: Der Mausauslöser kann aktiviert werden, ohne auf ein Objekt oder Element zu klicken.
  • Jedes Element: Der Mausauslöser kann ausgelöst werden, wenn auf ein beliebiges Element auf dem Rahmen geklickt wird.
  • Ziele hinzufügen: Wählen Sie die spezifischen Elemente aus, die angeklickt werden müssen, um den Auslöser zu aktivieren.
  • Hinweis: Nach der Auswahl des Mausauslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Mauswerte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Tastenauslöser

Die Option 'Tastenauslöser' ist eine weitere beliebte Möglichkeit, ein Ereignis auszulösen. Im Wesentlichen kann jede Eingabe von der Tastatur als Auslöser verwendet werden. Dazu gehört: Drücken, Halten oder Loslassen einer Taste.

Die Tastenauslöser-Option in Labvanced

Im folgenden Beispiel wird der Auslöser so festgelegt, dass er beim Drücken der angegebenen Zielnummernwerte (0, 2 oder 6) auftritt:

Beispiel für die Verwendung des Tastenauslösers.

Hier ist ein vollständiger Überblick über Tasten und Optionen, die Sie beim Arbeiten mit Tastenauslösern haben:

MenüpunktMenübereichOptionen für den Tastenauslöser
Aktion

Dropdown-Liste:
Dropdownliste der Tastenaktionen Dies sind die verfügbaren Tastenactions:
  • PressKey: Ausgelöst durch Tastendruck (Taste ist gedrückt)
  • Drücken oder Halten: Ausgelöst, wenn die Taste entweder gedrückt oder gehalten wird
  • ReleaseKey: Ausgelöst durch Tastenfreigabe
Hinweis: Eine Taste muss losgelassen werden, bevor sie erneut als Auslöser 'feuern' kann.
Tasten

welche Taste das Ereignis auslöst
Nahaufnahme der Tastenoptionen.Welche Taste als Auslöser verwendet wird, wird durch Auswählen der Optionen hier angegeben, indem Sie +Hinzufügen: klicken.
  • Pfeile: die vier Pfeiltasten
  • Zahlen: Zahlen von 0-9
  • Buchstaben: Alle Buchstaben des englischen Alphabets
  • Spezielle: Sondertasten (Enter, Leertaste, Steuerung, Tab, Umschalt)
  • F-Tasten: F1 bis F10
  • beliebige Taste: jede dieser Tasten ist akzeptabel
Sie können mehrere Tastenauslöser hinzufügen, indem Sie erneut die Schaltfläche +Hinzufügen: klicken
Zusätzliche OptionenZusätzliche Optionen für Tastenauslöser Die Option Ziffernblocktasten aktivieren ermöglicht die Verwendung von Ziffernblocktasten als Auslöser innerhalb des Experiments.

Für die Option lässt Ereignisweiterleitung zu, wenn mehrere Ereignisse denselben Tastenauslöser haben, funktionieren sie alle ohne ihn. Nur das erste wird ausgelöst und die Ereignisausführung wird beendet, nachdem das erste Ereignis abgeschlossen ist.
  • Hinweis: Nach der Auswahl des Tastenauslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Tastaturwerte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Tasten-Klick-Auslöser

Wenn Sie ein Button- oder Navigationsobjekt im Editor platziert haben, können Sie diese als Teil eines Ereignisses nutzen, bei dem das Klicken auf die Schaltfläche als Auslöser für eine Aktion fungiert.

Das Tasten-Klick-Menü in Labvanced

Ein Klick auf diesen Auslöser zeigt das folgende Menü, in dem Sie angeben können, welche spezielle Schaltfläche als Auslöser fungieren wird:

Verfügbare Optionen für den Tasten-Klick-Auslöser

Hier ist ein genauerer Blick auf die vorgestellten Elemente:

MenüpunktMenübereichOptionen für den Tasten-Klick-Auslöser
Ziel:

+Ziel festlegen
Die Schaltfläche 'Set Target.' Auswahl eines Schaltflächenelements als Ziel
Taste:
Option
Die Schaltflächen-Auswahloptionen.Geben Sie an, welche spezielle Schaltfläche auf dem Rahmen
  • Hinweis: Nach der Auswahl des Tasten-Klick-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte für Tasten-Klicks in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Enter bei Eingabe Auslöser

Auslöser bei: Die Enter/Return-Taste wird auf der Tastatur gedrückt, während ein bestimmtes Element aktiv ist.

Parameter:

  • Ziele hinzufügen: Fügen Sie ein Eingabeelement zum Ereignis hinzu.

  • Hinweis: Nach der Auswahl des Enter bei Eingabe-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Enter bei Eingabe-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Scroll-Auslöser

Auslöser bei: Die Scrollleiste, das Scrollen auf dem Trackpad oder das Scrollrad der Maus wird bei einem bestimmten Element verwendet.

Parameter:

  • Wählen Sie, ob das Scrollen auf der Y-Achse oder der X-Achse erfolgt (vertikales Scrollen oder horizontales Scrollen).

Ziel: Legen Sie das Ziel-Element fest, auf das der Scrollauslöser angewendet wird.

Hinweis: Für langen Text müssen im 'Objekteigenschaften' Panel unter dem 'Stil' Abschnitt Overflow-X und/oder Overflow-Y die Option scroll ausgewählt werden.

  • Hinweis: Nach der Auswahl des Scroll-Ausz العلماء im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Scroll-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Gamepad/Joystick-Auslöser

Der Gamepad/Joystick-Auslöser ermöglicht es Ihnen, Gamepad- und Joystick-Controller in Ihrem experimentellen Design als Eingabegerät zur Datenerfassung zu verwenden. Hinweis: Denken Sie daran, diese Option im Tab 'Studien-Einstellungen' in der ‘Experiment-Funktionen’ Spalte zu aktivieren.

Gamepad-Auslöser-Menüoption

Nach der Auswahl dieses Auslösers wird das folgende Dialogfeld angezeigt.

Optionsmenü für den Gamepad-Auslöser

Nachdem Sie Ihr Gamepad verbunden haben, können Sie angeben, welche spezifischen Tasten als Auslöser verwendet werden sollen. Beim Drücken der speziellen Taste zeigt das System deren ID an.

Im folgenden Beispiel bezieht sich die 2 auf die ◎ Taste und die 3 auf die ▵ Taste. Hinweis: Es ist wichtig zu erwähnen, dass es Unterschiede zwischen Gamepads gibt, wie die Zuweisung von Tasten-IDs funktioniert.

Gamepad-Auslöser, Tasten für Befehle einstellen

Durch das Drücken einer Taste erscheinen die Live-Daten auch in der zweiten Hälfte dieses Auslöser-Datenfelds, wo Sie sehen können, wie sich die Werte in Echtzeit ändern, basierend darauf, was Sie drücken oder loslassen:

Gamepad-Auslöser-Live-Datenfeed

Schauen Sie sich diese Schritt-für-Schritt-Anleitung für weitere Details und ein Beispiel einer Studie an, die diesen Auslöser verwendet.

Die folgende Tabelle erklärt diese Optionen im Detail.

MenüpunktMenübereichOptionen für Gamepad-/Joystick-Auslöser
Auf Tasten lauschenEinstellung des Auslösers, um auf Tasten zu lauschenI.) Geben Sie an, dass der Auslöser tastenbezogen ist und ob er beim Drücken, Halten oder Loslassen einer Taste auftritt.

II.) Geben Sie an, ob der Auslöser für eine beliebige Taste oder eine spezifische Taste gilt. Wenn die spezifische Option gewählt wird, werden Sie aufgefordert, die Tasten auf Ihrem Gamepad zu drücken.
Auf Achsen lauschenEinstellung des Auslösers, um auf Achsenänderungen zu lauschenWenn Achsenbewegungen erforderlich sind, können Sie angeben, dass der Auslöser auftritt, wenn der Schwellenwert um einen bestimmten Wert geändert wird. Der Standardwert beträgt 0,01.
VerbindungsstatusGamepad-VerbindungsstatusGibt an, ob ein Gerät verbunden ist oder nicht.
Live-DatenstromLive-DatenfeedNachdem das Gerät verbunden und eine Taste oder eine Achse bewegt wurde, werden die Live-Daten angezeigt, wobei alle Eingaben, die Sie an Ihrem Gerät vornehmen, hier angezeigt werden. Dies ist nützlich zum Testen beim Einrichten Ihrer Studie und zur Bestimmung, welche Tasten oder Achsen Sie verwenden möchten.

Hinweis: Nach der Auswahl des Gamepad-/Joystick-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü zu verwenden und darauf zuzugreifen.

Physiologische Signal-Auslöser

Diese Auslöser gelten nur, wenn Eyetracking und/oder Headtracking für die Aufgabe aktiviert wurden.

Eyetracking-Gaze-Auslöser

Auslöser bei:

  • Insgesamt wird dieser Auslöser aktiviert, wenn Eyetracking aktiviert wurde.
  • Nur auslösen, wenn auf bestimmte Elemente geschaut wird.

Parameter:

  • Wenn Sie ausgewählt haben, dass nur bei bestimmten Elementen ein Auslöser ausgelöst wird, fügen Sie diese Elemente als Ziele hinzu.

  • Hinweis: Nach der Auswahl des Eyetracking-Gaze-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Gaze-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Eyetracking-Fixation-Auslöser

Dieser Auslöser befindet sich noch in der BETA-Phase.

  • Hinweis: Nach der Auswahl des Tastenauslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Fixationswerte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Headtracking-Auslöser

Auslöser bei:

  • Änderungen in der Kopfhaltung oder Kopfbewegung.

  • Hinweis: Nach der Auswahl des Headtracking-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Headtracking-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Versuchs- und Rahmenauslöser

Aufgabenbeginn-Auslöser

Auslöser bei:

  • Der erste Rahmen des ersten Versuchs einer Aufgabe. Wird nur einmal pro Aufgabe ausgeführt, obwohl er im Reiter Ereignisse für alle Instanzen dieses Rahmens angezeigt wird.

Dieser Auslöser harmoniert gut mit den Aktionen Shuffle und Read From. Mit diesen Kombinationen können Sie Array-Einträge oder Datenrahmen beim Start der Aufgabe mischen und Probanden bestimmten Stimuli zuweisen, ohne mehrere Ereignisse erstellen zu müssen, um Stimuli oder Daten auszulesen.

Parameter: Keine

  • Hinweis: Nach der Auswahl des Aufgabenbeginn-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte für den Aufgabenbeginn in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Rahmenbeginn-Auslöser

Auslöser bei:

  • Die Initialisierung des Rahmens, bevor er für den Teilnehmer sichtbar wird.

Dieser Auslöser harmoniert gut mit den Aktionen Shuffle, Read From und Draw Random Number. Mit diesen Kombinationen können diese Aktionen abgeschlossen werden, bevor der Rahmen erscheint, sodass ein klarer Weg für andere Aktionen vorhanden ist, die beginnen, wenn der Rahmen gestartet wird.

Hinweis: Verwenden Sie den Rahmenbeginn-Auslöser nicht mit Ereignissen, die eine Variable aufzeichnen oder die systemvariable wie Versuchsnummer oder Bedingungsnummer beinhalten. Denn der Rahmenbeginn-Auslöser tritt zwischen den Versuchen auf, sodass es keine vollendete Zählung des bereits angezeigten Versuchs oder der Bedingung gibt.

Parameter: Keine

  • Hinweis: Nach der Auswahl des Rahmenbeginn-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Rahmeninitialisierungswerte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Hinweis zu Aufgaben- und Rahmenbeginn-Auslösern: Da die Aufgaben- und Rahmenbeginn-Auslöser auftreten, bevor die Aufgabe oder der Rahmen beginnt, werden während dieser Zeit erstellte Variablen zurückgesetzt, wenn die Aufgabe/das Frame tatsächlich beginnt. Eine Warnung wird angezeigt, wenn dieses Ereignis verwendet wird:

frame init warning

Denken Sie daran, das Kontrollkästchen "Bei Versuchsstart zurücksetzen" im Fenster für die Variablen Eigenschaften zu deaktivieren, wenn Sie nicht möchten, dass die Variablenwerte zurückgesetzt werden.

Rahmenstart-Auslöser

Auslöser bei:

  • Beginn des Rahmens

Parameter: Keine

  • Hinweis: Nach der Auswahl des Rahmenstart-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte für den Rahmenstart in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Rahmenende-Auslöser

Auslöser bei:

  • Ende des Rahmens (nachdem der Rahmen nicht mehr sichtbar ist)

Parameter: Keine

  • Hinweis: Nach der Auswahl des Rahmenende-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte für das Rahmenende in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Wertänderungs-Auslöser

Wertänderungs-Auslöser

Auslöser bei:

  • Der Wert einer Variablen ändert sich von seinem Startwert.

Parameter:

  • Variablen: Wählen Sie eine oder mehrere Variablen aus, bei denen Sie auf Änderungen "lauschen" möchten. Jede Änderung des Wertes dieser Variablen wird die entsprechende Aktion sofort auslösen.

  • Hinweis: Nach der Auswahl des Wertänderungs-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte für Wertänderungen in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Medienobjektauslöser

Medienobjektauslöser

Früher bekannt als die separaten "Audio/Video steuern"-Auslöser und "Objekt steuern"-Auslöser.

Auslöser bei:

  • Beginn, Pause oder Stopp eines Videos oder einer Audiodatei
  • Dateiupload abgeschlossen, Datei ausgewählt, Aufnahme eines Aufnahmeobjekts beendet
  • Snapshot abgeschlossen oder Upload abgeschlossen eines Kamera-Snapshot-Objekts

Parameter:

  • Ziel: Wählen Sie ein Objekt, das auf dem Rahmen existiert

  • Ausführen bei: Wählen Sie die Unterart des Auslösers

    • Audio- oder Videoobjekt-Optionen:
      • Wiedergabe begonnen: Ausgelöst, wenn das Element zu spielen beginnt
      • Wiedergabe gestoppt: Ausgelöst, wenn das Element pausiert
      • Wiedergabe beendet: Ausgelöst, wenn das Element aufhört zu spielen
    • Video-, Audio- oder Bildschirmaufnahme-Objekt-Optionen:
      • Aufnahme abgeschlossen: Ausgelöst, wenn die Audioaufnahme gestoppt hat
      • Upload abgeschlossen: Ausgelöst, wenn der Datei-Upload abgeschlossen ist
    • Dateiupload-Objekt-Optionen:
      • Datei ausgewählt: Ausgelöst, wenn eine Datei ausgewählt wird
      • Upload abgeschlossen: Ausgelöst, wenn der Datei-Upload abgeschlossen ist
    • Kamera-Snapshot-Objekt-Optionen:
      • Snapshot abgeschlossen: Ausgelöst, wenn die Kamera erfolgreich ein Snapshot gemacht hat
      • Upload abgeschlossen: Ausgelöst, wenn der Snapshot fertig hochgeladen ist
  • Hinweis: Nach der Auswahl des Medienobjektauslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Medienobjektwerte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

API-Auslöser

Wenn Sie Daten von einem externen Server in Labvanced senden oder kommunizieren müssen, können ’API-Auslöser’ und ‘API-Aktionen’ verwendet werden. Die folgenden können als Auslöser verwendet werden:

  • Websocket-Auslöser
  • OpenAI-Auslöser

Das API-Auslöser-Menü in Labvanced.

Websocket-Auslöser

Der Websocket-Auslöser wird verwendet, wenn eine Nachricht vom Websocket/API empfangen wird, die als Auslöser für die Aktion bearbeitet wird.

Die Websocket-Auslöser-Menüoption.

Durch einen Klick auf diese Option erscheinen die folgenden Elemente.

Das Websocket-Auslöser-Dialgmenü.

  • Akzeptieren/Empfangen von: Erkennt automatisch die IP-Adresse des lokalen Hosts. Kann manuell unter dem Tab 'Studieneinstellungen' in der ‘Experiment-Funktionen’ Spalte geändert werden.
  • Auslöser/Nachricht: Geben Sie die Nachricht ein, die als Auslöser dienen wird. Geben Sie 'any' ein, um mehr als eine Nachricht als Auslöser zu akzeptieren.

Für ein Beispiel dafür, wie API-Auslöser/Aktionen verwendet werden, überprüfen Sie bitte diese Demo https://www.labvanced.com/page/library/51053 , indem Sie die Option ‚Inspektieren‘ im Dialogfeld auswählen.

Für weitere Informationen zum API-Zugriff besuchen Sie bitte diese Seite.

  • Hinweis: Nach der Auswahl des Websocket-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Websocket-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

OpenAI-Auslöser

Der ‘OpenAI-Auslöser’ kann verwendet werden, um eine Aktion basierend auf eingehenden Informationen von OpenAI zu initiieren.

Das OpenAI-Auslöser-Menü in Labvanced.

Durch die Auswahl dieser Option werden die folgenden Parameter angezeigt:

Die OpenAI-Auslöser-Menüoptionen.

HINWEIS: Verweisen Sie auch auf diese Schritt-für-Schritt-Anleitung , in der wir eine Studie schrittweise aufbauen, ChatGPT in eine Studie integrieren und diesen Auslöser verwenden.

Im folgenden Beispiel wird der Datenrahmen, der zugewiesen wurde, als ‘df’ bezeichnet, und das Ergebnis des ‘OpenAI-Auslösers’ wird an diesen Datenrahmen angehängt. Dieser Datenrahmen muss zwei Spalten haben. Die erste Spalte weist die ‘Rolle’ und die zweite Spalte die ‘Chat-Nachricht’ zu. Die Werte aus der Aktion werden automatisch an den Datenrahmen angehängt, der hier verknüpft ist.

Ein Beispiel für den OpenAI-Auslöser in Labvanced.

Wenn Sie auch die ‘An OpenAI senden’-Aktion verwenden, müssen Sie dort denselben Datenrahmen verwenden, den Sie hier angegeben haben.

  • Hinweis: Nach der Auswahl des OpenAI-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische OpenAI-Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Globale Auslöser

Globale Auslöser treten immer dann auf, wenn eine wesentliche Änderung innerhalb des Experiments erfolgt, d.h. etwas, das 'global' ist, wie das Anhalten des Experiments oder ein Teilnehmer, der eine Multi-User-Studie verlässt! Die folgenden Optionen gelten als Globale Auslöser:

  • Experiment pausieren / fortsetzen
  • Teilnehmer hat die Multi-User-Studie verlassen

Das globale Auslöser-Menü in Labvanced.

Experiment pausieren/fortsetzen

Der ‘Experiment pausieren / fortsetzen’-Auslöser ist eine Option, die es Ihnen ermöglicht, ein Ereignis basierend auf der Pause oder Fortsetzung des Experiments auszuführen.

Die Option, eine Pause im Experiment als Auslöser zu verwenden.

Durch die Auswahl dieses Auslösers erscheint die folgende Ansicht, in der Sie die Art des Auslösers weiter spezifizieren können, ob er ausgelöst werden soll, wenn das Experiment pausiert oder fortgesetzt wird:

Dialogfeld für diesen globalen AuslöserVerfügbare Optionen im globalen Auslöser-Menü

  • Experiment pausiert: Teilnehmer pausiert (verlässt den Vollbildmodus) die Studie.

  • Experiment fortgesetzt: Teilnehmer setzt die Studie fort. Dieser Auslöser funktioniert gut bei Eye-Tracking-Studien. Er kann verwendet werden, um den Teilnehmer zu einem vorherigen Versuch oder Rahmen zurückzusenden, wenn er seinen virtuellen Kinnstützen verlassen hat.

  • Hinweis: Nach der Auswahl des Experiment pausieren/fortsetzen-Auslösers im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Teilnehmer hat die Multi-User-Studie verlassen

Wenn ein Teilnehmer eine Multi-User-Studie verlässt, kann dies ebenfalls als Auslöser für ein Ereignis verwendet werden. Wenn ein Teilnehmer eine Multi-User-Studie verlässt, betrifft dies das Experiment auf globaler Ebene, da es anderen Teilnehmern die Fortsetzung der Studie verweigert.

Die Teilnehmer hat die Multi-User-Studie bezüglich eines Auslösers in Labvanced hinterlassen

Durch die Auswahl dieses Auslösers können Sie angeben, welche Art von Aktion passieren soll, wenn ein Teilnehmer eine Multi-User-Studie verlässt.

Das Dialogfeld des Auslösers, der anzeigt, dass der Teilnehmer die Multi-User-Studie verlassen hat.

  • Hinweis: Nach der Auswahl des Teilnehmers, der die Multi-User-Studie verlässt, im Ereignissystem haben Sie die Möglichkeit, auslöser-spezifische Werte in verschiedenen Aktionen mit dem Wert-Auswahlmenü. zu verwenden und darauf zuzugreifen.

Aktionen

Aktionen definieren, was passieren soll, wenn das Ereignis ausgeführt wird. Sie können verwendet werden, um Variablen und Objekteigenschaften zu ändern, Daten aufzuzeichnen, Daten zu lesen und zu schreiben, um Arrays zu springen oder zur nächsten Versuch oder Aufgabe zu wechseln. Oft gibt es mehrere Aktionen pro Ereignis. Mit "ControlActions" können logische Operationen (If-Else-Anweisungen), Schleifen, Rückruffunktionen und das Verschachteln von Aktionen innerhalb anderer (z.B. eine While-Schleife innerhalb einer If-Anweisung) verwendet werden. Daher wird das Ereignissystem als grafische Programmierumgebung betrachtet. In diesem Sinne agieren Auslöser als Funktionsaufrufe, während Aktionen die funktionale Logik beschreiben. Dieser Ansatz stellt sicher, dass nahezu jede experimentelle Logik ohne die Verwendung bestimmter programmatischer/syntaktischer Strukturen implementiert werden kann.

Die folgende Tabelle bietet einen einführenden Überblick über die in Labvanced verfügbaren Aktionen:

Aktionskategorie Aktionsoptionen Beschreibung
Objektaktionen
  • Objekteigenschaft festlegen
  • Medienobjekt steuern
  • Objekt kopieren
  • Für jedes Objekt
Objektaktionen beziehen sich auf jede Manipulation, die an einem Objekt durchgeführt wird, das innerhalb der Aufgabe existiert.
Variablenaktionen
  • Variable festlegen / aufzeichnen
  • In Zwischenablage kopieren
  • Zufallszahl generieren
  • URL-Parameter abrufen
  • Von / Zu Gerät lesen / schreiben
  • Von / Zu gemeinsamer Variable lesen / schreiben
  • Mathematik & Statistik
  • Variablen sofort aufzeichnen
  • Gleitender Durchschnittsfilter
  • Variable verteilen
Jede Aktion, die von oder auf eine Variablenwerte liest oder aufzeichnet.
Array-Aktionen
  • Aus Array auswählen (lesen)
  • Einträge im Array hinzufügen / entfernen
  • Eintrag im Array ändern (ersetzen)
  • Array-Einträge mischen
Array-Operationen umfassen das Auswählen, Hinzufügen, Entfernen, Ändern und Mischen von Arrays und ihren Einträgen.
Datenrahmen-Operationen
  • Von / Zu Datenrahmen lesen / schreiben
  • Datenrahmen-Einträge mischen
Diese Aktionen sind relevant, wenn Sie in Ihrem Experiment mit .csv-Dateien (Datenrahmen) arbeiten.
Sprungaktionen
  • Springe zu
  • Akzeptieren / Sitzung beenden
  • Ablehnen / Sitzung beenden
  • Umleiten zu URL
Ermöglicht es Ihnen, das Experiment durch Springen zu einem bestimmten Abschnitt zu navigieren, sowie Teilnehmerabschnitte zu akzeptieren und abzulehnen.
Steueraktionen
  • Anforderungsaktionen (Wenn…Dann)
  • Wiederholte Aktionen (While-Schleife)
  • Verzögerte Aktionen (Zeit Rückruf)
  • Aktionsgruppe
Steueraktionen werden verwendet, um bestimmte Sequenzen von Ereignissen auszuführen, wie z.B. Wenn/Dann-Logik, Schleifen (wie das Abspielen eines wiederholten Sounds oder das Blitzen eines Bilds), sowie das Einrichten einer Verzögerung, wann eine Aktion auftritt.
API-Aktionen
  • An Websocket senden
  • An OpenAI senden
Bezieht sich auf API-spezifische Aktionen zum Senden von Daten an eine API.
Code-Aktionen
  • JavaScript ausführen
  • Globales CSS festlegen
Code-Aktionen ermöglichen das Arbeiten mit JavaScript oder CSS.
Einfügen-AktionEinfügen-AktionErmöglicht das Einfügen einer zuvor kopierten Aktion.

Objektaktionen

Objektaktionen beziehen sich auf jede Manipulation, die an einem Objekt vorgenommen wird, das innerhalb der Aufgabe existiert. Es gibt mehrere Optionen für Objektaktionen:

  • Objekt-Eigenschaft festlegen
  • Medienobjekt steuern
  • Objekt kopieren
  • Für jedes Objekt

Die Option Objektaktionen in Labvanced.

Aktion „Objekteigenschaft festlegen“

Mit der Aktion „Objekteigenschaft festlegen“ können Sie das Erscheinungsbild eines Objekts beliebig ändern, indem Sie das betreffende Objekt, die zu ändernde Eigenschaft und den neuen Wert angeben.

Im folgenden Beispiel wird die Aktion zwei Eigenschaften des Zielbildes ändern, indem die „Sichtbarkeit“ auf „1“ und die „Höhe“ auf „400“ gesetzt wird, während die Zeit aufgezeichnet wird, die dieses Ereignis auf dem Bildschirm stattfindet, indem der Wert in der numerischen Variablen „Object_Prop_Change_Time“ gespeichert wird.

Beispiel einer Objektaktion in Labvanced.

Nachfolgend finden Sie eine vollständige Übersicht der Felder, mit denen Sie bei der Arbeit mit der Aktion „Objekteigenschaft festlegen“ konfrontiert sind:

MenüpunkteMenübereichOptionen Auslöser für das Festlegen von Objekteigenschaften
Ziel

Objektauswahl Dropdown-Liste:
Menü für Objekteigenschaften, in dem das Objekt angegeben wird. Die erste Dropdown-Liste zeigt die Objekte an, die Sie in diesem Frame zur Auswahl haben. Dies zeigt an, auf welches spezifische Objekt die Aktion angewendet wird.
Ziel

Eigenschaftsauswahl Dropdown-Liste:
Menü für Objekteigenschaften, in dem die Eigenschaft angegeben wird.Das zweite Dropdown-Menü gibt an, welche Eigenschaft des Objekts geändert werden soll. Eine vollständige Erklärung der verfügbaren Optionen und ihrer Parameter finden Sie in der Objekteigenschaften-Tabelle.
WertauswahlmenüDas Wertauswahlmenü, in dem der neue Wert angegeben wirdDefinieren Sie den neuen Wert, d.h. wie der Wert der neuen Objekteigenschaft als Ergebnis der Aktion mit dem Wertauswahlmenü aussehen sollte.
‘+ Eigenschaft hinzufügen’Die Schaltfläche zum Hinzufügen weiterer Eigenschaften.Mehrere Eigenschaften können unter der Aktion hinzugefügt und geändert werden, indem Sie auf dieses Symbol klicken.
Checkbox - Zeit aufzeichnen, wenn diese Änderung auf dem Bildschirm angezeigt wird (in Millisekunden ab Beginn des Frames).Das Kästchen für die Aufzeichnung des Zeitwerts von Änderungen der Objekteigenschaften.Wenn eine Eigenschaft geändert wird, dauert es eine kurze Zeit (ca. ~10 ms), bis die Änderungen sichtbar sind. Mit dieser Option können Sie genauer aufzeichnen, wann die geänderte Eigenschaft beim nächsten Bildschirmrefresh wirklich sichtbar ist.

Hinweis: Bei Auswahl dieser Option erscheint ein Dialogfeld, in dem Sie angeben müssen (oder eine neue Variable erstellen müssen), wo dieser erfasste Wert gespeichert werden soll. Die Variable sollte vom Typ „numerisch“ sein.

Aktion „Medienobjekt steuern“

Früher die separate Aktion „Audio/Video steuern“ und „Objekt steuern“.

Wirkung: Ändert die Wiedergabe von Video-/Audioelementen oder ändert den Status von Hochlade-/Aufzeichnungselementen.

Parameter:

  • Ziel: Wählen Sie ein Medienobjekt aus.
  • Effekt: Wählen Sie eine Unteraktion aus.
    • Audio- oder Videoobjektoptionen:
      • Wiedergabe starten: Beginnt mit der Wiedergabe der Video-/Audio-Datei.
      • Wiedergabe stoppen: Stoppt die Video-/Audio-Datei.
      • Wiedergabe pausieren: Pausiert die Video-/Audio-Datei.
      • Springen zu Zeit: Ermöglicht es Ihnen, eine Zeit in Millisekunden anzugeben, zu der in der Audio-/Videodatei gesprungen werden soll.
      • Stummschalten: Schaltet den Ton des Objekts aus.
      • Wiederherstellen: Stellt den Ton des Objekts wieder her.
    • Audio-, Video- oder Bildschirmaufnahmeobjektoptionen:
      • Aufnahme starten: Beginnt eine neue (Audio-)Aufnahme.
      • Aufnahme stoppen: Stoppt die (Audio-)Aufnahme.
      • Upload starten: Beginnt den Upload der Datei.
      • Aufnahme löschen: Löscht die (Audio-)Aufnahmedaten.
      • Wiedergabe starten: Beginnt mit der Wiedergabe der aufgezeichneten Datei.
      • Wiedergabe stoppen: Stoppt die Wiedergabe der aufgezeichneten Datei.
      • Aufnahme pausieren: Pausiert die Aufnahme des Objekts.
      • Aufnahme fortsetzen: Setzt die Aufnahme des Objekts fort.
    • Datei-Upload-Objektoptionen:
      • Upload starten: Startet den Upload-Vorgang für die ausgewählte Datei.
      • Datei löschen: Löscht die ausgewählte Datei.
      • Datei auswählen: Ermöglicht dem Teilnehmer, die gewünschte Datei auszuwählen.
    • Kamera-Snapshot-Objektoptionen:
      • Kamera starten: Schaltet die Kamera des Teilnehmers ein.
      • Kamera stoppen: Schaltet die Kamera des Teilnehmers aus.
      • Upload starten: Beginnt mit dem Hochladen des Schnappschusses in das Experiment.
      • Schnappschuss machen: Macht ein Bild mit der Kamera des Teilnehmers.

Aktion „Objekt kopieren“

Wirkung: Kopiert ein Objekt, sodass die Notwendigkeit mehrerer separater Objekte und doppelter Ereignisse entfällt.

Parameter:

  • Quelle: Wählen Sie das Objekt im Frame aus, das kopiert werden soll.
  • Anzahl der Kopien: Geben Sie die Anzahl der Kopien an, die vom Quellobjekt erstellt werden sollen.
  • Neuen Elementname festlegen: Wählen Sie aus mehreren Parametern, um die Namen der Kopien zu bestimmen.
  • Namen mit inkrementierendem Postfix zuweisen: Fügt dem neuen Elementnamen ein numerisches Tag hinzu, um die Kopien zu unterscheiden.
  • Aktionssequenz: Ermöglicht Ihnen die Auswahl (aus der üblichen Liste von Aktionen), was mit den Kopien geschehen soll. Wählen Sie „CurrentObject“ als Ziel aus, um die Aktion auf alle Kopien anzuwenden.

Aktion „Für jedes Objekt“

Wirkung: Wendet eine Aktion auf mehrere Objekte desselben Typs an.

Parameter:

  • Filter: Wählen Sie den zu zielenden Elementtyp aus.
  • Zusätzlichen Namensfilter zulassen: Geben Sie den Namen der zu zielenden Objekte ein. Dies funktioniert gut für mehrere Objekte auf einem Frame, bei denen einige identische Namen haben.
  • Aktionssequenz: Ermöglicht Ihnen die Auswahl (aus der üblichen Liste von Aktionen), was mit den ausgewählten Elementen geschehen soll. Wählen Sie „CurrentObject“ als Ziel aus, um die Aktion auf alle Elemente anzuwenden, die die oben angegebenen Kriterien erfüllen.

Variablenaktionen

Variablenaktionen werden verwendet, um Werte von Variablen festzulegen oder zu erstellen, Werte aufzuzeichnen und definiert, einschließlich Werte über Sitzungen hinweg.

Standort der Variablenaktionen im Ereignissystem

Die folgende Tabelle bietet eine einführende Übersicht über alle in Labvanced verfügbaren Optionen für Variablenaktionen. Jede von ihnen wird in den kommenden Abschnitten ausführlicher beschrieben.

Option zur VariablenaktionBeschreibung
Variable festlegen / aufzeichnenSchreiben oder Festlegen eines Variablenwerts
In Zwischenablage kopierenKopiert einen Variablenwert in die interne Zwischenablage des Computers.
Zufallszahl ziehenZieht eine oder mehrere Zufallszahlen und speichert sie in einer Variablen
URL-Parameter lesenSpeichert einen Wert aus der einzigartigen URL des Teilnehmers
Von / auf Gerät lesen / schreiben Liest oder schreibt eine Variable aus/von dem lokalen Gerätespeicher. Diese Aktion speichert Daten auf dem Gerät des Teilnehmers, anstatt die Daten an die Labvanced-Server zu senden.
Von / an gemeinsame Variable lesen / schreibenLiest von oder schreibt in eine Variable, die zwischen den Sitzungen einer Studie geteilt wird. Die Variable kann mit allen Teilnehmern oder privat für jede Einzelperson geteilt werden.
Mathematik & StatistikFührt eine mathematische Operation auf einer Eingangsvariablen (Array) durch und speichert das Ergebnis in einer Ausgangsvariablen.
Variablen sofort aufzeichnenErstellt eine Momentaufnahme aller Variablenwerte und sendet diese an den Labvanced-Server.
Gleitender DurchschnittsfilterBerechnet einen gleitenden Durchschnitt (einen ständig aktualisierten Durchschnitt der Daten) von einigen Eingaben und speichert das Ergebnis in einer neuen Variablen.
Variable verteilenSendet einen Wert an andere Teilnehmer. Der Wert wird in einer Variablen gespeichert.

Aktion „Variable festlegen / aufzeichnen“

Die Aktion „Variable festlegen / aufzeichnen“ wird in jedem Experiment in Labvanced verwendet, da sie festlegt, wie Werte und Verhaltensmaße gespeichert und aufgezeichnet werden.

Standort der Aktion Variable festlegen / aufzeichnen im Ereignissystem

Wenn Sie auf diese Aktion klicken, erscheint folgendes Dialogfeld, in dem Sie angeben können, welche Variable aufgezeichnet werden soll und der interessierende Wert:

Optionen für das Festlegen/Aufzeichnen von Variablen im Ereignissystem

MenüelementMenübereichBeschreibung
AuswählenAuswahl, an welche Teilnehmer die verteilte Variable gesendet wirdWenn Sie auf Auswählen klicken, geben Sie an, welche Variable den Wert speichern soll. Hier können Sie auch eine neue Variable erstellen.
StiftsymbolAuswahl, an welche Teilnehmer die verteilte Variable gesendet wirdDas Stiftsymbol symbolisiert das Wertauswahlmenü, das verwendet wird, um die genauen Werte zu definieren und anzugeben, die der ausgewählten Variablen zugewiesen werden sollen (wie im grünen Button links vom Gleichheitszeichen (=) angegeben).

Im folgenden Beispiel haben wir eine neue Variable namens counter erstellt und eine arithmetische Option aus dem Wertauswahlmenü verwendet, um den Variablenwert um 1 (basierend auf dem im vorherigen Schritt definierten Trigger) zu erhöhen.

Erstellen einer Zählervariablen in Labvanced

Das Bild unten zeichnet die X,Y-Koordinaten der Maus auf, um das Maus-Tracking während einer Studie zu erfassen. Das Bild zeigt, wie drei Aktionen verwendet werden, um die Aufzeichnung von Variablenwerten zu ermöglichen. Die Variable (links) wird manuell erstellt, während der Wert auf der rechten Seite des Gleichheitszeichens (=) ein mausspezifischer Trigger-Wert ist, den das System bereitstellt und auf den Sie sich bei der Aufzeichnung von Werten beziehen können.

Erstellen von Variablen für Maus-Tracking und Messung von Koordinaten in Labvanced

Hinweis: Die Aktion „Variable festlegen / aufzeichnen“ wird auch häufig im Zusammenhang mit Steueraktionen verwendet, bei denen Sie anhand von Variablenwerten Bedingungen mit „wenn / dann“ und „während Schleifen“ angeben können.

Aktion „In Zwischenablage kopieren“

Wirkung: Kopiert einen Variablenwert in die interne Zwischenablage des Computers.

Aktion „Zufallszahl ziehen“

Wirkung: Zieht eine oder mehrere Zufallszahlen und speichert sie in einer Variablen.

Parameter:

  • Typ: Wählen Sie zwischen kontinuierlichen und diskreten Werten.
  • Verteilung: Wählen Sie zwischen normaler und gleichmäßiger Verteilung.
  • Mehrfache Ziehungen (boolean true/false): Wählen Sie, ob einmal oder mehrere Male gezogen werden soll.
  • Nr der Ziehungen: Wählen Sie die Anzahl der Ziehungen.
  • Min: Definieren Sie den minimalen Wert für die gleichmäßige Verteilung.
  • Max: Definieren Sie den maximalen Wert für die gleichmäßige Verteilung.
  • Mittelwert: Definieren Sie den Mittelwert für die Normalverteilung.
  • Standardabweichung: Definieren Sie die Standardabweichung für die Normalverteilung.
  • In Variable speichern: Wählen Sie eine Variable aus, in der die Werte gespeichert werden.

Aktion „URL-Parameter lesen“

Wirkung: Speichert einen Wert aus der einzigartigen URL des Teilnehmers.

Parameter:

  • Parametername: Geben Sie den Namen des gewünschten Parameters ein.
  • In Variable speichern: Wählen Sie die Variable aus, in der der Parameterwert gespeichert werden soll.

Diese Aktion könnte mit anderen Aktionen kombiniert werden, um einzigartige URLs für Teilnehmer zu erstellen oder Informationen zu extrahieren, die für die Datenanalyse erforderlich sind.

Aktion „Von / an Gerät lesen / schreiben“

Wirkung: Liest oder schreibt eine Variable aus/von dem lokalen Gerätespeicher. Diese Aktion speichert Daten auf dem Gerät des Teilnehmers, anstatt die Daten an die Labvanced-Server zu senden.

Parameter:

  • Wählen Sie, ob vom lokalen Gerät gelesen oder dorthin geschrieben werden soll.
  • Wählen Sie die Variable aus, die gelesen oder geschrieben werden soll.

Anwendungsbeispiel: Längsschnitt-/Multisitzungsstudien

  • Mit dieser Aktion können gerätespezifische Daten von Sitzung zu Sitzung übertragen werden, vorausgesetzt, der gleiche Teilnehmer verwendet dasselbe Gerät für jede Sitzung.
  • Zum Beispiel können Sie diese Aktion verwenden, um aufzuzeichnen, welche Bilder jedem Teilnehmer in Sitzung 1 präsentiert wurden, und sicherzustellen, dass in Sitzung 2 andere Bilder präsentiert werden.
    • Erstellen Sie ein Array von Bildern und wählen Sie einige zufällig aus, um sie in jeder Sitzung zu präsentieren.
    • Schreiben Sie ins Gerät: die Indexnummer der in Sitzung 1 präsentierten Bilder.
    • Lesen Sie vom Gerät: Lesen Sie in Sitzung 2 die Indizes der Bilder aus Sitzung 1 aus und fügen Sie eine JavaScript-Aktion hinzu, die verhindert, dass diese Indizes für die zweite Sitzung ausgewählt werden.

Aktion „Von / an gemeinsamer Variable lesen / schreiben“

Wirkung: Liest von oder schreibt in eine Variable, die zwischen den Sitzungen einer Studie geteilt wird. Die Variable kann mit allen Teilnehmern oder privat für jeden einzelnen geteilt werden.

Parameter:

  • Wählen Sie die zu synchronisierende Variable aus. Muss entweder skalare oder Array sein.
  • Erweiterte Optionen
    • Speicher-Schlüssel: Wählen Sie den Namen einer Variable aus, die als Schlüssel zum Zugriff auf die synchronisierte Variable fungiert.
    • Lese- oder Schreibmethode:
      • Lesen, ändern und dann die gemeinsame Variable schreiben: Liest die Variable, verändert sie und sendet sie dann an die Studie.
      • Nur gemeinsame Werte vom Server lesen: Ruft die innerhalb der Studie geteilte Variable auf, ohne Änderungen vorzunehmen.
      • Nur Variable an den Server schreiben: Nimmt Änderungen an der gemeinsamen Variablen vor, wird jedoch den Teilnehmern nicht angezeigt.
      • Werte zwischen verschiedenen Teilnehmern teilen (nicht nur zwischen Sitzungen): Ermöglicht es den Teilnehmern, die synchronisierten Variablenwerte über die Sitzungen hinweg zu sehen. Diese Option ist standardmäßig aktiviert, kann jedoch durch Klicken auf das Kontrollkästchen deaktiviert werden.
  • Aktionssequenz:
    • Wählen Sie aus der Liste aller verfügbaren Aktionen, was mit der gemeinsamen/synchronisierten Variablen geschehen soll.

Anwendungsbeispiel: Längsschnitt-/Multisitzungsstudien

  • Mit dieser Aktion können teilnehmerr-spezifische Daten von Sitzung zu Sitzung übertragen werden und zwischen den Teilnehmern in verschiedenen Sitzungen geteilt werden.
  • Zum Beispiel können Sie diese Aktion verwenden, um einen Punktestand in einem Test aufzuzeichnen und dann dem Teilnehmer zu ermöglichen, seinen Punktestand mit dem Mittelwert der anderen Teilnehmer zu vergleichen, die den Test abgeschlossen haben.
  • Ein weiteres Beispiel (ähnlich der Aktion „Von / an Gerät lesen / schreiben“) besteht darin, dass Teilnehmer 5 Bilder aus einem Array auswählen, eine Aufgabe ausführen und diese 5 Bilder zu einem späteren Zeitpunkt erneut präsentieren. Der Unterschied besteht darin, dass diese Aktion verwendet werden kann, um anderen Teilnehmern die ausgewählten Bilder zu zeigen oder diese Bilder von den verfügbaren Optionen eines anderen Teilnehmers auszuschließen.

Aktion „Mathematik & Statistik“

Wirkung: Führt eine mathematische Operation auf einer Eingangsvariablen (Array) durch und speichert das Ergebnis in einer Ausgangsvariablen.

Parameter:

  • Typ: Wählen Sie zwischen Array-Operationen, linearer Algebra und statistischen Tests.
  • Operation: Wählen Sie eine mathematische Operation (z.B. Summe, min, Standardabweichung usw.)
  • Eingangsarray: Wählen Sie eine Eingangsvariable (Array) aus, auf der die Operation ausgeführt wird.
  • Parameter: Einige Operationen haben zusätzliche Parameter.
  • Ausgabe: Wählen Sie eine Ausgangsvariable, in der das Ergebnis gespeichert wird.

Aktion „Variablen sofort aufzeichnen“

Wirkung: Erstellt eine Momentaufnahme aller Variablenwerte und sendet dies an den Labvanced-Server.

Parameter: Keine

Aktion „Gleitender Durchschnittsfilter“

Wirkung: Berechnet einen gleitenden Durchschnitt (einen ständig aktualisierten Durchschnitt der Daten) von einigen Eingaben und speichert das Ergebnis in einer neuen Variablen.

Parameter:

  • Filterform: Wählen Sie den Filtertyp aus.
    • Einfache gleitende Durchschnitt: Berechnet einen einfachen gleitenden Durchschnitt, bei dem alle Proben das gleiche Gewicht haben.
    • Linear gewogener gleitender Durchschnitt: Gewichtungen der Proben, sodass die Gewichte der Proben linear abnehmen.
    • Exponential gewichteter gleitender Durchschnitt: Gewichtungen der Proben, sodass die Gewichte der Proben exponentiell abnehmen.
  • Anzahl der Proben: Bestimmt, wie viele Proben pro Schritt verwendet werden.
  • Eingang: Wählen Sie eine Eingangsvariable (Array) aus, auf der der gleitende Durchschnitt berechnet wird.
  • Ausgabe: Wählen Sie eine Ausgangsvariable, in der das Ergebnis gespeichert wird.

Aktion „Variable verteilen“

Die Aktion „Variable verteilen“ ist entscheidend für Multinutzerstudien in Labvanced. Mit dieser Aktion kann ein Variablenwert zwischen Teilnehmern geteilt werden, was im Wesentlichen ermöglicht, dass Informationen (einschließlich Stimuluspositionen und Änderungen) auf den Bildschirmen der Teilnehmer angezeigt werden.

Die Aktion Variable verteilen im Aktionsmenü von Labvanced.

Wenn Sie diese Aktion auswählen, erscheint das folgende Dialogfeld, in dem Sie angeben können, welcher Variablenwert zwischen den Teilnehmern verteilt wird.

Das Bild unten zeigt, wie das funktionale Dialogfeld der Aktion „Variable verteilen“ aussieht, wenn alle Menüelemente ausgefüllt sind. In diesem Beispiel wird die verteilte Variable als Aktionen genutzt, um einen Chat zwischen zwei Teilnehmern zu erstellen, indem der Wert einer Variablen aus einem Eingabefeldobjekt verteilt wird.

Die verteilte Variable wird als Beispiel verwendet, wenn alle Menüoptionen festgelegt sind.

Sehen Sie sich diese Demo an, die die Funktion der Verteilung von Variablen und des Chatfelds hier beinhaltet: Aufgabenbeschreibung mit Chat-Add-On.

Eine vollständige Erklärung der Menüelemente im Dialogfeld finden Sie unten:

MenüelementMenübereichOptionen und Beschreibung der Aktion „Variable verteilen“
Wert verteilen anAuswahl, an welche Teilnehmer die verteilte Variable gesendet wirdWählen Sie aus, an welche anderen Teilnehmer der Wert gesendet werden soll.
  • Alle Teilnehmer: Senden Sie diesen Wert an alle Teilnehmer.
  • Ausgewählte Teilnehmer: Senden Sie den Wert an ausgewählte Teilnehmer.
Zielvariable und Wert auswählenSpezifizierung der Zielvariable und Werte
  • Zielvariable: Wählen Sie eine Zielvariable aus, in der der Wert gespeichert wird.
  • Wert: Bestimmen Sie den Wert, der an andere Teilnehmer gesendet werden soll.
BlockDie Blockoption der verteilten VariableWenn aktiviert, kann die Zielvariable nicht geändert werden, bis die aktuelle Wertverteilung abgeschlossen ist.
BegrenzungsstrategieDie Optionen der Begrenzungsstrategie der verteilten VariableDie Begrenzungsstrategie ist eine Möglichkeit, Ihr Experiment vor einer Überlastung des Servers zu schützen und wirkt als Vorsichtsmaßnahme zur Kontrolle der Rate, mit der Anfragen (d.h. Aktualisierungen über die verteilte Variable) an den Server gesendet werden. Die folgenden Strategiemöglichkeiten sind verfügbar:
  • Entprellen: Wenn diese Aktion mehr als einmal pro 100 ms Zeitfenster ausgeführt wird, werden neue Servernachrichten „entprellt“ (nur die zuletzt gesendete Nachricht wird nach einem Intervall von 100 ms ohne eine Ausführung dieser Aktion gesendet).
  • Drosseln: Wenn diese Aktion mehr als einmal pro 100 ms Zeitfenster ausgeführt wird, werden neue Nachrichten gedrosselt (d.h. nach 100 ms, nachdem die letzte Nachricht gesendet wurde, wird nur die letzte Nachricht verteilt).
  • Verwerfen: Wenn diese Aktion mehr als einmal pro 100 ms Zeitfenster ausgeführt wird, werden neue Nachrichten innerhalb dieses 100-ms-Fensters verworfen.
  • Warteschlange: Wenn diese Aktion mehr als einmal pro 100 ms Zeitfenster ausgeführt wird, werden neue Variablenwerte in die Warteschlange gestellt (bis zu einer maximalen Warteschlangengröße von 10 Nachrichten).

Array-Aktionen

Aktion „Aus Array auswählen (lesen)“

Wirkung: Liest eine Variable aus einem Array aus und speichert diesen Wert in einer skalaren Variablen.

Parameter:

  • Array-Variable: Eingangsarray zum Auslesen des Wertes.
  • Indextyp: Bestimmt, welche Art von Index verwendet wird.
    • Fest: Verwenden Sie einen festen Index für die Leseoperation. In diesem Fall geben Sie die Position an, von der die Informationen gelesen werden sollen (1-basiert).
    • Variabel: Verwenden Sie eine numerische Variable als Index für die Leseoperation. In diesem Fall wählen Sie eine skalare numerische Variable aus, um die Position des Auslesens zu bestimmen.
    • Ende des Arrays: Lesen Sie vom Ende des Arrays.
  • Ausgabewert: Wählen Sie eine skalare Variable aus, in der der ausgelesene Wert gespeichert wird.

Aktion „Array-Einträge hinzufügen / entfernen“

Wirkung: Wird Einträge aus einem Array hinzufügen und/oder entfernen.

Parameter:

  • Array-Variable: Array-Variable, an der die Additions- oder Löschoperation ausgeführt werden soll.
  • Indextyp: Bestimmt, welche Art von Index verwendet wird.
    • Fest: Verwenden Sie einen festen Index für die Einfüge-/Löschoperation. In diesem Fall geben Sie die Array-Position an, an der die Einträge eingefügt/gelöscht werden sollen. (1-basiert).
    • Variabel: Verwenden Sie eine numerische Variable als Index für die Einfüge-/Löschoperation. In diesem Fall wählen Sie eine skalare numerische Variable aus, um zu bestimmen, wo die Einträge eingefügt/gelöscht werden sollen.
    • Ende des Arrays: Einfügen/löschen Sie vom Ende des Arrays.
  • Nr der zu löschenden Einträge: Entfernt die Array-Einträge (bevor neue Einträge eingefügt werden), beginnend an der definierten Indexposition. 0 bedeutet, dass keine Werte entfernt werden.
  • Variable(n) zum Einfügen: Wählen Sie eine oder mehrere skalare Variable(n) aus, die an der definierten Indexposition zur Array-Variable hinzugefügt werden.

Aktion „Array-Eintrag ändern (ersetzen)“

Wirkung: Ändert einen Wert innerhalb eines Arrays.

Parameter:

  • Array-Variable: Array-Variable, in der ein Wert geändert werden soll.
  • Indextyp: Bestimmt, welche Art von Index verwendet wird.
    • Fest: Verwenden Sie einen festen Index für die Ersetzoperation. In diesem Fall geben Sie die Array-Position an, die geändert werden soll (1-basiert).
    • Variabel: Verwenden Sie eine numerische Variable als Index für die Ersetzoperation. In diesem Fall wählen Sie eine skalare numerische Variable aus, um die Position der Ersetzoperation zu bestimmen.
    • Ende des Arrays: Ersetzen Sie den letzten Eintrag im Array.
  • Eingangsvariable: Wählen Sie eine (skalare) Variable aus, die den neuen Wert enthält.

Aktion „Array-Einträge mischen“

Wirkung: Mischt die Einträge / die Reihenfolge innerhalb eines Arrays.

Parameter: Keine

Datenrahmenoperationen

Aktion „Von / an Datenrahmen lesen / schreiben“

Wirkung: Liest Werte aus oder schreibt Werte in einen Datenrahmen und speichert sie in einer neuen Array-Variable.

Parameter:

  • Datenrahmenvariable: Wählen Sie die Variable des Datenrahmens aus, die gelesen werden soll.
  • Lesen oder Schreiben: Wählen Sie, ob vom ausgewählten Datenrahmen gelesen oder in den ausgewählten Datenrahmen geschrieben werden soll.
  • Nach Zeile oder Spalte: Wählen Sie, wie die Daten gelesen werden sollen.
  • Indextyp: Wählen Sie den Typ des Indexvariablen, der verwendet wird, um den Datenrahmen zu lesen. Kann fest, variabel oder die letzte Zeile sein.
  • Indexvariable: Wählen Sie die Variable aus, die als Index verwendet wird, um den Datenrahmen zu lesen.
  • Ausgabewert: Wählen Sie die Variable, in der die gelesenen/geschriebenen Daten als Ausgabe gespeichert werden.

Aktion „Datenrahmeneinträge mischen“

Wirkung: Mischt die Reihenfolge der Einträge im Datenrahmen.

Parameter:

  • Wählen Sie den Datenrahmen aus, der gemischt werden soll.
  • Wählen Sie aus, ob der Datenrahmen nach Zeilen oder Spalten gemischt werden soll.

Sprungaktionen

Aktion „Sprung zu“

Wirkung: „Springt“ den Teilnehmer zu einem anderen Schritt im Experiment. Diese Aktion kann die Reihenfolge von Versuchen und Aufgaben in einem Experiment ändern und kann verwendet werden, um für jeden Teilnehmer eine individuelle experimentelle Logik zu erstellen.

Parameter:

  • Sprung zu: Bestimmt, wohin der Sprung im Experiment geht.
    • Nächster Frame: Springt zum nächsten Frame. Wenn im Versuch keine weiteren Frames definiert sind, springt es zum ersten Frame des nächsten Versuchs.
    • Nächster Versuch: Springt zum nächsten Versuch. Wenn keine weiteren Versuche definiert sind, springt es zum ersten Versuch der nächsten Aufgabe.
    • Nächste Aufgabe: Springt zur nächsten Aufgabe. Wenn keine weiteren Aufgaben definiert sind, springt es zur ersten Aufgabe des nächsten Blocks.
    • Nächster Block: Springt zum nächsten Block. Wenn keine weiteren Blöcke definiert sind, endet die Sitzung.
    • Vorheriger Frame: Springt zum vorherigen Frame. Wenn keine vorherigen Frames vorhanden sind, wird die Aktion nicht ausgeführt.
    • Bestimmter Frame: Springt zu einem bestimmten Frame. Die Benutzer wählen direkt den Frame aus, zu dem sie springen möchten.
    • Bestimmter Versuch: Springt zu einem bestimmten Versuch. Die Benutzer wählen direkt die Versuchsnummer aus, zu der sie springen möchten.
    • Bestimmte Aufgabe: Springt zur ersten Instanz der angegebenen Aufgabe im aktuellen Block. Die Benutzer wählen direkt die Aufgabe aus, zu der sie springen möchten.
    • Bestimmter Block: Springt zur ersten Instanz des angegebenen Blocks. Die Benutzer wählen direkt den Block aus, zu dem sie springen möchten.
  • Überprüfen erforderlicher Antworten davor: Wenn aktiviert, überprüft das Experiment, ob alle erforderlichen Antworten bereits beantwortet wurden. Andernfalls wird die Sprungaktion nicht ausgeführt.

Aktion „Sitzung akzeptieren/enden“

Wirkung: Akzeptiert die Daten des Teilnehmers, beendet die Aufzeichnungssitzung und zeigt den Crowdsourcing-Code an.

Parameter:

  • Versuchsdaten vor dem Beenden der Sitzung aufzeichnen: Wenn aktiviert, werden die neuesten Versuchsdaten gespeichert (an den Server gesendet), bevor das Studium verlassen wird.
  • Standard-Endseite anzeigen: Wenn aktiviert, wird der Standard-Endscreen von Labvanced angezeigt. Wenn dies eine Crowdsourcing-Sitzung ist (Crowdsourcing-Link wurde verwendet), wird der Entschädigungscode dem Teilnehmer angezeigt. Wenn deaktiviert, endet das Experiment, nachdem der aktuelle Frame angezeigt wurde, und zeigt nicht den Standard-Endscreen mit Entschädigungscode an.

Aktion „Sitzung ablehnen/enden“

Wirkung: Beendet die Aufzeichnungssitzung, markiert die Daten des Teilnehmers NICHT als vollständig und zeigt nicht den Standard-Endscreen mit Entschädigungscode an.

Wenn Sie diese Aktion verwenden, um die Daten eines Teilnehmers abzulehnen, sollten Benutzer den Teilnehmern eine entsprechende Nachricht anzeigen, die den Grund erklärt, warum sie nicht für ihre Zeit belohnt werden.

Parameter: Keine

Aktion „Umleiten zu URL“

Wirkung: Leitet den Teilnehmer zu einer spezifischen URL um.

Hinweis: Die URL muss zu Beginn das https:// enthalten, damit diese Aktion funktioniert.

Steueraktionen

Aktionen mit Anforderungen (Wenn... Dann... Sonst Wenn) Aktion

Wirkung: Bewertet eine Wenn-Dann-Anweisung und führt eine Reihe von Aktionen abhängig aus. Jede Wenn/Anderen-Fall-Anweisung besteht aus verschachtelten UND/ODER-Vergleichen, um zu bewerten, ob alle Anforderungen erfüllt (Aussage ist wahr) sind oder nicht (Aussage ist falsch). Wenn die Aussage wahr ist, werden die Aktionen unter „Dann“ ausgeführt.

Parameter:

  • Anforderung hinzufügen: Fügen Sie eine neue Anforderung zu einer Aussage hinzu. Das „Wert-Auswahl“-Menü erscheint auf beiden Seiten, um einen logischen Vergleich zu ermöglichen. In der Mitte der Aussage können Sie auswählen, wie beide Seiten verglichen werden sollen (z.B. gleich, kleiner als, ungleich usw.).
  • OR-Gruppe hinzufügen: Nur eine der Anforderungen innerhalb einer OR-Gruppe muss wahr sein, damit die gesamte Gruppe wahr ist. Fügen Sie eine OR-Gruppe hinzu, wenn die Unteraktionen in mehreren Fällen ausgeführt werden sollen.
  • UND-Gruppe hinzufügen: Alle Anforderungen innerhalb einer UND-Gruppe müssen wahr sein, damit die gesamte Gruppe wahr ist. Fügen Sie eine UND-Gruppe hinzu, wenn die Unteraktionen nur ausgeführt werden sollen, wenn mehrere Anforderungen erfüllt sind.
  • Aktionssequenz: Jede Wenn/Anderen-Fall-Anweisung hat eine Liste von Aktionen, die unter „Dann“ definiert sind. Die Aktionssequenz listet alle Aktionen für eine bestimmte Wenn/Anderen-Fall-Anweisung auf. Eine neue Aktion kann über das Symbol „Aktion hinzufügen“ hinzugefügt werden. Die Aktionssequenz wird nur ausgeführt, wenn die Anforderungen der zugehörigen Wenn/Anderen-Fall-Anweisung erfüllt sind.
  • Anderen-Fall cas hinzufügen: Die Anforderungsaktion kann aus mehreren separaten Wenn/Anderen Fällen bestehen. Es kann jedoch nur eine Anweisung ausgeführt werden. Wenn eine Wenn/Anderen-Fall-Anweisung positiv bewertet wird (wahr zurückgibt), werden die Aktionen im Dann-Block ausgeführt und der Rest der Anforderungsaktion übersprungen.
  • Anderen Fall (wahr/falsch) hinzufügen: Wenn aktiviert, wird eine Standard-/Fallback-Option zur Anforderungsaktion hinzugefügt. Wenn keine der Wenn/Anderen-Fall-Anweisungen ausgeführt wurden (wenn diese nicht wahr zurückgibt), werden die Aktionen, die im anderen Fall definiert sind, ausgeführt.

Wiederholte Aktionen (While Schleifen) Aktion

Wirkung: Führt wiederholt eine Reihe von Aktionen entweder sofort oder innerhalb eines definierten Intervalls aus. Es kann eine Stoppbedingung festgelegt werden, sodass die Schleifenbearbeitung gestoppt werden kann.

Parameter:

  • Ausführungstyp: Wählen Sie zwischen sofortiger Ausführung oder zeitgesteuerter Ausführung.
    • Ganze Schleife ausführen: Diese führt die Schleife kontinuierlich aus, bis die Stoppbedingung erfüllt ist.
    • Führen Sie alle … ms aus: Diese wird mit einem definierten Intervall (z.B. wird die Schleife alle 50 ms ausgeführt) ausgeführt.
  • Bestimmen Sie die Anzahl der Schleifen: Wenn „alle ... ms ausführen“ ausgewählt wird, haben die Benutzer die Möglichkeit, einen numerischen Ganzzahlwert für die Anzahl der Male anzugeben, die die Schleife ausgeführt werden soll. Dies ersetzt die Notwendigkeit, eine Stoppbedingung festzulegen.
  • Ausführungsintervall: Dies bestimmt das Ausführungsintervall.
  • Sofort starten (wahr/falsch): Wenn aktiviert, wird die Schleife sofort ausgeführt. Wenn deaktiviert, wird die Schleife beim nächsten Ausführungsintervall gestartet.
  • Mehrere Starts zulassen (wahr/falsch): Wenn aktiviert, können mehrere Schleifeninstanzen parallel gestartet werden. Wenn deaktiviert, kann zu einem bestimmten Zeitpunkt nur eine Instanz der Schleife ausgeführt werden.
  • Stoppbedingung aktivieren (wahr/falsch): Wenn aktiviert, kann eine Stoppbedingung für die Schleife festgelegt werden.
  • Stoppbedingung: Die Stoppbedingung kann verwendet werden, um einen logischen Ausdruck anzugeben, wann die Ausführung der Schleife gestoppt werden soll. Ähnlich wie bei den Wenn/Anderen-Fall-Anweisungen kann man AND-Gruppen, OR-Gruppen und Anforderungen für den logischen Vergleich kombinieren.
  • Aktionssequenz: Die Aktionssequenz listet alle Aktionen auf, die in jeder Iteration der Schleife ausgeführt werden. Eine neue Aktion kann über das Symbol „Aktion hinzufügen“ hinzugefügt werden.

Verzögerte Aktionen (Zeit-Callback) Aktion

Wirkung: Führt eine Reihe von Aktionen nach einer bestimmten Zeitverzögerung aus.

Parameter:

  • Verzögerungstyp: Wählen Sie zwischen fester Verzögerung oder variabler Verzögerung.
    • Feste Verzögerung: Die Aktionen werden nach einer festen Verzögerung ausgeführt.
    • Variable Verzögerung: Die Aktionen werden nach einer Verzögerung ausgeführt, die in einer (numerischen) Variablen angegeben ist.
  • Verzögerung: Die Länge der Verzögerung in Millisekunden (ms).
  • Aktionssequenz: Die Aktionssequenz listet alle Aktionen auf, die nach der angegebenen Zeitverzögerung ausgeführt werden. Eine neue Aktion kann über das Symbol „Aktion hinzufügen“ hinzugefügt werden.

Aktionsgruppe

Aktionen können auch in Aktionsgruppen organisiert werden. Aktionsgruppen ermöglichen es Ihnen, bestimmte Aktionen zusammenzufassen, um eine einfachere visuelle Struktur zu schaffen, aber auch, wenn Sie mehrere Aktionen auf einmal kopieren, duplizieren oder löschen möchten. Um eine Aktionsgruppe hinzuzufügen, finden Sie die Option unter benutzerdefinierten Aktionen:

Akionsgruppe hinzufügen

Aktionsgruppen im Ereignisfenster

API-Aktionen

Wenn Sie Daten von einem externen Server in Labvanced senden oder kommunizieren müssen, können „API-Aktionen“ und „API-Trigger“ verwendet werden. Die folgende Aktionen stehen in dieser Kategorie zur Verfügung:

  • An Websocket senden
  • An OpenAI senden

Damit diese Aktionen „verfügbar“ oder verwendbar sind, müssen Sie einen API-Schlüssel in den Studieneinstellungen unter der „Experimentmerkmale“-Spalte eingeben. Sobald der API-Schlüssel dort bereitgestellt wurde, werden diese Aktionen aus dem Menü nicht mehr grau dargestellt.

Die API-Aktion im Labvanced-Aktionsmenü.

Aktion „An Websocket senden“

Die Aktion An Websocket senden im Labvanced-Aktionsmenü.

Mit der Auswahl dieser Aktion erscheinen die folgenden Optionen:

Optionen für die Aktion An Websocket senden.

Das obige Beispiel und die vollständige Veranstaltungsstruktur können hier aufgerufen werden: https://www.labvanced.com/page/library/51053 durch Klicken auf „Inspect“.

MenüelementBeschreibung
An senden:Gibt die Websocket-Adresse an, die in den „Studieneinstellungen“ unter der „Experimentmerkmale“-Spalte aufgeführt ist.
Trigger / Nachricht senden:Geben Sie den Trigger oder die Nachricht an, die gesendet werden soll.
Variable senden (optional):Geben Sie die Variable an, die auch als Teil der Aktion gesendet werden kann.

Für weitere Informationen über den API-Zugriff besuchen Sie bitte diese Seite.

Aktion „An OpenAI senden“

Die Aktion „An OpenAI senden“ ermöglicht es Ihnen, Informationen, wie z.B. einen Eingabewert als Zeichenfolge, an OpenAI zu senden. Bitte beachten Sie, dass diese Option nur verfügbar ist, wenn Sie Ihren API-Schlüssel in der Registerkarte „Studieneinstellungen“ unter der „Experimentmerkmale“-Spalte angeben.

Die Aktion An OpenAI senden im Labvanced-Aktionsmenü.

Die folgenden Optionen erscheinen beim Klicken auf dieses Ereignis:

Optionen für die Aktion An OpenAI senden.

Hier ist ein funktionales Beispiel, wie dieses Ereignis aussieht, wenn alle erforderlichen Informationen bereitgestellt werden:

Beispiel für die Nutzung der Aktion An OpenAI senden.

Für ein besseres Verständnis, wie Sie diese Funktion nutzen können und sehen Sie es in Aktion, können Sie uns gerne kontaktieren, um eine Demo anzufordern, indem Sie dieses Kontaktformular ausfüllen.

HINWEIS: Außerdem auf dieses Tutorial verweisen, in dem wir eine Studie Schritt für Schritt aufbauen und ChatGPT in einer Studie integrieren und diese Aktion nutzen.

Hier ist eine genauere Erklärung der Felder, die unter der Aktion „An OpenAI senden“ enthalten sind:

MenüelementMenübereichOptionen der Aktion „An OpenAI senden“
ModelltypDropdown-Liste Modelltyp Gibt das AI-Modell an, das verwendet werden soll.

Hinweis: Um die ChatGPT-Version anzugeben, beachten Sie bitte die „Studieneinstellungen“ unter der „Experimentmerkmale“-Spalte.
Chat-Verlauf-DatenrahmenFeld zur Spezifizierung der DatenrahmenvariableLink zu einer Datenrahmenvariablen mit zwei Spalten. Die erste Spalte gibt die „Rolle“ und die zweite Spalte die „Chatnachricht“ an. Die Werte aus der Aktion werden automatisch zu dem hier verlinkten Datenrahmen hinzugefügt.

Der Datenrahmen kann auch mit Datenrahmenaktionen bearbeitet werden. Für weitere Informationen konsultieren Sie bitte die Dokumente von OpenAI.
Nachricht einfügen ‘+’ Das Symbol Nachricht einfügen.Wenn Sie darauf klicken, erscheint das Variablen-Dialogfeld. Sie geben an, welcher „Variablen“-Wert an OpenAI gesendet wird sowie die „Rolle“ der zugehörigen Nachricht:
  • system: bezieht sich auf das übergeordnete ChatGPT-System
  • user: der Teilnehmer
  • assistant: bezieht sich auf eine spezifische Unterrolle, die innerhalb des Systems erstellt wurde

Da sich OpenAI täglich weiterentwickelt, überprüfen Sie bitte die [Dokumentation von OpenAI](https://platform.openai.com/docs/api-reference/chat/create) für weitere Klarstellungen.

### Code-Aktionen

In einigen Fällen benötigt Ihr Experiment möglicherweise die Verwendung von benutzerdefiniertem Code. Mit diesen Aktionen können Sie genau das tun! Die folgenden Optionen sind unter dem Menü "Code-Aktionen" verfügbar:
* JavaScript ausführen
* Globales CSS setzen

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/code_actions_menu.webp" alt="Die Code-Aktionen im Aktionsmenü von Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

#### JavaScript-Aktion ausführen
Die Aktion „JavaScript ausführen“ ermöglicht es Ihnen, spezifische Ereignisse zu programmieren und Labvanced-Variablen in Ihrer Studie zu lesen/setzen, indem Sie benutzerdefiniertes JavaScript eingeben, das als Aktion ausgeführt wird, wenn es ausgelöst wird.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/run_js.webp" alt="Die JavaScript-Aktion im Aktionsmenü von Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Wenn die oben genannte Aktion „JavaScript ausführen“ ausgewählt ist, sehen Sie einen Bereich (einen Code-Editor), in dem der JavaScript-Code geschrieben werden sollte, sowie Anweisungen zur Verwendung:

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/js_editor.webp" alt="Der JavaScript-Code-Editor in Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

#### Globales CSS setzen
Mit der Aktion „Globales CSS setzen“ können Sie benutzerdefinierten CSS-Code verwenden, um einen Aspekt der Studie bei einem Trigger zu ändern.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/global_css.webp" alt="Die Aktion 'Globales CSS setzen' im Aktionsmenü von Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Das folgende Feld öffnet sich, wenn Sie diese Aktion anklicken:

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/css_editor.webp" alt="Der CSS-Code-Editor in Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Ein Beispiel für die Verwendung der Aktion „Globales CSS setzen“ besteht darin, die Hintergrundfarbe der Studie zu ändern, wenn ein Teilnehmer eine bestimmte Farbe aus einer Multiple-Choice-Frage auswählt.

### Einfügeaktion
Diese Option ermöglicht es Ihnen, eine Aktion einzufügen, die Sie zuvor erstellt und kopiert haben. Es ermöglicht Ihnen, schneller zu arbeiten, wenn Sie Ihr Experiment entwerfen, damit Sie nicht immer wieder dieselben Elemente auswählen müssen. Wenn Sie beispielsweise ein Ereignis haben, das einem bereits vorhandenen ähnelt, können Sie es einfach kopieren, einfügen und ändern, anstatt es von Grund auf neu aufzubauen.

## Das Wertauswahlmenü
<img align="left" width="10%" style="padding: 10px;" height="auto" loading ="lazy" src="/content_imgs/learn/guide/task-editor/imgs/events/value_select_icon.webp">Wenn Sie mit bestimmten Ereignissen arbeiten, wird ein Stiftsymbol angezeigt. Dies nennt sich das Wertauswahlmenü, da es Ihnen ermöglicht, auszuwählen und anzuweisen, welche Art von Werten aufgezeichnet oder verfolgt werden soll. Es ist eine sehr leistungsstarke und wichtige Option, die Sie für Ihr experimentelles Design und Ihre Einrichtung verwenden werden.

Dieses Stiftsymbol / Wertauswahlmenü erscheint an verschiedenen Stellen für bestimmte Aktionen im Ereignissystem, z. B. die Setzen / Aufzeichnen von Variablen-Aktion, die Setzen der Objekt-Eigenschaft-Aktion und die Anforderung (Wenn... Dann)-Aktion, wie unten gezeigt.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/value_select_menu_locations.webp" alt="Der Wertauswahlstandort in Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Ein Klick auf das Stiftsymbol führt zu einem Dropdown-Menü, in dem Sie den Wert angeben, der ausgelesen oder geschrieben werden soll. **Das Dropdown-Menü beginnt immer mit einer trigger-spezifischen Wertoption und geht dann zu den anderen 5 Kategorien (Aktuelle Zeit, Konstantwert, Variable, Frame / Aufgabe / Option und Operationen), die jeweils ihre eigenen Optionen haben.** Diese werden weiter unten beschrieben.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/value_select_menu.webp" alt="Das Wertauswahlmenü in Labvanced" width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Das obige Bild zeigt, wie das Wertauswahlmenü aussieht, wenn ein Maus-Trigger verwendet wird. Wie Sie sehen können, beginnt der erste Menüpunkt links mit einer trigger-spezifischen Kategorie und bewegt sich dann zu den anderen 5 Kategorien (Aktuelle Zeit usw.).

### Menü Optionen
Die folgende Tabelle erläutert die Kategorien und Optionen weiter:

| Kategorie | Optionen | Beschreibung |
|:---:|---|---|
| [`Trigger-spezifisch`](#trigger-specific-values) |  Hängt vom Trigger-Typ ab, den Sie zuvor für das Ereignis ausgewählt haben. | Basierend auf dem Trigger, den Sie für ein Ereignis ausgewählt haben, wird Ihnen eine spezifische Liste von Optionen am Anfang des Wertauswahlmenüs angezeigt. Bitte beziehen Sie sich auf den Abschnitt über [Trigger-spezifische Werte](#trigger-specific-values), um eine vollständige Liste der Optionen und Beschreibungen zu sehen. |
| [`Aktuelle Zeit`](#current-time-values) | <ul><li> [UNIX-Zeitstempel](#current-time-unix-timestamp) </li><li> [Zeit ab Beginn des Frames](#current-time-time-from-frame-onset) </li> </ul> | Zeitwerte messen und abrufen. |
| [`Konstantwert`](#constant-values) | <ul><li> Zeichenfolge </li><li> Numerisch </li><li> Boolean </li><li> Kategorisch </li><li> Datum</li><li> Zeit </li><li> Farbe </li> </ul> | Weisen Sie Konstantwerte basierend auf dem Typ der benötigten Variablen zu, z. B. Zeichenfolge oder numerisch. Diese werden manchmal in Kombination mit anderen Optionen wie [`Arithmetik`](#arithmetic) verwendet, um Zähler zu erstellen. |
| [`Variable`](#variable-values) | <ul> <li> Variable auswählen </li><li> Wert aus Array auswählen </li><li>  Wert aus Datenrahmen auswählen </li></ul> | Geben Sie eine Variable an oder verweisen Sie auf eine Variable oder wählen Sie einen Wert aus einem Array oder Datenrahmen aus. |
| [`Frame / Aufgabe / Objekt`](#frame-task-object-values) | <ul><li> Objekt-Eigenschaft </li><li> Frame </li><li>  Eye Tracking </li><li>  Gerät </li> </ul> | Ermöglicht es Ihnen, Werte abzurufen, die mit Objekteigenschaften, dem Frame, Eye Tracking (falls aktiviert) und dem Gerät (Bildschirmaktualisierungsrate) verbunden sind. |
| [`Operationen`](#operations) | <ul><li>Arithmetik </li><li> Zeichenfolgen-Operation </li><li>  Mathe-Operation </li> </ul> | Verwenden Sie Operationen, um spezifische Änderungen an Ihren Variablen vorzunehmen, wie z.B. das Kombinieren von Variablenwerten, das Transformieren von Zeichenfolgen in Kleinbuchstaben oder das Ausführen mathematischer Operationen. |

###  Aktuelle Zeitwerte
Mit der Option „Aktuelle Zeit“ können Sie Werte in Bezug auf die Zeit aufzeichnen oder verwenden.

Die folgenden Optionen sind verfügbar:
* [UNIX-Zeitstempel](#current-time-unix-timestamp)
* [Zeit ab Beginn des Frames](#current-time-time-from-frame-onset)

#### Aktuelle Zeit: UNIX-Zeitstempel
Dieser Wert erfasst einen Zeitstempel im UNIX-Format in Millisekunden.

#### Aktuelle Zeit: Zeit ab Beginn des Frames
Dieser Wert erfasst die Zeit, die seit dem Beginn des Frames vergangen ist. In den meisten Fällen entspricht dies der Reaktionszeit.

### Konstantwerte
Weisen Sie Konstantwerte basierend auf dem Typ der benötigten Variablen zu, z. B. Zeichenfolge oder numerisch. Diese werden manchmal in Kombination mit anderen Optionen wie [`Arithmetik`](#arithmetic) verwendet, um Zähler zu erstellen.

Die folgenden Optionen sind verfügbar:
* [Zeichenfolge](#constant-string)
* [Numerisch](#constant-numeric)
* [Boolean](#constant-boolean)
* [Kategorisch](#constant-categorical)
* [Datum](#constant-date)
* [Zeit](#constant-time)
* [Farbe](#constant-color)

#### Konstant: Zeichenfolge
Weist einen Zeichenfolgen-/Textwert zu.

#### Konstant: Numerisch
Weist einen numerischen/Wertwert zu.

#### Konstant: Boolean
Weist einen Wert von wahr oder falsch zu.

#### Konstant: Kategorisch
Weist einen Levelwert (hauptsächlich für Faktoren) zu.

#### Konstant: Datum
Weist einen Datumswert zu.

#### Konstant: Zeit
Weist einen Zeitwert zu.

#### Konstant: Farbe
Weist einen Farbwert (Hex-Zeichenfolge) zu.

### Variablenwerte
Geben Sie eine Variable an oder verweisen Sie auf eine Variable oder wählen Sie einen Wert aus einem Array oder Datenrahmen aus. Die folgenden Optionen sind verfügbar:
* [Variable auswählen](#select-variable)
* [Wert aus Array auswählen](#select-value-from-array)
* [Wert aus Datenrahmen auswählen](#select-value-from-data-frame)

#### Variable auswählen
Ermöglicht es Ihnen, eine Variable auszuwählen und darauf zu verweisen.

#### Wert aus Array auswählen
Ermöglicht es Ihnen, einen Wert aus einem Array auszuwählen.

#### Wert aus Datenrahmen auswählen
Ermöglicht es Ihnen, einen Wert aus einem Datenrahmen auszuwählen, den Sie erstellt haben.

### Frame / Aufgabe / Objekt-Werte
Ermöglicht es Ihnen, Werte abzurufen, die mit Objekteigenschaften, dem Frame, Eye Tracking (falls aktiviert) und dem Gerät (Bildschirmaktualisierungsrate) verbunden sind.
* [Objekt-Eigenschaft](#object-property)
* [Frame](#frame)
* [Eye Tracking](#eye-tracking)
* [Gerät](#device)

#### Objekt-Eigenschaft
Gibt eine Objekteigenschaft aus.

#### Frame

| Frame-Wertoptionen | Beschreibung |
| :---: | ---|
| **`Letzte zwischengespeicherte Maus X-Position`** | Der letzte X-Koordinatenwert der Maus des Teilnehmers. |
| **`Letzte zwischengespeicherte Maus Y-Position`** | Der letzte Y-Koordinatenwert der Maus des Teilnehmers. | 
| **`Letzte zwischengespeicherte Maus [X,Y]-Array`** | Der letzte [X,Y]-Koordinatenwert der Maus des Teilnehmers in Array-Format. | 
| **`Frame-Name`** | Der Name des Frames. |  

#### Eye Tracking

| Eye Tracking-Wertoptionen | Beschreibung |
| :---: | ---|
| **`Letzte zwischengespeicherte Koordinate X`** | Der letzte X-Koordinatenwert des Blicks des Teilnehmers. |
| **`Letzte zwischengespeicherte Koordinate Y`** | Der letzte Y-Koordinatenwert des Blicks des Teilnehmers.  | 
| **`Letzte zwischengespeicherte Koordinate [X,Y]-Array`** | Der letzte [X,Y]-Koordinatenwert des Blicks des Teilnehmers in Array-Format. | 
| **`Letzte zwischengespeicherte Koordinate + Zeit [X,Y,T]-Array`** | Der letzte [X,Y]-Koordinatenwert des Blicks des Teilnehmers plus den Wert der Kameraaufnahme T in Array-Format. |  

#### Gerät
* **Aktualisierungsrate:** Der Aktualisierungsratewert des Geräts des Teilnehmers.

### Operationen
Verwenden Sie Operationen, um spezifische Änderungen an Ihren Variablen vorzunehmen, wie z.B. das Kombinieren von Variablenwerten, das Transformieren von Zeichenfolgen in Kleinbuchstaben oder das Ausführen mathematischer Operationen.

Die folgenden Optionen sind verfügbar:
* [Arithmetik](#arithmetic)
* [Zeichenfolgen-Operation](#string-operation)
* [Mathe-Operation](#math-operation)

#### Arithmetik
Arithmetische Operationen sind für viele verschiedene Zwecke nützlich, einschließlich des Kombinierens von Zeichenfolgen und sogar dem Modifizieren von Objekteigenschaften.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/arithmetic_menu.webp" alt="Das Arithmetik-Menü in Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Im Wesentlichen ermöglicht die arithmetische Operation, Operationen an mehreren Werten durchzuführen.

Wenn Sie diese Option auswählen, erscheint ein zusätzliches Stiftsymbol (d. h. Wertauswahlmenü) sowie eine Liste von Operationen, wie z. B. Addition.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/arithmetic_selected.webp" alt="Der Standort der Arithmetik-Option in Labvanced." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Die Werte können mit diesen 5 verschiedenen Operationen manipuliert werden:
* (+) Addition
* (-) Subtraktion
* (/) Division
* (*) Multiplikation
* (%) Modulo

Das folgende Beispiel zeigt, wie arithmetische Operationen verwendet werden, um eine neue Zeichenfolgenvariable (im grünen Button) mit dem Namen 'intermediateVar' zu erstellen.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/chat_example_explained.webp" alt="Beispiel für die Verwendung arithmetischer Operationen zur Erstellung einer neuen Zeichenfolgenvariable." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Der neue Variablenwert (von 'intermediateVar') wird definiert, indem mehrere arithmetische Operationen zusammen mit einer Kombination von zuvor erstellten Variablen (d. h. 'userChatName' und 'chatInput') sowie [konstanten Zeichenfolgenwerten](#constant-8594-string), d. h. dem Semikolon `:` und dem Leerzeichen `<br>`, verwendet werden. Diese Aktion erzeugt den Effekt eines Benutzer-Chat, der in einer Multi-User-Studie verwendet werden kann.

#### Zeichenfolgen-Operation

| Zeichenfolgen-Operationsoptionen | Beschreibung |
| :---: | ---|
| **`In Kleinbuchstaben`** | Ändert alle Buchstaben in einer Zeichenfolgenvariable in kleine Buchstaben.<br><br> **&#8594; Beispiel:** (AAABBB) verwandelt sich in (aaabbb) |
| **`In Großbuchstaben`** | Ändert alle Buchstaben in der Zeichenfolgenvariable in Großbuchstaben. <br><br> **&#8594; Beispiel:** (aaabbb) verwandelt sich in (AAABBB) |
| **`In Link`** | Transformiert die Zeichenfolge in einer Variable in eine URL, die in einem anderen Fenster geöffnet wird |
| **`Whitespaces entfernen`** | Entfernt alle Leerzeichen zwischen den Buchstaben in einer Zeichenfolgenvariable. <br><br> **&#8594; Beispiel:** (aaa bbbb cccc) verwandelt sich in (aaabbbbccc) |
| **`Whitespaces trimmen`** | Entfernt die Leerzeichen am Anfang einer Zeichenfolgenvariable. <br><br> **&#8594; Beispiel:** (  aaabbbcccc) verwandelt sich in (aaabbbcccc) |
| **`Substring durch Regexp ersetzen`** | Ersetzt bestimmte Buchstaben in einer Variablen-Zeichenfolge. <br><br> **&#8594; Beispiel:**  (aaabbbccc) ersetzt _bbb_ mit _xxx_, wodurch sich der Wert in (aaaxxxccc) verwandelt. |

#### Mathe-Operation
Führt eine mathematische Operation auf einem Skalarwert aus.

| Mathe-Operationsoptionen | Beschreibung |
| :---: | ---|
| **`abs`** | Gibt die absolute Zahl eines Wertes zurück. |
| **`sqrt`** | Gibt die Quadratwurzel eines Wertes zurück. | 
| **`round`** | Gibt den gerundeten Wert mit 0 bis 3 Dezimalstellen zurück. | 
| **`floor`** | Gibt den abgerundeten Wert zurück. |  
| **`ceil`** | Gibt den nach oben gerundeten Wert zurück. | 
| **`cos`** | Gibt den Kosinuswert zurück. | 
| **`sin`** | Gibt den Sinuswert zurück. | 
| **`tan`** | Gibt den Tangenswert zurück. |

### Trigger-spezifische Werte

Trigger-spezifische Werte beziehen sich auf Werte, die mit dem Trigger zugeordnet sind, der in einem bestimmten Ereignis definiert ist. Wenn Ihr Ereignis beispielsweise einen Maus-Trigger verwendet, können Sie in bestimmten Bereichen, in denen die Aktion spezifiziert ist (z. B. bei der Verwendung einer [`Setzen / Aufzeichnen von Variablen`](#set-record-variable-action)-Aktion oder einer [`Setzen der Objekt-Eigenschaft`](#set-object-property-action)-Aktion), auf trigger-spezifische Mauswerte im [Wertauswahlmenü](#the-value-select-menu) zugreifen.

Im folgenden Beispiel werden trigger-spezifische Werte für einen Maus-Trigger verwendet, um x- und y-Werte sowie ein [X,Y]-Array unter Verwendung einer [`Setzen / Aufzeichnen von Variablen`](#set-record-variable-action)-Aktion aufzuzeichnen.

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/mouse_track_ex.webp" alt="Demonstration, wie maus-spezifische Triggerwerte verwendet werden, um die Mausverfolgung zu erfassen." width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

Im Folgenden finden Sie eine Tabelle aller Arten von trigger-spezifischen Werten, die in Labvanced zu finden sind, gefolgt von einer detaillierten Erklärung jeder Option.

| Name| Wertoptionen - Übersicht |
| :---: | ---|
| [`Trigger (Maus)`](#trigger-mouse-values)  | <ul><li> Maus X </li><li> Maus Y </li><li> Maus [X,Y]-Array </li><li> Stimulus-Name </li><li> Stimulus-Info </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li> </ul> <img width=500/>|
| [`Trigger (Tastatur)`](#trigger-keyboard-values) | <ul><li> ID der Taste </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) li> </li></ul> |
| [`Trigger (Button-Leiste)`](#trigger-button-bar-values) | <ul><li> Stimulus-Name </li><li> Stimulus-Info </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn)  </li></ul> |
| [`Trigger (Eingabe mit Enter)`](#trigger-enter-on-input-values)  | <ul><li> ID der Taste  </li><li> Trigger-Zeitstempel (Unixtime)  </li><li> Trigger-Zeit (ab Framebeginn)  </li></ul> |
| [`Trigger (Scroll)`](#trigger-scroll-values) | <ul><li> Stimulus-Name </li><li> Stimulus-Info</li><li> Scrollposition X </li><li> Scrollposition Y </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> | 
| [`Trigger (Gamepad/Joystick)`](#trigger-gamepad-joystick-values) | <ul><li>Gamepad-Geräte-ID </li><li> Gedrückte Tasten (Array) </li><li> Gedrückte oder gehaltene Tasten (Array) </li><li> Freigegebene Tasten (Array) </li><li> Achsen (Array) </li><li> Gamepad-Zeitstempel (Unixtime) </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Augenverfolgung Blick)`](#trigger-eyetracking-gaze-values) | <ul><li> Koordinate X </li><li> Koordinate Y </li><li> Koordinate [X,Y]-Array </li><li> Stimulus-Name </li><li> Stimulus-Info </li><li> Kamerafangzeit T </li><li> Blick-Konfidenz C </li><li> Koord. + Zeit [X,Y, T]-Array </li><li> Koord. + Zeit + Konfidenz [X,Y, T,C]-Array </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> | 
| [`Trigger (Augenverfolgung Fixation)`](#trigger-eyetracking-fixation-values) | <ul><li> Fixationszentrum X </li><li> Fixationszentrum Y </li><li> Fixationsdauer </li><li> Fixationsstartzeit </li><li> Fixationsendzeit </li><li> Fixationsstreuung </li><li> Stimulus-Name </li><li> Stimulus-Info </li><li> [X,Y, Dauer, Start, Ende, Disp] </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn)  </li></ul> |
| [`Trigger (Kopfverfolgung)`](#trigger-head-tracking-values) |  <ul><li> Kamerafangzeit T </li><li>  Kopf drehen </li><li>  Kopf neigen </li><li>  Kopf rollen </li><li>  Kopfposition [X,Y, T]-Array </li><li>  Nasenposition [X,Y, T]-Array </li><li>  Nasenvektor [X,Y, Z, T]-Array </li><li>  Trigger-Zeitstempel (Unixtime) </li><li>  Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Bei Aufgabeninitialisierung)`](#trigger-on-task-initialization-values) |  <ul><li>  Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Bei Frame-Initialisierung)`](#trigger-on-frame-init-values) |  <ul><li>  TrialNr </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (bei Frame-Start)`](#trigger-on-frame-start-values) |  <ul><li>  Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Bei Frame-Ende)`](#trigger-on-frame-end-values)  |  <ul><li> Gesamtzeit auf dem Frame </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |		
| [`Trigger (Variable Wert geändert)`](#trigger-variable-value-changed-values) |  <ul><li> Neuer Wert in der Variable </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Medienobjekt-Trigger)`](#trigger-media-object-trigger-values) |  <ul><li>  Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Websocket-Trigger)`](#trigger-websocket-trigger-values) |  <ul><li>  Nachricht </li><li> Daten </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (OpenAI-Trigger)`](#trigger-openai-trigger-values) |  <ul><li>  Chat GPT-Antwort </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |
| [`Trigger (Globales Experimentereignis)`](#trigger-global-experiment-event-values) |  <ul><li>  Gesamtzeit auf dem Frame </li><li> Grund für das globale Ereignis </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn)  </li></ul> |
| [`Trigger (Teilnehmer verlässt Experiment)`](#trigger-user-leaves-experiment-values) |  <ul><li>  Verbleibende Anzahl der Teilnehmer  </li><li> Trigger-Zeitstempel (Unixtime) </li><li> Trigger-Zeit (ab Framebeginn) </li></ul> |

#### Trigger (Maus)-Werte
Wenn ein [Maus-Trigger](#mouse-trigger) verwendet wird, können die folgenden [trigger-spezifischen Werte](#trigger-specific-values) bei der Arbeit mit bestimmten Aktionen verwendet werden:

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/mouse_trigger_specific_values.webp" alt="Die verfügbaren Werteoptionen für den Maus-Trigger" width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

| Trigger (Maus) Optionen | Beschreibung |
| :---: | ---|
| **`Maus X`** | Gibt die aktuelle Maus-X-Position in Frame-Koordinaten zurück. |
| **`Maus Y`**|  Gibt die aktuelle Maus-Y-Position in Frame-Koordinaten zurück. |
| **`Maus [X,Y]-Array`** | Die Maus-Koordinaten [X,Y] in Array-Format. | 
| **`Stimulus-Name`** | Der Name des Objekts, das das Ereignis ausgelöst hat (z. B. welches Bild angeklickt wurde). |
| **`Stimulus-Info`** | Die Stimulus-Info des Objekts, das das Ereignis ausgelöst hat. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Trigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Trigger auftrat. |

#### Trigger (Tastatur)-Werte
Wenn ein [Tastatur-Trigger](#keyboard-triggers) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Tastatur)-Optionen | Beschreibung |
| :---: | ---|
| **`ID der Taste`** | Der ID-Wert der Taste, die als Trigger gedrückt wurde. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Trigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Trigger auftrat. |

#### Trigger (Button-Leiste)-Werte
Wenn ein [Button-Klick-Trigger](#button-click-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Button-Leiste)-Optionen | Beschreibung |
| :---: | ---|
| **`Stimulus-Name`** | Der Name des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`Stimulus-Info`** | Die Stimulus-Info des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Trigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Trigger auftrat. |

#### Trigger (Eingabe mit Enter)-Werte
Wenn ein [Eingabe-mit-Enter-Trigger](#enter-on-input-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Eingabe mit Enter)-Optionen | Beschreibung |
| :---: | ---|
| **`ID der Taste`** | Der ID-Wert der Taste, die als Trigger gedrückt wurde. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Trigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Trigger auftrat. |

#### Trigger (Scroll)-Werte
Wenn ein [Scroll-Trigger](#scroll-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Scroll)-Optionen | Beschreibung |
| :---: | ---|
| **`Stimulus-Name`** | Der Name des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`Stimulus-Info`** | Die Stimulus-Info des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`Scrollposition X`** | Die Scrollposition in X der Maus, als das Ereignis ausgelöst wurde.  |
| **`Scrollposition Y`** | Die Scrollposition in Y der Maus, als das Ereignis ausgelöst wurde.|
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Scroll-Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der Scroll-Trigger auftrat. |

#### Trigger (Gamepad/Joystick)-Werte
Wenn ein [`Gamepad/Joystick-Trigger`](#gamepad-joystick-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

<p style="text-align:center;">
<img width="80%" style="padding: 10px; border:1px solid #39AECB" height="auto" loading="lazy" src="/content_imgs/learn/guide/task-editor/imgs/events/gamepad_trigger_specific.webp" alt="Menüoption für Gamepad-Trigger">
</p>

| Trigger (Gamepad/Joystick)-Optionen | Beschreibung |
| :---: | ---|
| **`Gamepad-Geräte-ID`** | Die ID oder der Name des angeschlossenen Gamepads. |
| **`Gedrückte Tasten (Array)`** | Die Tasten, die gedrückt wurden. |
| **`Gedrückte ODER gehaltene Tasten (Array)`** | Die Tasten, die gedrückt oder gehalten wurden. |
| **`Freigegebene Tasten (Array)`** | Die Tasten, die freigegeben wurden. |
| **`Achsen (Array)`** | Die Achsenwerte. |
| **`Gamepad-Zeitstempel (Unixtime)`** | Der Gamepad-Zeitstempel in Unixtime.|
| **`Trigger-Zeitstempel (Unixtime)`** | Zeitstempel, wann der Trigger in Unixtime auftritt. |
| **`Trigger-Zeit (ab Framebeginn)`** | Zeitstempel in Unixtime, wann der Trigger in Bezug auf den Rahmenbeginn auftritt. |

#### Trigger (Augenverfolgung Blick)-Werte
Wenn ein [Augenverfolgung-Blick-Trigger](#eyetracking-gaze-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

<p style="text-align:center;">
<img src="/content_imgs/learn/guide/task-editor/imgs/events/ET_gaze_trigger_specific_values.webp" alt="Die Werteoptionen für den Blick-Trigger" width="80%" style="border:1px solid #39AECB" height="auto" loading="lazy">
</p>

| Trigger (Augenverfolgung Blick)-Optionen | Beschreibung |
| :---: | --- |
| **`Koordinate X`** | Der Wert der X-Koordinate des Blicks. |
| **`Koordinate Y`** | Der Wert der Y-Koordinate des Blicks. |
| **`Koordinate [X,Y]-Array`** | Die Blickkoordinaten X,Y im Array-Format. |
| **`Stimulus-Name`** | Der Name des Stimulus, der den Blick-Trigger ausgelöst hat. |
| **`Stimulus-Info`** | Die Stimulus-Informationen des Stimulus, der den Blick-Trigger ausgelöst hat.  |
| **`Kamerafangzeit T`** |  Die genaue Zeit, wann der Snapshot erstellt wurde. In der Labvanced-Öffnungs-Verfolgungspipeline geschieht ein Kamerasnapshot zuerst, bevor der Algorithmus und das neuronale Netzwerk Blickberechnungen durchführen. Daher ist die `Kamerafangzeit T` ein UNIX-Zeitstempel, wann der ursprüngliche Snapshot erstellt wurde. Für weitere Informationen zur Technologie hinter unserem webcam-basierten Eye Tracking verweisen Sie bitte auf unsere [ET-Technologie-Seite.](/content/technology/de/labvanced-eye-tracking/)   |
| **`Blick-Konfidenz C`** | Dieser Wert liegt zwischen 0 und 1 und bezieht sich auf das Vertrauen und die Wahrscheinlichkeit, dass in dem Bildsnapshot ein offenes Auge vorhanden ist, und fungiert im Wesentlichen als „Blinkdetektor“. Bitte beziehen Sie sich auf unser [veröffentlichtes, peer-reviewed Papier](https://link.springer.com/article/10.3758/s13428-023-02237-8) für weitere Details.  |
| **`Koord. + Zeit [X,Y,T]-Array`** | Ein Array, das die x/y-Koordinaten des Blicks und den Zeitstempel der Kameraaufnahmezeit (T) enthält, wie oben beschrieben.  |
| **`Koord. + Zeit + Konfidenz [X,Y, T,C]-Array`** | Ein Array, das die x/y-Koordinaten des Blicks und den Zeitstempel der Kamerafangzeit (T) und die Blickkonfidenz (C) wie oben beschrieben enthält. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Blick-Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Blick-Trigger auftrat. |

#### Trigger(Augenverfolgung-Fixation)-Werte
Wenn ein [Augenverfolgung-Fixation-Trigger](#eyetracking-fixation-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Augenverfolgung-Fixation)-Optionen | Beschreibung |
| :---: | ---|
| **`Fixationszentrum X`** | Der Mittelpunkt der Fixation als X-Wert. |
| **`Fixationszentrum Y`** | Der Mittelpunkt der Fixation als Y-Wert. |
| **`Fixationsdauer`** | Die Dauer der detektierten Fixation. |
| **`Fixationsstartzeit`** | Der Zeitpunkt des Beginns der detektierten Fixation. |
| **`Fixationsendzeit`** | Der Zeitpunkt des Endes der detektierten Fixation. |
| **`Fixationsstreuung`** | Bezieht sich auf die Streuung der Blickwerte innerhalb einer detektierten Fixation. |
| **`Stimulus-Name`** | Der Name des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`Stimulus-Info`** | Die Stimulus-Info des Button-Objekts, das das Ereignis ausgelöst hat. |
| **`[X, Y, Dauer, Start, Ende, Disp]`** | Ein Array der folgenden: x- und y-Werte des Zentrums der Fixation, die Dauer der Fixation, die Startzeit, die Endzeit und den Streuwert. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Fixations-Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zum Zeitpunkt, an dem der Fixations-Trigger auftrat. |

#### Trigger (Kopfverfolgung)-Werte
Wenn ein [Kopfverfolgungs-Trigger](#headtracking-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Kopfverfolgung)-Optionen | Beschreibung |
| :---: | ---|
| **`Kamerafangzeit T`** | Wann die Kamera den Frame aufgenommen hat, d. h. ein unix-Zeitstempel, wann die Frameaufnahme stattfand. Dies ist der Zeitpunkt, zu dem das Bild / der Frame aufgenommen wurde, bevor auch nur eine Verarbeitung stattfindet. |
| **`Kopf drehen`** | Kopfbewegung von links nach rechts, dies wird in der Literatur als Gier bezeichnet. |
| **`Kopf neigen`** | Kopfbewegung von oben nach unten, bekannt als Kopfneigung in der Literatur. |
| **`Kopf rollen`** | Erfasst die Bewegungen des Kopfes, der von Seite zu Seite rollt. |
| **`Kopfposition [X,Y, T]-Array`** | Dieses Array erfasst die numerischen Werte, die mit der Kopfposition verbunden sind, einschließlich der x- und y-Koordinaten für die Mitte des Kopfes zusammen mit dem Zeitstempeln (T). |
| **`Nasenposition [X,Y, T]-Array`** | Dieses Array erfasst die numerischen Werte, die speziell mit der Position der Nase verbunden sind, einschließlich der x- und y-Koordinaten für den Standort der Nase zusammen mit dem Zeitstempeln (T) von wann die Messung durchgeführt wurde. |
| **`Nasenvektor [X,Y, Z, T]-Array`** | Diese Messung funktioniert, indem ein Vektor von der Nasenspitze projiziert wird und ist nützlich, um zu testen, ob der Teilnehmer auf den Bildschirm achtet (dies ist besonders wichtig für Studien, bei denen Eye Tracking nicht aktiviert ist). Wenn die Nase also außerhalb des Bildschirms zeigt (d. h. der Teilnehmer nicht auf das Experiment achtet), verringert sich der Z-Wert von 1 und nähert sich 0. |
| **`Trigger-Zeitstempel (Unixtime)`** | Zeitpunkt während des Experiments, an dem der Trigger auftritt, bei dem die Kopfverfolgung erkannt wurde und zählt dafür, wann der Trigger im System aufgetreten ist. Im Wesentlichen ist dies der Zeitpunkt, zu dem das Bild / Frame verarbeitet wird, und dieser Wert wird stark von der Grafikkarte des Teilnehmers beeinflusst. In der Theorie sollte es so nah wie möglich an dem Wert T liegen. |
| **`Trigger-Zeit (ab Framebeginn)`** | Dies ist der Zeitwert, wann der Trigger in Bezug auf den Beginn des Frames auftritt. |

#### Trigger (Bei Aufgabeninitialisierung)-Werte
Wenn ein [Aufgabeninitialisierungs-Trigger](#task-init-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Bei Aufgabeninitialisierung)-Optionen | Beschreibung |
| :---: | ---|
| **`Trigger-Zeitstempel (Unixtime)`** | Der Unix-Zeitstempel des Triggers in Millisekunden. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die Zeit in Millisekunden, wann der Trigger ab dem Framebeginn aufgetreten ist. |

#### Trigger (Bei Frame-Initialisierung)-Werte
Wenn ein [Frame-Initialisierungs-Trigger](#frame-init-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Bei Frame-Initialisierung)-Optionen | Beschreibung |
| :---: | ---|
| **`TrialNr`** | Die Trial-Nummer, als der Frame-Initialisierungs-Trigger aufgetreten ist. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Unix-Zeitstempel des Triggers in Millisekunden. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die Zeit in Millisekunden, wann der Trigger ab dem Framebeginn aufgetreten ist. |

#### Trigger (bei Frame-Start)-Werte
Wenn ein [Frame-Start-Trigger](#frame-start-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (bei Frame-Start)-Optionen | Beschreibung |
| :---: | ---|
| **`Trigger-Zeitstempel (Unixtime)`** | Der Unix-Zeitstempel des Triggers in Millisekunden. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die Zeit in Millisekunden, wann der Trigger ab dem Framebeginn aufgetreten ist. |

#### Trigger (Bei Frame-Ende)-Werte
Wenn ein [Frame-Ende-Trigger](#frame-end-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Bei Frame-Ende)-Optionen | Beschreibung |
| :---: | ---|
| **`Gesamtzeit auf dem Frame`** | Die gesamte Zeit in Millisekunden, die auf dem Frame verbracht wurde. | 
| **`Trigger-Zeitstempel (Unixtime)`** | Der Unix-Zeitstempel des Triggers in Millisekunden. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die Zeit in Millisekunden, wann der Trigger ab dem Framebeginn aufgetreten ist. |

#### Trigger (Variable Wert geändert)-Werte
Wenn ein [Trigger für die Wertänderung einer Variablen](#variable-value-changed-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Variable Wert geändert)-Optionen | Beschreibung |
| :---: | ---|
| **`Neuer Wert in der Variable`** | Bezieht sich auf den neuen Wert einer Variablen. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Trigger der Wertänderung aufgetreten ist, im Unix-Zeitformat mit Millisekunden. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem die Wertänderung der Variablen aufgetreten ist. |

#### Trigger (Medienobjekt-Trigger)-Werte
Wenn ein [Medienobjekt-Trigger](#media-object-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Medienobjekt-Trigger)-Optionen | Beschreibung |
| :---: | ---|
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Medienobjekt-Trigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der Medienobjekt-Trigger aufgetreten ist. |

#### Trigger (Websocket-Trigger)-Werte
Wenn ein [Websocket-Trigger](#websocket-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Websocket-Trigger)-Optionen | Beschreibung |
| :---: | ---|
| **`Nachricht`** | Eine Nachricht, die verwendet werden kann, um zu beschreiben und zu kennzeichnen, was es Ihnen ermöglicht (auf der Empfängerseite), zwischen verschiedenen Datentypen zu filtern.  |
| **`Daten`** | Ein Wert, der verschiedene Datentypen halten kann, wie z. B. die Entscheidungen der Teilnehmer, Zeitstempel, Maus-x/y-Koordinaten usw.  |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Websocket-Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der Websocket-Trigger auftrat. |

#### Trigger (OpenAI-Trigger)-Werte
Wenn ein [OpenAI-Trigger](#openai-trigger) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:
| Trigger (OpenAI-Trigger)-Optionen | Beschreibung |
| :---: | ---|
| **`Chat GPT-Antwort`** | Der Wert der Antwort von ChatGPT. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der OpenAI-Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der OpenAI-Trigger auftrat. |

#### Trigger (Globales Experimentereignis)-Werte
Wenn ein [Pause-/Fortsetzen-Experiment-Trigger](#pause-resume-experiment) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Globales Experimentereignis)-Optionen | Beschreibung |
| :---: | ---|
| **`Gesamtzeit auf dem Frame`** | Bezieht sich auf die Gesamtzeit auf dem Frame, die vor dem Trigger aufgetreten ist. |
| **`Grund für das globale Ereignis`** | Ein Zeichenfolgenwert, der den Grund des Triggers angibt, z.B. sobald ein Teilnehmer die Studie verlässt. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der globale Ereignistrigger im Unix-Zeitformat mit Millisekunden aufgetreten ist. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der globale Ereignistrigger auftrat. |

#### Trigger (Teilnehmer verlässt Experiment)-Werte
Wenn ein [Teilnehmer, der Multiuser-Studie verlässt, Trigger](#participant-left-multiuser-study) verwendet wird, können die folgenden trigger-spezifischen Werte bei der Arbeit mit bestimmten Aktionen verwendet werden:

| Trigger (Teilnehmer verlässt Experiment)-Optionen | Beschreibung |
| :---: | ---|
| **`Verbleibende Anzahl der Teilnehmer`** | Die Anzahl der verbleibenden Teilnehmer in der Studie. |
| **`Trigger-Zeitstempel (Unixtime)`** | Der Zeitstempel, wann der Teilnehmer, der das Experiment verlässt, Trigger im Unix-Zeitformat mit Millisekunden auftrat. |
| **`Trigger-Zeit (ab Framebeginn)`** | Die verstrichene Zeit in Millisekunden, gemessen vom Beginn des Frame-Anfangs bis zu dem Zeitpunkt, an dem der Teilnehmer das Experiment verlässt. |

Prev
Objekte
Next
Variablen