Inhaltsverzeichnis
Kommandoserver (pro-Versionen)
Ab Version 1.5 dient der GPIO-Server als Kanal für die Kommandoschnittstelle. Über einen Raw TCP Port können damit Einstellungen des Netzers geändert bzw. Zustände abgefragt werden.
Einstellungen
Falls der Server aktiviert ist, öffnet der Netzer nach dem Booten einen TCP Port (Werkseinstellung 65000). Die Aktivierung und der Port kann über die Webseite mit allgemeinen Einstellungen vorgenommen werden (siehe Abbildung).
Für einfache Tests des Servers und des Protokolls kann jedes Terminalprogramm verwendet werden, was Verbindungen über Raw TCP Sockets aufbauen kann. Dazu zählt z.B. das Windows HyperTerminal. Nach erfolgreichen Verbindungsaufbau erfolgt die Authentifikation, falls aktiviert. Sonst erfolgt der direkte Eintritt in die Protokollphase.
Authentifikation
Für den Kommandoserver kann auf der GPIO-Einstellungs-Webseite die Authentifikation eingeschaltet werden.
Für die Authentifikation werden die Nutzerkonten der Zugangskontrolle verwendet. Auch die Rechte der einzelnen Nutzerkonten werden nachgebildet. Der guest-Login beispielsweise kann nur lesend auf GPIO-Werte zugreifen.
Nach dem Verbindungsaufbau wird das Eingabeprompt für den Nutzernamen ausgegeben:
login:
Im Anschluss dann das Passwort:
password:
Bei fehlerhafter Eingabe wird die Verbindung durch den GPIO-Server abgebrochen. Ist alles in Ordnung, erfolgt der Eintritt in die Protokollphase.
JSON Protokoll
Geschrieben oder gelesen wird mittels Kommandos. Jedes Schreibkommando besteht aus einem Befehl und einem Wert verbunden mit einem '='. Jedes Lesekommando besteht nur aus einem Befehl. Einzelne Kommandos sind voneinander mit Whitespaces (Leerzeichen, Tab, Zeilenumbruch, etc. - alle Zeichen mit dem ASCII-Code ⇐ 32) getrennt.
Alle Antworten bzw. Nachrichten vom Netzer erfolgen in JSON.
Welche Befehle genau verfügbar sind, hängt vom Netzerprojekt ab. Hier die aktuellen Befehlssätze:
Kanalspezifische Befehle
Der Kommandoserver besitzt keine kanalspezifischen Befehle.