[Bash]RemoteControl von Kodi über das Netzwerk

Grapholion

Lt. Junior Grade
Registriert
Mai 2006
Beiträge
317
Hi Leute,

brauche mal wieder eure Hilfe. Im Zuge eines Smart-Home Projekts möchte ich über das Netzwerk meinen Kodi Mediaplayer (OpenElec) mittels Raspberry steuern. Dazu habe ich mir ein Bash-Skript geschrieben welches die "Kodi-Send" befehle für mich absetzt. Grundfunktionen wie z.B. Eigenschaften anzeigen oder nach links, rechts steuern funktioniert soweit auch:

Kodi-send --host=192.168.0.100 --port=9777 --action="Mute"
Beispiel für Stummschalten.

Jedoch möchte ich mich nicht immer durch einen Haufen Befehle der Richtungen und Bestätigungsbefehlen durch Addons wie z.B. Twitch durchquälen.

Nun zu meiner Frage.

Gibt es actions um ein Addon zu starten und wenn möglich gleich auf einer bestimmten Seite auftauchen? Ich meine z.B. mit einem Alias auf dem Raspi einen Befehl abzusetzen der mich vom Menü sofort durch Twitch auf ein bestimmtes Spiel bringt.

Danke im Vorraus.

Gruß Graph
 
Sofern die Menüpunkte beim Twitch-Addon statisch sind, könntest du dir ein bash-Skript schreiben, dass diese Befehle abarbeitet.
Also in etwa so:

Code:
#!/bin/bash
HOST="--host=192.168.0.100"
PORT="--port=9777"

kodi-send $HOST $PORT --action="RunAddon($id-des-AddOn)"
#Warte 1 Sec zum starten des AddOn, ggf erweitern falsl nötig
sleep 1
kodi-send $HOST $PORT --action="Down"
kodi-send $HOST $PORT --action="Right"
kodi-send $HOST $PORT --action="Select"

Die ganzen Up, Down, Right, Left etc musst dann entsprechend oft absenden, je nachdem wie die Position des gewünschten Streams in dem Twitch-Addon ist.

Das ganze speicherst du dann als spielname.sh und machst die Datei mit
Code:
chmod u+x spielname.sh
ausführbar. Anschließend solltest du das entsprechend starten können, ggf mal die Syntax der Kodi-Send Befehle prüfen.

Finde es persönlich etwas umständlich, wenn ich mich auf ein System per Shell verbinden müsste um darüber dann Kodi zu steuern aber ich weiß ja auch nicht, was du alles dann noch damit vor hast in deinem smart home...
Ich nutze ne Harmony Fernbedienung und da kannst du auch solche Befehlsfolgen abspeichern.

Das Ganze funktioniert natürlich nur, wenn die Positionen in den AddOns statisch sind und sich nicht verändern, z.B. durch eine "Empfehlungsfunktion" o.ä.
 
Hi. Danke erstmal :)

Ich habe bei mir Wake-On-Lan und CEC-HDMI Steuerung erstmal aufgebaut. Dies soll später ähnlich wie mit Alexa usw per Sprache bedient werden. Ist zurzeit alles noch im Aufbau. Mit Sprachbefehlen soll es dann möglich sein den Fernseher einzuschalten und dann eben ein Addon zu öffnen. Damit spare ich mich das ganze Rumgeklicke an der Fernbedienung.

Wie bekomme ich den die Addon ID heraus.
Ist es eventuell möglich einen Favouriteneintrag zu erstellen und diesen zu öffnen?
 
Die ID findest du in der jeweiligen addon.xml des Addons, siehe z.B. hier: http://kodi.wiki/view/addon.xml

Ob du einzelne Menüpunkte innerhalb eines AddOns zu den Favoriten hinzufügen kannst: probier es doch einfach aus. Ob du dann mit den built in functions einzelne Favoriten aufrufen kannst verrät dir idR das kodi-Wiki.

Meine Empfehlung: Sprachsteuerung ist eine nette Spielerei aber steckt noch zu sehr in den Kinderschuhen:
- Keine Unterscheidung wer spricht. Im Worst-Case spricht eine Person in einer Serie den Befehl für "schalte alles aus" und alles geht aus
- Man muss immer klar und verständlich sprechen
- sehr hoher Einrichtungsaufwand

Lass dich nicht davon abhalten es umzusetzen aber das gesamte Themengebiet ist doch recht aufwendig und fragil und irgendwann hast keine Lust mehr ständig neue Befehle zusammen zu skripten für eine neue Funktion oder alternativ einen mehrere Minuten langen Monolog zu halten bis alles läuft (schalte tv ein, schalte htpc ein, starte $addOn, usw)

Einer der Gründe warum ich bisher auf die Harmony und die dort skriptbaren Aktionen setze. Irgendwann(tm) werd ich mal aufrüsten auf einen Harmony Hub + Echo Dot. "Programmierung" aller Geräte & Settings bequem im Hub und Alexa kann dank fertigem Skill den Hub ansteuern, bisher aber nur auf englisch, daher abwarten ;)

Nichtsdestotrotz wünsche ich dir viel Erfolg mit deinem Projekt, kannst ja mal ein Projektbericht dazu schreiben, gibt ja sicherlich einige die darüber nachdenken und von deinen Erfahrungen profitieren können.
 
Ok jetzt verstehe ich :)

Mir ist bewusst auf was ich mich da einlasse. Es geht mehr um den Lerneffekt der dahinter steckt und soll auch keine dauerhafte Baustelle sein. Aber wenn es am Schluss funktioniert ist es eine nette Spielerei ;)

Außerdem wird ein Code-Wort benötigt um den Assistenten zu Starten. Muss nur noch einen passenden Namen finden.

Bis dahin - Einen schönen Tag und danke für eure Hilfe :)
 
Zurück
Oben