Dreamscreen Ambilight Phyton Script in Fhem einbinden

Begonnen von Commander, 08 März 2018, 08:33:51

Vorheriges Thema - Nächstes Thema

Commander

Hallo
ich habe mir ein Dreamscreen 4K gekauft. https://www.dreamscreentv.com/ Muss sagen es macht echt Spass und sieht fantastisch aus. Die Bedienung funktioniert bisher nur über die App. Jetzt hat jemand ein Pyhton Script erstellt und ich frage mich in wieweit man es damit in Fhem einbinden kann. Mein Ziel ist es das Gerät über meine Harmony zu steuern bzw. wenn ich bestimmt Aktionen wähle der Dreamscreen ein/aus und der richtige Eingang mit umgeschaltet wird. Das Script gibt es hier:https://github.com/genesisfactor/DreamScreenCommander
Bevor ich jetzt versuche das Teil in Fhem einzubinden hab ich aber noch ein paar Grundsatzfragen.
1. Wohin kopiere ich mir das Script am besten? /opt , /opt/fhem , /opt/fhem , /opt/fhem/FHEM,
2. Wie würdet ihr bestimmte Sachen damit auslösen? Mit einem DOIF und dann python <path-to-this-file> <option> <value>?

Vielen Dank
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

Fixel2012

Zitat von: Commander am 08 März 2018, 08:33:51
1. Wohin kopiere ich mir das Script am besten? /opt , /opt/fhem , /opt/fhem , /opt/fhem/FHEM,

Dies ist dir überlassen, hauptsache Fhem hat die Berechtigung um auf das script zu zugreifen.

Macht aber wahrscheinlich am meisten Sinn, wenn du es unter /opt/fhem ablegst.

Zitat2. Wie würdet ihr bestimmte Sachen damit auslösen? Mit einem DOIF und dann python <path-to-this-file> <option> <value>?

Sollte zumindest so funktionieren.
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

Commander

Vielen Dank für deine Antwort.
hab jetzt folgendes probiert:
define Dreamdummy dummy
attr Dreamdummy webCmd on:off
define DS_on notify Dreamdummy:on {system('python /opt/fhem/dreamscreen.py m -1')}


Leider ohne Erfolg.

also in der Linux Shell reicht ein einfaches python /opt/fhem/dreamscreen.py m -1 um das Gerät einzuschalten.
Ich befürchte es hat was mit den Rechten zutun.  :-[ hab das Script zu testen mit Chmod 777 freigegeben aber läuft leider nicht
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

Otto123

Hi,

was sagt die Fehlermeldung?

Sonst schreib alles einfach in eine Datei script.sh und rufe diese auf mit "script.sh"
https://fhem.de/commandref_DE.html#command

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CoolTux

#4

define DS_on notify Dreamdummy:on "python /opt/fhem/dreamscreen.py m -1"


Und wenn Du es mal so machst
Das Notify triggert aber?

Das Beispiel sieht aber anders aus


python dreamscreen.py -i 192.168.1.2 -m 0


Hast Du Deine IP vergessen?
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Commander

Erstmal vielen Dank für die tolle Hilfe.
die IP muss man nur angeben wenn man selbere im Script keine IP angegeben hat bzw mehrere Geräte besitzt.
Ich habs jetzt hinbekommen mit:
define DS_on notify Dreamdummy:on  {system("sudo python /opt/fhem/dreamscreen.py -m 1")}

Jetzt überlege ich halt wie ich am besten die gesamten Befehle einbinde.
-Changing Modes: -m (off,1,2,3)
-Changing Brightness: -b (0-100)
-Changing Sources: -s (1-3)

Bekommt dann z.B. jeder Mode ein Dummy OFF,1,2,3 oder kann man dies in ein Dummy packen?
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

CoolTux

define DS_on notify Dreamdummy:on  {system("sudo python /opt/fhem/dreamscreen.py -m 1")}

Das blockiert aber Dein FHEM.
define DS_on notify Dreamdummy:on "sudo python /opt/fhem/dreamscreen.py -m 1"

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Commander

Oh vielen Dank für den Hinweis.
FUnktioniert aber beides.
Was meinßt du mit blockieren?
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

Otto123

Ein Python Script welches über eine IP irgendwas steuert braucht sudo? Wie dumm ist das denn?!
Warum geht es - wie Du sagst einfach in der linux shell?

sudo auf alles für fhem ist ein potentielles Sicherheitsrisiko!

Aber das will ja meist keiner hören  :-[

blockieren heisst: Dein script läuft 10 min und während dieser Zeit läuft dein FHEM nicht!

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Commander

Auch dir vielen Dank für die Tipps. Hab`s jetzt geändert:
define Dreamdummy dummy
attr Dreamdummy webCmd off:Tv:Music:Ambient
define DS_off notify Dreamdummy:off  "python /opt/fhem/dreamscreen.py -m 0"
define DS_TV notify Dreamdummy:Tv  "python /opt/fhem/dreamscreen.py -m 1"
define DS_Music notify Dreamdummy:Tv  "python /opt/fhem/dreamscreen.py -m 2"
define DS_Ambient notify Dreamdummy:Ambient  "python /opt/fhem/dreamscreen.py -m 3"


Kann ich dem Dummy noch irgendwie die Brightness hinzufügen?
Changing Brightness: -b (0-100)
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

CoolTux

Mach es mal bitte so


Internals:
   CFGFN     
   NAME       Dreamdummy
   NR         86
   STATE      on
   TYPE       dummy
   READINGS:
     2018-03-08 11:29:41   ambient         20
     2018-03-08 11:29:38   state           on
Attributes:
   readingList ambient input
   room       Test
   setList    on:noArg off:noArg input:TV ambient:slider,0,5,100
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

CoolTux

Hier ein passendes Notify

Internals:
   CFGFN     
   DEF        Dreamdummy.* {
fhem("python /opt/fhem/dreamscreen.py -m 0") if( $EVENT eq 'off');
fhem("python /opt/fhem/dreamscreen.py -m 1") if( $EVTPART1 eq 'TV');
fhem("python /opt/fhem/dreamscreen.py -m 3 -b $EVTPART1") if( $EVTPART0 eq 'ambient:');
}
   NAME       notifyDreamDummy
   NOTIFYDEV  Dreamdummy.*
   NR         142
   NTFY_ORDER 50-notifyDreamDummy
   REGEXP     Dreamdummy.*
   STATE      active
   TYPE       notify
   READINGS:
     2018-03-08 11:36:24   state           active
Attributes:


Wirst aber noch kleine Fehlermeldung bekommen. Das schauen wir uns dann an.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Commander

Danke werd ich probieren. Werd jetzt aber erstmal zur Arbeit fahren  :)
FHEM5.6 auf Intel NUC NUC5PPYH
HM-CFG-USB-2 / HMLAN
CUL 433 CUL 868 / WMBus_T (Techem) JeeLink
MAX! Cube,Logitech Harmony Hub,Philips Hue

CoolTux

Hier ist ein sauberes Notify


Internals:
   CFGFN     
   DEF        Dreamdummy.* {
my ($cmd,$value) = split(':',$EVENT);
fhem("python /opt/fhem/dreamscreen.py -m 0") if( $cmd eq 'off');
if( defined($value) ) {
fhem("python /opt/fhem/dreamscreen.py -m 1") if( $value eq 'TV');
fhem("python /opt/fhem/dreamscreen.py -m 3 -b $value") if( $cmd eq 'ambient:');
}
}
   NAME       notifyDreamDummy
   NOTIFYDEV  Dreamdummy.*
   NR         142
   NTFY_ORDER 50-notifyDreamDummy
   REGEXP     Dreamdummy.*
   STATE      active
   TYPE       notify
   READINGS:
     2018-03-08 11:47:39   state           active
Attributes:
   room       Test




Viel Erfolg
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Badflex

Hat es denn geklappt?
Mir würde es schon reichen wenn es über eine alexa routine mit an oder aus geht.
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo