Hallo zusammen,
ich habe mehrere Steckdosenleisten NETIO 230B!
Statt mich jetzt auf jeder einzeln einzuloggen möchte ich eine Seite haben auf der alle Steckdosenleisten dargestellt werden.
Ebenso soll von hier geschaltet werden.
Dafür wollte ich das CGI Interace benutzen.
Leider bekomme ich das nicht hin damit die Steckdosen zu steuern.
Ich habe versucht das mit file_get_contents zu lösen.
Damit bekomme ich folgende Fehlermeldung:
Gebe ich diese URI direkt im Browser ein funktionert das und ich kann die Steckedosen schalten wie ich möchte.
Was mache ich noch falsch?
Ich habe es auch schon stream_context_create versucht und da mit verschiedenen Parametern.
Aber leider auch vergeblich.
Hier noch der Auszug aus der Gebrauchsanleitung zum Thema cgi.
Ich sitze schon ziemlich lange an der Sache und es ärgert mich das ich es nicht hinbekomme.
Mittlerweile habe ich mir als Notlösung ein Shell Script gemacht welches ich über PHP aufrufe.
Damit steuere ich die Steckdosen über das Telnet Interface.
Ich möchte aber gerne wissen wie ich das über das CGI Interface lösen kann.
Hoffe das mir da jemand auf die Sprünge helfen kann.
Viele Grüße
heb
ich habe mehrere Steckdosenleisten NETIO 230B!
Statt mich jetzt auf jeder einzeln einzuloggen möchte ich eine Seite haben auf der alle Steckdosenleisten dargestellt werden.
Ebenso soll von hier geschaltet werden.
Dafür wollte ich das CGI Interace benutzen.
Leider bekomme ich das nicht hin damit die Steckdosen zu steuern.
Ich habe versucht das mit file_get_contents zu lösen.
PHP-Code:
file_get_contents(http://10.10.10.10/tgi/control.tgi?login=p:test:testpassword) ;
Warning: file_get_contents(http://10.10.10.10/tgi/control.tgi?l...t:testpassword) [function.file-get-contents]: failed to open stream: HTTP request failed! � in /srv/www/htdocs/it/test.php on line 153
Was mache ich noch falsch?
Ich habe es auch schon stream_context_create versucht und da mit verschiedenen Parametern.
Aber leider auch vergeblich.
Hier noch der Auszug aus der Gebrauchsanleitung zum Thema cgi.
5.3.4 CGI Steuerung:
Das Ger¨ at NETIO-230B l ¨asst sich auch ¨uber die CGI Befehle leicht in Ihre Anwendungen integrieren.
Die CGI Steuerung des Ger¨ates erfolgt ¨ uber einen Befehl im folgenden Format:
http://<IPaddress>/tgi/control.tgi?<command >
Die IP Adresse Ihres Ger¨ates ersetzen Sie mit der Sequenz Die IP Adresse Ihres Ger¨ates ersetzen
ie mit der Sequenz
<IP address>. Die Sequenz<command>ist der eigentliche Befehl.
CGI Befehle:
hash=hash Hash string Anforderung, hash wird ben¨ otigt zum Erzeugen des verschl¨usselten Passwortes.
Der Befehl liefert zur¨uck
<html>hash </html>.
login=<p / c>:<user name>:<password> Login am Gera¨ t. U¨ ber Eingabe login=plain wird unverschl
¨usseltes Passwort gesetzt. F¨ ur verschl ¨usseltes Login erfolgt die Eingabe login=c. Die n¨achsten Parameter
sind Login User Name und Password. R¨uckmeldewerte:
� <html>555 FORBIDDEN</html> - Nicht eingeloggt in oder bad command.
� <html>100 HELLO</html> - Erfolgreiches Login.
� <html>553 INVALID LOGIN</html> - Ung¨ ultiger Benutzername / Passwort.
� <html>554 ALREADY LOGGED IN</html> - Erneuter Versuch auf Login, obwohl bereits ein erfolgreiches
Login besteht.
quit= quit Logout. R¨uckmeldewert ist <html>110 BYE</html>.
port=list / xxxx> Die Parameter list zeigt den aktuellen Port-Status im Format: <html>port1 port2 port3 port4 </html>,
wobei port1 bis port4 ¨uber die Werte 0 f ¨ ur OFF und 1 f ¨ ur ON Status am Ausgang steht. Parameter xxxx ist eine Sequenz f ¨ ur das Wechseln des Ausgangsstaus. Anstelle des x
Buchstaben bitte 0,1,u oder i wie beim Setzen der Ausg¨ange ¨uber Telnet Interface.
Die Befehle k¨onnen auch in Kurzform ¨uber den ersten Buchstaben eingegeben werden. M¨ogliche
Kurzform in Fettdruck Beispiel: Befehl
port=list kann abgek¨ urzt werden ¨uber p=l.
Das Ger¨ at NETIO-230B l ¨asst sich auch ¨uber die CGI Befehle leicht in Ihre Anwendungen integrieren.
Die CGI Steuerung des Ger¨ates erfolgt ¨ uber einen Befehl im folgenden Format:
http://<IPaddress>/tgi/control.tgi?<command >
Die IP Adresse Ihres Ger¨ates ersetzen Sie mit der Sequenz Die IP Adresse Ihres Ger¨ates ersetzen
ie mit der Sequenz
<IP address>. Die Sequenz<command>ist der eigentliche Befehl.
CGI Befehle:
hash=hash Hash string Anforderung, hash wird ben¨ otigt zum Erzeugen des verschl¨usselten Passwortes.
Der Befehl liefert zur¨uck
<html>hash </html>.
login=<p / c>:<user name>:<password> Login am Gera¨ t. U¨ ber Eingabe login=plain wird unverschl
¨usseltes Passwort gesetzt. F¨ ur verschl ¨usseltes Login erfolgt die Eingabe login=c. Die n¨achsten Parameter
sind Login User Name und Password. R¨uckmeldewerte:
� <html>555 FORBIDDEN</html> - Nicht eingeloggt in oder bad command.
� <html>100 HELLO</html> - Erfolgreiches Login.
� <html>553 INVALID LOGIN</html> - Ung¨ ultiger Benutzername / Passwort.
� <html>554 ALREADY LOGGED IN</html> - Erneuter Versuch auf Login, obwohl bereits ein erfolgreiches
Login besteht.
quit= quit Logout. R¨uckmeldewert ist <html>110 BYE</html>.
port=list / xxxx> Die Parameter list zeigt den aktuellen Port-Status im Format: <html>port1 port2 port3 port4 </html>,
wobei port1 bis port4 ¨uber die Werte 0 f ¨ ur OFF und 1 f ¨ ur ON Status am Ausgang steht. Parameter xxxx ist eine Sequenz f ¨ ur das Wechseln des Ausgangsstaus. Anstelle des x
Buchstaben bitte 0,1,u oder i wie beim Setzen der Ausg¨ange ¨uber Telnet Interface.
Die Befehle k¨onnen auch in Kurzform ¨uber den ersten Buchstaben eingegeben werden. M¨ogliche
Kurzform in Fettdruck Beispiel: Befehl
port=list kann abgek¨ urzt werden ¨uber p=l.
Mittlerweile habe ich mir als Notlösung ein Shell Script gemacht welches ich über PHP aufrufe.
Damit steuere ich die Steckdosen über das Telnet Interface.
Ich möchte aber gerne wissen wie ich das über das CGI Interface lösen kann.
Hoffe das mir da jemand auf die Sprünge helfen kann.
Viele Grüße
heb
Kommentar