@BJ1
so Ich hab mir das erst einmal genauer angesehen...
soweit wie ich das verstanden habe brauchst diesen input
<onclick>RunScript(service.kn.switchtimer,action=add,channel=$INFO[ListItem.ChannelName],icon=$INFO[ListItem.Icon],date=$INFO[ListItem.Date],title=$INFO[ListItem.Title])</onclick>
nur für die Anlage des Timers damit darin der Kanal-Name, Datum/Uhrzeit, und der Titel der Sendung angelegt werden kann.
Die umschaltung ansich erfolgt dann über die ChannelID die Du via PVR.GetChannels aus dem channelname auflöst...
Das bedeutet man könnte also auch die channelID weiterreichen bspw.
<onclick>RunScript(...,action=play,channelid=$INFO[ListItem.PVRID])</onclick>
was ich noch nicht ausgefunden habe,wie definiere ich die action=play...
Ich würde dann vermuten der Play-Part würde dann in etwa hier starten
if plrProps['player'] == 'audio' or (plrProps['player'] == 'video' and plrProps['media'] != 'channel'):
# stop the media player
handler.notifyLog('player:%s media:%s @id:%s is running' % (plrProps['player'], plrProps['media'], plrProps['playerid']))
query = {
"jsonrpc": "2.0",
"method": "Player.Stop",
"params": {"playerid": plrProps['playerid']},
"id": 1
}
res = jsonrpc(query)
if 'result' in res and res['result'] == "OK":
handler.notifyLog('Player stopped')
handler.notifyLog('Currently playing channelid %s, switch to id %s' % (plrProps['id'], channelid))
query = {
"jsonrpc": "2.0",
"id": 1,
"method": "Player.Open",
"params": {"item": {"channelid": channalid}}
}
res = jsonrpc(query)
if 'result' in res and res['result'] == 'OK':
handler.notifyLog('Switched to channel \'%s\'' % (_timer['channel'].decode('utf-8')))
else:
handler.notifyLog('Couldn\'t switch to channel \'%s\'' % (_timer['channel'].decode('utf-8')))
handler.notifyOSD(__LS__(30000), __LS__(30025) % (_timer['channel'].decode('utf-8')), icon=__IconAlert__)
Alles anzeigen
oder habe ich da was falsch verstanden? 