Hallo,
ich nutze kodi (mit vnsi und vdr) und dafür openchannelid, wenn ich das Multimedia-System einschalte.
Leider verstellen sich immer wieder die Channel-Nummern, wenn zb vdr neue channels findet und dann wird durch openchannelid ein falscher Kanal gestartet, was vor allem die Frau ein wenig nervt.
Kennt jemand eine Möglichkeit, das zu unterbinden, oder die Channels auszulesen und dadurch auf den richtigen Kanal zu kommen?
Danke und cheers,
Pula
Ich beantworte es mir mal selber :-)
Hab mir eine kleine python-Routine gebaut, die für einen Channel-Namen die ID zurückgibt:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import json
import urllib2
import warnings
import sys
warnings.filterwarnings("ignore", category=UserWarning, module='urllib2')
def searchID(ID):
url = 'http://IP_VON_KODI/jsonrpc?request={"jsonrpc":"2.0","method": "PVR.GetChannels","params": {"channelgroupid": "alltv"},"id": 1}'
p = urllib2.HTTPPasswordMgrWithDefaultRealm()
p.add_password(None, url, 'user', 'passwort')
handler = urllib2.HTTPBasicAuthHandler(p)
opener = urllib2.build_opener(handler)
urllib2.install_opener(opener)
response = urllib2.urlopen(
url=url,
timeout=10
)
data = json.load(response)
if 'result' in data and 'channels' in data['result']:
data = data['result'].get('channels')
for channels in data:
if channels['label'] == ID:
return channels['channelid']
print(searchID("RTL HD"))
Das Ganze kann man dann auf verschiedene Arten an fhem zurückliefern. Ich werde das direkt in dem Python-Skript machen, indem ich einen dummy in fhem entsprechend setze. Aber hier hat jeder einen anderen Geschmack ;-)
Cheers,
Pula