This repository has been archived by the owner on Oct 8, 2019. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
tv3channel.py
executable file
·106 lines (82 loc) · 4.14 KB
/
tv3channel.py
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
import xbmc
import tv3
from menu import MenuItem, Menu
from channel import Channel
class TV3Channel(Channel):
def build_episodes_menu(self, episodes, include_subtitle=False):
menu = Menu(self.base_url, self.addon_handle)
for item in episodes:
if include_subtitle and len(item.subtitle) != 0:
title = '{0} - {1}'.format(item.title, item.subtitle)
else:
title = item.title
video = {"Title": title, "Plot": item.plot, "Date": item.date}
li = MenuItem(title, 'play', args={'code': item.code}, iconImage='DefaultVideo.png', video=video)
menu.add(li)
menu.show()
def build_shows_menu(self, shows):
menu = Menu(self.base_url, self.addon_handle)
for show in shows:
iconImage = show.img if len(show.img) > 0 else 'DefaultVideo.png'
li = MenuItem(show.title, 'episodes', args={'code': show.code}, iconImage=iconImage)
menu.add(li)
menu.show()
def mainmenu(self):
menu = Menu(self.base_url, self.addon_handle)
menu.add(MenuItem('Programes', 'programes', iconImage='DefaultFolder.png'))
menu.add(MenuItem('Directe', 'directe', iconImage='DefaultFolder.png'))
menu.add(MenuItem('Buscar', 'buscar', iconImage='DefaultFolder.png'))
menu.add(MenuItem('Mes destacats', 'mesdestacats', iconImage='DefaultFolder.png'))
menu.add(MenuItem('Mes vistos', 'mesvistos', iconImage='DefaultFolder.png'))
menu.add(MenuItem('Mes votats', 'mesvotats', iconImage='DefaultFolder.png'))
menu.show()
def mode__programes(self):
menu = Menu(self.base_url, self.addon_handle)
for letter in tv3.letters:
li = MenuItem(letter, 'letter', args={'letter': letter}, iconImage='DefaultFolder.png')
menu.add(li)
menu.show()
def mode__letter(self):
letter = self.args['letter'][0]
menu = Menu(self.base_url, self.addon_handle)
shows = tv3.get_letter(letter)
self.build_shows_menu(shows)
def mode__episodes(self):
code = self.args['code'][0]
episodes = tv3.get_episodes(code)
self.build_episodes_menu(episodes)
def mode__directe(self):
menu = Menu(self.base_url, self.addon_handle)
menu.add(MenuItem('TV3', 'arafem', args={'canal': 'TV3'}, iconImage='DefaultVideo.png'))
menu.add(MenuItem('TV3 CAT', 'arafem', args={'canal': 'TV3CAT'}, iconImage='DefaultVideo.png'))
menu.add(MenuItem('C33', 'arafem', args={'canal': '33'}, iconImage='DefaultVideo.png'))
menu.add(MenuItem('3/24', 'arafem', args={'canal': '324'}, iconImage='DefaultVideo.png'))
menu.add(MenuItem('Super 3', 'arafem', args={'canal': 'SUPER3'}, iconImage='DefaultVideo.png'))
menu.add(MenuItem('Cameres TV3', 'arafem', args={'canal': 'cameres'}, iconImage='DefaultVideo.png'))
menu.show()
def mode__buscar(self):
keyboard = xbmc.Keyboard('')
keyboard.doModal()
if keyboard.isConfirmed():
menu = Menu(self.base_url, self.addon_handle)
episodes = tv3.get_search(keyboard.getText())
self.build_episodes_menu(episodes)
def mode__arafem(self):
canal = self.args['canal'][0]
rtmp = tv3.get_canal_stream(canal)
xbmc.Player().play(rtmp)
def mode__mesdestacats(self):
episodes = tv3.get_mesdestacats()
self.build_episodes_menu(episodes, True)
def mode__mesvistos(self):
episodes = tv3.get_mesvistos()
self.build_episodes_menu(episodes, True)
def mode__mesvotats(self):
episodes = tv3.get_mesvotats()
self.build_episodes_menu(episodes, True)
def mode__play(self):
code = self.args['code'][0]
videos = tv3.get_media(code)
video = videos[0]
rtmp = tv3.get_show_rtmp(code, video.quality_code, video.format)
xbmc.Player().play(rtmp)