Modul für Kodi (ehemals 70_XBMC)

Begonnen von vbs, 02 Februar 2017, 23:11:10

Vorheriges Thema - Nächstes Thema

Tommy82

#285
Hab leider nochmal ein Problem, hab ein bestehendes Device umgeandert auf eine neue IP:Port sowie user und PW aktualisiert, bekomme aber keine Verbindung hergestellt obwohl das Kodi Device online ist, hab in Kodi auch den Zugriff auf Kodi aktiviert... Finde leider meinen Fehler nicht

Internals:
   DEF        192.168.188.25:8484 tcp KODI 1234
   DeviceName 192.168.188.25:8484
   FUUID      5c48d22d-f33f-f412-9fde-d1605aab1bb2e4b8
   Host       192.168.188.25
   LAST_RECV  1615133854.92877
   NAME       Kodi
   NR         316
   NextID     1
   Port       8484
   Protocol   tcp
   STATE      Initialized
   TYPE       KODI
   Helper:
     DBLOG:
       3dfile:
         myDbLog:
           TIME       1615133684.4644
           VALUE      off
       channel_002:
         myDbLog:
           TIME       1615133284.07267
           VALUE      Juwelo TV
       channel_004:
         myDbLog:
           TIME       1615133283.4793
           VALUE      Sky Sport UHD
       channel_005:
         myDbLog:
           TIME       1615133283.18156
           VALUE      Sky Cinema Special HD
       channel_007:
.........
OLDREADINGS:
   PendingEvents:
   PendingPlayerCMDs:
   READINGS:
     2021-03-07 17:14:44   3dfile          off
     2020-10-08 17:34:48   audiolibrary    update
     2021-03-07 17:08:04   channel_002     Juwelo TV
     2021-03-07 17:08:03   channel_004     Sky Sport UHD
     2021-03-07 17:08:03   channel_005     Sky Cinema Special HD
     2021-03-07 17:08:03   channel_007     Discovery HD (VF)
     2021-03-07 17:08:04   channel_008     SR Fernsehen
     2021-03-07 17:08:03   channel_009     tagesschau24 HD
     2021-03-07 17:08:03   channel_011     RTLplus
     2021-03-07 17:08:04   channel_013     TVE (spa)
     2021-03-07 17:08:04   channel_014     Rai 1 (ita)
     2021-03-07 17:08:03   channel_015     BR Fernsehen Süd HD
     2021-03-07 17:08:03   channel_017     N24 Doku
     2021-03-07 17:08:04   channel_019     SPORTDIGITAL FUSSBALL
     2021-03-07 17:08:03   channel_020     NatGeo Wild HD (VF)
     2021-03-07 17:08:04   channel_023     RTP Internacional (por)
     2021-03-07 17:08:03   channel_024     TELE 5 HD
     2021-03-07 17:08:03   channel_025     Sky Cinema Action HD
     2021-03-07 17:08:04   channel_026     QVC2
     2021-03-07 17:08:03   channel_027     CNN HD (eng)
     2021-03-07 17:08:03   channel_028     Disney Jr. HD
     2021-03-07 17:08:03   channel_030     DMAX
..........
2021-03-07 17:07:57   channelgroup_024_label SDTV
     2021-03-07 17:07:57   channelgroup_024_type tv
     2021-03-07 17:07:57   channelgroup_025_label Radio channels
     2021-03-07 17:07:57   channelgroup_025_type radio
     2021-03-07 17:14:44   currentAlbum   
     2021-03-07 17:14:44   currentArtist   
     2021-03-07 17:14:44   currentMedia    https://video-hw.xvideos-cdn.com/videos/mp4/a/7/c/xvideos.com_a7c7a9329e9ecba0ddcfc229d5af8cd4-1.mp4?e=1615144467&ri=1024&rs=85&h=04d0e5292e3857ce14fe2065feeae890|User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3
     2021-03-07 17:14:28   currentOriginaltitle
     2021-03-07 17:14:28   currentShowtitle
     2021-03-07 17:14:44   currentTitle    My Teen's Dirty Secret  (00:13:36 min)
     2021-03-07 17:14:44   currentTrack   
     2021-03-07 17:14:28   episode         
     2021-03-07 17:14:28   episodeid       
     2021-03-07 17:17:34   fullscreen      off
     2021-03-05 16:48:45   id              245
     2021-03-07 17:14:44   label           My Teen's Dirty Secret  (00:13:36 min)
     2021-03-07 17:14:28   movieid         
     2021-03-07 17:17:34   mute            off
     2021-03-07 17:17:34   name            Kodi
     2021-03-07 17:14:44   partymode       off
     2021-03-07 17:15:32   playStatus      stopped
     2021-03-07 17:14:28   playlist       
     2021-03-07 17:14:44   repeat          off
     2021-03-07 17:14:28   season         
     2021-03-07 17:14:44   shuffle         off
     2021-03-07 17:17:34   skin            Rapier(skin.rapier)
     2021-03-07 17:14:28   songid         
     2021-03-07 17:14:44   speed           4
     2021-03-07 17:18:10   state           disconnected
     2021-03-07 17:17:34   stereoscopicmode off
     2021-03-07 17:07:56   system          wake
     2021-03-07 17:14:44   thumbnail       image://https%3a%2f%2fcdn-so.fantasti.cc%2f%2fimages%2fvideos%2fxvideos%2fthumbs%2fm%2fy%2f_%2fmy_teen_s_dirty_secret.jpg/
     2021-03-07 17:14:44   time            00:00:24.977
     2021-03-07 17:14:44   totaltime       00:13:36.560
     2021-03-07 17:14:44   tvshowid        -1
     2021-03-07 17:14:44   type            unknown
     2021-03-07 17:17:34   version         18.9-00ff7594e42e9539912c9bd12c5a6a9d1b9d8d78 stable
     2021-03-07 17:15:32   videolibrary    update
     2021-03-07 17:17:34   volume          0
     2021-03-07 17:14:44   year            1969
Attributes:
   devStateIcon opened:rc_GREEN:on disconnected:rc_RED:off Initialized:message_socket_disabled
   disable    0
   group      Alexa
   room       Wohnzimmer
   updateInterval 60



Im Log steht dazu
2021.03.08 06:23:13.026 1: Kodi: Can't connect to 192.168.188.25:8484: Inappropriate ioctl for device
2021.03.08 06:23:13.065 1: Kodi: Can't connect to 192.168.188.25:8484: connect to http://192.168.188.25:8484 timed out
Fhem Cubitruck  Armbian Buster with Linux 5.3.9-sunxi
HM-CC_RT-DN, HM-Sec-RHS,HM-Sec-SD, HM-Sec-SCo,IT1500,1xIT GRR-3500 Fritz!Dect200,Powerline546E,Enigma2 Modul mit 3 Vu+,Wol Modul für WinServer2016 und WinServer 2019,FB6590
Allnetl Wandtablett mit FTUI

vbs

Sorry, so ganz spontan keine Idee. Im Zweifel Schritt für Schritt die Änderungen rückgängig machen und gucken, ab wann das passiert.

beaune

Hallo,

nach einigen Stunden Suche, wo ich versucht habe, an Kodi per JSON-API einen Tastendruck zu senden, der dann ganz normal über Keymaps ausgewertet wird, hab ich nun gelernt, dass das wohl gar nicht geht. Anstatt dessen muß man wohl per UDP den Eventserver (https://kodi.wiki/view/EventServer) ansprechen. Dazu gibts wohl auch Python-Beispiele, die mir für fhem aber nicht so richtig weiter geholfen haben. Daher hab ich nun mehrere Fragen:


  • Kann man mit Hilfe des Kodi-Moduls Tastendrücke an Kodi senden? Mit send <text> geht es definitiv nicht.
  • Falls nein, gibt es vielleicht ein anderes Modil in Kodi, dass UDP senden kann?
  • Oder ist mein problem vielleicht schon mal von jemandem, konkret gelöst worden?

Vielen Dank für Eure Hilfe!

MadMax-FHEM

Wenn's da was in python gibt, ist evtl. das https://forum.fhem.de/index.php/topic,115230.msg1094931.html#msg1094931 eine Möglichkeit.

Vielleicht unterstützt ja auch der Modulauthor des "Python-Moduls" beim erstellen eines Python-KODI (wie bei anderen Modulen auch)...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

All-Ex

Hi zusammen,
gibt es eine Möglichkeit, mit dem KODI-Modul herauszufinden, welche Audio-Spur gerade in KODI ausgewählt wurde?

Das Modul zeigt ja alle vorhandenen Audio-Spuren an:
sd_audio0channels
sd_audio0codec
sd_audio0language
sd_audio1channels
sd_audio1codec
sd_audio1language


Aber wie finde ich heraus, welche gerade abgespielt wird?

All-Ex

So, habe es nun so gelöst, dass per set-Befehl der aktuelle Audio-Channel von der Kodi-API angefordert wird und in ein User-Reading geschrieben wird.

set kodi {"jsonrpc": "2.0", "method": "Player.GetProperties", "params": { "properties": ["currentaudiostream"], "playerid": 1 }, "id": "VideoGetItem"}

UserReadings:
currentAudioIndex {
   if (ReadingsVal($name,"playStatus","") !~ /playing|paused/ ) {
     return "na";
   }
   else {
     ReadingsVal($name,"jsonResponse","") =~ m/.*index.:(\d+),".*/;
     if (defined($1)) {
       return $1;
     } else {
       return ReadingsVal($name,"currentAudioIndex","");
     }
   }   
},

currentAudioCodec {
   ReadingsVal($name,"sd_audio" . ReadingsVal($name,"currentAudioIndex",0) . "codec", "");
},

currentAudioLanguage {
   ReadingsVal($name,"sd_audio" . ReadingsVal($name,"currentAudioIndex",0) . "language", "");
}

vbs

#291
Ich hab Readings für "currentaudiostream" in das Modul eingebaut. Es sollte jetzt geben:
currentAudioStream_bitrate
currentAudioStream_channels
currentAudioStream_codec
currentAudioStream_index
currentAudioStream_language
currentAudioStream_name


Ab morgen im Update.

RockFan

Hallo,

ich möchte gerne nochmals indirekt auf dieses Thema zurückspringen:
Zitat von: vbs am 03 Februar 2021, 22:39:41
Eigentlich will man man doch aber nicht wissen, ob ein bestimmtes Gerät online ist, sondern eigentlich ist ja relevant, ob der Kodi-Prozess läuft. Das mag manchmal Hand in Hand gehen, aber das muss nicht zwingend so ein (wie z.B. bei mir). Darum bin ich nicht sicher, ob zeroconf der richtig (im Sinne von "allgemeingültige") Ansatz ist.

Wenn das in deinem Fall aber so ist, dass "Rechner online" -> "Kodi online", dann kannst du dir da sicherlich was basteln mit zeroconf.

Bei mir läuft Kodi auf einem alten Raspberry 3. Genau genommen läuft der RPi 24/7 Kodi wird aber nur ca. 5% der Zeit gebraucht. Ich hatte das so gelöst, indem ich über FHEM den Kodi Prozess auf dem RPi 3 starte wenn ich ihn brauche und über das KODI-Device wieder beende, wenn ich Kodi nicht mehr brauche. Soweit so gut - läuft auch perfekt.

Wegen zu vieler Freezes bin ich jetzt aber ein wenig am "Aufräumen" und da fallen die minütlichen Prüfungen des Kodi-Devices auf. Da ich ja alles über FHEM selbst im Griff habe, dachte ich mir, dass ich es über das Attribut "disable" lösen kann. Gesagt getan. Das überraschende Ergebnis ist allerdings, wenn ich das disable Attribut des KODI-Devices von 1 auf 0 setze (also KODI wieder enable) klappt das nicht. Das Device geht nur noch auf "Initialized", aber eine Verbindung zum laufenden Kodi wird nicht mehr aufgebaut. Auch ein set connect bringt nichts.

Im Folgenden für mich wenig ergiebige Logs mit verbose 5:

2022.03.19 12:23:24 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:23:24 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:23:25 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:23:25 4: wz_Kodi: KODI_Set: ?
...
2022.03.19 12:24:08 4: wz_Kodi: KODI_Set: ?
...
2022.03.19 12:24:15 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:24:15 4: wz_Kodi: KODI_Set: ?
...
2022.03.19 12:27:06 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:27:06 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:27:17 4: wz_Kodi: KODI_Set: connect
2022.03.19 12:27:17 4: wz_Kodi: KODI_ForceConnect
2022.03.19 12:27:17 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:27:17 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:27:17 4: wz_Kodi: KODI_Set: ?
2022.03.19 12:27:19 4: wz_Kodi: KODI_Set: ?


Ich habe es noch nicht probiert, aber wahrscheinlich wird ein Connect erst wieder mit einem Restart von FHEM klappen.
Habe ich noch einen Denkfehler oder ist ggf. das Attribut disable hier nicht vollständig implementiert?

Ich wäre für jede Hilfe dankbar.

Viele Grüße
Dieter
Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

vbs

Hi Dieter, werde ich mir ansehen!

vbs

Also ich hab mal versucht, dass "disable" ein wenig aufzuräumen. Vielleicht magst du mal die Version aus dem Anhang ausprobieren.

Diese Zeilen:
2022.03.19 12:23:24 4: wz_Kodi: KODI_Set: ?
Die kommen, wenn man FHEMWEB im Browser aufruft und die Webseite die verfügbaren "set"-Werte vom Modul abruft.

RockFan

Vielen Dank vbs!

Das sieht jetzt richtig gut aus.
Wenn ich das richtig sehe sind nun im Log folgende Einträge bei Disable (disable=1) und Enable (disable=0) hinzugekommen:

2022.03.22 10:27:52 3: wz_Kodi: Call AttributeFn: Stop Connection...
2022.03.22 10:30:38 3: wz_Kodi: Call AttributeFn: Start Connection...


Und das Wichtigste natürlich: Nach einem Disable wird durch ein Enable auch wieder eine Verbindung aufgebaut.

Nochmals besten Dank!

Viele Grüße
Dieter
Raspbian (Buster) auf Raspberry Pi 4 /  CUL + RFXTRX + TCM / FS20, FHT 80B, S300TH, Intertechno, DMX, Milight, EnOcean, Homematic, AMAD, Home Connect, MiSmartHome, Yeelight, ...

draddy

moin,

habe ich irgendwie die Möglichkeit das reading "time" gezielt zu pullen?
mag bei der Masse an Readings das Intervall nicht noch kürzer (60sec) stellen aber Time wäre so ein Readings das ich gerne öfters hätte (Statusbar für Frontend FHEMAPP)

oder kann man das sogar "realtime" puschen? (ähnlich Lautstärke oder so, das bekommt FHEM ja auch Live mit wenn ich diese ändere)
ganz nice wäre sogar eine % Angabe der Wiedergabe - dann müsste ich diese nicht extra über eine 99 sub berechnen^^
Hintergrund meines "Wunsches": https://forum.fhem.de/index.php/topic,126872.msg1217537.html#msg1217537

lg
Jens
OMV5@AsRock j3455 8GB RAM
FHEM@Docker, Shelly "starter pack" 4x PlugS, 2x Bulb Duo RGB, Shelly 2.5, Shelly Plus 1, DoorBird 2103V

vbs

#297
Nein sorry, das kann nicht einzeln geholt werden.

draddy

schade, aber danke für die Antwort ;)
OMV5@AsRock j3455 8GB RAM
FHEM@Docker, Shelly "starter pack" 4x PlugS, 2x Bulb Duo RGB, Shelly 2.5, Shelly Plus 1, DoorBird 2103V

sn0000py

eine Frage im Moment kann ich den Kanal nicht mehr wechseln.
Lautstärke und co geht schon nur der Kanal nicht weder mit openchannel noch mit openchannelid

hier verbsoe 5
2022.05.25 08:03:47.536 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:47.538 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:47.864 1: KLF200 (Velux) - new Node found, updateAll
2022.05.25 08:03:56.496 4: htpc_wz: KODI_Set: openchannel
2022.05.25 08:03:56.496 4: htpc_wz: KODI_PvrGetChannelId: RTL
2022.05.25 08:03:56.497 5: htpc_wz: KODI_Call: Sending: {"jsonrpc":"2.0","method":"Player.Open","params":{"item":{"channelid":80}}}
2022.05.25 08:03:56.498 5: DevIo_SimpleWrite htpc_wz: 7b226a736f6e727063223a22322e30222c226d6574686f64223a22506c617965722e4f70656e222c22706172616d73223a7b226974656d223a7b226368616e6e656c6964223a38307d7d7d
2022.05.25 08:03:56.502 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:56.504 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:56.555 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:56.556 4: htpc_wz: KODI_Set: ?
2022.05.25 08:03:56.800 4: htpc_wz: KODI_Set: ?


wer eine idee was es da hat?