[Q] Hilfe gesucht: Loewe Connect ID DR+ Smart-TV mit FHEM steuern

Begonnen von der.einstein, 08 April 2017, 15:40:50

Vorheriges Thema - Nächstes Thema

der.einstein

Zitat von: viegener am 20 Oktober 2017, 13:05:56
Ja, es braucht definitv keine eigene Timerroutine, ich würde aber den RequestAccess-Call gerne vom Alter des letzten Calls abhängig machen und dafür einen Parameter/Attribut spendieren.
Mein Vorschlag - Man stellt auch ein Interval für RequestAccess ein (accessInterval) und die Timerroutine prüft dann ob dieses Alter schon überschritten ist. Dazu muss accessInterval grösser als interval sein (ich brauche nicht alle 15 Sekunden den Mute/Volume-Wert, da diese bei mir sowieso sinnlos sind (Audio läuft über HDMI an einer 5.1-Anlage).

Die Channellist würde ich normalerweise gar nicht regelmässig holen, sondern nur auf Anforderung und wenn keine Daten da sind.

GetDeviceData ebenfalls, ich baue dafür in Module normalerweise ein reset ein, mit dem man dafür sorgen kann, dass alle Daten neu geholt werden.

Also
- accessInterval neues Attribut (> interval)
- deviceData und channellist werden geholt wenn keine passenden Daten vorhanden sind oder nach reset oder auf expllizite Anforderung (set/get)
- access token wird neu angefordert, wenn älter als accessInterval
- Volume und Mute status werden bei jedem Durchlauf timer-Routine abgeholt

Alles natürlich nur wenn "present"
Hört sich nach einem sehr guten Vorschlag an, Danke dafür.

Ich hab gelsen, dass man bei den Readings auch einfach das Alter auslesen kann? Also die Uhrzeit, die im FHEMWEB neben dem Reading steht. Kann man das nicht einfach gegen die aktuelle Zeit vergleichen?

Was ich noch unbedingt in der Timer Routine hätte ist GetCurrentPlayback sowie GetCurrentEvent.

Zusammen mit GetDeviceData und den Kanallisten sollten wir auch einmal alle Settings abholen.

Grüße.

Gesendet von meinem LG-D855 mit Tapatalk


viegener

Zitat von: der.einstein am 20 Oktober 2017, 13:15:10
Ich hab gelsen, dass man bei den Readings auch einfach das Alter auslesen kann? Also die Uhrzeit, die im FHEMWEB neben dem Reading steht. Kann man das nicht einfach gegen die aktuelle Zeit vergleichen?

Genau das wäre die Art das in FHEM zu machen, das ReadingAlter als Massgabe für einen neuen RequestAccess zu verwenden
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

Hab gerade mal die Version 49 hochgeladen, in der die oben beschriebenen Änderungn der timer-Routine enthalten sind
Einzige Abweichung volume, mute status und current event werden immer noch erst bei jedem 2. Durchlauf geholt.
Also presence bei jedem Durchlauf, loewe infos nur bei jedem 2.Durchlauf

Ausserdem habe ich noch ein paar Korrekturen um die channellist vorgenommen und ein reset set-befehl hinzugefügt, wenn der Device zum Testen mal zurückgesetzt werden soll.

Ein bisschen habe ich es auch bei mir getestet  ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

der.einstein

Zitat von: viegener am 22 Oktober 2017, 19:02:06
Hab gerade mal die Version 49 hochgeladen, in der die oben beschriebenen Änderungn der timer-Routine enthalten sind
Einzige Abweichung volume, mute status und current event werden immer noch erst bei jedem 2. Durchlauf geholt.
Also presence bei jedem Durchlauf, loewe infos nur bei jedem 2.Durchlauf

Ausserdem habe ich noch ein paar Korrekturen um die channellist vorgenommen und ein reset set-befehl hinzugefügt, wenn der Device zum Testen mal zurückgesetzt werden soll.

Ein bisschen habe ich es auch bei mir getestet  ;)
Geiler Scheiss, Danke.
Kann es leider erst morgen testen, da ich Grad außer Haus bin.

Grüße.

Gesendet von meinem LG-D855 mit Tapatalk


der.einstein

Hat sehr lange funktioniert. Komischerweise hab ich jetzt einen Fehler bekommen, den ich den Readings entnommen habe:
presence

Could not execute ping command


Keine Ahnung woher der kommt.
Jedenfalls Krieg ich ihn nicht wieder weg.

Gesendet von meinem LG-D855 mit Tapatalk


CoolTux

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

der.einstein

Zitat von: CoolTux am 24 Oktober 2017, 18:26:36
Mach mal als FHEM User ein ping
War ne gute Idee eigentlich. Das Ping auf den TV hat aber damit geklappt.

Gesendet von meinem LG-D855 mit Tapatalk


viegener

Zitat von: der.einstein am 24 Oktober 2017, 18:57:48
War ne gute Idee eigentlich. Das Ping auf den TV hat aber damit geklappt.

Gesendet von meinem LG-D855 mit Tapatalk

?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

der.einstein

Ein delete und neues define hat nicht geholfen.
Er bleibt jetzt bei "presence initialized" stehen.
Im fhem log steht "2017.10.24 18:58:43 1: Cannot fork: Cannot allocate memory".

Gesendet von meinem LG-D855 mit Tapatalk


CoolTux

Fhem neu starten oder schlimmer Pi neu starten. Da ist dein RAM am Ende
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

der.einstein

Zitat von: CoolTux am 24 Oktober 2017, 19:14:39
Fhem neu starten oder schlimmer Pi neu starten. Da ist dein RAM am Ende
FHEM Neustart ging gut, jetzt klappt alles wieder.
Komisch, dass das ein Problem mit dem RAM gibt bei 2 GB auf einem Single Borad Computer (Odroid64). Hatte ich noch nie, aber einmal ist eben immer das erste mal...

Gesendet von meinem LG-D855 mit Tapatalk


der.einstein

So, hatte jetzt die Version 0.0.49 gestern und heute laufen.
Ich hab den accessinterval auf 90 sec gestellt.
Das hat super geklappt. Auch kein Problem mit dem Ping, keine Ahnung warum das war.
Allerdings ist mir aufgefallen, dass der TV ja zwischen Frühstück und Abends aus war, FHEM aber fleissig das Presence Reading (was ja so gewollt ist) und das Access Reading (was so nicht gewollt ist) aktualisiert hat, als der TV aus war.
Wie können wir das beheben?

Auf jeden Fall schon mal ne sehr gute Version bis hier [emoji106][emoji106][emoji106]

Gesendet von meinem LG-D855 mit Tapatalk


viegener

Zitat von: der.einstein am 25 Oktober 2017, 20:02:51
Allerdings ist mir aufgefallen, dass der TV ja zwischen Frühstück und Abends aus war, FHEM aber fleissig das Presence Reading (was ja so gewollt ist) und das Access Reading (was so nicht gewollt ist) aktualisiert hat, als der TV aus war.
Wie können wir das beheben?

einfach mal event-on-change-reading .* setzen?

m.a.W. - das reading wird upgedated aber es wird kein access zugriff ausgeführt. Ist das ein Problem?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

der.einstein

Zitat von: viegener am 25 Oktober 2017, 21:53:30
einfach mal event-on-change-reading .* setzen?

m.a.W. - das reading wird upgedated aber es wird kein access zugriff ausgeführt. Ist das ein Problem?
Wir könnten doch einfach noch ein LoeweTV_IsPresent() einfügen?

Gesendet von meinem LG-D855 mit Tapatalk


viegener

Zitat von: der.einstein am 25 Oktober 2017, 21:58:20
Wir könnten doch einfach noch ein LoeweTV_IsPresent() einfügen?


Ist doch schon da, es geht ja gerade darum access ZURÜCK zu setzen, wenn der Loewe NICHT präsent ist
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können