FHEM Forum

FHEM - Anwendungen => Multimedia => Thema gestartet von: gemx am 16 Januar 2014, 18:19:46

Titel: [Neues Modul] MediaPortal
Beitrag von: gemx am 16 Januar 2014, 18:19:46
Hallo zusammen,

anbei nun mein 2. eigenes Modul für FHEM.
Da gibt es sicher noch einiges zu erweitern, aber ich denke es ist schon mal ein Anfang.

Was kann es?
Es verbindet sich per TCP/IP mit dem MediaPortal plugin "WifiRemote" und gibt die aktuellen Zustände des Mediaplayers als Readings aus.
Zudem erlaubt es auch die komplette Fernsteuerung des MediaPortals per FHEM.
Man kann sich also ganz einfach per weblink und ein paar Dummys eine Wifi Fernbedienung für das MediaPortal bauen :-)
Das MediaPortal ist ähnlich wie XBMC nur auf Windows basiert und einen eigenen TvServer.
Da ich dort mal im Entwicklerteam mit gemacht habe, war dieses Modul also nur die logische Konsequenz ;-)

Installation
Perl Modul für JSON installieren cpan install JSON
* Datei nach ins Module verzeichnis kopieren
reload 70_MEDIAPORTAL

Define
define mp MEDIAPORTAL <ip[:port] of WifiRemote plugin>

Attribute
authmethod => userpassword, passcode, both
username
password

Die Attribute müsst ihr nur angeben, wenn eine Anmeldung in WifiRemote erforderlich ist.
Das kann man selbst konfigurieren und ist alles beim Plugin beschrieben.

Set
set <name> command <beliebiges kommando wie stop, info, up, down....>
set <name> key <beliebiges taste die gesendet wird>
set <name> volume <lautstärke in %>
set <name> powermode <logoff/suspend...>
set <name> playfile <dateiname>
set <name> playchannel <channelid des TvProgramms>
set <name> playlist loadlist <name der playlistdatei in playlist folder, die geladen werden soll>
set <name> playlist loadfrompath <name der playlistdatei inkl. Pfad, die geladen werden soll>
set <name> playlist play <index innerhalb einer geladenen Playlist, ab dem abgespielt werden soll>

Wenn man einfach den letzten Parameter weglässt gibt es die jeweils gültigen Optionen.

18.07.2014 v0.3
* fixed stop command
* fixed playlist commands
* added playlist shuffle
* fixed console errors
* added log prefix
(Vielen Dank an spiff)

18.01.2013 V0.2
* Kleiner Bugfix

16.01.2014 V0.1
*Erste Version
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: rtv am 17 Januar 2014, 00:39:57
Ah, schön mal wieder was von dir zu hören - und danke für das Plugin! Meine Frau hängt noch sehr an MP, weil die usability von XBMC einfach ... suboptimal ... ist. Werde das Plugin am Wochenende mal ausprobieren ;-)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: gemx am 17 Januar 2014, 09:20:51
Hi, das ist ja nett von dir zu hören. Bist ja auch schon ewig bei MP dabei gewesen. Bist du dort noch aktiv?
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: rtv am 17 Januar 2014, 16:03:54
Nein, ich hab' privat leider seit einigen Jahren eine Menge um die Ohren und komme auch beruflich nicht mehr zum Programmieren.
Hätte auch nie gedacht, dass ich nach ca. 8 Jahren immer noch MP nutze - aber irgendwie gibt es selbst für viel Geld noch keine besseren Lösungen, die wirklich netzwerkfähig und aus einem Guss wären. Quasi Sonos auch für Filme, TV, etc...
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 17 Januar 2014, 21:07:54
Hi gemx,

ich wollte gerade schonmal ausprobieren, habe jedoch folgendes Problem:

ERROR:
Cannot load module MEDIAPORTAL


JSON habe ich installiert und die Datei ins Modulverzeichnis kopiert.

Definition:
define mp MEDIAPORTAL localhost:8017

Ich nutze auch aMPdroid mit dem MPExtended, das funktioniert alles.

Hast du eine Idee?

Viele Grüße
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: gemx am 17 Januar 2014, 22:15:12
Zitat von: Spiff am 17 Januar 2014, 21:07:54
Hi gemx,

ich wollte gerade schonmal ausprobieren, habe jedoch folgendes Problem:

ERROR:
Cannot load module MEDIAPORTAL


JSON habe ich installiert und die Datei ins Modulverzeichnis kopiert.

Definition:
define mp MEDIAPORTAL localhost:8017

Ich nutze auch aMPdroid mit dem MPExtended, das funktioniert alles.

Hast du eine Idee?

Viele Grüße
Spiff

Das ist ja merkwürdig.
Hast du mal per reload 70_MEDIAPORTAL das Modul neu geladen?
Wenn das nicht funktioniert müsste eigentlich eine sprechende Fehlermeldung kommen
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 17 Januar 2014, 22:21:51
bei reload 70_MEDIAPORTAL kommt:
Bareword "false" not allowed while "strict subs" in use at ./FHEM/70_MEDIAPORTAL.pm line 97.
und im DOS-Fenster:
Subroutine MEDIAPORTAL_Initialize redefined at ./FHEM/70_MEDIAPORTAL.pm line 34.

Subroutine MEDIAPORTAL_Define redefined at ./FHEM/70_MEDIAPORTAL.pm line 49.
Subroutine MEDIAPORTAL_Undef redefined at ./FHEM/70_MEDIAPORTAL.pm line 73.
Subroutine MEDIAPORTAL_Get redefined at ./FHEM/70_MEDIAPORTAL.pm line 84.


Beim reload der cfg kommt:
Subroutine MEDIAPORTAL_Initialize redefined at ./FHEM/70_MEDIAPORTAL.pm line 34,
<$fh> line 1034.
Subroutine MEDIAPORTAL_Define redefined at ./FHEM/70_MEDIAPORTAL.pm line 49, <$f
h> line 1034.
Subroutine MEDIAPORTAL_Undef redefined at ./FHEM/70_MEDIAPORTAL.pm line 73, <$fh
> line 1034.
Subroutine MEDIAPORTAL_Get redefined at ./FHEM/70_MEDIAPORTAL.pm line 84, <$fh>
line 1034.


Meine fhem-Version ist vom 08.01.14

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: gemx am 18 Januar 2014, 15:00:42
Tja, seltsam, dass es bei mir diesbezüglich keinen Fehler gab.
Habe ne neue Version hochgeladen (im 1. Post), die sollte bei dir auch funktionieren :-)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 18 Januar 2014, 15:21:19
Hi gemx.

Super, das funktioniert, danke!
Ich teste es mal ausgiebig.

Eine Kleinigkeit beim Start von fhem:
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 191.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 194.

Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 197.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 204.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 210.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 212.
Use of uninitialized value in concatenation (.) or string at ./FHEM/70_MEDIAPORT
AL.pm line 215.


Bis jetzt ist mir aber nichts aufgefallen, das nicht geht.

Viele Grüße
Spiff.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 19 Januar 2014, 15:37:28
Hi gemx,

zwei Sachen bekomme ich nicht hin:

1.) Abspielen von Radiosendern:
Wenn ich die Channel-Nummer eines Radiosenders bei playchannel angebe, bleibt der Bildschirm schwarz, es passiert nichts. Bei aMPdroid kann man auch keine Radiosender einstellen, vielleicht liegt es an WifiRemote?
TV-Sender funktionieren.

2.) Abspielen von Playlists:
Bekomme ich einfach nicht hin. Ich habe eine .m3u und eine .wpl, die in MP auch angezeigt werden. Wie muss man das genau machen? Erst "playlist loadlist default.m3u" und dann "playlist play default.m3u"?
Bei letzterem zeigt fhemweb "playlist play needs a valid index to start of type int" an und im DOS-Fenster "Argument "default.m3u" isn't numeric in addition (+) at ./FHEM/70_MEDIAPORTAL.pm line 130."

Danke & Gruß
Spiff.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: gemx am 19 Januar 2014, 21:28:35
Zitat von: Spiff am 19 Januar 2014, 15:37:28
Hi gemx,

zwei Sachen bekomme ich nicht hin:

1.) Abspielen von Radiosendern:
Wenn ich die Channel-Nummer eines Radiosenders bei playchannel angebe, bleibt der Bildschirm schwarz, es passiert nichts. Bei aMPdroid kann man auch keine Radiosender einstellen, vielleicht liegt es an WifiRemote?
TV-Sender funktionieren.

2.) Abspielen von Playlists:
Bekomme ich einfach nicht hin. Ich habe eine .m3u und eine .wpl, die in MP auch angezeigt werden. Wie muss man das genau machen? Erst "playlist loadlist default.m3u" und dann "playlist play default.m3u"?
Bei letzterem zeigt fhemweb "playlist play needs a valid index to start of type int" an und im DOS-Fenster "Argument "default.m3u" isn't numeric in addition (+) at ./FHEM/70_MEDIAPORTAL.pm line 130."

Danke & Gruß
Spiff.

zu 1)
=> muss ich mal testen

zu 2)
Der Umgang mit Playlisten per WifiRemote erfolgt immer 2 Stufe.
1. Laden der Playlist
=> Hierzu muss man eines der beiden Load... Kommandos verwenden. Liegt die Playlist im playlistfolder von Mediaportal nimmt man "loadlist" ansonsten kann die Playlistdatei irgendwo liegen, dann muss man "loadfromfile" verwenden und den gesamten pfad angeben

2. Abspielen der Playlist
Die Playlist selbst ist ja bereits geladen. Der einzige Parameter für "play" ist der index des Stückes innerhalb der Playlist.
Also z.B. "play 0", um die Playlist von Anfang an abzuspielen
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: AET_FHEM am 14 Februar 2014, 15:26:17
---> Hallo an alle

seit ihr mit dem Modul immer noch zufrieden?

ich werde es am WE mal testen!

ich nutze auch FHEM und Mediaportal toll wenn man systeme miteinander verbinden kann!

Mediaportal und FHEM sind einfach große klasse!!!
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 15 Februar 2014, 13:58:50
Hi!

Ich bekomme immer hin und wieder diese Fehler, weiss nicht genau, wann das passiert:
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 191.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 194.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 197.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 204.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 210.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 212.
Use of uninitialized value in concatenation (.) or string at ./FHEM/70_MEDIAPORT
AL.pm line 215.


Und ich bekomme es einfach nicht hin mit den Playlists.
Ich weiss nicht, was ich falsch mache, aber er scheint die Playlist nicht zu laden (ich mache es mit 'set mp playlist loadlist default.m3u'), die default.m3u ist im Standard-MP-Playlist-Verzeichnis.
Danach 'set mp playlist play 2' - er reagiert nicht.

Lautstärke einstellen usw. funktioniert aber wunderbar.

Gruß
Spiff.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: darkHorizon am 17 Februar 2014, 22:48:22
Wow, das klingt super! Hatte mir jetzt mit der Krücke eventghost Webinterface geholfen. So sind natürlich noch ganz andere Möglichkeiten gesetzt! Ich teste es bei Gelegenheit mal an.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: AET_FHEM am 21 Februar 2014, 23:07:28
HALLO,

schönes ding tut was es soll,
außer
"command stop" geht bei mir nicht.....
fhem sagt immer Unknown command
andere befehle gehn.....
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: AET_FHEM am 02 Mai 2014, 17:49:07
Hallo ich hab in meinem Log auch ständig die Meldungen:

Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 191.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 194.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 197.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 204.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 210.
Use of uninitialized value in string eq at ./FHEM/70_MEDIAPORTAL.pm line 212.
Use of uninitialized value in concatenation (.) or string at ./FHEM/70_MEDIAPORTAL.pm line 215.

--> und bei ein paar Filmen hängt sich das Modul auf und damit stürzt FHEM ab ...
--> und wie gesagt Pause Play alle möglichen Commands gehen aber stop leider nicht :-(

mir wäre schon geholfen wenn die Meldungen nicht mehr kommen würden..

bekommt man das noch irgendwie in den griff?

Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 14 Juli 2014, 19:45:40
Hallo!

Den Fehler mit "set mediaportal command stop" habe ich gefunden: es fehlt ein Leerzeichen in Zeile 108 vor stop. So funktioniert es:
my $mpcommands=" stop record pause play rewind forward replay skip back info menu up down left right ok volup voldown volmute chup chdown dvdmenu 0 1 2 3 4 5 6 7 8 9 0 clear enter teletext red blue yellow green home basichome nowplaying tvguide tvrecs dvd playlists first last fullscreen subtitles audiotrack screenshot ";

Die ganzen Fehler im Log scheinen mit der Variable $json im Log-Teil des Moduls zu tun zu haben. Kann jemand helfen? Ich habe die Zeilen, in denen die Fehler auftauchen, fett markiert.

Vielen Dank & Grüße
Spiff

Zitatsub ProcessMessage($$) {
   my ($hash,$msg)=@_;

   my $json=decode_json($msg);
   if ($json->{Type} eq "welcome") {
      Log 5, "WELCOME received. Sending identify message.";
      DevIo_SimpleWrite($hash,GetMSG_identify($hash),0);
   } elsif ($json->{Type} eq "authenticationresponse") {
      Log 5,"AUTHRESPONSE received. SUCCESS=$json->{Success}";
      $hash->{STATE}="Authenticated. Processing messages.";
   } elsif ($json->{Type} eq "status") {
      Log 5,"STATUS received.";
      readingsBeginUpdate($hash);
      readingsBulkUpdate($hash,"IsPlaying",$json->{IsPlaying});
      readingsBulkUpdate($hash,"IsPaused",$json->{IsPaused});
      readingsBulkUpdate($hash,"Title",$json->{Title});
      readingsEndUpdate($hash,1);
   } elsif ($json->{Type} eq "volume") {
      Log 5,"VOLUME received.";
      readingsBeginUpdate($hash);
      readingsBulkUpdate($hash,"Volume",$json->{Volume});
      readingsBulkUpdate($hash,"IsMuted",$json->{IsMuted});
      readingsEndUpdate($hash,1);
   } elsif ($json->{Type} eq "nowplaying") {
      Log 5,"NOWPLAYING received.";
   } elsif ($json->{Type} eq "nowplayingupdate") {
      Log 5,"NOWPLAYINGUPDATE received.";
   } else {
      Log 5, "unhandled message received: MessageType= $json->{Type}";
   }
}
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: AET_FHEM am 23 Juli 2014, 18:38:34
Danke für die Lösung mit dem Stop

jetzt wäre noch schön wenn man herausfinden würde wieso FHEM abstürzt bei ein paar wenigen Filmen....
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 23 Juli 2014, 19:12:22
je nach plattform kann das z.b. passieren wenn umlaute oder andere nicht ascii zeichen im json string sind. eventuell nicht so kodiert wie erwartet.

die fritzbox hat damit z.b. probleme.

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 23 Juli 2014, 20:44:23
Hi,

ich habe die Fehler in der Konsole behoben.
Der Code war so aufgebaut, dass manche Nachrichten an einer falschen Stelle abgeschnitten wurden, was dazu führte, dass sie nicht wie erwartet anfingen.

Außerdem habe ich Befehle für das Einstellen eines Radiosenders (playradiochannel) und das Abspielen von Playlists mit Shuffle-Funktion (playlist loadlist_shuffle / playlist loadfrompath_shuffle) hinzugefügt und die Playlist-Befehle korrigiert. Funktioniert jetzt.

Version 0.3 im Anhang.

Zu dem Problem mit deinem Absturz:
Ist das auch bei Musik so? Ich habe gerade mal eine Datei mit "Ä" im Titel abgespielt, die Übertragung der Nachrichten ist laut Log okay - nur in fhemweb wird das Ä so angezeigt: �
Probier doch so mal, ob es bei dir deswegen abstürzt, bei mir geht das - ich lasse FHEM allerdings auch auf Windows laufen.
Du könntest FHEM mal auf verbose 5 laufen lassen und die Logs ansehen. Vorher bitte in angehängter Datei das "#" vor "Log 5,"MediaPortal: RAW DATA: $buf";" entfernen, dann können wir genau sehen, was vor dem Parsen ankommt.

Viele Grüße
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 23 Juli 2014, 20:46:48
wenn du aus den decode_json() aufrufen ein JSON->new->utf8(0)->decode() machst stimmen die umlaute eventuell. damit hat die fritzbox aber wirkliche probleme.

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 23 Juli 2014, 20:52:05
Hi Andre,

ja, das funktioniert tatsächlich!
Was meinst du genau? Hat die Fritzbox mit utf8 Probleme oder mit dem, wie es vorher war?
Wenn mit utf8, wie könnte man das Modul so gestalten, dass die fritzbox es mag, ich meine Umlaute aber trotzdem habe? :)

Viele Grüße
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 23 Juli 2014, 20:58:02
klar funktioniert das :).

ja die fritzbox hat mit utf8 probleme. die JSON->new->utf8(0)->decode() variante schmiert komplett ab. ich weiss nicht ob immer oder nur abhängig von der perl version. schau mal im wiki da gibt es etwas zu fritzbox und utf8. der aktuelle 5.5. fhem installer bringt ein bisschen utf8 mit. aber nur wenn von grund auf installiert wird und nicht nur per update.

man kann im modul die plattform abfragen und dann abhängig davon die eine oder die andere variante aufrufen.

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 25 Juli 2014, 03:11:31
ich hab gestern ins netatmo modul eine fritzbox erkennung  und das umschalten zwischen beiden dexode aufrufen eingebaut.

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 25 Juli 2014, 22:17:24
Hi Andre,

dankeschön für den Tipp!
Habe ich das richtig herausgelesen?

my $netatmo_isFritzBox = undef;
sub
netatmo_isFritzBox()
{
  $netatmo_isFritzBox = int( qx( [ -f /usr/bin/ctlmgr_ctl ] && echo 1 || echo 0 ) )  if( !defined( $netatmo_isFritzBox) );

  return $netatmo_isFritzBox;
}


    if( netatmo_isFritzBox() ) {
      $json = decode_json($data);
    } else {
      $json = JSON->new->utf8(0)->decode($data);
    }


Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 25 Juli 2014, 22:20:41
ja. das ist die stelle. du solltest nur in deiner kopie überall netatmo umbenennen :)

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: fh168 am 25 Juli 2014, 23:25:56
hier stand mist.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: gemx am 08 August 2014, 09:03:31
Habe gerade die V0.3 im ersten Post veröffentlicht.

Diese überarbeitung stammt komplett von spiff. Vielen Dank :)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: mago0211 am 17 August 2014, 15:47:50
Hallo gmex,

ich habe dein Modul für MediaPortal gerade entdeckt da wollte ich gleich ausprobieren  8) .

Leider scheitert es schon daran das Modul zu laden da er die JSON.pm Datei nicht Localisieren kann.

Folgende Fehlermeldung:
Can't locate JSON.pm in @INC (@INC contains: /opt/fhem /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM ./FHEM/lib) at ./FHEM/70_MEDIAPORTAL.pm line 35.
BEGIN failed--compilation aborted at ./FHEM/70_MEDIAPORTAL.pm line 35.


In den angegebenen Ordnern ist die Datei auch nicht zu finden.

Ich habe das JSON Modul für Perl so Installiert wie du es im ersten Beitrag angegeben hast
cpan install JSON

unter

/home/pi/perl5/lib/perl5

konnte ich eine JSON.pm Datei finden.

Vielleicht kannst du mir helfen das gerade zu biegen?

Danke und Gruß

Markus


Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 17 August 2014, 15:59:51
Hallo Markus,

versuche doch mal, die JSON.pm in eines dieser Verzeichnisse zu kopieren:
/opt/fhem
/etc/perl
/usr/local/lib/perl/5.14.2
/usr/local/share/perl/5.14.2
/usr/lib/perl5
/usr/share/perl5
/usr/lib/perl/5.14
/usr/share/perl/5.14
/usr/local/lib/site_perl
. ./FHEM
./FHEM/lib


Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: mago0211 am 17 August 2014, 18:48:34
Hallo Spiff,

Danke für die schnelle Antwort,
ich hab jetzt ein bisschen getestet...

Ich habe mir jetzt eine Verknüpfung der JSON.pm und (ohne ging es nicht) den Ordner JSON ins /opt/fhem Verzeichnis gelegt. Danach ging es.

Gruß
Markus
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 02 Februar 2015, 23:21:03
wow, tolles Plugin! Ich bin total begeistert :)

Dank an die "beiden" Entwickler!
Ich habe meinen XBMC-RasPi kurzzeitig des Mediadienstes enthoben und mit FHEM und einem IR-Sensor versehen. Er sendet jetzt die Tastendrücke der MCE-FB über FHEM weiter zu MePo. Das geht gefühlt schneller als über den IR-Funk-IR Transmitter der sonst dazwischen ist um den Rechner im anderen Raum zu steuern. Hat beinahe sofort geklappt. Super! Ich weiß nicht, was WiFi-Remote zur Verfügung stellt, könnet man den Funktionsumfang noch erweitern? Zum Beispiel Popupmeldungen auf MePo wären nett :)

Das mein erstes sinnvolles Experiment mit FHEM, abgesehen von den Lampenspielen die man so macht ;)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 14 März 2015, 21:31:49
kann man irgendwie die Zeitspanne bescheunigen, in der das Modul versucht MePo zu erreichen? Ich denke, das wird eine feste Pollingfrequenz oder so sein. Jedenfalls dauert es etwas lange, bis ein laufendes MePo bemerkt wird. Ich wecke den MePo-Rechner jetzt über Lirc und WOL, klappt in wenigen Sekunden. Dann kommt aber eine Zwangspause bis das Modul den Server gefunden hat und Befehle annimmt. Wäre es evtl. möglich durch einen Trigger (von der FB) an das Modul zu einem sofortigen Server-Suchen zu bewegen?
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 15 März 2015, 19:26:27
Hi aplatac!

Zitat von: aplatac am 02 Februar 2015, 23:21:03
Ich weiß nicht, was WiFi-Remote zur Verfügung stellt, könnet man den Funktionsumfang noch erweitern? Zum Beispiel Popupmeldungen auf MePo wären nett :)

Eigene Popup-Meldungen lässt MePo glaube ich noch nicht zu. Aber Erweiterungen sind möglich - eigentlich kann man alles, was die Schnittstelle zu MePo zur Verfügung stellt, auch in fhem ansprechen.
Eine Liste findest du hier:
http://wiki.team-mediaportal.com/1_MEDIAPORTAL_1/17_Extensions/3_Plugins/WifiRemote/Commands (http://wiki.team-mediaportal.com/1_MEDIAPORTAL_1/17_Extensions/3_Plugins/WifiRemote/Commands) für Kommandos, mit denen man MePo durch fhem steuern kann
http://wiki.team-mediaportal.com/1_MEDIAPORTAL_1/17_Extensions/3_Plugins/WifiRemote/Messages (http://wiki.team-mediaportal.com/1_MEDIAPORTAL_1/17_Extensions/3_Plugins/WifiRemote/Messages) für Nachrichten, die von MePo an fhem auf Anfrage gesendet werden können

Wenn du etwas Spannendes findest, können wir es bestimmt einbauen.


Zitat von: aplatac am 14 März 2015, 21:31:49
kann man irgendwie die Zeitspanne bescheunigen, in der das Modul versucht MePo zu erreichen? Ich denke, das wird eine feste Pollingfrequenz oder so sein. Jedenfalls dauert es etwas lange, bis ein laufendes MePo bemerkt wird. Ich wecke den MePo-Rechner jetzt über Lirc und WOL, klappt in wenigen Sekunden. Dann kommt aber eine Zwangspause bis das Modul den Server gefunden hat und Befehle annimmt. Wäre es evtl. möglich durch einen Trigger (von der FB) an das Modul zu einem sofortigen Server-Suchen zu bewegen?

Dazu kann ich leider wenig sagen. So wie ich das im MePo-Modul sehe, ist das eine fhem-interne Sache, die mit DevIO zu tun hat. Ob man ein Verbinden manuell anstoßen kann, weiss ich nicht. Müsstest du vielleicht an anderer Stelle nochmal erfragen. Bei mir dauert das Verbinden ca. 30 Sekunden.

Viele Grüße
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 15 März 2015, 20:37:44
das gleiche Problem haben auch andere, siehe hier:

http://forum.fhem.de/index.php/topic,31639.msg241772.html#msg241772 (http://forum.fhem.de/index.php/topic,31639.msg241772.html#msg241772)

und ich glaube, den gleichen Ansatz hat auch schon einer bei XBMC vorgeschlagen.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 19 März 2015, 19:28:16
Entschuldigt meine Unbedarftheit, aber könnte man das nicht auch so machen?
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 19 März 2015, 20:12:35
Hi aplatac.

Probier mal den Anhang.
Verbindung mit set mp connect erzwingen.

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 19 März 2015, 21:58:24
yes!
das sieht gut aus, klappt :)
Ich mach grad n paar Experimente wie ich es am besten einsetze...
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 24 März 2015, 22:08:56
das Modul läuft gut, aber leider scheint MediaPortal ein Probleme mit dem WiFiRemote-Plugin nach einem Standby (S3) zu haben. Gelegentlich nimmt es nach dem Aufwachen keine Befehle an.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 29 März 2015, 20:07:56
Das Problem mit WiFi-Remote hat sich wieder verflüchtigt, evtl. lags an einer USB-Buchse mit Wackelkontakt, das war jedenfalls das Einzige was ich finden und beheben konnte...

Das Mediaportalmodul läuft gut mit dem neuen connect. Ich löse durch LIRC ein script aus, welches den Media-PC weckt, Beamer und AVR einschaltet, 12 Sekunden wartet (das ist ne Krücke, weil ich nicht genau prüfen kann wann Mediaportal bereit ist) und sende dann den connect-Befehl. Das Ganze dauert 13 Sekunden und so lange braucht eh der Beamer um die Lampe warm zu machen und vorher waren es bis zu 60 Sekunden. Deutlich verbesserter WAF :)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 02 April 2015, 19:47:31
Hi!

Klingt doch super!
Ich werde in dem STV-Thread mal bescheid sagen, dass ich die Routine kopiert habe.
Bei mir läuft das Modul auch weiterhin gut - die connect-Sache benutze ich jedoch gar nicht.

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 14 April 2015, 21:54:16
@spiff: kennst du dich mit dem Power Scheduler++ Plugin aus?
Das hat eine Option in der man ihm einen Befehl/Script mitgeben kann, dass bei "power state change" ausgelöst wird. Laut Wiki übergibt er an eine Batch unter anderem eine Variabel "Standby", ich dachte wenn eben der Standby ausgelöst wurde. Aber leider führt er das Script eben nicht beim Einschlafen, sondern bei dem folgenden Aufwachen aus. Das nützt mir nichts, ich möchte gerne den Beamer und AVR per RasPi-LIRC ausschalten wenn MePo in den Standby geht. Zur Not könnte ich wie beim connect das Ganze von der anderen Seite aufziehen und mit dem Mediaportal-Modul prüfen ob dieses läuft und wenn nicht die Geräte ausschalten aber dann schaltet er mir auch den Verstärker aus wenn ich nur diesen einschalte und für Musik nutze. Also muss ich dann diesen Zustand extra abfangen was fummelig und ungeschickt wäre...
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 14 April 2015, 22:24:40
Hi,

nein, das kenne ich nicht.
Aber probiere doch mal die Software "Eventghost".
Ich bin von ihr sehr überzeugt. Sie ist open source und bietet einen irren Funktionsumfang.

Ich habe das gerade mal getestet: wenn der PC in den Standby geht, macht er vorher noch schnell das DVD-Laufwerk auf.
Du kannst auch Batch-Dateien ausführen lassen.

Wenn du eine .bat Datei folgender Art erstellst und sie dann bei dem Standby-Event ausführen lässt, sollte der jeweilige Befehl an fhem gesendet werden.
C:\Perl\bin\perl.exe ..\fhem.pl localhost:7072 "set Lampe on"
Das Ausführen externer Dateien findest du in Eventghost unter Befehl hinzufügen -> System -> starte Anwendung

Übrigens, wie man umgekehrt mit fhem Events in Eventghost ausführt, ist hier beschrieben:
http://forum.fhem.de/index.php/topic,13680.msg85892.html#msg85892

Viel Spaß!
Spiff

Edit:
(http://dg.fserver.de/forum/fhem/150414_EventGhost.png)
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: aplatac am 15 April 2015, 00:11:24
Nabend,

EventGhost... gute Idee, wusste nicht dass der auch auf Standby reagiert!
Zu meiner Schande muss ich sagen, dass ich den sogar schon drauf hatte
um damit den LIRC durchs Netz anzusprechen. Aber dann fand ich es mit
netcat eleganter ;)

Danke für den Tip!
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: TWART016 am 29 August 2015, 15:30:33
Hallo Spiff,

Zitat von: Spiff am 14 April 2015, 22:24:40
(http://dg.fserver.de/forum/fhem/150414_EventGhost.png)

wie muss man das Webserver Plugin konfigurieren?
Ich möchte von einem Raspberry Pi mit FHEM ein Skript auf einem Windows PC mit Eventghost ausführen.


Gruß
TWART016
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 29 August 2015, 17:08:02
Hi,

siehe hier:
http://forum.fhem.de/index.php?topic=13680.msg327421#msg327421

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 28 Dezember 2015, 23:19:16
Hallo,

ich wollte mal fragen, ob an dem Modul noch jemand arbeitet?

Es gäbe ein paar kleinere Punkte, die für meine einfache Anforderung (mitloggen, was wann abgespielt wurde) etwas störend sind.
Das wichtigste wäre der Einsatz von "$readingFnAttributes" bei den verfügbaren Attributen, da ich unbedingt ein "event-on-change-reading" benötige. Es gibt einfach zu viele Events :)
Und dann brauche ich auch noch "stateFormat".

Außerdem werden Umlaute nicht korrekt übertragen.

Des Weiteren stürzt das Modul manchmal ab, wenn Mediaportal beim Abschalten nicht mehr erreichbar ist.

Vielleicht ist da ja noch jemand, ansonsten würde ich das auch kurz einbauen, möchte aber natürlich keinen übergehen...

Danke schon mal.

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: justme1968 am 28 Dezember 2015, 23:28:41
so lange das nicht ins modul eingebaut ist kannst du dir bei den beidem attributen auch per userattr helfen und sie so hinzufügen.

gruss
  andre
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 29 Dezember 2015, 00:20:28
Hi Andre,

Danke für den Tipp. Daran hatte ich gar nicht mehr gedacht... jetzt fehlen mir nur noch die Umlaute und Sonderzeichen :)

Grüße
Reiner
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 05 Januar 2016, 14:18:13
Hallo gemx,

nach einer Woche nochmal ein Push des Threads.
Wirst du hier noch weitermachen, oder ist es dir recht, wenn ich das Modul übernehme?

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 05 Januar 2016, 14:51:20
Hi Reinerlein,

ich hatte ja auch ein bisschen daran rumgewerkelt, weil gemx nicht mehr so aktiv gewesen zu sein schien. Ich würde es begrüßen, wenn da noch jemand aktiv mitgestaltet!
Ich habe es auch nie geschafft, das Modul ins SVN hochzuladen.
Es wäre schön, wenn du bei der letzten Version v0.4a vom 19.03.2015 weitermachen würdest. Die Version im ersten Beitrag ist veraltet.

Viele Grüße
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 05 Januar 2016, 15:06:35
Ach so und bezüglich der Umlaute:
schau mal hier:
http://forum.fhem.de/index.php/topic,18895.msg186709.html#msg186709

Anscheinend habe ich die Fritzbox-Erkennung gar nicht eingebaut...  ::)

Benutzt du eine Fritzbox o.ä.? Versuch doch mal, ob das daran liegt und kommentiere Zeile 205
my $json=JSON->new->utf8(0)->decode($msg);

aus und nimm stattdessen Zeile 207
my $json=decode_json($msg);

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 05 Januar 2016, 15:33:12
Hi Spiff,

ich habe deine genannte Version leider übersehen gehabt, und mit der im ersten Post losgelegt  ::)
Ich habe in meiner lokalen Version die Themen von mir bereits beseitigt. Da es ja keine offizielle Version war, ging da ja auch nichts bei einem Update verloren.
Ich werde mir mal die Unterschiede zwischen deiner Version und der aus dem ersten Post anschauen, und bei mir einarbeiten.

Das ganze ins Subversion zu bringen sollte dann kein Problem sein...

Danke schonmal für deine Hinweise... Ich habe gemx auch schon eine PN dazu gesendet. Gemäß Fhem-Richtlinien soll 3 Wochen gewartet werden, um dem Originalauthor eine Chance zur Reaktion zu geben.
Dazu werde ich den Thread hier im Wochenrythmus pushen.
Mal schauen, ob da noch eine Reaktion kommt...

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 05 Januar 2016, 16:21:33
Hi Spiff,

sehe ich das richtig, dass der Unterschied im zusätzlichen "connect"-Befehl und der anderen Behandlung des Json-Strings besteht?
Zu dem Connect: Hast du absichtlich den Teil mit dem Fork dringelassen? Das Mediaportal-Modul verwendet doch eigentlich gar kein forken...

Wenn das alles an Unterschied ist, dann hab ich das jetzt bei mir mit drin...
Was ich noch zusätzlich eingebaut habe ist ein direkter sleep-Befehl (als kurze Variante zu "powermode sleep") und ein integriertes Wakeup (über eine eigene interne MagicPacket-Funktion). Die dafür notwendige Mac-Adresse wird bei der ersten Verbindung ermittelt, sowie alle automatisch gelieferten Informationen in Readings verpackt (z.B. Laufzeit oder die aktuelle Position).
Außerdem habe ich einiges bereinigt, damit die Oberfläche alle get- und set-Anweisungen auch sauber (mit möglichen Auswahlwerten) anzeigt, und eine Doku begonnen :)
Der Weg um offiziellen Modul ist nur noch kurz...

Was ich leider überhaupt nicht testen kann, ist, ob meine Version noch auf einer Fritzbox lauffähig wäre. Verwendest du eine Fritzbox und könntest das dort testen?

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 05 Januar 2016, 17:30:17
Hi Reinerlein,

ja, es gab 2 verschiedene 0.3-Versionen: einmal die aus dem ersten Beitrag vom 18.7. und eine vom 23.7.
Ist jetzt bisschen unglücklich gelaufen, weil die letzte Version eigentlich sehr gut lief.

Wenn ich das richtig sehe (Zeilenangabe aus der Version vom 18.7., erster Beitrag):
Zeile 98 kleiner Tippfehler:
return "unknown argument, choose one of status nowplaying";

Und playradiochannel kam hinzu
} elsif ($cname eq "playradiochannel") {
if ($a[2] ne $a[2]+0) { return "playchannel needs a valid channelid of type int"; }
$cmd="{\"Type\":\"playradiochannel\",\"ChannelId\":$a[2]}\r\n";   

Und Zeile 163, das Log 5,"MediaPortal: RAW MSG: $buf;" ist auskommentiert.

Ich habe alle Logs mit dem Prefix "Mediaportal: " versehen, das machte das LOG übersichtlicher und ich hatte ein paar auskommentierte 5er Logs eingefügt, die bei der Fehlerbehebung helfen sollten.

Das Wichtigste ist aber die Behebung des Fehlers in der JSON-Interpretierung.
Zeile 172:
$strippos=$i;  -->  if ($level==0) {$strippos=$i;}

Das ist das, was ich auf die Schnelle erkannt habe.
Aber es wäre mir lieb, wenn bei deiner Version nichts von meiner verloren geht. :)


Das mit dem Fork habe ich drin gelassen, weil ich die Routine aus einem anderen Modul kopiert hatte. Ich hatte dann nur ein paar Dinge abgeändert, dass sich da nichts in die Quere kommt und war froh, dass es überhaupt funktioniert hat ohne wirklich verstanden zu haben, was da passiert...
Wenn das schlanker geht: tob dich gerne aus. :)

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 05 Januar 2016, 18:12:20
Hi Spiff,

danke nochmal für diese Zusammenfassung. Das habe ich alles drin. Die neue Version bei mir sollte also nicht schlechter als die bisherige sein :)

Fehlt nur noch jemand, der das dann mal auf einer Fritzbox testen kann, sofern das überhaupt noch wichtig ist... Ist ja eine kleiner werdende Anwenderschaft :)

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: spooy99 am 05 Januar 2016, 21:22:02
Hallo - freue mich auf eine neue Version (habe die aus Post #36 im Einsatz) - und teste gerne mit. Hab zwar eine Fritzbox, FHEM läuft jedoch separat.

Aktueller Stand bei mir ist, dass beim Titel nur der Sendername angezeigt wird - sollte das funktionieren?


   STATE      opened
   TYPE       MEDIAPORTAL
   Readings:
     2016-01-05 21:06:01   IsMuted         false
     2016-01-05 21:10:13   IsPaused        false
     2016-01-05 21:10:13   IsPlaying       true
     2016-01-05 21:10:13   Title           ZDF HD
     2016-01-05 21:06:01   Volume          100
     2016-01-05 21:04:43   state           opened


Danke!
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 05 Januar 2016, 21:32:30
Hi,

@Reinerlein
Klingt super!
Ich kann es leider auch nicht auf einer Fritzbox testen.

@spooy99
Das ist bei mir auch so.
Es lassen sich aber noch wesentlich mehr Informationen anzeigen, sie müssen nur in das Modul eingebaut werden. Reine Fleißarbeit ;)
Eine Liste ist hier zu sehen:
http://wiki.team-mediaportal.com/1_MEDIAPORTAL_1/17_Extensions/3_Plugins/WifiRemote/Messages
z.B. auch die Beschreibung aus den EPG-Daten oder auch die nächsten anstehenden Sendungen etc.
Ich habe momentan leider keine Zeit dafür, aber mal sehen, was Reinerlein noch so einbaut...  ::) 8)

Gruß
Spiff
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 05 Januar 2016, 22:03:11
Hi Spiff,

das mit der aktuellen Sendung ist schon drin  8)

Ich schaue mal, was sonst noch interessant sein kann :)

Grüße
Reinerlein
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 08 März 2016, 10:20:16
Hi Reinerlein,

wie ist denn der Stand?

Gruß
Spiff.
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Reinerlein am 14 März 2016, 22:05:06
Hi Spiff,

ich hatte das ja unter https://forum.fhem.de/index.php/topic,48911.0.html (https://forum.fhem.de/index.php/topic,48911.0.html) in einem neuen Thread angefangen.
Mir war heute aber noch aufgefallen, dass ich die letzte Änderung noch gar nicht eingecheckt hatte... Meintest du das?

Grüße
Reiner
Titel: Antw:[Neues Modul] MediaPortal
Beitrag von: Spiff am 14 März 2016, 22:28:51
Hi,

nein, ich hatte nur den aktuellen Thread nicht gesehen und lange kein Update mehr ausgeführt.
Jetzt ist alles klar, vielen Dank für deine Mühen, bisher funktioniert das Modul wie gewohnt, sogar noch besser dank der zusätzlichen Readings.

Viele Grüße
Spiff.