Keymapping - wie komme ich an ...

  • Hallo Community,

    nachdem ich nun endlich meine angepasste keyboard.xml zum Laufen gebracht hab, hätte ich noch folgenden Wunsch.

    Mit Druck auf die Grüne Taste kommt bei mir folgende Aktion:
    <green>ActivateWindow(Videos)</green>
    D.h. bei mir springt mein KODI Leia mit dem Original-Skin ins Videoverzeichnis.

    Was muss ich hier erfassen, damit beim Druck auf die Grüne Taste mein KODI direkt in die Filmauswahl nach Titel springt?


    Und dann gleich noch das selbe bei der Musik.
    Was muss ich erfassen, damit beim Druck auf die Gelbe Taste mein KODI direkt in die Interpretenauswahl bei der Musik springt?

    Danke vorab für Eure Hilfe.


    Gruß diddi

    Das Leben ist zu kurz für RTL II (WG)

  • ActivateWindow(10025,&quot;videodb://movies/titles/&quot;,return)
    ActivateWindow(10502,&quot;library://music/artists.xml/&quot;,return)

    --------------
    Guides nicht mehr verfügbar wegen Youtube unvermögen guten von schlechten Kodi Videos zu unterscheiden.

  • Ich hab den Punkt einfach ein die Favoriten geschickt und geschaut was dann in der Favourites.xml aufgerufen wird :)

    --------------
    Guides nicht mehr verfügbar wegen Youtube unvermögen guten von schlechten Kodi Videos zu unterscheiden.

  • Zur kleinen Erklärung....

    ActivateWindow(window[,dir,return]) ist eine sogenannte "Built-in"-Python Funktion. Derer gibt es etliche!!

    https://kodi.wiki/view/List_of_built-in_functions

    Da Kodi intern solche Funktionen direkt umsetzen kann, kannst du einfach jegliche dieser Funktionen für deine Fernbedienung benutzen. Die eine macht mehr Sinn für eine Fernbedienung, die andere Funktion weniger ;)

    die 10025 oder die 10502 sind sogenannte Window-IDs: https://kodi.wiki/view/Window_IDs


    10025 ist dabei das video-Window und 10502 ist das Music-Window


    Ruft man diese IDs einfach nur so auf: ActivateWindow(10025), dann landet man in der sogenannten "MyVideosNav.xml"-Datei. Das allein bringt dich noch nicht zu deinen Titeln. Denn wenn du vorher in "Genre" warst, dann kommst du wieder zu Genre. Also brauchen wir noch ein wenig mehr um Kodi zu sagen "Hey...gehe bitte direkt zu den Titeln"


    Das machen wir mit: videodb://movies/titles/

    diese &quot; sind verwirrend, aber nicht falsch. Es funktioniert aber auch komplett ohne diese mit: ActivateWindow(10025, videodb://movies/titles, return)

    Bei Music finde ich es etwas trickreicher. Oftmals hilft dann ein Blick ins Kodi Log, welches Fenster denn aktiviert wird, wenn ich es betrete:

    In Zeile "1" habe ich den Home-Screen verlassen ( Window Deinit (Home.xml) )

    In Zeile "3" habe ich den Music Bereich betreten (MyMusicNav.xml)

    Diese ganzen "Pointer" kannst du ignorieren. Das ist meine Maus ;)

    Dann siehst du in Zeile "39", dass ich "select" gedrückt habe (Enter auf meiner Tastatur) und in Zeile "40" siehst du welches Verzeichnis wir beteten haben. Das deckt sich dann mit dem, was Skybird oben auch verwendet hat.

    Hier gilt auch wieder das mit den &quot;. Es geht auch so: ActivateWindow(10502, library://music/artists.xml, return)

    Alternativ kannst du anstelle von "10025" oder "10502" auch die Namen der WindowIDs nehmen, was dann "video" oder "music" wäre. Das siehst du, wenn du dir das Wiki oben anschaust ;)

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • @DaVu

    Danke für die ausführliche Ausarbeitung.
    Dann werde ich mal sehen, was ich noch direkt auf meine FB legen kann.

    Nur nochmals zum Klarstellung:
    D.h. wenn ich per Tastendruck direkt in die Einstellungen möchte, dann geht dies mit
    ActivateWindow(Settings) oder ActivateWindow(10004) - Korrekt?

    So erschließen sich ganz neue Welten ...

    Gruß diddi

    Das Leben ist zu kurz für RTL II (WG)

  • wunderbar. Dann kannst du sowas ziemlich schnell selbst testen....

    LibreELEC bringt das Script kodi-send mit sich. Wenn du also die "Steuerung über HTTP" und die "Steuerung von entfernten und lokalen Geräten" zulässt (Einstellunge -> Dienste -> Steuerung .. glaube ich), dann kannst du, wenn du per SSH auf dem RPi bist zum Beispiel folgenden Befehl absetzen:

    kodi-send -a "ActivateWindow(10004)"

    oder für die weiter oben genannten Befehle: kodi-send -a "ActivateWindow(video, videodb://movies/titles/, return)"

    und dann solltest du in Kodi sehen was passiert....

    kodi-send -a "Down" bewirkt, dass du einen Eintrag weiter runter gehst

    Das -a bedeutet in dem Fall "Action". In dem Fall kannst du "Action" auch zweimal sozusagen anweden: kodi-send -a "Action(Down)". Beides macht das gleiche ;)

    Solltest du auch noch einen Ubuntu Rechner in deinem Netzwerk haben, kannst du sowas auch von einem anderem Rechner aus machen: kodi-send -h <ip_des_rpi> -a "<action>". Dafür musst du aber auf dem Ubuntu-Rechner erst den "kodi-eventclient-kodi-send" installieren. Der ist im offiziellen Kodi ppa verfügbar.

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • @DaVu

    muss ich mir am WE mal anschauen - aktuell stehe ich vor Deiner Befehlsfolge noch wie der Ochse vor dem Berg ... :/

    Mit Ubuntu kann ich nicht dienen, ich hab mir für LinuxMint entschieden.
    Aber so groß dürften die Unterschiede nicht sein ... ;)


    Gruß diddi

    Das Leben ist zu kurz für RTL II (WG)

  • Sind sie in dem Fall auch nicht, da Linux Mint auch das Kodi Ubuntu ppa verwenden kann,

    Falls du Kodi auf Linux Mint noch nicht installiert hast:

    Code
    sudo apt-add-repository ppa:team-xbmc/ppa
    sudo apt update
    sudo apt install kodi
    sudo apt install kodi-eventclients-kodi-send


    Das installiert das passende PPA, Kodi und die "kodi-send" Geschichte auf deiner Linux Mint Maschine

    Um eine SSH Verbindung zu deiner LibreELEC Kiste aufzubauuen, musst du SSH in LibreELEC aktiviert haben und die IP wissen (Einstellungen -> Systeminformationen)

    Dann machst du auf deiner Linux Mint Kiste eine Konsole (Terminal) auf und gibst dort folgendes ein: ssh root@<ip_des_RPi_hier>

    Die folgende Frage beantwortest du mit yes

    Dann sollte die Frage nach dem Passwort kommen. Wenn du es nicht geändert hast, dann ist das libreelec (alles klein geschrieben). Bei der Eingabe des Passworts kommen keine **** auf dem Bildschrim. Das ist bei SSH-Sessions so vorgesehen und ganz normal. Wenn alles funktioniert hat, sollltest du nun per SSH auf deinem RPi verbunden sein. Siehst du auch am Prompt der Shell. Da sollte dann sowas wie root@<name_des_RPi> stehen. Den "name des RPi" hast du bei der Installation gesetzt und sollte per default "Libreelec" sein.

    Dann kannst du direkt auf dem RPi die "kodi-send"-Befehle ausführen.

    Zum Beenden der Shell einfach exit Eingeben oder STRG+d drücken

    Wertschätzung kostet nichts, aber sie ist von unschätzbarem Wert.

  • Alles klar ... ;)

    Dann sehen die nächsten Aufgaben wie folgt aus:

    1. In FLIRC für alle meine Tasten auf der FB jeweils ein Tastenkürzel hinterlegen
    2. Diese Tastenkürzel in der Keyboard.xml mit all meinen wichtigen KODI-Befehlen belegen (falls nicht schon standardmäßig in KODI hinterlegt)
    3. Und dann schaue ich mir die kodi-send-Geschichte von @DaVu an

    Und schon weiß ich, was ich am Wochenende alles mache. Und meinem perfekten System bin ich wieder einen Schritt näher...

    Vielen Dank nochmals für Eure Unterstützung.


    Gruß diddi

    Das Leben ist zu kurz für RTL II (WG)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!