FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Pascal94 am 21 September 2017, 14:27:19

Titel: Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Pascal94 am 21 September 2017, 14:27:19
Hallo,

ich habe einen Samsung Fernseher und dieser ist in FHEM eingetragen. Wenn er eingeschaltet ist steht dort opened. Und wenn er auschgeschaltet ist steht dort disconnected. Jetzt wollte ich einen dummy erstellen um den status in ein on oder off "umzuwandeln". Dies benötige ich für die anzeige in der Tablet UI. Dazu habe ich folgenden Code.

define Wohnzimmerfernseherstatus dummy

define Wohnzimmerfernseherstatuschangeon notify SamsungTV { if (ReadingsVal("SamsungTV","state","opened")){ fhem("set Wohnzimmerfernseherstatus on")} }
define Wohnzimmerfernseherstatuschangeoff notify SamsungTV { if (ReadingsVal("SamsungTV","state","disconnected")){ fhem("set Wohnzimmerfernseherstatus off")} }


Wenn ich den fernseher anschalte schaltet der dummy auf on.

Schalte ich den fernseher aber aus und der Status geht auf disconnected. Bleibt der dummy auf on. Ich finde leider meinen fehler nicht.

Dankeschön

Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: CoolTux am 21 September 2017, 14:34:01
Ganz schön kompliziert. Wenn Du das nur für TabletUI brauchst dann lege ein userReading an.
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Pascal94 am 21 September 2017, 14:48:39
Ok danke erstmal. Über den Dummy mit on und off sollte der fernseher später auch mal an bzw. aus geschaltet werden. Webcmd in fhem. Bin leider anfänger und habe von dem User reading erstmal keine ahnung. Ist es denn damit möglich dann auch zu schalten?

Ist der code oben wenn er auch kompliziert ist denn falsch? Leider geht es damit nicht.
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Beta-User am 21 September 2017, 14:57:34
An sich sollte das schon durch geeignete Darstellungsvorgaben am Gerät SamsungTV gehen.

Wenn du mehr brauchst, schau dir mal readingsGroup an.

Damit kann man auch die Schaltbefehle hinterlegen, auch zu ganz anderen Devices (IR-FB usw.).

Beispiele gibt es einige im Wiki, oder auch hier ein etwas komplizierteres: https://forum.fhem.de/index.php/topic,75020.msg668780.html#msg668780
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: CBSnake am 21 September 2017, 16:13:52
Hi,

welches Widget nutzt du dafür im FTUI?
Je nach Widget kannst du dort vorgeben, dass opened als Ein (Symbol farbig) und disconnected als aus (Symbol grau) interpretiert wird.
Für das spätere on/off schalten kannst ein weiteres Reading in das TV Device schreiben und darauf dann triggern, spart den extra Dummy :-)
Geht z.B. mit dem Switch Widget da können für Anzeige und schalten 2 unterschiedliche Readings genutzt werden.

<div data-type="switch" data-device="SamsungTV" data-cmd="setreading" data-set="schalten" data-get="state"  data-get-on="opened" data-get-off="disconnected" data-set-on="ein" data-set-off="aus" ></div>

Grüße
Achim
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: rabehd am 21 September 2017, 16:16:18
Wieso 2 notify?
Wie wäre es mit "else" und "elseif"?

Hast Du denn ein Event zu dem von Dir gewünschten Zeitpunkten?
Wie wäre es mit einem Logeintag anstatt dem set, so zum Testen?
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: rabehd am 21 September 2017, 16:21:36
Was willst Du verwenden? Mal schreibst Du Tablet UI, dann wieder Webcmd.

Für das letzte habe ich mich bei Otto bedient:
https://heinz-otto.blogspot.de/2017/01/ein-remote-taster-in-fhem-mit.html (https://heinz-otto.blogspot.de/2017/01/ein-remote-taster-in-fhem-mit.html)
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: CoolTux am 21 September 2017, 16:24:22

define Wohnzimmerfernseherstatuschangeon notify SamsungTV:opened set Wohnzimmerfernseherstatus on
define Wohnzimmerfernseherstatuschangeoff notify SamsungTV:disconnected set Wohnzimmerfernseherstatus off

Wenn es denn zwei sein sollen


define Wohnzimmerfernseherstatuschangeon notify SamsungTV:(opened|disconnected) { fhem("set Wohnzimmerfernseherstatus " . ($EVENT eq "opened" ? "on" : "off") }

Wenn es nur ein Notify sein soll
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Pascal94 am 21 September 2017, 17:06:18
Zitat von: CBSnake am 21 September 2017, 16:13:52


<div data-type="switch" data-device="SamsungTV" data-cmd="setreading" data-set="schalten" data-get="state"  data-get-on="opened" data-get-off="disconnected" data-set-on="ein" data-set-off="aus" ></div>

Den code habe ich nun angepasst und das klappt. Danke!

Zitat von: CoolTux am 21 September 2017, 16:24:22

define Wohnzimmerfernseherstatuschangeon notify SamsungTV:opened set Wohnzimmerfernseherstatus on
define Wohnzimmerfernseherstatuschangeoff notify SamsungTV:disconnected set Wohnzimmerfernseherstatus off

Wenn es denn zwei sein sollen


define Wohnzimmerfernseherstatuschangeon notify SamsungTV:(opened|disconnected) { fhem("set Wohnzimmerfernseherstatus " . ($EVENT eq "opened" ? "on" : "off") }

Wenn es nur ein Notify sein soll

Geht leider beides auch nicht. Der dummy passt sich nicht an. Bei opened geht er auf on aber bei disconnected nicht auf off

Zitat von: rabehd am 21 September 2017, 16:21:36
Was willst Du verwenden? Mal schreibst Du Tablet UI, dann wieder Webcmd.

Für das letzte habe ich mich bei Otto bedient:
https://heinz-otto.blogspot.de/2017/01/ein-remote-taster-in-fhem-mit.html (https://heinz-otto.blogspot.de/2017/01/ein-remote-taster-in-fhem-mit.html)

am liebsten einen dummy mit webcmd das ich per klick an und aus machen kann. Und dieser dummy lässt sich dann super einfach in die tablet ui als fernseher einbinden!

Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: CoolTux am 21 September 2017, 17:14:23
Dann stimmt Dein Event nicht. Bitte im Eventmonitor schauen was da genau kommt. Da kannst dann auch gleich ein notify für disonnected anlegen lassen.
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Mundus am 21 September 2017, 17:50:11
Hi,

ich habe vor einem ähnlichen Problem gestanden, zumal der state opened bei mir auch angezeigt wird, wenn das Gerät aus ist. Ich habe mir mit einem Presence-Device und einem Notify weitergeholfen.

define pr_SamsungTV PRESENCE lan-ping 192.168.XXX.XXX

Mein Notify sieht dann wie folgt aus
defmod nt_SamsungTV notify pr_SamsungTV:.* {\
my $prSamsung = Value('pr_SamsungTV');;\
if ($prSamsung eq "present") {\
fhem "setstate SamsungTV POWERON";;\
} else {\
fhem "setstate SamsungTV POWEROFF";;\
}\
}

Achtung, ich arbeite mit setstate, da ich nicht ständig weitere notifys getriggert haben möchte. In meinem TabletUI habe ich den Fernseher dann wie folgt eingebunden:
<div    data-type="switch"
                data-device="pr_SamsungTV"
                data-get="STATE"
                data-get-on="present"
                data-get-off="!on"
                data-icon="oa-it_television"
                data-on-color="green" 
                data-off-color="red"
                data-background-color="blue"
                data-background-icon="fa-none"
                data-set-on=""
                data-cmd="set SamsungTV POWEROFF"
                class="">
        </div>


Das gesamte Konstrukt läuft tadellos. Ich weiß natürlich nicht, ob es optimal ist, aber nach vielem Probieren ist dies zumindest lauffähig.

Gruß Mundus
Titel: Antw:Dummy mit inhalt füttern von Samsung TV Probleme mit notify
Beitrag von: Pascal94 am 21 September 2017, 18:27:26
Zitat von: Mundus am 21 September 2017, 17:50:11
Hi,

ich habe vor einem ähnlichen Problem gestanden, zumal der state opened bei mir auch angezeigt wird, wenn das Gerät aus ist. Ich habe mir mit einem Presence-Device und einem Notify weitergeholfen.


Vielen Dank, dies funktioniert tadelos! DANKE!!