Mach doch eine REST Schnittstelle mit flask (Python), damit kannst Du auch beliebige scripte ausführen.
Kann dir nicht folgen.
Mach doch eine REST Schnittstelle mit flask (Python), damit kannst Du auch beliebige scripte ausführen.
Kann dir nicht folgen.
@bunter fisch:
Den Advanced Launcher hab ich früher auch immer genutzt um meine Scripte auszuführen.
Aber da es öfters Probleme gab, weil er mit den neuen Kodi Versionen nicht kompatibel war, hab ich eine andere (unabhängige) Lösung gefunden.
Im Home screen hab ich einen Button der auf ein custom window führt. Hier kann man dann praktisch unendlich viele Python Scripte via "System.Exec" starten.
Da ich vom "skinning" keine Ahnung hab, hat das natürlich eine Weile gedauert um den code in den betreffenden Dateien zu ändern. Ohne dieses geniale Forum hätte ich es nie geschafft.
Ich lehne mich mal aus dem Fenster und behaupte das die Manipulation (Skin Anpassung) im Videomenü Fenster möglich sein müsste.
Ich hab auch schon eigene Homemenü-Einträge erstellt, aber keine die ein Skript ausführen.
Hast du den Button in der home.xml geändert? Dieser verweist dann auf eun Fenster und dort wird das Skript ausgeführt?
Kannst du den Code aus der xml mal posten?
In meinem custom window befinden sich die Buttons.
Du müsstest in der <Videomenü>.xml (vermute window und buttons sind in einer Datei) nach einem Stop, Pause oder Wiedergabe button suchen.
Der sollte dann den Befehl <onclick>Stop, Pause oder Wiedergabe vom Video</onclick> haben (ist nur eine Vermutung).
Denn kannst du ja mal austauschen und testen ob dein script funktioniert.
Mein Befehl sieht z.B. so aus (unter Windows):
<onclick>XBMC.System.Exec("C:\Scripte\Start_NAS-01.py")</onclick>
Im Python script (z.B. 'Start_NAS-01.py') kannst du dann deine Wünsche eintragen.
Wie hast du die Befehle in die *.py eingetragen? In einer bestimmten Python-Syntax?
Heißt es wirklich "XBMC.System.Exec", laut dem Skinning-Guide von Kodi sollte es nur "System.Exec" sein.
Direkt auf das Shell-Script zu verlinken geht scheinbar nicht, auf dem Laptop stürzt Kodi ab wenn es im Fenstermodus läuft oder wechselt in den Fenstermodus wenn es Fullscreen läuft. Auf der lE-Maschine tut sich nichts. Ich habe hier testweise mal ein Skript mit
getestet um zu sehen ob die Datei auch erstellt wurde.
Python Beispiel script (mount_NAS-01.py) um ein NAS einzuhängen:
#!/usr/bin/env python
# import sys module
import sys
import subprocess
subprocess.call(['mount /home/<Mein-Standard-User>/NAS-01'], shell=True)
# quit python script
sys.exit(0)
Alles anzeigen
Von Python Programmierung hab ich NULL Ahnung, ist alles nur zusammengegoogelt. Wenn jemand Fehler oder Verbesserungen sieht, bitte melden.
"XBMC.System.Exec" sollte richtig sein.
Die Fenster-Einstellung in Kodi sollte egal sein. Wichtig ist das du ein Python script startest. Wenn man z.B. eine *.bat nimmt, passiert in etwa das was du beschrieben hast.
Ich hab auch keine Ahnung von Python, daher frage ich nach dem Script.
"NAS-01" wäre demnach dein ausführbares Script?
"NAS-01" wäre demnach dein ausführbares Script?
Ja.
In die Zeile "subprocess.call" kannst du deine Anweisung schreiben.
subprocess.call(['<Deine Anweisung>'], shell=True)
@bunter fisch Um welchen Sat-Receiver handelt es sich denn? Wenn dieser zum Beispiel mit Enigma2 läuft, kannst du Ihn mit einer simplen Netzwerk API steuern. Dann muss man in Kodi nur ein Skript einbinden, welches eine URL mit dem gewünschten Kommando aufruft. Siehe hier:
https://dream.reichholf.net/wiki/Enigma2:W…e#RemoteControl
Für meine Kathrein Receiver gibt es auch eine solche API mit ähnlichem Prinzip.
@bunter fisch:
Ist mir gerade aufgefallen ... mein <onclick> Befehl war falsch.
Er sieht so aus:
Geht soweit.
Kann man hier irgendwie eine Erfolgsmeldung kurz einblenden, ggf. oben Links wie wenn die Datenbank aktualisiert wird, um zumindest die Übermittlung des Befehls bestätigt zu haben? Diese Nullreakton bisher ist etwas verstörend
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!