Autor Thema: Modul für ENIGMA2 Receiver  (Gelesen 262436 mal)

Offline tinyfhem

  • Jr. Member
  • **
  • Beiträge: 51
Antw:Fertiges Modul 70_ENIGMA2.pm
« Antwort #210 am: 08 Februar 2014, 09:56:01 »
Das ist mir schon klar und ich weiss auch welches ;) ... Die Frage war, wie man fehlende PERL Modules auf dem Raspi nachinstalliert und darauf habe ich im Forum keine Antwort gefunden. Ok, man kann sagen, das ist Off Topic, sowohl hier in diesem Bereich, als auch im gesamten Forum.

Bin inzwischen einen Schritt weiter und kaempfe mit unitialisierten Variablen aber vielleicht gibts da ja auch schon zig Antworten ... ich werde suchen gehen.....

Vielen Dank an dieser Stelle, fuer das ENIGMA2 Module.
Stelle eben fest, meine Dreambox ist eine DM 7000. Da ist vermutlich ein Enigma 1 drauf. Im WebUI kann ich leider nirgends eine Versionsangabe finden aber das Teil ist vermutlicheinfach zu alt. Wenn es denn ein Enigma 1 ist, ist es dann wahrscheinlich, dass das ENIGMA2.pm Module gar nicht funktionieren kann?
FHEM auf Raspberry Pi, EnOcean Pi, HomeMatic LAN Konfigurations Adapter, CUL 868 V3, CUL 433 V3

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Fertiges Modul 70_ENIGMA2.pm
« Antwort #211 am: 08 Februar 2014, 11:24:11 »
Stelle eben fest, meine Dreambox ist eine DM 7000. Da ist vermutlich ein Enigma 1 drauf. Im WebUI kann ich leider nirgends eine Versionsangabe finden aber das Teil ist vermutlicheinfach zu alt. Wenn es denn ein Enigma 1 ist, ist es dann wahrscheinlich, dass das ENIGMA2.pm Module gar nicht funktionieren kann?


Die Wahrscheinlichkeit liegt bei 100% :-)


Die API unterscheidet sich leider maßgeblich. Vielleicht mache ich irgendwann nochmal ein ENIGMA1 Modul (dafür steht hier eine dbox2 im Schrank), aber das wäre wirklich extremstes Hobby und Langeweile.
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

Offline Michi240281

  • Hero Member
  • *****
  • Beiträge: 1229
Antw:Modul für ENIGMA2 Receiver
« Antwort #212 am: 08 Februar 2014, 11:55:49 »
Hallo,

habe gerade das Modul bei mir über define eingebunden.
Was muss man danach tun? Die Instanz und die readings sehen folgendermaßen aus.
FHEM 5.6 auf RPi2 / HM LAN Adapter / diverse HM-Devices
FHEM-Remote-App
QNAP 419P / Onkyo TX-SR 608
DM500HD / GM Spark One
Sony 52HX905

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Modul für ENIGMA2 Receiver
« Antwort #213 am: 08 Februar 2014, 12:04:20 »
Die XML-Kommunikation über das Webinterface scheint nicht zu funktionieren. Grundsätzlich ist das Gerät aber übers Netzwerk erreichbar.
Du kannst mal das Attribut verbose auf 4 oder 5 setzen und im Logfile schauen, was bei den Abfragen tatsächlich zurück kommt.
Auch kannst du einmal manuell schauen, was bei http://192.168.188.33:80/web/powerstate so kommt.
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

Offline Michi240281

  • Hero Member
  • *****
  • Beiträge: 1229
Antw:Modul für ENIGMA2 Receiver
« Antwort #214 am: 08 Februar 2014, 12:23:44 »
2014.02.08 12:13:08 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:14:22 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:14:22 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:14:22 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:14:22 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:14:23 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:14:23 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:14:23 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:15:37 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:15:37 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:15:37 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:15:37 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:15:38 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:15:38 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:15:38 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:16:53 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:16:53 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:16:53 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:16:53 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:16:53 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:16:53 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:16:53 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:18:08 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:18:08 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:18:08 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:18:08 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:18:08 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:18:08 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:18:08 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:19:23 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:19:23 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:19:23 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:19:23 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:19:23 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:19:23 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:19:23 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:20:38 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
2014.02.08 12:20:38 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:20:38 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:20:38 5: ENIGMA2 DM500HD: GET http://192.168.188.33:80/web/powerstate
2014.02.08 12:20:38 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:20:38 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<html><body>Access Denied.</body></html>
2014.02.08 12:20:38 2: ENIGMA2 DM500HD: ERROR: Undefined state of device

Muss ich das hier noch irgendwie ausführen?

apt-get install libxml-simple-perl
und wenn ja, wie?
« Letzte Änderung: 08 Februar 2014, 12:25:25 von Michi240281 »
FHEM 5.6 auf RPi2 / HM LAN Adapter / diverse HM-Devices
FHEM-Remote-App
QNAP 419P / Onkyo TX-SR 608
DM500HD / GM Spark One
Sony 52HX905

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Modul für ENIGMA2 Receiver
« Antwort #215 am: 08 Februar 2014, 12:25:14 »
Deine Web-Oberfläche ist mit Benutzername/Passwort geschützt. Entweder abstellen oder bei der Device-Definition den Benutzer und das Passwort so wie in der Kommando-Referenz beschrieben mit angeben, damit das Modul auf die Box auch tatsächlich zugreifen kann.
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

Offline Michi240281

  • Hero Member
  • *****
  • Beiträge: 1229
Antw:Modul für ENIGMA2 Receiver
« Antwort #216 am: 08 Februar 2014, 12:29:38 »
Ah ok, stimmt!

Das muss dann in eckige Klammern dahinter?

Hab ich gemacht, ändert sich nix!
FHEM 5.6 auf RPi2 / HM LAN Adapter / diverse HM-Devices
FHEM-Remote-App
QNAP 419P / Onkyo TX-SR 608
DM500HD / GM Spark One
Sony 52HX905

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Modul für ENIGMA2 Receiver
« Antwort #217 am: 08 Februar 2014, 12:31:19 »
Zitat des Beispiels aus der Kommando-Referenz unter http://fhem.de/commandref.html#ENIGMA2:


define SATReceiver ENIGMA2 192.168.0.10 80 60 root secret     # With HTTP user credentials



Eckige Klammern in der Kommando-Referenz bedeuten, dass diese Angaben optional sind!
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

Offline marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5517
Antw:Fertiges Modul 70_ENIGMA2.pm
« Antwort #218 am: 08 Februar 2014, 12:41:58 »
@Loredo: Hattest du das gesehen?

Um das oben angesprochene Problem zu lösen, dass es wenig Sinn macht, die Box über das Modul herunterzufahren, wenn eine Aufnahme läuft, habe ich folgende Funktion in der 99_myUtils.pm untergebracht:

sub
DreamboxAufnahme() {
  my $aufnahmen= qx(wget -O- -q http://IP-DER_BOX/web/timerlist | grep 'e2state' | grep -c '>2<');
  return $aufnahmen;
}

Die Funktion fragt über das Webinterface die Timerliste ab, in der man sehen kann, wenn eine oder mehrere Aufnahmen laufen. Somit kann man ein sicheres Herunterfahren anhand dieser Funktion und weiterer Kriterien (verbundene Clients...) realisieren. Der Rückgabewert ist die Zahl der laufenden Aufnahmen.

Für mich reicht das so aus aber eventuell wäre es ja auch eine interessante Erweiterung für dieses Modul.

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Fertiges Modul 70_ENIGMA2.pm
« Antwort #219 am: 08 Februar 2014, 12:43:53 »
@Loredo: Hattest du das gesehen?


Hab ich. Ich weiß grundsätzlich, dass man es darüber umständlich interpretieren kann.
Der Punkt ist der, dass es eine weitere XML Abfrage bedeutet und zudem je nach Umfang der individuellen Timerliste wieder Zeit kostet. Mit der aktuellen Implementierung bedeutet das, dass FHEM u.U. noch länger blockiert ist und währenddessen keine weiteren Aufgaben abgearbeitet werden können. Deshalb baue ich es aktuell nicht ein.
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

Offline Michi240281

  • Hero Member
  • *****
  • Beiträge: 1229
Antw:Modul für ENIGMA2 Receiver
« Antwort #220 am: 08 Februar 2014, 12:46:09 »
Es geeeeeeeeeeeeeeeeeeeeht! :)

Mann muss auch [<poll-interval>] angeben, sonst geht es wohl nicht!
FHEM 5.6 auf RPi2 / HM LAN Adapter / diverse HM-Devices
FHEM-Remote-App
QNAP 419P / Onkyo TX-SR 608
DM500HD / GM Spark One
Sony 52HX905

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Modul für ENIGMA2 Receiver
« Antwort #221 am: 08 Februar 2014, 12:46:15 »
Jetzt steht im log folgendes:

2014.02.08 12:39:11 2: ENIGMA2 DM500HD: ERROR: Undefined state of device
2014.02.08 12:39:11 5: ENIGMA2 DM500HD: called function ENIGMA2_GetStatus()
Argument "root" isn't numeric in addition (+) at ./FHEM/70_ENIGMA2.pm line 120.
2014.02.08 12:39:11 5: ENIGMA2 DM500HD: called function ENIGMA2_SendCommand()
2014.02.08 12:39:11 4: ENIGMA2 DM500HD: REQ powerstate
2014.02.08 12:39:11 5: ENIGMA2 DM500HD: GET http://blendax3@192.168.188.33:80/web/powerstate
2014.02.08 12:39:11 4: ENIGMA2 DM500HD: RCV powerstate
2014.02.08 12:39:11 5: ENIGMA2 DM500HD: RES ERROR powerstate - not in XML format
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Frameset//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd">
<html>
 <head>
   <title>T-Online Navigationshilfe</title>
 </head>
 <frameset rows="100%">
 <frame src="http://navigationshilfe.t-online.de/dnserror?url=http://blendax3@192.168.188.33/"
   frameborder="0" noresize="noresize"/>
 <noframes>
  <body>
   <h1>Willkommen bei T-Online</h1>
   <p>
   <a href="http://navigationshilfe.t-online.de/dnserror?url=http://blendax3@192.168.188.33/">
   weiter....</a>
   </p>
  </body>
 </noframes>
 </frameset>
</html>

2014.02.08 12:39:11 2: ENIGMA2 DM500HD: ERROR: Undefined state of device


Ich denke der Fall ist klar: Lies doch bitte einmal ganz genau, was in dem Log steht. Da kommt eine Antwort von deiner T-Online-Box, nicht von einer Dreambox. Der Fehler ist bei dir individuell im Netzwerk zu suchen. Leider kann ich hier keinen Netzwerk-Support geben. Dafür sind die möglichen individuellen Konstellationen einfach zu umfangreich.
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

Offline Loredo

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3633
  • ~ Challenging Innovation ~
Antw:Modul für ENIGMA2 Receiver
« Antwort #222 am: 08 Februar 2014, 12:46:39 »
Es geeeeeeeeeeeeeeeeeeeeht! :)

Mann muss auch [<poll-interval>] angeben, sonst geht es wohl nicht!


So steht es auch im Beispiel ........  ::)
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

Offline marvin78

  • Developer
  • Hero Member
  • ****
  • Beiträge: 5517
Antw:Modul für ENIGMA2 Receiver
« Antwort #223 am: 08 Februar 2014, 12:49:11 »

Hab ich. Ich weiß grundsätzlich, dass man es darüber umständlich interpretieren kann.
Der Punkt ist der, dass es eine weitere XML Abfrage bedeutet und zudem je nach Umfang der individuellen Timerliste wieder Zeit kostet. Mit der aktuellen Implementierung bedeutet das, dass FHEM u.U. noch länger blockiert ist und währenddessen keine weiteren Aufgaben abgearbeitet werden können. Deshalb baue ich es aktuell nicht ein.

Das ist schon ein guter Punkt. Interessant wäre sicher ein Plugin für Enigma2, welches FHEM die Daten schickt. Oder einfach ein kleines Skript welches man an den Beginn und Ende einer Aufnahme knüpft und FHEM den jeweiligen Status mitteilt.

BTW: Ich prüfe nur nach 23 Uhr.
« Letzte Änderung: 08 Februar 2014, 12:51:20 von marvin78 »

Offline Michi240281

  • Hero Member
  • *****
  • Beiträge: 1229
Antw:Modul für ENIGMA2 Receiver
« Antwort #224 am: 08 Februar 2014, 12:50:35 »

So steht es auch im Beispiel ........  ::)

Ne, da steht, dass die Sachen in eckigen Klammern optional sind! Und ich habe eben das [<poll-interval>] weggelassen! Bzw. hast du das soeben geschrieben! Offensichtlich gehört das aber zusammen, also sollte man die eckigen Klammern um die 3 Ausdrücke machen.

Vielen Dank für das Modul und den Support!

Btw: Was könnte man dann jetzt so für "Sachen" damit machen? Ich meine außer eben über das Frontend schalten!
« Letzte Änderung: 08 Februar 2014, 12:53:42 von Michi240281 »
FHEM 5.6 auf RPi2 / HM LAN Adapter / diverse HM-Devices
FHEM-Remote-App
QNAP 419P / Onkyo TX-SR 608
DM500HD / GM Spark One
Sony 52HX905

 

decade-submarginal