Dokumentation
Systemvariablen
Systemvariablen sind Variablen, die in jedem PHP-Skript verfügbar sind. Der Benutzer kann diese nutzen um effizient PHP-Skripte erstellen zu können, welche generisch Aufgaben lösen können. Je nach Absender, durch den das PHP-Skript ausgeführt wurde, werden automatisch passende Systemvariablen erstellt und zur Verfügung gestellt. Die nachfolgenden Tabellen geben einen Überblick bei welchem PHP-Skript welche Variablen automatisch zur Verfügung stehen.
Die Groß- und Kleinschreibung der Variablen ist zu beachten (Case-Sensitive)!
Generelle Systemvariablen
Folgende Systemvariablen stehen immer zur Verfügung.
Systemvariable | Beschreibung |
---|---|
$_IPS['SELF'] | PHP-SkriptID des aktuellen PHP-Skriptes |
$_IPS['SENDER'] | Auslöser des PHP-Skriptes. Abhängig vom Wert können sich weitere globale Variablen ergeben. Mögliche Werte werden unter Zusätzliche_Systemvariablen genauer beschrieben. |
$_IPS['THREAD'] | ThreadID des aktuellen PHP-Skriptes |
Zusätzliche Systemvariablen
Folgende Systemvariablen stehen in Abhängigkeit des $_IPS['SENDER'] zur Verfügung.
- Action
- Execute
- HeatingControl
- RegisterVariable
- RunScript
- Shutdown
- ShutterControl (legacy)
- Startup
- StatusEvent
- TimerEvent
- Variable
- VoIP ( ab Version 5.2 )
- Watchdog
- WebFront
- WebHook ( ab Version 4.0 )
- WebInterface
- WebOAuth ( ab Version 4.0 )
Action
Wenn das PHP-Skript durch ein RequestAction ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['SENDER'] | Standardmäßig ist dieser "Action" kann aber durch RequestActionEx Individuell gesetzt werden |
$_IPS['VALUE'] | Wert mit dem die Variable aufgerufen wurde |
$_IPS['VARIABLE'] | ID der Variable, welche geschaltet werden soll |
Execute
Wenn das PHP-Skript aus der Verwaltungskonsole ausgeführt wurde.
Keine zusätzlichen Systemvariablen.
HeatingControl
Wenn das PHP-Skript durch ein Ereignis vom HeatingControl ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['INSTANCES'] | IDs der Sende-Instanzen |
$_IPS['INVERTS'] | Beinhaltet ob ein Gerät invertiert ist (true/false) |
$_IPS['VALUE'] | Enthält ob das Gerät heizen soll (true) oder nicht heizen soll (false) |
RegisterVariable
Wenn das PHP-Skript durch eine RegisterVariable Instanz ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['CLIENTIP'](nur bei I/O ServerSocket) | Empfangene IP-Adresse des Clients |
$_IPS['CLIENTPORT'](nur bei I/O ServerSocket) | Empfangsport des Clients |
$_IPS['INSTANCE'] | ID der auslösenden RegisterVariable Instanz |
$_IPS['VALUE'] | Wert des Puffers, der vom Splitter oder I/O Modul empfangen wurde |
$_IPS['TYPE'] | Status des Empfangsport (0 = Data; 1 = Verbunden; 2 = Getrennt |
RunScript
Wenn das PHP-Skript durch eine IPS_RunScript Funktionen ausgeführt wurde. Erweiternd kann auch IPS_RunScriptEx genutzt werden um zusätzliche Parameter zu übergeben.
Keine zusätzlichen Systemvariablen.
Shutdown
Beim IP-Symcon Shutdown (siehe EventControl).
Keine zusätzlichen Systemvariablen.
ShutterControl
Wenn das PHP-Skript durch ein ShutterControl Modul (legacy) ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['DIRECTION'] | Zu fahrende Richtung: 0 = Stop 1 = Hoch 2 = Runter |
$_IPS['DURATION'] | Fahrdauer in Millisekunden |
$_IPS['INSTANCE'] | InstanzID, die im ShutterControl eingestellt ist |
$_IPS['INSTANCE2'] | InstanzID #2, die im ShutterControl eingestellt ist |
Startup
Beim IP-Symcon Startup (siehe EventControl).
Keine zusätzlichen Systemvariablen.
StatusEvent
Wenn das PHP-Skript durch eine Statusveränderung einer Instanz ausgeführt wurde.
Nähere Informationen sind unter EventControl und IPS_GetInstance zu finden.
Systemvariable | Beschreibung |
---|---|
$_IPS['INSTANCE'] | InstanzID zur Statusänderung |
$_IPS['STATUS'] | Status der Instanz. Eine Auflistung ist hier zu finden: IPS_GetInstance |
$_IPS['STATUSTEXT'] | Kurztext passend zum Status |
TimerEvent
Wenn das PHP-Skript durch ein zyklisches- oder Wochenplan-Ereignis ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['ACTION'] | ID der aufzurufenden Aktion (nur Wochenplan Ereignis) |
$_IPS['EVENT'] | ID des auslösenden Ereignisses |
$_IPS['TARGET'] | ID des übergeordneten Objektes |
Variable
Wenn das PHP-Skript durch ein ausgelöstes Ereignis ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['EVENT'] | ID des auslösenden Ereignisses |
$_IPS['OLDCHANGED'] (ab Version 5.1) |
Zeitstempel der letzten Änderung des alten Wertes |
$_IPS['OLDVALUE'] | Wert der auslösenden Variable vor Auslösezeitpunkt |
$_IPS['OLDUPDATED'] (ab Version 5.1) |
Zeitstempel der letzten Aktualisierung des alten Wertes |
$_IPS['TARGET'] | ID des übergeordneten Objektes |
$_IPS['TRIGGER'] | Typ des auslösenden Ereignisses |
$_IPS['VALUE'] | Wert der auslösenden Variable zum Auslösezeitpunkt |
$_IPS['VARIABLE'] | ID der auslösenden Variable |
VoIP ( ab Version 5.2 )
Wenn das PHP-Skript durch ein Ereignis vom VoIP-Modul ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['CONNECTION'] | KanalID der Verbindung |
$_IPS['DATA'] | Beinhaltet die gedrückte Taste, wenn das $_IPS['EVENT'] gleich DTMF ist |
$_IPS['EVENT'] | Die Variable kann folgende Werte beinhalten: Incoming: Bei eingehendem Anruf Connect: Bei aufgebauter Verbindung Disconnect: Bei beendeter Verbindung PlayFinish: Sobald Audiodatei zuende abgespielt wurde DTMF: Sobald ein DTMF Ton empfangen wurde |
$_IPS['INSTANCE'] (ab Version 5.4) |
InstanzID der VoIP-Instanz |
Watchdog
Wenn das PHP-Skript durch den Watchdog ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['STATUSTEXT'] | Der Statustext der übergeben wird |
$_IPS['VALUE'] | Wert der Variable, welcher außerhalb der Grenzen ist |
$_IPS['VARIABLE'] | ID der Variable, welche die Grenzen überschritten hat |
WebFront
Wenn das PHP-Skript durch das WebFront ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_IPS['CONFIGURATOR'] | ID des aktuell genutzten Konfigurators |
$_IPS['VALUE'](nur bei Aktionsskript) | Neuer Wert der Variable |
$_IPS['VARIABLE'](nur bei Aktionsskript) | ID der zu ändernden Variable |
WebHook ( ab Version 4.0 )
Wenn das PHP-Skript durch einen WebHook ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_SERVER['HOOK'] | Vollständige URL des aufgerufenen WebHooks |
Zusätzlich stehen beim Typ WebHook auch alle Variablen des WebInterface zur Verfügung.
WebOAuth ( ab Version 4.0 )
Wenn das PHP-Skript durch einen OAuth Control ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_SERVER['OAUTH'] | Vollständige URL des aufgerufenen WebOAuth |
Zusätzlich stehen beim Typ WebOAuth auch alle Variablen des WebInterface zur Verfügung.
WebInterface
Wenn das PHP-Skript durch den Webserver (z.B. im 'user' Ordner) ausgeführt wurde.
Systemvariable | Beschreibung |
---|---|
$_GET | Empfangene Daten über GET |
$_POST | Empfangene Daten über POST |
$_SERVER['DOCUMENT_ROOT'] | Enthält das Document Root-Verzeichnis, unter dem das aktuelle PHP-Skript ausgeführt wird, so wie es in der Konfiguration des Servers festgelegt wurde |
$_SERVER['PHP_AUTH_PW'] | Wenn HTTP authentication verwendet wird, wird diese Variable mit dem vom Benutzer angegebenen Passwort gefüllt |
$_SERVER['PHP_AUTH_USER'] | Wenn HTTP authentication verwendet wird, wird diese Variable mit dem vom Benutzer angegebenen Usernamen gefüllt |
$_SERVER['PHP_SELF'] | Datei/Pfad des gestarteten PHP-Skriptes |
$_SERVER['QUERY_STRING'] | Sofern vorhanden, der Querystring, mittels dessen auf die Seite zugegriffen wurde |
$_SERVER['REMOTE_ADDR'] | Die IP-Adresse, von der aus der Benutzer die aktuelle Seite ansieht |
$_SERVER['REMOTE_PORT'] | Der Port, von der aus der Benutzer die aktuelle Seite ansieht |
$_SERVER['REQUEST_METHOD'] | Enthält die für den Zugriff auf die Seite verwendete Requestmethode, z. B. 'GET', 'HEAD', 'POST' oder 'PUT' |
$_SERVER['REQUEST_URI'] | Der URI, der angegeben wurde, um auf die aktuelle Seite zuzugreifen, beispielsweise '/index.html' |
$_SERVER['SCRIPT_NAME'] | Enthält den Pfad zum aktuellen PHP-Skript. Dies ist nützlich für Seiten, die auf sich selbst verweisen sollen |
Zusätzlich werden alle Request Header in Großbuchstaben mit dem HTTP* Prefix hinzugefügt, wobei ein Minus (-) zu einem Unterstrich () geändert wird. z.B. der Header 'User-Agent' wird als $_SERVER['HTTP_USER_AGENT'] kodiert.