Verwalten Sie Multimedia-Center mithilfe von HTTP-GET-Anforderungen
In diesem Artikel möchte ich darüber sprechen, wie Sie derzeit die beliebtesten Multimedia-Zentren - KODI (XBMC) und Dune HD - mithilfe von HTTP-GET-Anforderungen verwalten können.Hier werden nur die beliebtesten Anforderungen beschrieben, die ferngesteuert werden können (z. B. innerhalb des WLAN-Heimnetzwerks oder mit den entsprechenden Einstellungen des Routers aus dem INTERNET-Netzwerk), und zwar nicht nur mithilfe vorab geschriebener Skripte, sondern einfach in die Adressleiste des Browsers. Ich werde hier nicht alle Anfragen beschreiben, weil: Erstens werden viele von ihnen äußerst selten verwendet, und zweitens gibt es dafür eine vollständige Dokumentation. Diese Abfragen können auch zur Steuerung von Multimedia-Centern beim Erstellen von Smart Home-Systemen verwendet werden, mit denen ich meine eigenen entwickelt habe.Hier sind die Anforderungen:1. Starten Sie eine Datei für die Wiedergabe.Links zu Dateien sollten direkt sein, dh explizit auf die abgespielte Datei oder den abgespielten Stream verweisen. Links von Youtube funktionieren nicht, daher funktionieren sie nicht. Wie Sie einen direkten Link zu einem Video von Youtube erhalten, erfahren Sie hier .- 1.1 KODI (XBMC) - http: // LOGIN : PASSWORD @ IP-Adresse : 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "id": "1", "method": "Player.Open" , "Params": {"item": {"file": " URL "}}}
- 1.2 Dune HD - http: // IP-Adresse / cgi-bin / do? Cmd = launch_media_url & media_url = URL
Im Folgenden:LOGIN - Login in den KODI-Einstellungen festgelegt (Webserver -> Kodi-Kontrolle über HTTP zulassen).PASSWORT - das in den KODI-Einstellungen festgelegte Kennwort (Webserver -> Kodi-Kontrolle über HTTP zulassen).URL - Netzwerk- oder Internetadresse der reproduzierten Ressource.IP-Adresse - IP-Adresse des Geräts im Heim- oder INTERNET-Netzwerk.Wenn Sie Dune HD so konfigurieren, dass es beim Drücken der POWER-Taste auf der Fernbedienung in den Standby-Modus wechselt, wird es automatisch eingeschaltet, wenn Sie aufgefordert werden, eine Datei abzuspielen.2. Lautstärkeregler.- 2.1 KODI (XBMC) - http: // LOGIN : PASSWORD @ IP-Adresse : 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "id": "1", "method": "Application.SetVolume" , "Params": {"volume": 35 }}}
- 2.2 Dune HD - http: // IP-Adresse / cgi-bin / do? Cmd = set_playback_state & volume = 35
Stellen
Sie die Lautstärke auf 35 ein.3. Spulen Sie zu einer bestimmten Position zurück.- 3.1 KODI (XBMC) - http: // LOGIN : PASSWORD @ IP-Adresse : 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "method": "Player.Seek", "params": { "playerid ": 0 ," value ": 50 }," id ":" 1 "}
- 3.2 Dune HD - http: // IP-Adresse / cgi-bin / do? Cmd = set_playback_state & position = 50
Achtung! Für KODI wird der Wert 50 in Prozent und für Dune HD in Sekunden angegeben, da es keine solche Funktion hat (ich habe dies getan - ich habe ein kleines Skript geschrieben, das die gesamte Dauer des Tracks abruft, und mithilfe einfacher Berechnungen habe ich den Wert bereits in Prozent festgelegt).Es gibt noch eine Nuance - hier und in Zukunft müssen Sie für KODI zuerst den Wert "playerid" erhalten , dies ist die ID des aktiven Spielers.Es wird mit der folgenden Anfrage erhalten: http: // LOGIN : PASSWORD @ ip-address: 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "method": "Player.GetActivePlayers", "id": "1"}, wenn ich mich richtig erinnere, ist die Reihenfolge ungefähr wie folgt: für Audio - " playerid ": 0, für das Video -" playerid ": 1, für das Foto -" playerid ": 2. Die Werte müssen vom Typ Ganzzahl sein, dh Ganzzahlen ohne Anführungszeichen.4. Pause / Wiedergabe.- 4.1 KODI (XBMC) - http: // LOGIN : PASSWORD @ IP-Adresse : 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "id": "1", "method": "Player.PlayPause" , "Params": { "playerid": 0 }}
- 4.2 Dune HD - http: // IP-Adresse / cgi-bin / do? Cmd = set_playback_state & speed = 0 - Pause / 256 - Wiedergabe
5. Der nächste Titel in der Wiedergabeliste.- 5.1 KODI (XBMC) - http: // LOGIN : PASSWORD @ IP-Adresse : 8080 / jsonrpc? Request = {"jsonrpc": "2.0", "id": "1", "method": "Player.GoTo" , "Params": { "playerid": 0 , "to": "next" }} -
- 5.2 Dune HD - http: // IP-Adresse / cgi-bin / do? Cmd = ir_code & ir_code = E21DBF000
Es gibt keinen expliziten Befehl für Dune HD, daher erfolgt der Übergang zum nächsten Titel durch Emulieren eines Tastendrucks auf der Fernbedienung. Die Dokumentation Befehlscodes wird durch eine Stelle geschrieben, so habe ich eine Datei mit dem richtigen Befehl , dass Sie nehmen sofort .6. Vorheriger Titel in der Wiedergabeliste.- 6.1 KODI (XBMC) — http://LOGIN:PASSWORD@ip-address:8080/jsonrpc?request={«jsonrpc»:«2.0»,«id»:«1»,«method»:«Player.GoTo»,«params»:{«playerid»:0,«to»:«previous»}} -
- 6.2 Dune HD — http://ip-address/cgi-bin/do?cmd=ir_code&ir_code=B649BF00
Vergessen Sie nicht, Ihre "Spieler-ID" in Anfragen an KODI (XBMC) zu setzen .Es gibt immer noch eine Vielzahl verschiedener Arten von Abfragen für diese Multimedia-Center, mit denen Sie nahezu jede Funktionalität implementieren können. Auf diese Weise können Sie beispielsweise eine solche webbasierte Verwaltungsoberfläche erhalten , auf der alle Aktionen mit dem Bedienfeld angezeigt werden, oder das Multimedia-Center mit der Sprachsuche nach Inhalten wie Musik oder Video ausstatten. Formate für Multimedia-Center-Antworten: KODI (XBMC) - JSON-Format, Dune HD - XML-Format. Die Verwaltung kann in verschiedenen Programmiersprachen implementiert werden, die das Senden von HTTP-GET-Anforderungen und die Fähigkeit zur Arbeit mit JSON unterstützen. Zu diesem Zweck habe ich das bekannte PHP (curl, json_decode und für DuneHD simplexml_load_file) verwendet.Verwendete Materialien
JSON-RPC_API / v6 Kodi / XBMC DUNE IP -STEUERDOKUMENTATION Source: https://habr.com/ru/post/de388279/
All Articles