« Zurück zu Produkt

Dokumentation

IPS_SendDebug

 bool IPS_SendDebug (int $ObjektID, string $Meldungsname, string $Daten, int $Format) 

Parameterliste

ObjektID

ID des Objekts, in dessen Debug-Ausgabe die Meldung erscheinen soll

Meldungsname

Name/Titel der Debug-Meldung

Daten

Inhalt der Debug-Meldung

Format

Voreinstellung für die Darstellung (0 = DEBUG_FORMAT_TEXT, 1 = DEBUG_FORMAT_BINARY)

Rückgabewert

Konnte die Funktion erfolgreich ausgeführt werden, liefert sie als Ergebnis TRUE, andernfalls FALSE.

Beschreibung

Die Funktion sendet die Debug-Meldung Daten unter dem Namen Meldungsname an die Debug-Ausgabe des Objekts mit der ID ObjektID. Dadurch können z.B. Skripte eigene Meldungen im Debug-Fenster einer Instanz anzeigen. Format gibt an, ob die Daten bei automatischer Darstellung als Text oder als Hex angezeigt werden:

Wert Konstante Darstellung
0 DEBUG_FORMAT_TEXT Text
1 DEBUG_FORMAT_BINARY Binär/Hex

Die Meldung wird nur weitergegeben, wenn für das Objekt gerade die Weiterleitung von Debug-Meldungen aktiv ist (z.B. weil das Debug-Fenster in der Verwaltungskonsole geöffnet ist oder IPS_EnableDebug aufgerufen wurde) oder das Schreiben in eine Datei per IPS_EnableDebugFile aktiviert ist. Andernfalls wird die Meldung verworfen. In der Debug-Datei werden die Daten unabhängig von Format immer sowohl als Text als auch als Hex geschrieben.

Innerhalb eines PHP-Moduls wird stattdessen die Modul-Methode SendDebug verwendet, welche die Meldung automatisch an die Debug-Ausgabe der eigenen Instanz sendet. IPS_SendDebug kann dagegen aus jedem Skript heraus eine Meldung an ein beliebiges Objekt senden.

Ist ObjektID ein über Sync Remote gespiegeltes Objekt, meldet die Funktion den Fehler "Remote instances cannot be debugged". Debug-Meldungen gespiegelter Instanzen können nur direkt auf dem entfernten System angezeigt werden.

Beispiel

// Textmeldung in der Debug-Ausgabe der Instanz 12345 ausgeben
IPS_SendDebug(12345, "Skript", "Wert wurde aktualisiert", DEBUG_FORMAT_TEXT);

// Binärdaten, die im Debug-Fenster als Hex dargestellt werden
IPS_SendDebug(12345, "Paket", "\x01\x02\xFF", DEBUG_FORMAT_BINARY);
Haben Sie noch Fragen?