Skip to content

Commit

Permalink
Don't override poster for EPG, add some Dialog messages for errors
Browse files Browse the repository at this point in the history
  • Loading branch information
knaerzche committed Aug 3, 2019
1 parent 28b15c9 commit 2e27207
Show file tree
Hide file tree
Showing 4 changed files with 23 additions and 11 deletions.
8 changes: 7 additions & 1 deletion addon.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.joyn" name="Joyn" version="0.0.3.1" provider-name="knaerzche">
<addon id="plugin.video.joyn" name="Joyn" version="0.0.3.2" provider-name="knaerzche">
<requires>
<import addon="xbmc.python" version="2.1.0"/>
<import addon="inputstream.adaptive" version="2.2.21"/>
Expand All @@ -14,11 +14,17 @@
<description lang="en">www.joyn.de VOD and Live TV</description>
<description lang="de">www.joyn.de VOD und Live TV</description>
<website>https://www.joyn.de/</website>
<source>https://github.com/knaerzche/plugin.video.joyn</source>
<forum>https://www.kodinerds.net/index.php/Thread/66679-Pre-Release-Joyn-VOD-Live/?postID=537817</forum>
<news>v0.0.3.2 (03.08.2019)
[new] Add EPG, search, categories
</news>
<email>knaerzche at gmail dot com</email>
<platform>all</platform>
<assets>
<icon>resources/icon.png</icon>
<fanart>resources/fanart.jpg</fanart>
<clearlogo>resources/logo.gif</clearlogo>
<screenshot>resources/screenshot01.jpg</screenshot>
<screenshot>resources/screenshot02.jpg</screenshot>
<screenshot>resources/screenshot03.jpg</screenshot>
Expand Down
3 changes: 1 addition & 2 deletions resources/lib/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,6 @@
'ART' : {'BRAND_LOGO' : {
'icon' : 'profile:nextgen-web-artlogo-183x75',
'thumb' : 'profile:original',
'poster' : 'profile:original',
},
},
},
Expand Down Expand Up @@ -80,7 +79,7 @@
'to' : '##to##',
'sortBy' : 'startTime',
'sortAscending' : 'true',
'limit' : '10000',
'limit' : '5000',
},
'SELECTION' : '{totalCount,data{id,title,description,tvShow,type,tvChannelName,channelId,startTime,endTime,video,images(subType:"cover"){url,subType}}}',
'IMG_PROFILE' : 'profile:original',
Expand Down
23 changes: 15 additions & 8 deletions resources/lib/plugin.py
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,8 @@ def get_json_response(url, headers=None, params=None, post_data=None):
try:
return json.loads(get_url(url, headers, params, post_data))
except ValueError:
dialog = xbmcgui.Dialog()
dialog.notification('Fehler', 'Bitte erneut versuchen', default_icon)
failing('Could not decode json from url ' + url)
raise
return None
Expand Down Expand Up @@ -467,6 +469,8 @@ def get_config():
config['PSF_CLIENT_CONFIG'] = json.loads(py3_dec(base64.b64decode(decrypt(uc_string_to_long_array(config['PSF_VARS'][CONST['PSF_VARS_IDX']['SECRET']]),uc_string_to_long_array(uc_slices_to_string(uc_slice(config['PLAYER_CONFIG']['toolkit']['psf'])))))))

except Exception as e:
dialog = xbmcgui.Dialog()
dialog.notification('Fehler', 'Konfiguration konnte nicht entschlüsselt werden.', default_icon)
failing('Could not decrypt config: ' + str(e))
sys.exit(0)

Expand Down Expand Up @@ -507,6 +511,8 @@ def get_video_listitem(video_data,stream_type='VOD'):
list_item.setProperty(CONST['INPUTSTREAM_ADDON'] + '.server_certificate', video_data['certificateUrl'] + '|'
+ get_header_string({'User-Agent' : config['USER_AGENT']}))
else:
dialog = xbmcgui.Dialog()
dialog.notification('Fehler', 'Konnte keine gültigen Video-Stream finden.', default_icon)
failing('Could not get valid MPD')

else:
Expand Down Expand Up @@ -658,7 +664,7 @@ def extract_metadata_from_epg(epg_channel_data):

for image in program_data['images']:
if image['subType'] == 'cover':
extracted_metadata['art']['thumb'] = image['url'] + '/' + CONST['PATH']['EPG']['IMG_PROFILE']
extracted_metadata['art']['poster'] = image['url'] + '/' + CONST['PATH']['EPG']['IMG_PROFILE']
break

return extracted_metadata;
Expand Down Expand Up @@ -720,8 +726,9 @@ def channels(stream_type):
for livestream in metadata['livestreams']:
stream_id = livestream['streamId']
if channel_id in epg.keys():
extracted_metadata.update(extract_metadata_from_epg(epg[channel_id]))

epg_metadata = extract_metadata_from_epg(epg[channel_id])
extracted_metadata['infoLabels'].update(epg_metadata['infoLabels'])
extracted_metadata['art'].update(epg_metadata['art'])
add_link(metadata=extracted_metadata,mode='play_video', video_id=stream_id, stream_type='LIVE')
break
xbmcplugin.endOfDirectory(handle=pluginhandle,cacheToDisc=False)
Expand Down Expand Up @@ -908,8 +915,8 @@ def add_dir(mode, metadata, channel_id='', tv_show_id='', season_id='', video_id
if 'poster' not in metadata['art'] and 'thumb' in metadata['art']:
metadata['art'].update({'poster' : metadata['art']['thumb']})
elif 'thumb' not in metadata['art']:
metadata['art'].update({ 'thumb' : default_thumb})
metadata['art'].update({ 'poster' : default_thumb})
metadata['art'].update({ 'thumb' : default_logo})
metadata['art'].update({ 'poster' : default_logo})

if 'icon' not in metadata['art']:
metadata['art'].update({ 'icon' : default_icon})
Expand Down Expand Up @@ -949,8 +956,8 @@ def add_link(mode, video_id, metadata, stream_type='VOD', parent_fanart=''):
if 'poster' not in metadata['art'] and 'thumb' in metadata['art']:
metadata['art'].update({'poster' : metadata['art']['thumb']})
elif 'thumb' not in metadata['art']:
metadata['art'].update({ 'thumb' : default_thumb})
metadata['art'].update({ 'poster' : default_thumb})
metadata['art'].update({ 'thumb' : default_logo})
metadata['art'].update({ 'poster' : default_logo})

if 'icon' not in metadata['art']:
metadata['art'].update({ 'icon' : default_icon})
Expand Down Expand Up @@ -992,7 +999,7 @@ def addon_enabled(addon_id):
addon = xbmcaddon.Addon()
default_icon = addon.getAddonInfo('icon')
default_fanart = addon.getAddonInfo('fanart')
default_thumb = os.path.join(xbmcaddon.Addon().getAddonInfo('path'), 'resources','thumb.gif')
default_logo = xbmc.translatePath(os.path.join(xbmcaddon.Addon().getAddonInfo('path'), 'resources','logo.gif')).encode('utf-8').decode('utf-8')
xbmcplugin.setContent(pluginhandle, 'tvshows')

if not addon_enabled(CONST['INPUTSTREAM_ADDON']):
Expand Down
File renamed without changes

0 comments on commit 2e27207

Please sign in to comment.