1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
from resources.lib.ps_vue import *
params=get_params()
url=None
name=None
mode=None
airing_id='null'
channel_id='null'
program_id='null'
series_id='null'
tms_id='null'
try: url=urllib.unquote_plus(params["url"])
except: pass
try: name=urllib.unquote_plus(params["name"])
except: pass
try: mode=int(params["mode"])
except: pass
try: airing_id=params["airing_id"]
except: pass
try: channel_id=params["channel_id"]
except: pass
try: program_id=params["program_id"]
except: pass
try: series_id=params["series_id"]
except: pass
try: tms_id=params["tms_id"]
except: pass
check_device_id()
sony = SONY()
if mode < 998:
if ADDON.getSetting(id='last_auth') != '':
last_auth = stringToDate(ADDON.getSetting(id='last_auth'), "%Y-%m-%dT%H:%M:%S.%fZ")
if (datetime.utcnow() - last_auth).total_seconds() > 900: sony.check_auth()
else:
sony.check_auth()
if mode == None and mode < 998:
if ADDON.getSetting(id='default_profile') == '' or ADDON.getSetting(id='always_ask_profile') == 'true': sony.get_profiles()
main_menu()
elif mode == 30:
all_channels()
elif mode == 50:
timeline()
elif mode == 100:
my_shows()
elif mode == 150:
list_episodes(program_id)
elif mode == 200:
favorite_channels()
elif mode == 300:
live_tv()
elif mode == 350:
on_demand(channel_id)
elif mode == 400:
sports()
elif mode == 500:
kids()
elif mode == 600:
recently_watched()
elif mode == 700:
featured()
elif mode == 750:
search()
elif mode == 800:
sony.get_profiles()
main_menu()
elif mode == 900:
get_stream(url, airing_id, channel_id, program_id, series_id, tms_id)
elif mode == 998:
sys.exit()
elif mode == 999:
sony.logout()
sony.notification_msg(LOCAL_STRING(30006), LOCAL_STRING(30007))
main_menu()
elif mode == 1000:
sony.logout()
ADDON.setSetting(id='deviceId', value='')
sony.notification_msg(LOCAL_STRING(30006), LOCAL_STRING(30007))
elif mode == 1001:
ids ={
'channel_id': channel_id,
'program_id': program_id,
'series_id': series_id,
'tms_id': tms_id
}
sony.add_to_favorites(ids)
elif mode == 1002:
ids ={
'channel_id': channel_id,
'program_id': program_id,
'series_id': series_id,
'tms_id': tms_id
}
sony.remove_from_favorites(ids)
if mode != None and mode != 800 and mode != 750:
xbmcplugin.endOfDirectory(addon_handle, cacheToDisc=False)
elif mode == 800:
xbmcplugin.endOfDirectory(addon_handle, updateListing=True)
else:
xbmcplugin.endOfDirectory(addon_handle)
|