MCPcopy
hub / github.com/blacktwin/JBOPS / Metadata

Class Metadata

utility/media_manager.py:112–161  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

110
111
112class Metadata(object):
113 def __init__(self, data=None):
114 d = data or {}
115 self.added_at = d.get('added_at')
116 self.media_type = d.get('media_type')
117 self.grandparent_title = d.get('grandparent_title')
118 self.grandparent_rating_key = d.get('grandparent_rating_key')
119 self.parent_media_index = d.get('parent_media_index')
120 self.parent_title = d.get('parent_title')
121 self.parent_rating_key = d.get('parent_rating_key')
122 self.file_size = d.get('file_size')
123 self.container = d.get('container')
124 self.rating_key = d.get('rating_key')
125 self.index = d.get('media_index')
126 self.watched_status = d.get('watched_status')
127 self.libraryName = d.get("library_name")
128 self.full_title = d.get('full_title')
129 self.title = d.get('title')
130 self.year = d.get('year')
131 self.video_resolution = d.get('video_resolution')
132 self.video_codec = d.get('video_codec')
133 self.media_info = d.get('media_info')
134 self.audience_rating= d.get('audience_rating')
135 if self.media_info:
136 self.parts = self.media_info[0].get('parts')
137 self.file = self.parts[0].get('file')
138 if not self.file_size:
139 self.file_size = self.parts[0].get('file_size')
140 if self.media_type == 'episode' and not self.title:
141 episodeName = self.full_title.partition('-')[-1]
142 self.title = episodeName.lstrip()
143 elif not self.title:
144 self.title = self.full_title
145
146 if self.media_type == 'show':
147 show = plex.fetchItem(int(self.rating_key))
148 # todo only using the first library location for show types
149 self.file = show.locations[0]
150 show = tautulli_server.get_new_rating_keys(self.rating_key, self.media_type)
151 seasons = show['0']['children']
152 episodes = []
153 show_size = []
154 for season in seasons.values():
155 for _episode in season['children'].values():
156 metadata = tautulli_server.get_metadata(_episode['rating_key'])
157 episode = Metadata(metadata)
158 show_size.append(int(episode.file_size))
159 episodes.append(episode)
160 self.file_size = sum(show_size)
161 self.episodes = episodes
162
163
164class User(object):

Callers 8

__init__Method · 0.70
last_played_workFunction · 0.70
unwatched_workFunction · 0.70
size_workFunction · 0.70
watched_workFunction · 0.70
rating_workFunction · 0.70
transcode_workFunction · 0.70
media_manager.pyFile · 0.70

Calls

no outgoing calls

Tested by

no test coverage detected