XBMC -> FHEM

Begonnen von Zwiebel, 23 August 2013, 18:55:42

Vorheriges Thema - Nächstes Thema

Zwiebel

Hallo,

ich hab ein XBMC Modul geschrieben mit dem man FHEM steuern kann. (ein modul für XBMC nicht für FHEM)

Hintergrund ist der: Mein NAS läuft nicht dauernt. Kann aber und via FHEM angeschaltet werden. Relais board an der Fritzbox(FHEM).
Jetzt war es immer notwendig per Smartphone oder PC das NAS auf "on" zu schalten.

Das geht jetzt gleich aus dem XBMC raus.

Mal schauen wie das mit dem add-on funktioniert. Vielleicht bekomm ich noch mehr implementiert..

gruß
Zwiebel

Puschel74

Hallo,

cool.
Ab ins Wiki damit bitte.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

reacend

#2
Coole Sache,
wollte gestern auch was dazuprogrammieren, aber naja meine kentnisse in Python sind doch recht begrenzt.
genial wäre eine Steuerung der lichter, wenn z.b. Der Film anfängt usw.

Und eventuell mehrere geräte die man einschalten bzw. ausschalten kann, die man hinzufügt...

Geht das?

BG,
Mark

Hans Franz

#3
Zitat von: reacend am 18 Oktober 2013, 21:20:02
genial wäre eine Steuerung der lichter, wenn z.b. Der Film anfängt usw.

Yep,
Ich hoffe Zwiebel macht noch weiter.
Aber Dank copy and paste bin ich auf das hier gekommen:
http://www.jordanhackworth.com/home-automation-with-xbmc/

In ~/.xbmc/scripts/ folgenden Code als playeraction.py speichern

import xbmc,xbmcgui
import subprocess,os

class MyPlayer(xbmc.Player) :
 
  def __init__ (self):
      xbmc.Player.__init__(self)
   
  def onPlayBackStarted(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A on"')
     
  def onPlayBackEnded(self):
    if (VIDEO == 1):
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackStopped(self):
    if (VIDEO == 1):
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackPaused(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackResumed(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A on"')
     
player=MyPlayer()

VIDEO = 0

while not xbmc.abortRequested:
  if xbmc.Player().isPlaying():
    if xbmc.Player().isPlayingVideo():
      VIDEO = 1
    else:
      VIDEO = 0
  xbmc.sleep(1000)


Den wget-String natürlich anpassen.

In ~/.xbmc/userdata/ noch folgendes als autoexec.py
import os
import xbmc
xbmc.executescript('special://home/scripts/playeraction.py')


Funktioniert bei mir ausgezeichnet.

Gruss
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

Makkoo

Cool das gefällt mir :)
So kann ich theater Light simulieren :)

dennisb

Hi,

mit dem XBMC Modul (ab sofort im SVN, sollte ab morgen übers update ausgeliefert werden) kann man auch auf play, pause, etc. reagieren. Hier ein Beispiel:
define xbmc_lighton notify xbmcDeviceName.playStatus:.playing set Lampenname on
define xbmc_lightoff notify xbmcDeviceName.playStatus:.playing set Lampenname off

Das ist eventuell auch interessant für euch.

Gruß
Dennis

strauch

Cool wäre so ein Dashboard für Xbmc, wo man sich die Infos die man gerne hätte am XBMC anschauen kann. Temperaturen, sind die Fenster offen oder zu o.ä.
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

d0np3p3

Ja und auch steuern kann, das wäre nice.
Da fällt mir ein ich werde gleich mal ein notify schreiben das die Heizung nicht auf 17°C runterregelt, solange der XBMC spielt...
FHEM: Raspberry Pi (COC) & Fritz 7270 (freetz FHEM2FHEM)
IT (Elro AB440 AB600D) - Max! (6*regler 1*Thermostat 5*Fenster) Hue Bridge mit Bulbs - 2*Living-white Adapter - Iris
XBMC (Zbox) 4*SqueezeRadios 3*squeezelite dbox
AndFhem (Nexus4)

strauch

Gute Idee :-)

Gesendet von meinem Nexus 4 mit Tapatalk

FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

Hans Franz

Zitat von: strauch am 09 Januar 2014, 11:17:49
Cool wäre so ein Dashboard für Xbmc, wo man sich die Infos die man gerne hätte am XBMC anschauen kann. Temperaturen, sind die Fenster offen oder zu o.ä.
Gibt es, allerdings nur rudimentär. Ist auch schon 2 Jahre alt und bedingt ein Erweitern/Ändern des Quellcodes sowie ein sehr mühsames Gefummel im Code (xml) des Skins.
https://github.com/Memphiz/script.xbmc.fhem/tree/master/script.xbmc.fhem

Gruß
Hans

Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

SirMarco

Zitat von: Hans Franz am 21 Oktober 2013, 02:35:55
Yep,
Ich hoffe Zwiebel macht noch weiter.
Aber Dank copy and paste bin ich auf das hier gekommen:
http://www.jordanhackworth.com/home-automation-with-xbmc/

In ~/.xbmc/scripts/ folgenden Code als playeraction.py speichern

import xbmc,xbmcgui
import subprocess,os

class MyPlayer(xbmc.Player) :
 
  def __init__ (self):
      xbmc.Player.__init__(self)
   
  def onPlayBackStarted(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A on"')
     
  def onPlayBackEnded(self):
    if (VIDEO == 1):
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackStopped(self):
    if (VIDEO == 1):
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackPaused(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A off"')
     
  def onPlayBackResumed(self):
    if xbmc.Player().isPlayingVideo():
      os.system('wget "http://raspberrypi:8083/fhem?cmd=set ELRO_F0000_A on"')
     
player=MyPlayer()

VIDEO = 0

while not xbmc.abortRequested:
  if xbmc.Player().isPlaying():
    if xbmc.Player().isPlayingVideo():
      VIDEO = 1
    else:
      VIDEO = 0
  xbmc.sleep(1000)


Den wget-String natürlich anpassen.

In ~/.xbmc/userdata/ noch folgendes als autoexec.py
import os
import xbmc
xbmc.executescript('special://home/scripts/playeraction.py')


Funktioniert bei mir ausgezeichnet.

Gruss
Hans

Echt Klasse :-) Es läuft bei mir....

Noch eine Idee wie man das ganze ich Cinema Experience einbauen kann?

Hans Franz

Zitat von: SirMarco am 26 Januar 2014, 13:22:07
Noch eine Idee wie man das ganze ich Cinema Experience einbauen kann?

Cinema Experience habe ich noch nicht benutzt, aber mir gerade 'mal angeschaut(OK, nur quergelesen):Die Datei home_automation.py sieht vielversprechend aus und scheint genau dafür  gedacht zu sein:.# place code below this line

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

Hans Franz

#12
Hallo,

Ich hab' da 'mal 'was gebastelt..
Um nicht mühsam für jeden Skin in XBMC den XML-Code zu bearbeiten, wie es für das Script von Memphiz erforderlich ist, habe ich es etwas umgeschrieben.
Es ist jetzt ein Programm in XBMC und zieht sich seine Informationen aus einem Dummy mit einem userattr namens xbmcInfo.

Das globale Attribut userattr muss mit "xbmcInfo" erweitert werden.
Entweder händisch oder so:
{fhem ("attr global userattr $attr{global}{userattr}"." xbmcInfo")}

Dann einen Dummy definieren und ihm das Attribut xbmcInfo verpassen.

Schema:
attr <dummy-name> xbmcInfo <TYPE> <Reading[|Alias]> <[Reading[|Alias]]>...


Beispiele:
define xbmc_dummy dummy
attr xbmc_dummy xbmcInfo CUL_WS temperature|Temperatur humidity|Luftfeuchte

define xbmc_dummy2 dummy
attr xbmc_dummy2 xbmcInfo PID20 actuation|Ventil desired|Soll measured|Ist delta p_p|P-Anteil p_i|I-Anteil

       
Gruß
Hans

Edith:
Version mit jsonlist2 statt xmllist
Sollte jetzt auch in Gotham installierbar sein.
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Cool erst einmal Danke für das Skript. Allerdings bekomme ich beim Empfangen der XML Liste einen Fehler angezeigt. Any hints?

14:50:57 T:2706373440   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <class 'xml.parsers.expat.ExpatError'>
                                            Error Contents: not well-formed (invalid token): line 1479, column 67
                                            Traceback (most recent call last):
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/fhemmain.py", line 48, in <module>
                                                fetchFhem()
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/fhemmain.py", line 41, in fetchFhem
                                                ret = fhem_fetch(hostip, hostport, telnetpasswd)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 65, in fhem_fetch
                                                ret = fhem_parseXML(xmlstr)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 90, in fhem_parseXML
                                                fhemcontents = xmltree.fromstring(xmlstr)
                                              File "/home/murdoc/.xbmc/addons/script.module.elementtree/lib/elementtree/ElementTree.py", line 1012, in XML
                                                return api.fromstring(text)
                                              File "/home/murdoc/.xbmc/addons/script.module.elementtree/lib/elementtree/ElementTree.py", line 182, in fromstring
                                                parser.feed(text)
                                              File "/home/murdoc/.xbmc/addons/script.module.elementtree/lib/elementtree/ElementTree.py", line 1292, in feed
                                                self._parser.Parse(data, 0)
                                            ExpatError: not well-formed (invalid token): line 1479, column 67
                                            -->End of Python script error report<--
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Hallo,

Sorry, aber ich befürchte, deine XML-Liste ist nicht ganz korrekt. Hatte ich vor Monaten auch einmal, weiß aber die genauen Umstände nicht mehr. Ist oft schwer zu finden :'(

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Hm und nun? Ich habe mir die LIste mit xmllist angeschaut und wenn ich sie im Browser öffne meckert diese <> an u.a. bei den readingsgroup.
Wie kann ich vorgehen?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Der Browser ist zu Validierung, denke ich, weniger geeignet. Du könntest es mit einem Online-Validator versuchen, aber die werfen auch bei funktionierenden XML-Listen einige Fehler aus. Aber vlt. kannst du das Problem damit einkreisen.
Bei mir war es damals, so glaube ich mich zu erinnern, ein verwaister Eintrag auf ein nicht mehr genutztes und vergessenes Device ::) mit fehlerhaftem Eintrag.
Die < und > Zeichen aus readingGroups habe auch ich massenhaft. Sie werden eigentlich durch "&lt" und "&gt" ersetzt.

Gruß
Hans

Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Zitat von: Hans Franz am 02 März 2014, 16:59:50
Der Browser ist zu Validierung, denke ich, weniger geeignet. Du könntest es mit einem Online-Validator versuchen, aber die werfen auch bei funktionierenden XML-Listen einige Fehler aus. Aber vlt. kannst du das Problem damit einkreisen.
Bei mir war es damals, so glaube ich mich zu erinnern, ein verwaister Eintrag auf ein nicht mehr genutztes und vergessenes Device ::) mit fehlerhaftem Eintrag.
Die < und > Zeichen aus readingGroups habe auch ich massenhaft. Sie werden eigentlich durch "&lt" und "&gt" ersetzt.

Gruß
Hans

Kannst du mir einen Tipp geben wie ich die nicht mehr genutzten Devices finde?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Hallo,
Das wird schwierig. Ich weiß nicht, wie ich den Fehler einer nicht zu parsenden  Liste bei mir provozieren könnte und bin mir deshalb auch nicht sicher, ob die Fehlermeldung:
Error Contents: not well-formed (invalid token): line 1479, column 67
auf die Zeile in der XML-Liste hinweist.
Wenn ja: Um welches Device handelt es sich? Stimmt bei den Attributen alles?

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Hilft dir meine xmllist?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

#20
Eventuell. Denk an die Code-Tags oder per e-mail.

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Ok ich schicke es dir per Email. (schau mal nach deinen PMs) Danke im Voraus für deine Hilfe.
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

P.A.Trick

Hans ich habe mal versucht (wirklich versucht, ich glaube ich bin zu alt für den Wiki Code  :)) einen XBMC Wiki Artikel zu erstellen.

http://www.fhemwiki.de/wiki/XBMC
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Hallo Patrick,

Zitat von: P.A.Trick am 03 März 2014, 10:38:49
Hans ich habe mal versucht (wirklich versucht, ich glaube ich bin zu alt für den Wiki Code  :)) einen XBMC Wiki Artikel zu erstellen.
Hmm, das ist hier etwas Off-Topic. Das XBMC-Modul ist ja ein FHEM-Modul. Hier geht es um XBMC-AddOns. Aber sehr löbliches Vorhaben :)

Danke für das Überlassen deiner XML-Liste.
Aus irgendeinem Grund wandelt dein FHEM bei der Erstellung die doppelten Anführungszeichen nicht in "&quot" um.
Wahrscheinlicher:
Irgendwo werden die "&quot" wieder zurückgewandelt.
Das einzige, das ich bisher dazu gefunden habe:
https://groups.google.com/forum/#!topic/fhem-users/Qq-cNEwugZs
Hier lag es am telnet-Client.
Aber der XBMC-telnet-Client kann es ja nicht sein...
Benutzt du andFHEM? Das bedient sich ja auch der XML-Liste.
Im Moment fällt mir nichts weiter ein. :-\.Nicht 'mal, wie ich das reproduzieren könnte.
Bei dir:
<ATTR key="nameStyle" value="style="color:yellow;font-weight:bold""/>
So sollte es aussehen(und tut es auch bei mir):
<ATTR key="nameStyle" value="&quot;style=&quot;color:yellow;font-weight:bold&quot;&quot;"/>

Gruß
Hans




Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Da ich mein FHEM auf einer Fritte installiert habe: kann es sein das es an UTF-8 liegt?
Nein, ich benutze nicht andFHEM. Schaue ich mir aber mal an.
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Nö, kann eigentlich nicht an der FritzBox liegen (werde FHEM zur Verifizierung aber nicht auf meiner installieren). Ich glaube, das wäre schon häufiger aufgefallen.
Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Werde mal die namestyles " durch ' ersetzen. Vielleicht bringt das etwas.
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

P.A.Trick

So gemacht, allerdings tauchen dann weitere Fehler auf. Scheinbar wird das Escapen der Zeichen nicht richtig durchgeführt.
zu andFHEM: Hm ich habe nur Apple, aber FhemMobile funktioniert ohne Probleme (sofern das auch die xmllst benutzt!?).
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

P.A.Trick

#28
So ich habe ein falsch codiertes UTF8 Zeichen gefunden!
Für das Protokoll, die XML Liste kann man wie folgt erzeugen.


http://192.168.1.1:8083/fhem/?cmd=xmllist&XHR=1


So mal eben testen ob es nun klappt!

UPDATE Klappt immer noch nicht, aber nun ein neuer Fehler!


20:03:48 T:2695383872   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.IndexError'>
                                            Error Contents: list index out of range
                                            Traceback (most recent call last):
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/fhemmain.py", line 48, in <module>
                                                fetchFhem()
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/fhemmain.py", line 41, in fetchFhem
                                                ret = fhem_fetch(hostip, hostport, telnetpasswd)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 65, in fhem_fetch
                                                ret = fhem_parseXML(xmlstr)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 106, in fhem_parseXML
                                                parse_devices(xmlstr)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 142, in parse_devices
                                                create_table(nr)
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 155, in create_table
                                                window = MyAddon('FHEM Info: ' + dummy_list[nr].table_def[0])
                                              File "/home/murdoc/.xbmc/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 163, in __init__
                                                self.setGeometry(1280, 720 ,16, len(table[0])+1)
                                            IndexError: list index out of range
                                            -->End of Python script error report<--


HilflosguckindieRunde  8)
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

P.A.Trick

#29
Nachtrag:
Es war noch ein Komma anstatt ein Pipe Zeichen im Dummy. Ich habe mittlerweile auch einen Schirm mit Daten gesehen, allerdings fehlten die Werte.

Hier mal mein Dummy:


define xbmc_dummy dummy
attr xbmc_dummy room _System
attr xbmc_dummy xbmcInfo HeatingThermostat  desiredTemperature|temperature|battery


Was ist daran falsch?


UPDATE
Das Problem sitzt ja immer vor dem Bildschirm und wer lesen kann ist klar im Vorteil :-)

Hier nun ein funktionierender Dummy:

define xbmc_dummy dummy
attr xbmc_dummy room _System
attr xbmc_dummy xbmcInfo FS20  state| Status name|Name


Allerdings stellt sich mir beim TYPE die Frage, was der Unterschied zum kleinen "type" ist? Kann mir das jemand mal erklären?
Wenn ich als Dummy z.B. MAX als Type angebe, bekomme ich sowohl meine Fensterkontakte und auch die Thermostate. Wie kann ich eine Sub-Gruppe auswählen (Regex wie .* funktionieren leider nicht!)?


PS: Ich habe den Wiki Artikel aktualisiert! http://www.fhemwiki.de/wiki/XBMC#Anzeigen_von_Fhem_Daten_im_XBMC
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Hans Franz

Hallo,
Nee, Regex funktionieren nicht. War mehr so Proof of Concept (ich kann kein Python). Hatte es seit Wochen nicht mehr angeschaut.
Habe es gerade auf "jsonlist" umgestellt, in der Hoffnung, es übersichtlicher parsen zu können. Mal schauen...

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

P.A.Trick

Leider gehen meine Phyton Kenntnisse auch gegen null, allerdings wollte ich mir das immer schon mal anschauen (wenn nur die liebe Zeit nicht wäre :() Wenn ich helfen kann, sag' Bescheid!
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Sirus

Zitat von: Zwiebel am 23 August 2013, 18:55:42
Hallo,

ich hab ein XBMC Modul geschrieben mit dem man FHEM steuern kann. (ein modul für XBMC nicht für FHEM)

Hintergrund ist der: Mein NAS läuft nicht dauernt. Kann aber und via FHEM angeschaltet werden. Relais board an der Fritzbox(FHEM).
Jetzt war es immer notwendig per Smartphone oder PC das NAS auf "on" zu schalten.

Das geht jetzt gleich aus dem XBMC raus.

Mal schauen wie das mit dem add-on funktioniert. Vielleicht bekomm ich noch mehr implementiert..

gruß
Zwiebel

Gibt es davon eine neue Version ?
in den Bildern in der WIKI wird beim Konfigurieren nach einem Telnet pwd gefragt, bei dieser Version nicht.

Zwiebel

Hallo Sirus,

leider nein! Ich komm nicht so dahinter wie man gut ein XBMC Modul entwickelt, ohne XBMC neu zu starten bei einer Änderung. Wobei ich eh nur eine Funktion benötige im Wohnzimmer...(set NAS an).

Aber ich würde mich freuen wenn sich jemand findet der daran weiter macht.

viele Grüße
Zwiebel

C0mmanda

Gibt es zu dem Thema eigentlich mittlerweile was neues?

Habe das gleiche Problem:

15:48:17 T:4746289152   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: Extra data: line 385 column 1 - line 386 column 1 (char 49249 - 49256)
                                            Traceback (most recent call last):
                                              File "/Users/C0mmanda/Library/Application Support/Kodi/addons/script.xbmc.fheminfo/fhemmain.py", line 51, in <module>
                                                fetchFhem()
                                              File "/Users/C0mmanda/Library/Application Support/Kodi/addons/script.xbmc.fheminfo/fhemmain.py", line 44, in fetchFhem
                                                ret = fhem_fetch(hostip, hostport, telnetpasswd)
                                              File "/Users/C0mmanda/Library/Application Support/Kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 70, in fhem_fetch
                                                ret = fhem_parseXML(ip, port, telnetpasswd, xmlstr)
                                              File "/Users/C0mmanda/Library/Application Support/Kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 97, in fhem_parseXML
                                                jl = json.loads(xmlstr)
                                              File "/Users/Shared/jenkins/workspace/OSX-64/tools/depends/xbmc-depends/macosx10.8_x86_64-target/lib/python2.6/json/__init__.py", line 307, in loads
                                              File "/Users/Shared/jenkins/workspace/OSX-64/tools/depends/xbmc-depends/macosx10.8_x86_64-target/lib/python2.6/json/decoder.py", line 322, in decode
                                            ValueError: Extra data: line 385 column 1 - line 386 column 1 (char 49249 - 49256)
                                            -->End of Python script error report<--


Und finde keine Lösung.....

Hans Franz

Hallo,

Liegt vermutlich an der restriktiveren json-Behandlung von Kodi. Ich hatte bislang noch xbmc. Mit folgender Änderung geht es bei mir auch in Kodi.

Suche in ~/.kodi/addons/script.xbmc.fheminfo/lib/fhem.py die zeile:
ret = tn.read_all()
und füge danach die Zeile
ret = ret.replace("Bye...","") ein.

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

C0mmanda

#36
Ich denke du meintest ~/.kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py ;)

Habe die Zeile eingefügt, aber leider hilft es nicht... :(

18:24:10 T:139928147060480  NOTICE: fhem: telnet exception.
18:24:10 T:139928147060480   ERROR: EXCEPTION Thrown (PythonToCppException) : -->Python callback/script returned the following error<--
                                             - NOTE: IGNORING THIS CAN LEAD TO MEMORY LEAKS!
                                            Error Type: <type 'exceptions.ValueError'>
                                            Error Contents: No JSON object could be decoded
                                            Traceback (most recent call last):
                                              File "/storage/.kodi/addons/script.xbmc.fheminfo/fhemmain.py", line 51, in <module>
                                                fetchFhem()
                                              File "/storage/.kodi/addons/script.xbmc.fheminfo/fhemmain.py", line 44, in fetchFhem
                                                ret = fhem_fetch(hostip, hostport, telnetpasswd)
                                              File "/storage/.kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 70, in fhem_fetch
                                                ret = fhem_parseXML(ip, port, telnetpasswd, xmlstr)
                                              File "/storage/.kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 113, in fhem_parseXML
                                                parse_devices(ip, port, telnetpasswd)
                                              File "/storage/.kodi/addons/script.xbmc.fheminfo/resources/lib/fhem.py", line 131, in parse_devices
                                                jl = json.loads(xmlstr)
                                              File "/home/stephan/projects/openelec-5.0/build.OpenELEC-Generic.x86_64-5.0.8/Python-2.7.3/.install_pkg/usr/lib/python2.7/json/__init__.py", line 326, in loads
                                              File "/home/stephan/projects/openelec-5.0/build.OpenELEC-Generic.x86_64-5.0.8/Python-2.7.3/.install_pkg/usr/lib/python2.7/json/decoder.py", line 366, in decode
                                              File "/home/stephan/projects/openelec-5.0/build.OpenELEC-Generic.x86_64-5.0.8/Python-2.7.3/.install_pkg/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
                                            ValueError: No JSON object could be decoded
                                            -->End of Python script error report<--

Hans Franz

Hallo,

Hast du denn in deinem dummy-Device im xbmcInfo-Attribut ein gültiges Device mit passendem Reading definiert?

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

C0mmanda

Zitat von: Hans Franz am 23 September 2015, 22:50:36
Hallo,

Hast du denn in deinem dummy-Device im xbmcInfo-Attribut ein gültiges Device mit passendem Reading definiert?

Gruß
Hans

Ich behaupte mal: Ja ;)

Per Definition muss das Dummy-Device wie folgt eingebunden werden:
attr <dummy-name> xbmcInfo <TYPE> <Reading[|Alias]> <[Reading[|Alias]]>...

Ich habe angefangen mit meinen Temp-Sensoren. Die haben den "TYPE" "LaCrosse".
Internals:
   CHANGED
   DEF        1F
   IODev      myJeeLink
   LASTInputDev myJeeLink
   LaCrosse_lastRcv 2015-09-25 09:41:25
   MSGCNT     19
   NAME       WZ_Temp
   NR         138
   STATE      T: 19.1 H: 64 D: 12.1
   TYPE       LaCrosse
   addr       1F
   battery_new 0
   corr1      0
   corr2      0
   myJeeLink_MSGCNT 19
   myJeeLink_RAWMSG OK 9 31 1 4 167 64
   myJeeLink_TIME 2015-09-25 09:41:25
   previousH  64
   previousT  19.1
   sensorType 0=T(H)


Eingebunden wie folgt:

define KODI_dummy dummy
attr KODI_dummy xbmcInfo LaCrosse temperature|Temperatur humidity|Luftfeuchte


Gruß

Hans Franz

Mmh,
Sieht gut aus.
Magst du mal die Ausgabe von
jsonlist2 TYPE=LaCrosse
hier anhängen?

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

C0mmanda

Zitat von: Hans Franz am 25 September 2015, 10:38:40
Mmh,
Sieht gut aus.
Magst du mal die Ausgabe von
jsonlist2 TYPE=LaCrosse
hier anhängen?

Gruß
Hans

Gerne!

{
  "Arg":"TYPE=LaCrosse",
  "Results": [
  {
    "Name":"AKZ_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CFGFN": "/opt/fhem/FHEM/Ankleidezimmer.cfg",
      "DEF": "30",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:50",
      "MSGCNT": "549",
      "NAME": "AKZ_Temp",
      "NR": "587",
      "STATE": "T: 19 H: 66",
      "TYPE": "LaCrosse",
      "addr": "30",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "549",
      "myJeeLink_RAWMSG": "OK 9 48 1 4 166 66",
      "myJeeLink_TIME": "2015-09-25 11:48:50",
      "previousH": "66",
      "previousT": "19",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:50" },
      "dewpoint": { "Value":"12.5", "Time":"2015-09-25 11:48:50" },
      "humidity": { "Value":"66", "Time":"2015-09-25 11:48:50" },
      "state": { "Value":"T: 19 H: 66", "Time":"2015-09-25 11:41:46" },
      "temperature": { "Value":"19", "Time":"2015-09-25 11:48:50" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Ankleidezimmer Temperatur",
      "event-min-interval": "humidity:600,battery:1200,temperature:600,dewpoint:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,dewpoint:0.2,battery",
      "room": "LaCrosse"
    }
  },
  {
    "Name":"GZ_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CFGFN": "/opt/fhem/FHEM/Gaestezimmer.cfg",
      "CHANGED": "null",
      "DEF": "25",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:41",
      "MSGCNT": "511",
      "NAME": "GZ_Temp",
      "NR": "653",
      "STATE": "T: 18.9 H: 65",
      "TYPE": "LaCrosse",
      "addr": "25",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "511",
      "myJeeLink_RAWMSG": "OK 9 37 1 4 165 65",
      "myJeeLink_TIME": "2015-09-25 11:48:41",
      "previousH": "65",
      "previousT": "18.9",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:41" },
      "dewpoint": { "Value":"12.2", "Time":"2015-09-25 11:46:41" },
      "humidity": { "Value":"65", "Time":"2015-09-25 11:48:41" },
      "state": { "Value":"T: 18.9 H: 65", "Time":"2015-09-25 10:33:29" },
      "temperature": { "Value":"18.9", "Time":"2015-09-25 11:48:41" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Gästezimmer Temperatur",
      "event-min-interval": "humidity:600,battery:1200,temperature:600,dewpoint:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,dewpoint:0.2,battery",
      "room": "LaCrosse"
    }
  },
  {
    "Name":"KUE_Kuehlschrank",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "DEF": "1A",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:03",
      "MSGCNT": "26",
      "NAME": "KUE_Kuehlschrank",
      "NR": "134",
      "STATE": "T: 5.2",
      "TYPE": "LaCrosse",
      "addr": "1A",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "26",
      "myJeeLink_RAWMSG": "OK 9 26 1 4 28 106",
      "myJeeLink_TIME": "2015-09-25 11:48:03",
      "previousH": "106",
      "previousT": "5.2",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "H": { "Value":"0", "Time":"2015-09-03 19:21:02" },
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:03" },
      "dewpoint": { "Value":"4.7", "Time":"2015-09-19 11:07:32" },
      "humidity": { "Value":"98", "Time":"2015-09-19 11:07:32" },
      "state": { "Value":"T: 5.2", "Time":"2015-09-25 11:48:03" },
      "temperature": { "Value":"5.2", "Time":"2015-09-25 11:48:03" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Kühlschrank Temperatur",
      "event-min-interval": "battery:1200,temperature:600",
      "event-on-change-reading": "temperature:0.2,battery",
      "icon": "temp_frost",
      "room": "Home,Kueche,LaCrosse",
      "sortby": "9"
    }
  },
  {
    "Name":"KUE_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CFGFN": "/opt/fhem/FHEM/Kueche.cfg",
      "CHANGED": "null",
      "DEF": "38",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:51",
      "MSGCNT": "479",
      "NAME": "KUE_Temp",
      "NR": "551",
      "STATE": "T: 19.5 H: 61 D: 11.8",
      "TYPE": "LaCrosse",
      "addr": "38",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "479",
      "myJeeLink_RAWMSG": "OK 9 56 1 4 171 61",
      "myJeeLink_TIME": "2015-09-25 11:48:51",
      "previousH": "61",
      "previousT": "19.5",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:51" },
      "dewpoint": { "Value":"11.8", "Time":"2015-09-25 11:48:51" },
      "humidity": { "Value":"61", "Time":"2015-09-25 11:48:51" },
      "state": { "Value":"T: 19.5 H: 61 D: 11.8", "Time":"2015-09-25 11:48:37" },
      "temperature": { "Value":"19.5", "Time":"2015-09-25 11:48:51" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Küche Temperatur",
      "doDewpoint": "1",
      "event-min-interval": "humidity:600,battery:1200,temperature:600,dewpoint:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,dewpoint:0.2,battery",
      "icon": "temp_temperature",
      "room": "Home,Kueche,LaCrosse",
      "sortby": "2"
    }
  },
  {
    "Name":"SZ_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CFGFN": "/opt/fhem/FHEM/Schlafzimmer.cfg",
      "CHANGED": "null",
      "DEF": "10",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:49",
      "MSGCNT": "541",
      "NAME": "SZ_Temp",
      "NR": "614",
      "STATE": "T: 19.6 H: 61",
      "TYPE": "LaCrosse",
      "addr": "10",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "541",
      "myJeeLink_RAWMSG": "OK 9 16 1 4 172 61",
      "myJeeLink_TIME": "2015-09-25 11:48:49",
      "previousH": "61",
      "previousT": "19.6",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:49" },
      "dewpoint": { "Value":"11.9", "Time":"2015-09-25 11:45:31" },
      "humidity": { "Value":"61", "Time":"2015-09-25 11:48:49" },
      "state": { "Value":"T: 19.6 H: 61", "Time":"2015-09-25 11:40:51" },
      "temperature": { "Value":"19.6", "Time":"2015-09-25 11:48:49" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Schlafzimmer Temperatur",
      "event-min-interval": "humidity:600,battery:1200,temperature:600,dewpoint:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,dewpoint:0.2,battery",
      "room": "LaCrosse"
    }
  },
  {
    "Name":"TK_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CHANGED": "null",
      "DEF": "27",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:47",
      "MSGCNT": "414",
      "NAME": "TK_Temp",
      "NR": "130",
      "STATE": "T: -19.5",
      "TYPE": "LaCrosse",
      "addr": "27",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "414",
      "myJeeLink_RAWMSG": "OK 9 39 1 3 36 106",
      "myJeeLink_TIME": "2015-09-25 11:48:47",
      "previousH": "106",
      "previousT": "-19.5",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "H": { "Value":"0", "Time":"2015-09-03 18:05:07" },
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:47" },
      "dewpoint": { "Value":"12.3", "Time":"2015-09-21 18:48:40" },
      "humidity": { "Value":"56", "Time":"2015-09-21 18:57:12" },
      "state": { "Value":"T: -19.5", "Time":"2015-09-25 11:46:30" },
      "temperature": { "Value":"-19.5", "Time":"2015-09-25 11:48:47" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Tiefkühltruhe Temperatur",
      "event-min-interval": "battery:1200,temperature:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,battery",
      "icon": "temp_frost",
      "room": "Home,Keller,LaCrosse",
      "sortby": "20"
    }
  },
  {
    "Name":"WZ_Temp",
    "PossibleSets":"replaceBatteryForSec",
    "PossibleAttrs":"verbose:0,1,2,3,4,5 room group comment alias eventMap userReadings IODev ignore:1,0 doAverage:1,0 doDewpoint:1,0 filterThreshold resolution event-on-change-reading event-on-update-reading event-aggregator event-min-interval stateFormat 1 DbLogExclude DbLogInclude cmdIcon devStateIcon devStateStyle fm_type icon sortby webCmd widgetOverride xbmcInfo userattr",
    "Internals": {
      "CHANGED": "null",
      "DEF": "1F",
      "LASTInputDev": "myJeeLink",
      "LaCrosse_lastRcv": "2015-09-25 11:48:49",
      "MSGCNT": "544",
      "NAME": "WZ_Temp",
      "NR": "138",
      "STATE": "T: 18.8 H: 63 D: 11.6",
      "TYPE": "LaCrosse",
      "addr": "1F",
      "battery_new": "0",
      "corr1": "0",
      "corr2": "0",
      "myJeeLink_MSGCNT": "544",
      "myJeeLink_RAWMSG": "OK 9 31 1 4 164 63",
      "myJeeLink_TIME": "2015-09-25 11:48:49",
      "previousH": "63",
      "previousT": "18.8",
      "sensorType": "0=T(H)"
    },
    "Readings": {
      "battery": { "Value":"ok", "Time":"2015-09-25 11:48:49" },
      "dewpoint": { "Value":"11.6", "Time":"2015-09-25 11:48:49" },
      "humidity": { "Value":"63", "Time":"2015-09-25 11:48:49" },
      "state": { "Value":"T: 18.8 H: 63 D: 11.6", "Time":"2015-09-25 11:47:28" },
      "temperature": { "Value":"18.8", "Time":"2015-09-25 11:48:49" }
    },
    "Attributes": {
      "IODev": "myJeeLink",
      "alias": "Wohnzimmer Temperatur",
      "doDewpoint": "1",
      "event-min-interval": "humidity:600,battery:1200,temperature:600,dewpoint:600",
      "event-on-change-reading": "temperature:0.2,humidity:2,dewpoint:0.2,battery",
      "icon": "temp_temperature",
      "room": "Home,LaCrosse,Wohnzimmer",
      "sortby": "1"
    }
  }  ],
  "totalResultsReturned":7
}


Sind dann natürlich alle LaCrosse-Devices drin, 5 an der Zahl!

grtz CmdA

Hans Franz

Hallo,
Es liegt an den Umlauten in deinen Alias. Ich hoffte die passende UTF8-Kodierung d'rin zu haben  :-X

Füge 'mal in die genannte Datei oben unter den import-Zeilen folgendes ein:
reload(sys)
sys.setdefaultencoding('utf8')


Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

C0mmanda

Oh mann, es funktioniert :D :D

1000 Dank!

grtz
CmdA

GrandJury

Hallo zusammen,

ich habe hier mal ein ganz anderes Problem. Ich bekomme das Addon (von Hans Franz) zwar installiert, jedoch nicht gestartet. Ich bekomme bei Kodi die Fehlermeldung "get jsonlist from 127.0.0.1 / Fehler beim Verbinden zu Fhem".

Muss ich vorher noch was beachten bzw. ist es normal, dass er versucht den Localhost anzusprechen? Kodi und Fhem laufen bei mir auf unterschiedlichen Pi's.

Danke für die Hilfe.

Hans Franz

#44
Hallo,
Du kannst die IP im Konfigurationsdialog eingeben.
Aber ich bekomme das Teil bei mir selber nicht mehr zum Laufen :'(

Gruß
Hans

Edit:
Läuft wieder.
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

GrandJury

Zitat von: Hans Franz am 16 Januar 2016, 23:18:20
Du kannst die IP im Konfigurationsdialog eingeben.

Jup, jedoch wird mir dieser Dialog erst gar nicht angezeigt, sondern die genannte Fehlermeldung in einem kleinen Popup unten rechts auf dem Monitor.

Nutzt du OMSC oder OpenELEC? Vielleicht macht das noch einen Unterschied?

Gruß

Hans Franz

#46
Hallo,

OPENELEC und distributionsspezifisch. Sollte aber egal sein.

Du startest offensichtlich das Script sofort. Die Konfiguration muss aber vorher erfolgen.

Bei mir:
Einstellungen=>Addons=>Benutzer-Addons=>Programm-Addons=>FHEM-Info->Konfigurieren

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

münster

Hallo,

was müsste man machen wenn die Anzeige der Geräte in der 1. Spalte bei Kodi mehr Platz benötigt. Je mehr  Werte dargestellt werden um so weniger Platz wird zur Verfügung gestellt. Meine Heizungszentralen haben Kennungen in der Art:

FHT_Wohnzimmer
FHT_Schlafzimmer

bei fünf anzuzeigenden Werten ist leider nur noch Platz für:

FHT_Wohnzim..
FHT_Schlafzi..

Nach rechts ist im TV jedoch noch ordentlich Platz.

Gibts da ne simple Lösung?

Im Voraus vielen Dank.