import time from traceback import format_exc from cStringIO import StringIO from json import dumps from inspect import getmembers, isfunction import xbmc import methods from addon import Addon from torrenter import Streamer, libtorrent from timers import Timer, check_seeding_limits, save_resume_data from onscreen_label import OnScreenLabel from utilities import get_mime monitor = xbmc.Monitor() addon = Addon() _ = addon.initialize_gettext() sys.path.append(os.path.join(addon.path, 'site-packages')) from bottle import (route, default_app, request, template, response, static_file, TEMPLATE_PATH, HTTPError, HTTPResponse) app = default_app() # Torrent client parameters resume_dir = os.path.join(addon.config_dir, 'torrents') if not os.path.exists(resume_dir): os.mkdir(resume_dir) # Initialize torrent client torrent_client = Streamer(addon.torrent_port, addon.torrent_port + 10, addon.persistent,