Modul für ENIGMA2 Receiver

Begonnen von Loredo, 16 September 2013, 22:34:57

Vorheriges Thema - Nächstes Thema

Loredo


HINWEIS: Die aktuellste Version gibt es inzwischen direkt aus dem Subversion Repository und kann via "update" Kommando eingespielt werden.
Alternativ kann sie hier direkt geladen werden:
http://sourceforge.net/p/fhem/code/HEAD/tree/trunk/fhem/FHEM/70_ENIGMA2.pm?format=raw


Alle Versionen, die hier im Thread verfügbar sind, sind VERALTET und werden NICHT supported!







URSPRÜNGLICHE NACHRICHT:

Hossa,

ich habe jetzt mal ein Modul für ENIGMA2 Receiver geschrieben (also Dreambox, VUplus etc).
Ist übrigens mein erstes, daher bin ich auch ein kleinwenig stolz :-)

Funktioniert bei mir prima. Anbei als Anhang, falls noch jemand testen mag.

Es werden folgende Funktionen unterstützt (sollte eigentlich der kompletten API entsprechen bzw. dem, was sinnvoll erscheint):

- message
- on
- off
- reboot
- remotecontrol
- restartgui
- standby
- toogle
- vol
- zap

Außerdem werden eine Menge interessanter (oder weniger interessanter) Readings ausgelesen.
Das Modul kommt mit HTTP Base Authentication zurecht und das Polling-Interval lässt sich definieren.

Falls das Modul gut läuft könnte man es auch einchecken.

Doku für das Modul muss ich noch machen, aber ich habe schon ganz gut die Fehler abgefangen, so dass man auch durch ausprobieren gut herausfinden kann, wie es funktioniert.


Gruß
Julian
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

m.zielinski

Das Modul werde ich heute Abend gleich mal ausprobieren.
Danke

Loredo

Update:

- WOL Support
- Trigger nach define
- verbessertes Muting/Unmuting
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

franky08

Hallo, würde es gerne mal mit einer 7020hd testen. Wie ist denn die Syntax um das Modul aufzurufen:

define <Name> ENIGMA2 IP der Box ? oder

Habe im Moment nur über VPN Zugang zu FHEM.

Viele Grüße Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

Loredo

define <name> ENIGMA2 <IP-Adresse> <Port> [<Polling-Interval-in-Sec>] [<HTTP-User>] [<HTTP-Passwort>]

Beispiel:
define LR_SAT ENIGMA2 192.168.6.50 80

Polling Interval und HTTP-User/Passwort sind optional.
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

Loredo

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

DannyP

Hi,

super Modul! Funktioniert mit einer Dreambox 800se einwandfrei :-)

Der verfügbare Platz der eingebauten Festplatte wird ja schon angezeigt. Gäbe es noch die Möglichkeit den Status weiterer externer Festplatten anzuzeigen? Z.B. über ein ShellSkript auf der Dreambox, dass die Daten zusammensammelt und dann von FHEM nur noch abgeholt werden muss.

Und das aktuelle TV Programm als EPG Ansicht wäre noch schick. Vermutlich aber auch schwierig zu realisieren, weil die Dreambox das nicht über eine API anbietet (jedenfalls kenne ich bisher keine ;-) )

Schöne Grüße
Daniel

Loredo

Zitat von: DannyP schrieb am Mi, 18 September 2013 10:57super Modul! Funktioniert mit einer Dreambox 800se einwandfrei :-)

Danke fürs Feedback :-)

Zitat von: DannyP schrieb am Mi, 18 September 2013 10:57Der verfügbare Platz der eingebauten Festplatte wird ja schon angezeigt. Gäbe es noch die Möglichkeit den Status weiterer externer Festplatten anzuzeigen? Z.B. über ein ShellSkript auf der Dreambox, dass die Daten zusammensammelt und dann von FHEM nur noch abgeholt werden muss.

Das ist über die Standard API der Dreambox nicht abzubilden. Auch ist es wohl eher ein Sonderfall mehr als eine Platte zu haben.
Ich würde gerne vermeiden von dem abzuweichen, was die API direkt bietet. Es sollten keine Modifikationen an einer Box notwendig sein, damit das FHEM Modul funktioniert.
Wer höhere Ansprüche hat, sollte dafür besser ein echtes Monitoring-Tool wie NAGIOS o.ä. verwenden.

Zitat von: DannyP schrieb am Mi, 18 September 2013 10:57Und das aktuelle TV Programm als EPG Ansicht wäre noch schick. Vermutlich aber auch schwierig zu realisieren, weil die Dreambox das nicht über eine API anbietet (jedenfalls kenne ich bisher keine ;-) )

Auch sowas ist eher FHEM Fremd. Die Dreambox hat ja ein Webinterface für das Anzeigen des EPG. Du kannst für die Bequemlichkeit ja einfach einen Link auf die Website in FHEM mit einbauen.



Gruß
Julian
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

CicakDOS

Zitat von: DannyP schrieb am Mi, 18 September 2013 10:57Und das aktuelle TV Programm als EPG Ansicht wäre noch schick. Vermutlich aber auch schwierig zu realisieren, weil die Dreambox das nicht über eine API anbietet (jedenfalls kenne ich bisher keine ;-) )

Enigma 2 API bietet bereits EPG Befehle: epgservice, epgsearch, epgnow, epgnext.
Sowas würde ich auch eher als Sonder- oder Extra-Lösung sehen, weil Webservice keine EPG-Timeline bereitstellt.

punker

Hi,

wollte das Modul auch testen.

Wenn ich es folgendermassen einbinde kommt "Cannot load module ENIGMA2"
und im LOG erscheint folgende Fehlermeldung:

2013.09.18 15:29:40 1: reload: Error:Modul 30_ENIGMA2 deactivated:
 Can't locate XML/Simple.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl . /usr/share/fhem/FHEM) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 35.
BEGIN failed--compilation aborted at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 35.

2013.09.18 15:29:40 0: Can't locate XML/Simple.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl . /usr/share/fhem/FHEM) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 35.
BEGIN failed--compilation aborted at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 35.


woran liegts?
LG

Dieter

The truth is out there!

CicakDOS

Bei Dir fehlt Perl-Modul XML::Simple - einer der Voraussetzungen bei dem angebotenen Modul.
Weil Du kein Wort über deine Konfiguration verlierst, versuche:

cpanm XML::Simple
oder

apt-get install libxml-simple-perl

punker

Danke erstmal!
Mein FHEM läuft auf einem Dockstar mit Debian.

Hab mit apt-get install libxml-simple-perl das Modul nachinstalliert, aber immer noch Fehler:
Cannot load module ENIGMA2
und im LOG:

2013.09.18 16:18:03 1: reload: Error:Modul 30_ENIGMA2 deactivated:
 Type of arg 1 to keys must be hash (not private array) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 198, near "@a) "

2013.09.18 16:18:03 0: Type of arg 1 to keys must be hash (not private array) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 198, near "@a) "


?
LG

Dieter

The truth is out there!

Loredo

Zitat von: punker schrieb am Mi, 18 September 2013 16:242013.09.18 16:18:03 1: reload: Error:Modul 30_ENIGMA2 deactivated:
 Type of arg 1 to keys must be hash (not private array) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 198, near "@a) "

Kannst du mal versuchen in Zeile 198 das @a gegen ein $a auszutauschen?
Deine Perl Version scheint etwas älter zu sein. Ich habe Version 5.14 und da gibt es keine Probleme.


Gruß
Julian
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

franky08

Hallo Loredo. Habe versucht das Modul mit einer DM7020hd zu testen aber leider passiert nach dem Start gar nichts. fhem ist:Fhem 5.4 DEVELOPMENT $Id: fhem.pl 3872 2013-09-07 11:58:33Z  und läuft unter Freetz auf einer Fritz 7390.

Viele Grüße Frank
Debian Wheezy auf ZBOX nano/ Debian Bullseye auf 2.ter ZBOX nano F2F an 2x RaspiB
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu ,fhem5.8, CCU2,
ECMD an AVR-NET-IO mit DAC u. ADC an Junkers Stetigregelung, Siemens LOGO!8, JeeLink uvm...

punker

@Loredo

fast dasselbe Ergebnis:

2013.09.19 09:44:44 0: Type of arg 1 to keys must be hash (not scalar dereference) at /usr/share/fhem/FHEM/30_ENIGMA2.pm line 198, near "$a) "

wie kann ich die perl-version updaten?
LG

Dieter

The truth is out there!