[HOW-TO] Kodi in Verbindung mit Openhab per Sprache steuern - Neue Filme,Serien,Musik,EPG......

  • Hallo,

    wollte hier mal ne kleine Anleitung schreiben wie man in Verbindung mit Openhab und Alexa Kodi per Sprache steuern kann ohne Skill.
    vielleicht interessiert es den einen oder anderen, ansonsten dient es mir hier als Speicherort damit ich das nicht vergesse :) .


    Ich habe bisher folgendes bei mir integriert

    • EPG
    • angefangene Serien
    • neue Filme
    • neue Episoden
    • angefangene Filme
    • zufällige Filme
    • starte zb einen zufälligen Film

    in Openhab müsst ihr das Openhab HTTP Binding installiert haben, sowie das Kodi Binding und das neueste Alexa Binding.
    ich gehe davon aus das ihr das Kodi Binding und das Alexa Binding eingerichtet habt, und eine Verbindung zu eurem Kodi sowie eurer Alexa besteht.


    Zuerst legt ihr euch ein Openhab Item an, hier mal ein Beispiel wie das item bei mir aktuell aussieht.


    Code
    String Kodi_Steuerung_zeige "zeige mir[%s]" { alexa="ModeController.mode" [supportedModes="das t. v. programm=das t. v. programm,angefangene serien=angefangene serien,neue filme=neue filme,neue episoden=neue episoden,angefangene filme=angefangene filme,einen zufälligen film=einen zufälligen film,zufällige filme=zufällige filme"] }


    das ganze läuft über den  ModeController.mode, hier nachzulesen. Wenn man diesen nutzt gibt Alexa als Antwort immer OK  anstatt wild drauf los zu quatschen.

    in meinem Beispiel ist das Aktivierungswort zeige mir[%s], also ALEXA, zeige mir ..... , dahinter kommen dann die gesprochenen Befehle, diese könnt ihr natürlich wählen wie ihr wollt.

    um zb angefangene filme auszulösen wäre es also, ALEXA, zeige mir angefangene filme.
    Das zeige mir könnt ihr ändern in was immer ihr wollt.


    so dann müsste ihr noch eine Rule anlegen, in diesem Beispiel wird eine Playlist mit angefangenen Filmen geöffnet.
    die Playlist müsst ihr natürlich und Videos --> Wiedergabelisten --> Neue Intelligente Wiedergabeliste... anlegen.



    die rule wird dann immer erweitert um die anderen abfragen bzw befehle die man senden möchte.


    der HttpPost Befehl muss natürlich abgeändert werden von euch,

    sendHttpPostRequest("http://NUTZER:PASSWORT@IP:PORT/jsonrpc", "application/json", "{\"jsonrpc\":\"2.0\",\"method\":\"GUI.ActivateWindow\",\"params\":{\"window\":\"videos\",\"parameters\":[\"special://profile/playlists/video/NAME_EURER_PLAYLIST.xsp\"]},\"id\":1}")


    ihr müsste dafür vorher in Kodi ein paar einstellungen aktiveren, und zwar unter Einstellungen --> Dienste --> Steuerung , Steuerung über HTTP erlauben aktivieren, einen Port, Benutzernamen und Passwort eingeben, diese kommen dann oben in den HTTPOST Befehl. Ich habe extra einen anderen Port genommen als 8080, da dort schon Openhab drauf läuft.

    des Weiteren habe ich Fernsteuerung durch Anwendungen dieses Rechners erlauben und Fernsteuerung durch Anwendungen anderer Rechner erlauben aktiviert.


    das war es glaube ich auch schon, hier noch Beispiele,


    Playlist Zufällige Filme öffnen

    Code
    case receivedCommand == "einen zufälligen film": {
                 sendHttpPostRequest("http://NUTZER:PASSWORT@IP:PORT/jsonrpc", "application/json", "{\"jsonrpc\":\"2.0\",\"method\":\"Player.Open\",\"params\":{\"item\":{\"directory\":\"special://profile/playlists/video/randommovies.xsp\"}},\"id\":\"1\"}")
                 logInfo("INFO","sende befehl zufällige Filme")                     
              }

    EPG öffnen


    Code
    case receivedCommand == "das t. v. programm": {
                 sendHttpPostRequest("http://NUTZER:PASSWORT@IP:PORT/jsonrpc", "application/json", "{\"jsonrpc\":\"2.0\",\"method\":\"GUI.ActivateWindow\",\"params\":{\"window\":\"tvguide\"},\"id\":1}")
                 logInfo("INFO","sende befehl epg")
              }


    Zufälligen Film starten


    so kann man zb auch einen Zufälligen Film starten


    Code
    case receivedCommand == "einen zufälligen film": {
                 sendHttpPostRequest("http://NUTZER:PASSWORT@IP:PORT/jsonrpc", "application/json", "{\"jsonrpc\":\"2.0\",\"method\":\"Player.Open\",\"params\":{\"item\":{\"directory\":\"special://profile/playlists/video/randommovies.xsp\"}},\"id\":\"1\"}")
                 logInfo("INFO","sende befehl - starte einen zufälligen Film")                     
              }


    wie die Playlisten aussehen müssen, zeige ich jetzt mal nicht, wenn bedarf besteht einfach fragen.


    der dank dabei geht an @TehTux @horschte , wenn die beiden nicht so geduldig und hilfsbereit gewesen wären, hätte ich das niemals hingekriegt.

    für das einschalten von LiveTv Sendern in Kodi per Sprache reiche ich dann eine kleine Anleitung nach.

  • das ganze geht natürlich auch für Musik, dabei müsst ihr aber den Pfad der Playlist leicht abändern.

    hier mal ein Beispiel mit einem zufälligem Lied. das geht auch mit Alben, Musikvideos eigentlich allem was in der Kodi DB ist.

    Code
    case receivedCommand == "ein zufälliges lied": {
                 sendHttpPostRequest("http://kodi:1234@192.168.0.242:8088/jsonrpc", "application/json", "{\"jsonrpc\":\"2.0\",\"method\":\"Player.Open\",\"params\":{\"item\":{\"directory\":\"special://profile/playlists/music/randommusik.xsp\"}},\"id\":\"1\"}")
                 logInfo("INFO","sende befehl - zufälliges Lied")                     
              }

Jetzt mitmachen!

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