3 from urlparse import urlparse, parse_qs
6 from KodiHelper import KodiHelper
8 kodi_helper = KodiHelper(
12 account = kodi_helper.get_credentials()
13 msl = MSL(account['email'], account['password'], kodi_helper)
15 class MSLHttpRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
18 self.send_response(200)
21 length = int(self.headers['content-length'])
22 post = self.rfile.read(length)
24 data = post.split('!')
27 sid = base64.standard_b64decode(data[1])
28 b64license = msl.get_license(challenge, sid)
29 if b64license is not '':
30 self.send_response(200)
32 self.wfile.write(base64.standard_b64decode(b64license))
35 self.send_response(400)
37 self.send_response(400)
40 url = urlparse(self.path)
41 params = parse_qs(url.query)
42 if 'id' not in params:
43 self.send_response(400, 'No id')
45 # Get the manifest with the given id
46 data = msl.load_manifest(int(params['id'][0]))
47 self.send_response(200)
48 self.send_header('Content-type', 'application/xml')
50 self.wfile.write(data)