Status-Update für Enigma2-Receiver (Dreambox, VUplus etc.)

Begonnen von alexmetz, 02 Februar 2013, 20:06:23

Vorheriges Thema - Nächstes Thema

alexmetz

Hallo zusammen,


Ziel: aktuellen Status (on|off) des Enigma2-Receivers in fhem anzeigen.


I. Umständliche Methode (meine bisherige):

Ich hatte vor einiger Zeit irgendwo in der fhem-users group folgendes Skript entdeckt und angepasst, das den Status eines Enigma2-Receivers (z.B Dreambox oder VUplus) abfrägt:
VU_Status.sh
#!/bin/sh

vu_ip="vuduo"
vu_status=`wget -q -O- http://$vu_ip/web/about -O- | sed -n -e 's/.*<e2model>\(.*\)<\/e2model>.*/\1/p'`
if [ vu_status != "duo" ]
   then echo "set VUplus_Status on" | /sbin/socat -  TCP:127.0.0.1:7072
   else echo "set VUplus_Status off" | /sbin/socat -  TCP:127.0.0.1:7072
fi


Das ganze hatte ich dann über ein notify gestartet:
define VUplus_Abfrage notify VUplus_trigger { system("./FHEM/VU_Status.sh");; \
 my $vuons ="";;\
 $vuons=$value{VUplus_Status}\
 if ($vuons == "on") {system("./FHEM/VU_Abfrage.sh");;}\
 }


Und dieses dann über ein at getriggert:
define VUplus_trigger dummy
define VUplus_Abfrage_at at +*00:10:00 trigger VUplus_trigger


Der Status war dann in einem dummy:
define VUplus_Status dummy
attr VUplus_Status setList on off



II. Einfache Methode:
Die umständliche Methode funktioniert, ist aber nervig und belastet unnötig das System.
Deshalb habe ich mir überlegt, dass es ja einfacher wäre, wenn nicht fhem den Status dauernd bei dem Enigma2-Receiver abfrägt, sondern selbiger es fhem mitteilt. Und es geht! Der Enigma2-Receiver teilt fhem mit, wenn er hoch- bzw. runterfährt.

So gehts:

1. Man erstelle folgende zwei Dateien auf dem Receiver im Verzeichnis /etc/init.d (am besten gleich vi benutzen):

fhemstatus_on.sh
#!/bin/sh
echo set VUplus_Status on | nc fritz.box 7072
exit 0


fhemstatus_off.sh
#!/bin/sh
echo set VUplus_Status off | nc fritz.box 7072
exit 0

Die Dateien lassen sich noch beliebig erweitern, um weitere Informationen an fhem zu übergeben, z.B. den Sender, die Betriebssystemversion etc.


2. Rechte der beiden Dateien auf 755 setzen, damit sie ausgeführt werden können:
chmod 755 fhemstatus_on.sh
chmod 755 fhemstatus_off.sh

3. Folgende Symlinks erstellen
ln -s /etc/init.d/fhemstatus_on.sh /etc/rcS.d/S50fhemstatus_on.sh
ln -s /etc/init.d/fhemstatus_off.sh /etc/rc0.d/K20fhemstatus_off.sh
Die Ordner rcx.d bilden die Runlevel von Enigma2 ab. Die symlinks in rcS werd beim booten ausgeführt, die in rc0 beim shutdown. Sxx bzw. Kxx ist die Reihenfolge.

4. Fertig!

jetzt wird beim Booten automatisch der Status auf on gesetzt und beim herunterfahren auf off.


Viele Grüße,

Hades.
FHEM auf RaspberryPi 4
Homematic

alexmetz

Noch ein Codeschnipsel:

Ziel: Enigma2-Receiver herunterfahren.


Ich habe ein dummy, mit dem ich den Receiver (aus-)schalten will.
define VUplus_Status dummy
attr VUplus_Status setList on off


Klicke ich nun beim dummy auf "off" frage ich das mit folgendem notify ab, und fahre den Receiver herunter (Deepstandby):
define VUplus_Statuswechsel notify VUplus_Status:off "wget -q -O- 'http://vuduo/web/powerstate?newstate=1'"

Einschalten geht logischerweise nicht. Man könnte aber auch einen Softstandby schalten.

Viele Grüße,

Alex
FHEM auf RaspberryPi 4
Homematic

MarkusN

Hallo Alex,

danke für deine Lösung! Ich fahre meine dreambox jedoch nicht herunter, sondern schicke sie nur in den Standby. Dafür habe ich bereits eine Lösung gesucht, jedoch nicht gefunden. Hast du da vielleicht eine Idee?

Grüße,

Markus

alexmetz


Du musst einfach statt newstate=1 newstate=5 schreiben

http://dreambox/web/powerstate?newstate={powerstate_number}
0 = Toogle Standby
1 = Deepstandby
2 = Reboot
3 = Restart Enigma2
4 = Wakeup form Standby
5 = Standby


Guck mal auch da: http://dream.reichholf.net/wiki/Enigma2:WebInterface
Da stehen alle Befehle, die Du das webif kann und die Du damit auch aus fhem nutzen kannst.

Aber Obacht: in einigen Details unterscheiden sich das original webif und openwebif, welches in neueren Images drin ist.

LG
Alex.
FHEM auf RaspberryPi 4
Homematic

alexmetz


Jetzt hab ich Dich wahrscheinlich falsch verstanden. Ich dachte, Du willst aus fhem die Dreambox in standby schalten. Das gehr so wie im letzten post geschrieben.

I. Falls Du aber meinen ersten Post mit Standby umsetzen willst, gibt es folgenden Ansatz, den ich nicht ausprobiert habe, also auf eigene Gefahr!:

in der Datei "/usr/lib/enigma2/python/Screens/Standby.py" folgende Zeilen hinzufügen:

unter:
print "leave standby"
das einfügen:
if fileExists("/etc/init.d/fhemstatus_on.sh") :
eConsoleAppContainer().execute("/etc/init.d/fhemstatus_on.sh")

und unter:
print "enter standby"
das einfügen:
if fileExists("/etc/init.d/fhemstatus_off.sh") :
eConsoleAppContainer().execute("/etc/init.d/fhemstatus_off.sh")


geht aber wahrscheinlich nach jedem update wieder verloren...
Und bitte frag mich nicht nach der Bedeutung. Hab das selber nur gefunden und kann kein Stück pythop...

II. hier gibt's ein plugin, das bei on|off|standby bestimmte Aktionen ausführen kann:
http://www.dreambox-tools.info/thread.php?postid=21365

Da könnte man die o.a. Aktionen einbinden. Verursacht bei mir aber Greenscreen-Schleife, weils wohl für OE2.0 ist und ich 1.6 hab. Aber vielleicht geht's bei Dir.

LG
Alex.
FHEM auf RaspberryPi 4
Homematic

brmpfl

Danke für den Link zum Enigma2-WebIF!
Ich hatte noch auf meiner Liste, eine Nachricht auf den Bildschirm zu schicken, wenn das Garagentor aufgeht.
Zack erledigt!
:)
Hajo

brmpfl

Zitat von: alexmetz schrieb am Sa, 02 Februar 2013 20:06#!/bin/sh
echo set VUplus_Status on | nc fritz.box 7072
exit 0


fhemstatus_off.sh
#!/bin/sh
echo set VUplus_Status off | nc fritz.box 7072
exit 0


Hai,

wie empfängst und verarbeitest Du die Status auf der FritzBox?

:)
Hajo

alexmetz

Na in fhem gibt's nen Dummy "VUplus_Status" der direkt durch das Skript auf dem Receiver geschalten wird.

VG
Alex
FHEM auf RaspberryPi 4
Homematic

brmpfl

Irgendwie fällt der Groschen noch nicht.

Du schickst per netcat 'set VUplus_Status on' bzw. 'set VUplus_Status off' an Deine FritzBox auf Port 7072. Richtig?
Dann muß doch auf der Fritzbox jemand an Port 7072 lauschen?!

:)
Hajo

alexmetz

Ja. Fhem tut das. Fhem lauscht immer auf Port 7072.

Fhem läuft bei mir auf der fritzbox.

LG
Alex
FHEM auf RaspberryPi 4
Homematic

brmpfl

:)
Hajo

MarkusN

Zitat von: alexmetz schrieb am Sa, 02 Februar 2013 23:37Jetzt hab ich Dich wahrscheinlich falsch verstanden. Ich dachte, Du willst aus fhem die Dreambox in standby schalten. Das gehr so wie im letzten post geschrieben.

I. Falls Du aber meinen ersten Post mit Standby umsetzen willst, gibt es folgenden Ansatz, den ich nicht ausprobiert habe, also auf eigene Gefahr!:

in der Datei "/usr/lib/enigma2/python/Screens/Standby.py" folgende Zeilen hinzufügen:

unter:
print "leave standby"
das einfügen:
if fileExists("/etc/init.d/fhemstatus_on.sh") :
eConsoleAppContainer().execute("/etc/init.d/fhemstatus_on.sh")

und unter:
print "enter standby"
das einfügen:
if fileExists("/etc/init.d/fhemstatus_off.sh") :
eConsoleAppContainer().execute("/etc/init.d/fhemstatus_off.sh")


geht aber wahrscheinlich nach jedem update wieder verloren...
Und bitte frag mich nicht nach der Bedeutung. Hab das selber nur gefunden und kann kein Stück pythop...

II. hier gibt's ein plugin, das bei on|off|standby bestimmte Aktionen ausführen kann:
http://www.dreambox-tools.info/thread.php?postid=21365

Da könnte man die o.a. Aktionen einbinden. Verursacht bei mir aber Greenscreen-Schleife, weils wohl für OE2.0 ist und ich 1.6 hab. Aber vielleicht geht's bei Dir.

LG
Alex.

Hallo Alex,

danke! Das funktioniert bei mir hervorragend. Musste jedoch eConsoleAppContainer().execute("/etc/init.d/fhemstatus_off.sh") durch os.system("/etc/init.d/fhemstatus_off.sh") ersetzen, ansonsten gabs Green-Screen und reboot.

Dadurch bekomme ich jetzt auch Nachrichten auf meine Dreambox, natürlich mit vorheriger Abfrage ob sie auch eingeschaltet ist. Top!

Dennis D.

sobald ich

if fileExists("/etc/init.d/fhemstatus_off.sh") :
os.system("/etc/init.d/fhemstatus_off.sh")

if fileExists("/etc/init.d/fhemstatus_on.sh") :
os.system("/etc/init.d/fhemstatus_on.sh")

in der Standby.py drin habe, komme ich in eine reboot-schleife (Dreambox 7020HD mit OE2.0)

Kommentiere ich die zeilen wieder aus, startet die Box wie gewohnt.

Ebenso habe ich ein Problem mit fhemstatus_on.sh und fhemstatus_off.sh. Führe ich das Script mit "sh fhemstatus_on.sh" aus, dann kommt die Meldung:

nc: can't connect to remote host (192.168.178.25): Connection refused

Gebe ich am auf der Console der Dreambox "echo set Dreambox_Status on | nc 192.168.178.25 7072" direkt ein, dann funktioniert es einwandfrei.

Hat jemand ne Ahnung woran das liegen kann?

Gruß,
Dennis
FHEM 5.5 auf RPi Rev. B 512 mit HMLAN (HM-CFG-LAN)

CUL_HM: HM-LC-Bl1PBU-FM,HM-LC-SW1-BA-PCB,HM-LC-SW4-SM,HM-LC-Sw1PBU-FM,HM-OU-LED16,HM-PB-2-WM55,HM-RC-KEY3-B,HM-SEC-KEY,HM-SEC-RHS,HM-SEC-SC,HM-SEC-SD,HM-WDS10-TH-O,HM-WDS40-TH-I

OWDevice: DS18B20,DS2438

brmpfl

Moin,

ich wurde per PN gefragt, wie ich mein Garagentor mit dem Fernseher (bzw. der VUPlus) gekoppelt habe.
Um es für alle zugänglich zu machen (evtl. gibt's ja noch weitere Interesierte), poste ich die Antwort hier:

Voraussetzung sind eine VUPlus, ein HomeMatic Neigungssensor am Garagentor :D und die o.g. Schritte zur Einbindung der beiden Scripte auf der VUPlus, die den Status an FHEM melden:
"fhemstatus_on.sh" & "fhemstatus_off.sh"

In meiner fhem.cfg habe ich folgendes definiert:

#
# VUPlus
#
define VUPlus_Status dummy
attr VUPlus_Status group VUPlus
attr VUPlus_Status room Wohnzimmer
attr VUPlus_Status setList on off
#
# Garage
#
define garage_Tor CUL_HM ******
attr garage_Tor .devInfo 010101
attr garage_Tor .stc 80
attr garage_Tor actCycle 028:00
attr garage_Tor actStatus alive
attr garage_Tor firmware 1.3
attr garage_Tor model HM-SEC-TIS
attr garage_Tor peerIDs
attr garage_Tor serialNr ***********
attr garage_Tor subType threeStateSensor
attr garage_Tor room Garage
#
# Öffnen/Schließen des Garagentores behandeln
#
define NotifyGaragentorOpen notify garage_Tor:open {\
  my $VUPlusStatus = ReadingsVal('VUPlus_Status', 'state', '??');;\
  if ($VUPlusStatus eq 'on') {\
    SendVUPlus('Garagentor wird geoeffnet!', '3', '10');;\
  }\
}
define NotifyGaragentorClosed notify garage_Tor:closed {\
  my $VUPlusStatus = ReadingsVal('VUPlus_Status', 'state', '??');;\
  if ($VUPlusStatus eq 'on') {\
    SendVUPlus('Garagentor geschlossen!', '1', '10');;\
  }\
}

Ich habe wegen der besseren Übersichtlichkeit 2 Notify's definiert ;)

Die Funktion SendVUPlus ist in meiner 99_myUtils.pm wie folgt definiert:

sub SendVUPlus
{
  my $message = shift;
  my $type = shift;
  my $timeout = shift;
  get('http://VUPlus/web/message?text='.$message.'&type='.$type.'&timeout='.$timeout);
}
:)
Hajo

Wiliam


Wzut

Ich habe vor einiger Zeit ein plugin für enigma2 geschrieben um Meldungen auf dem TV anzeigen zu können. Die hier vorschlagene Messagebox hat mir mir zum einen nicht gefallen und ich wollte auch steuern wann die Meldung wieder verschwindet.
1. enigma Plugin installieren und erster Test :
Nach der Installation kann das Setup unter Erweiterungen aufgerufen werden, hier kann man den TCP Port wählen auf welchem das Plugin lauscht, die Schriftgrösse der späteren Meldung. Mit der blauen Taste die Position und Grösse der Alarm Meldung. Position mit dem Steuerkreuz Tasten festlegen, Grösse mit 2/8 und 4/6 ändern.
Um das Plugin zu testen nun von einem anderen Rechner "telnet BoxIP 34111" starten ( ACHTUNG : das telnet der busybox direkt auf der vu Konsole ist dazu ungegeignet !) Die Funktionsweise ist vom SVDR Plugin übernommen :

telnet 192.168.0.5 34111
Trying 192.168.0.5...
Connected to 192.168.0.5.
Escape character is '^]'.
220 0.1 Alarm Text Enigma 2-Plugin

Tippt man nun help ein sieht man die z.Z. unterstützten Funktionen :
214-Alarm Text Plugin version 0.1
214-Topics:
214- ALARM HELP MESG QUIT
214 End of HELP info

um nun einen Text auf den Bilschirm zu bekommen einfach alarm das ist ein Test eintippen
alarm das ist ein Test
250 Alarm is on

um den Alarm wieder zu löschen alarm ohne Text eingeben
alarm
250 Alarm is off

nun können wir uns mit quit wieder ausloggen:
221 closing connection
Connection closed by foreign host.

um nun von einem anderen PC bzw dem fhem Server eine Meldung zur Box zu schicken kann man das angehängte svdrpsend.pl benutzen.
svdrpsend.pl -d BoxIp -p 34111 alarm Testmeldung

EDIT : habe jezt meine 99_myUtils.pm erweitert und in der fhem.cfg mal drei Zeilen definiert
fhem.cfg

define alarm_text_on notify Firmata_OUT_3  { if ("$value{Firmata_OUT_3}" eq "on")  { SVDR_Msg('192.168.0.5', 34111, "alarm Das ist ein Test")}}
define alarm_text_off notify Firmata_OUT_3 { if ("$value{Firmata_OUT_3}" eq "off") { SVDR_Msg('192.168.0.5', 34111, "alarm")}}
define msg_text_on notify Firmata_OUT_2    { if ("$value{Firmata_OUT_2}" eq "on")  { SVDR_Msg('192.168.0.5', 34111, "mesg Das ist ein Test")}}


99_myUtils.pm

use Socket;

sub SVDR_Msg($$$)
{
my ($Dest, $Port, $Cmd)  = @_;
my $iaddr = inet_aton($Dest)                || die "SVDR_Msg no host: $Dest";
my $paddr = sockaddr_in($Port, $iaddr);

my $proto = getprotobyname('tcp');
socket(SOCK, PF_INET, SOCK_STREAM, $proto)  || die "SVDR_Msg socket: $!";
connect(SOCK, $paddr)                       || die "SVDR_Msg connect: $!";
select(SOCK); $| = 1;
SVDR_Receive();
print SOCK "$Cmd\r\n";
my $ret = SVDR_Receive();
print SOCK "quit\r\n";
close(SOCK)                                 || die "SVDR_Msg close: $!";
$ret =~ s,[\r\n]*,,g;
return "SVDR_Msg ".$ret;
}

sub SVDR_Receive
{
  while (<SOCK>) {last if substr($_, 3, 1) ne "-";}
  return $_;
}

Maintainer der Module: MAX, MPD, UbiquitiMP, UbiquitiOut, SIP, BEOK, readingsWatcher

punker

Zitat von: alexmetz schrieb am Sa, 02 Februar 2013 20:06Hallo zusammen,


Ziel: aktuellen Status (on|off) des Enigma2-Receivers in fhem anzeigen.

II. Einfache Methode:
Die umständliche Methode funktioniert, ist aber nervig und belastet unnötig das System.
Deshalb habe ich mir überlegt, dass es ja einfacher wäre, wenn nicht fhem den Status dauernd bei dem Enigma2-Receiver abfrägt, sondern selbiger es fhem mitteilt. Und es geht! Der Enigma2-Receiver teilt fhem mit, wenn er hoch- bzw. runterfährt.

So gehts:

1. Man erstelle folgende zwei Dateien auf dem Receiver im Verzeichnis /etc/init.d (am besten gleich vi benutzen):

fhemstatus_on.sh
#!/bin/sh
echo set VUplus_Status on | nc fritz.box 7072
exit 0


fhemstatus_off.sh
#!/bin/sh
echo set VUplus_Status off | nc fritz.box 7072
exit 0

Die Dateien lassen sich noch beliebig erweitern, um weitere Informationen an fhem zu übergeben, z.B. den Sender, die Betriebssystemversion etc.


2. Rechte der beiden Dateien auf 755 setzen, damit sie ausgeführt werden können:
chmod 755 fhemstatus_on.sh
chmod 755 fhemstatus_off.sh

3. Folgende Symlinks erstellen
ln -s /etc/init.d/fhemstatus_on.sh /etc/rcS.d/S50fhemstatus_on.sh
ln -s /etc/init.d/fhemstatus_off.sh /etc/rc0.d/K20fhemstatus_off.sh
Die Ordner rcx.d bilden die Runlevel von Enigma2 ab. Die symlinks in rcS werd beim booten ausgeführt, die in rc0 beim shutdown. Sxx bzw. Kxx ist die Reihenfolge.

4. Fertig!

jetzt wird beim Booten automatisch der Status auf on gesetzt und beim herunterfahren auf off.


Viele Grüße,

Hades.

Hallo,

 habe mal versucht dein Beispiel nachzumachen,
 aber wenn ich den Befehl "nc 192.168.2.20 7072" auf der Dreambox absetze kommt als Antwort "ÿûPassword:"
 Er will also das Passwort haben!
 Wie kann ich dies mit nc übermitteln?
LG

Dieter

The truth is out there!

Predictor

Da ich kein extra shell Script wollte habe ich es direkt in FHEM gelöst und funktioniert bei mir super.

Also den Reciver per FHEM einschalten, ausschalten ...
alles was über das WI vom Reciver möglich ist (inkl. Textnachrichten)

Wenn das Thema noch interessant ist, melde dich einfach und ich poste meinen Code kurz (komme gerade nicht an meinen FHEM).
FHEM auf Fritz!Box 7390
FS20 per CUL

punker

Zitat von: Predictor schrieb am Di, 14 Mai 2013 18:19Da ich kein extra shell Script wollte habe ich es direkt in FHEM gelöst und funktioniert bei mir super.

Also den Reciver per FHEM einschalten, ausschalten ...
alles was über das WI vom Reciver möglich ist (inkl. Textnachrichten)

Wenn das Thema noch interessant ist, melde dich einfach und ich poste meinen Code kurz (komme gerade nicht an meinen FHEM).

@Predictor

wäre nett, wenn du deinen Code hier mal reinstellen würdest!
LG

Dieter

The truth is out there!

Predictor

Ich hatte natürlich auch hilfe aus dem Forum hier: ORIGINALTHREAD von mir

Hier wird ein Dummy Device angelegt und ein paar attr dazu:
define wz_Dreambox dummy
attr wz_Dreambox IPadress 192.168.0.1
attr wz_Dreambox room Wohnzimmer
attr wz_Dreambox setList on off


Hier wird der notify angelegt:
define DreamboxNotify notify wz_Dreambox {if(ReadingsVal('wz_Dreambox', 'state', 0) eq "on") { GetHttpFile(AttrVal('wz_Dreambox', 'IPadress', 0), "/web/powerstate?newstate=4")} elsif(ReadingsVal('wz_Dreambox', 'state', 0) eq "off") { GetHttpFile(AttrVal('wz_Dreambox', 'IPadress', 0), "/web/powerstate?newstate=5")} }
attr DreamboxNotify room Wohnzimmer


tada und schon lässt sich der Reciver ein und auschalten.

Du willst ja aber Nachrichten an die Box senden, dies geht auch einfach mit:
http://192.168.0.1/web/message?text=messagetext&type=1&timeout=10

Wenn den Link im Post von Alex anschaust, findest du weitere Kommandos.

Zitat von: alexmetz schrieb am Sa, 02 Februar 2013 22:36http://dreambox/web/powerstate?newstate={powerstate_number}
0 = Toogle Standby
1 = Deepstandby
2 = Reboot
3 = Restart Enigma2
4 = Wakeup form Standby
5 = Standby


Guck mal auch da: http://dream.reichholf.net/wiki/Enigma2:WebInterface
Da stehen alle Befehle, die Du das webif kann und die Du damit auch aus fhem nutzen kannst.

Aber Obacht: in einigen Details unterscheiden sich das original webif und openwebif, welches in neueren Images drin ist.

LG
Alex.


Das schöne an dieser Lösung ist -> keine Scripte oder veränderungen am Reciver selber.


Einen Nachteil hat die Sache bisher noch :-(
Im Log erscheint leider der komplette Rückgabewert (ganze Website), dies sieht leider so aus:
2013.05.01 10:55:34 3: DreamboxNotify return value: <?xml version="1.0" encoding="UTF-8"?>
<e2powerstate>
<e2instandby>false
</e2instandby>
</e2powerstate>

Evtl. kann mir jemand einen Schubs geben wie ich eine RegEx einbauen kann damit nur noch der Value (also true oder false gelogt wird) - ich finde da einfach keinen Ansatz.
FHEM auf Fritz!Box 7390
FS20 per CUL

punker

Danke schonmal!

Werde erst am WE dazu kommen es auszuprobieren!
LG

Dieter

The truth is out there!

Predictor

Hallo,

ich habe gerade diesen Post von meisterpe gefunden.
Ich habe es noch nicht getestet, aber schaut auf den ersten Blick ganz gut aus!


Grüße
Predi
FHEM auf Fritz!Box 7390
FS20 per CUL

cornelius fillmore

Zitat von: alexmetz schrieb am Sa, 02 Februar 2013 20:06Hallo zusammen,


Ziel: aktuellen Status (on|off) des Enigma2-Receivers in fhem anzeigen.


Alex: Kannst du mir noch mal den Auszug aus deiner fhem.cfg geben, bei mir klappt es irgendwie nicht.
Ich habe die Einträge auf eiener Dreambox gemacht aber leider kommen die Befehle nicht im Fhem an, bzw werden nicht weiter verarbeitet.
3 x Fhem 5.9 mit RPI

alexmetz

Zitat von: cornelius fillmore schrieb am Mi, 05 Juni 2013 22:44Alex: Kannst du mir noch mal den Auszug aus deiner fhem.cfg geben, bei mir klappt es irgendwie nicht.
Ich habe die Einträge auf eiener Dreambox gemacht aber leider kommen die Befehle nicht im Fhem an, bzw werden nicht weiter verarbeitet.

meine fhem.cfg:
define VUplus_Status dummy
attr VUplus_Status room Wohnzimmer,Geräte
attr VUplus_Status setList on off

define VUplus_Statuswechsel notify VUplus_Status:off "wget -q -O- 'http://vuduo/web/powerstate?newstate=1'"
attr VUplus_Statuswechsel room Wohnzimmer


mehr isses nicht. Das notify ist nur, damit man den VUplus/Dreambox von fhem aus ausschalten kann.

Das Skript auf der Dreambox setzt lediglich den dummy-Status auf an oder aus. .

Wenn das bei Dir nicht ankommt, dann geh mal als erstes mit telnet in die Dreambox und versuch den Status manuell zu setzen und schau ob das funktioniert:
echo set VUplus_Status off | nc fritz.box 7072
7072 ist der Standard-port von fhem. Die IP (bei mir fritz.box) und den Namen des Dummy (bei mir VUplus_Status) musst Du natürlich an Deine Verhältnisse anpassen.

Evtl kommt ja eine Fehlermeldung, dann weisst Du was falsch ist.
Evtl. hast Du ein passwort gesetzt, dann musst Du es mit angeben. Wie genau dann die Zeile lautet weiß ich akut nicht.
Evtl ist auch nc nicht auf Deiner Box installiert. Dann musst Du das installieren. Sollte aber drauf sein.

Hoffe das hilft ein wenig. Ansonsten nochmal melden.

LG
Alex.
FHEM auf RaspberryPi 4
Homematic

cornelius fillmore

Hallo Alex,

funktioniert beim manuell setzen sehr gut.

Aber automatisiert, sprich beim starten und beenden der Dreambox nicht.

Auch wenn ich versuche das script im Pfad /etc/init.d mit ./fhemstatus_on.sh zu starten geht dies nicht.
Er meckert ständig fhemstatus.. not found.
Die Rechte sind aber auf 755 eingestellt und mit ls sehe ich die beiden fhem-Stati.

Hast du noch ne Idee?
3 x Fhem 5.9 mit RPI

alexmetz

das kann ich mir nicht erklären. Es müsste gehen. Hab grade nochmal alles neu gemacht und getestet. Da muss irgendein Schreibfehler sein. Guck Dir nochmal die Dateinamen genau an und prüf auch nochmal die Rechte.
Ansonsten mach mal einen Screenshot.

LG
Alex.
FHEM auf RaspberryPi 4
Homematic

cornelius fillmore

So, ich hab den Fehler gefunden.
Ich hatte die scripte mit Proton und FileZilla erstellt.
Proton fügt aber mit jedem Zeilenumbruch ein Sonderzeichen hinzu.
Dieses führt dann zu dem Missverständnis.
Mit mcedit geht dass editieren einfach und schnell

Nochmal Danke für die Hilfe.

P.S. Bitte an die Mods: stellt diesen coolen Schnipsel ins Howto
3 x Fhem 5.9 mit RPI

UliM

Zitat von: cornelius fillmore schrieb am Fr, 07 Juni 2013 07:36P.S. Bitte an die Mods: stellt diesen coolen Schnipsel ins Howto
Hiho,
funktioniert hier anders: Bitte selbst Wiki-Account besorgen und dort Artikel einstellen.
=8-)
RPi4/Raspbian, CUL V3 (ca. 30 HomeMatic-devices), LAN (HarmonyHub, alexa etc.).  Fördermitglied des FHEM e.V.

Predictor

Zitat von: cornelius fillmore schrieb am Fr, 07 Juni 2013 07:36P.S. Bitte an die Mods: stellt diesen coolen Schnipsel ins Howto

Ich bin gerade dabei ein Modul zu schreiben, dies kommt dann auch ins Wiki (den Artikel gibt es schon, nur den Inhalt noch nicht) ;-)

Aktuell vorhanden:
    Nachrichten anzeigen (von MeisterPe)
    Ein-/Auschalten  (von MeisterPe)
    Komplette Fernbedienung in FHEM (gerade in arbeit - evtl. per Floorplan auch grafisch darstellbar => Idee ist im Samsung TV Thread hier)
    Scripten von FB befehlen (geplant) um Plugins die nur per FB zu bedienen sind aus FHEM ansprechen zu können (z.B. SHOUTcast)

Also noch ein wenig Geduld, ich hatte ja oben schon auf den Thread von MeisterPe verwiesen.
 
Grüße
Predi
FHEM auf Fritz!Box 7390
FS20 per CUL

cornelius fillmore

Gut ich hänge mich mit meinen Infos hinten dran, da die enigma-Boxen etwas anders funktionieren.
3 x Fhem 5.9 mit RPI

Predictor

Zitat von: Predictor schrieb am Sa, 08 Juni 2013 11:43Aktuell vorhanden:
    Nachrichten anzeigen (von MeisterPe)
    Ein-/Auschalten  (von MeisterPe)
    Komplette Fernbedienung in FHEM (gerade in arbeit - evtl. per Floorplan auch grafisch darstellbar => Idee ist im Samsung TV Thread hier)
    Scripten von FB befehlen (geplant) um Plugins die nur per FB zu bedienen sind aus FHEM ansprechen zu können (z.B. SHOUTcast)
Der Code für die FB ist so weit ok (Beta), ich habe den Code auch mal Uli gegeben um zu schauen wie die zwei Module am besten miteinander gekoppelt werden können.

Die Fehlerbehandlung im Scriptmodul fehlt noch komplett, da weis ich noch nicht genau wie ich die anpacke.
Hat wer zufällig eine dreambox oder ein anderes Gerät der mir mal Statuswerte geben könnte?
FHEM auf Fritz!Box 7390
FS20 per CUL

alexmetz

kann ich schon machen. Musst mir nur sagen, was ich tun soll bzw. was Du genau brauchst.
Hab VU+duo

Poste doch am besten den zu testenden Code hier mal

LG
Alex
FHEM auf RaspberryPi 4
Homematic

frankyaye

Sorry Fehlpost : habe jetzt erst die richtige WIKI gefunden

Loredo

Hat meine Arbeit dir geholfen? ⟹ https://paypal.me/pools/c/8gDLrIWrG9

Maintainer:
FHEM-Docker Image, https://github.com/fhem, Astro(Co-Maintainer), ENIGMA2, GEOFANCY, GUEST, HP1000, Installer, LaMetric2, MSG, msgConfig, npmjs, PET, PHTV, Pushover, RESIDENTS, ROOMMATE, search, THINKINGCLEANER

Predictor

Hallo,

ich konnte lange nicht mehr ins Forum schauen aber hatte auch schon mal ein Modul angefangen.
Ich hänge es einfach mal an.

@Loredo - evtl willst ja ein paar Funktionen aus meinem übernehmen.

Das Modul funktionierte bei mir (habe eine Dream mit Enigma 1.6 (kein Enigma 2.0 möglich da 7025+)).

Ich habe nur kurz reingeschaut in das Modul von Loredo -> du verwendest "use 5.012" davon hatte man mir abgeraten um es universel zu halten (hatte ich vorher auch drinnen, habe es aber umgehen können.

Da ich wahrscheinlich auch das nächste Jahr nur sehr selten ins Forum schauen kann bitte per mail melden (sende ich per PM an Loredo).
Wie gesagt wenn was verwenden willst -> gerne - bei fragen kurze mail


Grüße
Predictor
FHEM auf Fritz!Box 7390
FS20 per CUL

Mellowback

Hallo,

Ich habe die II Einfache Funktion genauso hinterlegt.
Das OFF Signal kommt bei fhem an, der ON Befehl allerdings nicht.
Wenn ich die fhemstatus_on.sh manuell ausführe bekomme ich das ON Signal auf fhem.

Kann es sein das beim hochfahren der Box noch keine Verbindung zum Router besteht ?
Was kann man da machen ?

Hab übrigens eine VU+ Zero

Vorab Danke

Mellowback

Hallo zusammen,

wie muss ich das script anpassen, wenn bei fhem ein Passwort hinterlegt wurde ?


#!/bin/sh
echo set VUplus_Status on | nc fritz.box 7072
exit 0