Seite 1 von 3

Topfield 2401 auschalten via Http

Verfasst: Do 30. Mai 2013, 17:22
von looxer01
Hallo liebe Topf-Gemeinde,

Ich bin ganz neu hier und habe mir gerade einen 2401 zugelegt.
Der ersetzt meinen PC mit dem ich bisher meinen Fernseher versorgt habe.
Einige Komfort-Funktionen habe ich bereits mit TAPs ersetzt, und das gelang mir ganz gut, dank dieses Forums.

Eines fehlt mir allerdings noch, wofür ich noch keine Lösung gefunden habe. Das ist das automatische herunterfahren.

Ich würde gerne den Topf über einen HTTP Befehl herunterfahren. Hintergrund ist, daß ich eine Haussteuerung habe (Homematic), mit der ich einige Dinge automatisiert habe wie z.B. das Ausschalten/Einschalten des Fernsehers. Ein Knopfdruck genügt und der Fernseher schaltet sich ein und auch der Reiceiver. Der Sonus-Lautsprcher schaltet sich dann auf den Receiver und damit habe ich auch automatisch Ton. (wie früher :D : als es nur einen Fernseher mit analogem Signal gab )
Soweit so gut. Einschalten geht also. Ausschalten leider nicht. (für den Receiver)

Bisher sah der HTTP Befehl für den PC so aus:
Beispiel: http://192.168.0.36:8881/Shutdown"; damit fuhr der PC runter,
wobei shutdown für ein TAP stehen könnte. Es ist relativ einfach möglich über Homematic ein solches URL zu senden.

Frage nun: gibt es ein TAP, das ich so aufrufen kann und, das den Topf runterfährt (stand by ) ?

Wie könnte ich so etwas realisieren ?

Viele Grüße

Looxer

Verfasst: Do 30. Mai 2013, 19:37
von karlek
Kann man den Receiver über sein WebIf ausschalten? Das wäre das einfachste.
Man kann den Topf auch über TMSRemote (TAP und exe) steuern.
Schau doch mal, ob da was für Dich dabei ist.


Grüße

AW: Topfield 2401 auschalten via Http

Verfasst: Do 30. Mai 2013, 21:03
von Sirius
Über das Topfield Web-Interface kann man ihn nicht ausschalten.

Über TMSRemote (TAP) geht es, das TAP muß installiert sein für die 3 Varianten:
- TMSRemote Bedienprogramm für PC
- iTMSRemote App für iOs
- aTMSRemote App für Android

AW: Topfield 2401 auschalten via Http

Verfasst: Do 30. Mai 2013, 22:22
von Twilight
und man kann ihn darüber nicht nur ausschalten, man kann ihn zu 100% kontrollieren...das web interface kannst du dann vergessen ;)

twilight

AW: Topfield 2401 auschalten via Http

Verfasst: Do 30. Mai 2013, 22:47
von looxer01
vielen Dank für die schnellen Antworten :)
das tap tmsremote und itmsremote habe ich bereits installiert.
Wenn ich das richtig verstehe, dann kann ich zwar den Receiver über die Fersteuerung ausschalten aber ich werde es wohl nicht in meine Haussteuerung einbauen können.

Die Homematic Zentrale ist ein Linux System. Daher hatte ich gehofft, daß ich einfach den Topf über ein HTTP ansprechen kann. Allerdings muß dann natürlich auch auf der Gegenseite etwas sein, dass den Befehl aufnimmt und verarbeitet.

Wie funktioniert denn TMSRemote ? Was wird denn dabei an den Receiver geschickt ?

viele Grüße

Looxer

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 06:46
von Twilight
das kann dir firebird sagen...

twilight

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 10:14
von FireBird
TMSRemote ist vermutlich nicht geeignet, denn ein Client muss sich zuerst authentifizieren, bevor weitere Befehle akzeptiert werden und das wird die Homematic nicht stemmen. Ich habe hier vor Ewigkeiten ein TAP programmiert, das Befehle zum Senderwechsel per Netzwerk übernimmt, aber die Sache ist dann ganz schnell wieder eingeschlafen.

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 10:49
von looxer01
Danke Firebird..
hatte schon angefangen, mich durch die sources zu arbeiten und dachte mir so was schon ;)
Dann schaue ich mir mal den alten Fred an. Im Prinzip scheint es da in die richtige Richtung zu gehen :) - mal sehen.....

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 19:53
von looxer01
Hallo Firebird,

sodele, jetzt ist es also installiert und der Topf lauscht am angegebenen Port. (Sieht man am log.)

Soweit so gut. Nun die Crux: mir fehlen die Kenntnisse etwas zu senden womit der Topf auch was anfangen kann. über ein C Programm wird es wohl gehen aber leider ist das nicht meine Welt.

Ich hatte mir vorgestellt. daß ich einen HTTP an die Adresse des Topfes senden kann mit den entsprechenden Befehlen. Sollte doch eigentlich auch gehen ? Hast du evt mal ein Beispiel parat ? Idealerweise den Shutdown Befehl ? das wäre denn auch schon die Lösung: :u:

vG Looxer

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 20:56
von FireBird
Einen http-Parser in das TAP einbauen? Man kann alles kompliziert machen. :wink: Also sowas kommt sicher nicht.

Testen geht z.B. mit putty. Connection Type=Telnet, IP des Topfes eingeben, Port auf 1412 setzen und "Open" klicken. Wenn Du dann "#01" eingibst und ENTER drückst, sollte der Topf auf Kanal 1 wechseln.

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 21:19
von looxer01
....jep - geht. Ich kann über Putty umschalten ;)
(und ich bekomme sogar das aktuelle Programm zurück....) :hello:
...nur wie bekomme ich das über ein Linux Programm gesendet ?
das ist ja eigentlich mein Problem. Es muß ja kein HTTP Befehl sein.
Über Homematic kann ich eben relativ einfach HTTP senden oder auch ein Linux Programm aufrufen.

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 21:30
von FireBird
Probiere einmal:

echo -e "#01\r" > /dev/tcp/<topf-ip>/1412

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:03
von FireBird
Nach dem Motto "Selbst ist der Mann" habe ich das TAP mit den Sourcen hochgeladen. Die Alternative heißt warten, denn ich bin jetzt 2 Wocherln weg. :)

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:08
von looxer01
Erstmal vielen Dank, dass du dich damit beschäftigst. Ist nicht selbstverständlich....

Habe jetzt ein mini php geschrieben und aufgerufen:
<?php
echo -e "#01\r" > /dev/tcp/XXX.XXX.X.XX/1412
?>
der Interpretor meldet auch ein ok, d.h. der Befehl wurde ausgeführt.
Allerdings ohne Ergebnis. Der Echo-Befehl sollte in PHP ja genau zum gewünschten Ergebnis führen.
Kann ich mir nur so erklären, daß was mit dem Befehl nicht stimmt....Was denkst du ?


aaaah --- habe gerade deine zweite Antwort gesehen. Aber ich denke, daß der echo Befehl genau das rRichtige ist. Leider hängt es irgendwo...

vG looxer

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:14
von FireBird
Wenn Du das Telnet-TAP auf dem Topf installierst und dich per Telnet verbindest, schreibt das TAP die empfangenen Daten auf die Telnet-Konsole. Dann müsstest Du sehen, ob etwas ankommt und wenn ja, was.

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:22
von looxer01
ja, Telnet hatte ich schon installiert.
ich bin also mit dem PC via Telnet auf dem Topf angemeldet . Hab's laufen lassen und nix....
Dort sollte ich etwas sehen ? oder gibt es ein log ?

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:27
von FireBird
Da kommt z.B. so was:

Code: Alles auswählen

23 30 32 ProcessCommand()
#02
Da /dev/tcp ein virtuelles Device ist, kann es sein, dass das unter PHP nicht klappt.

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:41
von looxer01
ich habe es jetzt direkt mal manuell auf der Konsole des LINUX eingegeben.
Die Busybox sagt dann "cannot create /dev/tcp/xxx.xxx.x.xx/1412: Directory nonexistent.
Also zumindest Busybox sendet dann den Befehl nicht...

...und das gleiche in der cmd von Windows. Ist zumindest konsistent...

AW: Topfield 2401 auschalten via Http

Verfasst: Fr 31. Mai 2013, 22:52
von FireBird
Ich kann es am Topf direkt eingeben und unter cygwin am PC läuft es auch. Am Topf werkelt ebenfalls eine busybox. Wie schickst Du http-Anfragen?

AW: Topfield 2401 auschalten via Http

Verfasst: Sa 1. Jun 2013, 00:04
von looxer01
also ich habe es gar nicht über http versucht.
den echo befehl habe ich als PHP befehl abgesetzt - was wohl nicht ging
und dann einfach in der busybox eingegeben. (mit der o.g. Fehlermeldung)
That's it.
hast du den echo-befehl in der busybox konsole 1:1 eingetippselt ?