Example #1
0
# -*- coding: utf-8 -*-

import sys
from urlparse import parse_qsl
import json

from resources.lib.kodihelper import KodiHelper

base_url = sys.argv[0]
handle = int(sys.argv[1])
helper = KodiHelper(base_url, handle)


def list_pages():
    helper.add_item('Kaikki ohjelmat', params={'action': 'list_programs'})
    helper.add_item('Kategoriat', params={'action': 'list_categories'})
    helper.add_item('Live TV', params={'action': 'livetv'})
    helper.add_item('Oma kanava', params={'action': 'favorites'})
    helper.add_item('Haku', params={'action': 'search'})  # search
    helper.eod()


def list_programs(category=None):
    programs = helper.k.get_programs()
    for program in programs:
        if category:
            if program['parentWonName'].encode('utf-8') == category:
                title = program['title'].encode('utf-8')
                params = {
                    'action': 'list_videos_or_subcats',
                    'program_id': program['id'],
Example #2
0
import threading
import SocketServer
import socket
from xbmc import Monitor
from resources.lib.kodihelper import KodiHelper
from resources.lib.WidevineHTTPRequestHandler import WidevineHTTPRequestHandler

# helper function to select an unused port on the host machine
def select_unused_port():
    sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
    sock.bind(('127.0.0.1', 0))
    addr, port = sock.getsockname()
    sock.close()
    return port

helper = KodiHelper()

# pick & store a port for the proxy service
wv_proxy_port = select_unused_port()
helper.set_setting('wv_proxy_port', str(wv_proxy_port))
helper.log('Port {0} selected'.format(str(wv_proxy_port)))

# server defaults
SocketServer.TCPServer.allow_reuse_address = True
# configure the proxy server
wv_proxy = SocketServer.TCPServer(('127.0.0.1', wv_proxy_port), WidevineHTTPRequestHandler)
wv_proxy.server_activate()
wv_proxy.timeout = 1

if __name__ == '__main__':
    monitor = Monitor()