コード例 #1
0
def home(**kwargs):
    api_get_channels()

    folder = plugin.Folder(title='Installed Addons')

    installed = False
    loggedin = False

    addons = []

    desc = _.ADDON_NOT_INSTALLED_DESC
    desc2 = _.NO_ADDONS_ENABLED_DESC
    desc3 = _.RESET_SETTINGS_DESC
    desc4 = _.ADDON_NOT_LOGGEDIN_DESC
    desc5 = _.ADDON_ENABLED_DESC
    desc6 = _.ADDONS_CONTINUE_DESC

    for entry in CONST_ADDONS:
        if check_addon(addon=entry['addonid']):
            if check_loggedin(addon=entry['addonid']):
                color = 'green'
                loggedin = True
                addons.append(entry)
                folder.add_item(label=_(entry['label'],
                                        _bold=True,
                                        _color=color),
                                info={'plot': desc5},
                                path=plugin.url_for(func_or_url=home))
            else:
                color = 'orange'
                folder.add_item(label=_(entry['label'],
                                        _bold=True,
                                        _color=color),
                                info={'plot': desc4},
                                path=plugin.url_for(func_or_url=home))

            installed = True
        else:
            color = 'red'
            folder.add_item(label=_(entry['label'], _bold=True, _color=color),
                            info={'plot': desc},
                            path=plugin.url_for(func_or_url=home))

    if installed == True and loggedin == True:
        folder.add_item(label=_.NEXT,
                        info={'plot': desc6},
                        path=plugin.url_for(func_or_url=primary,
                                            addons=json.dumps(addons)))
    else:
        folder.add_item(label=_.NO_ADDONS_ENABLED,
                        info={'plot': desc2},
                        path=plugin.url_for(func_or_url=home))

    folder.add_item(label=_.RESET_SETTINGS,
                    info={'plot': desc3},
                    path=plugin.url_for(func_or_url=reset_settings))

    return folder
コード例 #2
0
def loop():
    api_get_channels()

    if api_get_all_epg() == True:
        create_playlist()
        create_epg()
        xbmc.executeJSONRPC('{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{"addonid":"pvr.iptvsimple","enabled":false}}')
        xbmc.sleep(2000)
        xbmc.executeJSONRPC('{"jsonrpc":"2.0","id":1,"method":"Addons.SetAddonEnabled","params":{"addonid":"pvr.iptvsimple","enabled":true}}')
コード例 #3
0
ファイル: service.py プロジェクト: nazegnl/dut-iptv
def loop():
    api_get_channels()

    res = api_get_all_epg()

    if res == True:
        create_playlist()
        create_epg()

        try:
            xbmcaddon.Addon('pvr.iptvsimple').setSettingInt("m3uPathType", 0)
        except:
            pass
コード例 #4
0
def save_all_radio_prefs():
    if api_get_channels() == True:
        type_channels = load_channels(type='radio')
        prefs = load_radio_prefs(profile_id=1)
        found_ar = []

        for currow in type_channels:
            row = type_channels[currow]
            all_id = unicode(row['id'])
            name = unicode(row['name'])

            if not prefs or not check_key(prefs, all_id):
                prefs[all_id] = {'radio': 1, 'name': name}

            found_ar.append(all_id)

        prefs2 = prefs.copy()

        for currow in prefs:
            if not currow in found_ar:
                del prefs2[currow]

        save_radio_prefs(profile_id=1, prefs=prefs2)
コード例 #5
0
def save_all_prefs(type_tv_radio):
    if api_get_channels() == True:
        if type_tv_radio == 'radio':
            type_channels = load_channels(type='radio')
            prefs = load_radio_prefs(profile_id=1)
            found_ar = []

            for currow in type_channels:
                row = type_channels[currow]
                all_id = str(row['id'])
                name = str(row['name'])

                if not prefs or not check_key(prefs, all_id):
                    prefs[all_id] = {'radio': 1, 'name': name}

                found_ar.append(all_id)

            prefs2 = prefs.copy()

            for currow in prefs:
                if not currow in found_ar:
                    del prefs2[currow]

            save_radio_prefs(profile_id=1, prefs=prefs2)
        else:
            profile_settings = load_profile(profile_id=1)

            all_channels = load_channels(type='all')
            prefs = load_prefs(profile_id=1)
            found_ar = []
            addon_list = []

            for x in range(1, 6):
                if len(profile_settings['addon' + str(x)]) > 0:
                    addon_list.append(profile_settings['addon' + str(x)])

            prefs2 = prefs.copy()

            for all_id in prefs2:
                pref = prefs2[all_id]

                if len(pref['live_addonid']) > 0:
                    if not pref['live_addonid'] in addon_list:
                        del prefs[all_id]
                        continue

                if check_key(
                        pref,
                        'replay_addonid') and len(pref['replay_addonid']) > 0:
                    if not pref['replay_addonid'] in addon_list:
                        del prefs[all_id]['replay']
                        del prefs[all_id]['replay_addonid']
                        del prefs[all_id]['replay_auto']
                        del prefs[all_id]['replay_channelid']
                        del prefs[all_id]['replay_channelassetid']

            for x in range(1, 6):
                if len(profile_settings['addon' + str(x)]) > 0:
                    video_addon = profile_settings['addon' + str(x)]

                    type_channels = load_channels(
                        type=video_addon.replace('plugin.video.', ''))

                    VIDEO_ADDON_PROFILE = ADDON_PROFILE.replace(
                        ADDON_ID, video_addon)
                    addon_prefs = load_file(VIDEO_ADDON_PROFILE + 'prefs.json',
                                            ext=True,
                                            isJSON=True)

                    for currow in type_channels:
                        row = type_channels[currow]

                        all_id = None

                        for currow2 in all_channels:
                            row2 = all_channels[currow2]

                            if str(row2[video_addon + '_id']) == str(
                                    row['id']):
                                all_id = str(currow2)

                        if not all_id:
                            continue

                        if type_tv_radio == 'replay' and not check_key(
                                prefs, all_id):
                            continue

                        disabled = False

                        if addon_prefs:
                            try:
                                if int(addon_prefs[str(
                                        row['id'])][type_tv_radio]) == 0:
                                    disabled = True
                            except:
                                pass

                        if disabled == True:
                            if type_tv_radio == 'live':
                                if all_id and check_key(
                                        prefs, all_id) and prefs[all_id][
                                            'live_addonid'] == video_addon:
                                    del prefs[all_id]
                            else:
                                try:
                                    if all_id and check_key(
                                            prefs, all_id
                                    ) and prefs[all_id][
                                            'replay_addonid'] == video_addon:
                                        del prefs[all_id]['replay']
                                        del prefs[all_id]['replay_addonid']
                                        del prefs[all_id]['replay_auto']
                                        del prefs[all_id]['replay_channelid']
                                        del prefs[all_id][
                                            'replay_channelassetid']
                                except:
                                    pass

                            continue

                        if type_tv_radio == 'live':
                            if not prefs or not check_key(prefs, all_id):
                                prefs[all_id] = {
                                    'live': 1,
                                    'live_addonid': video_addon,
                                    'live_auto': 1,
                                    'name': row['name'],
                                    'live_channelid': row['id'],
                                    'live_channelassetid': row['assetid'],
                                    'channelname': row['name'],
                                    'channelicon': row['icon']
                                }
                            elif int(
                                    prefs[all_id]['live_auto']
                            ) == 1 and all_id and not all_id in found_ar:
                                prefs[all_id]['live'] = 1
                                prefs[all_id]['live_addonid'] = video_addon
                                prefs[all_id]['live_auto'] = 1
                                prefs[all_id]['live_channelid'] = row['id']
                                prefs[all_id]['live_channelassetid'] = row[
                                    'assetid']
                        else:
                            try:
                                if (not prefs or not check_key(prefs, all_id)
                                    ) or (int(prefs[all_id]['replay_auto'])
                                          == 1 and all_id
                                          and not all_id in found_ar):
                                    prefs[all_id]['replay'] = 1
                                    prefs[all_id][
                                        'replay_addonid'] = video_addon
                                    prefs[all_id]['replay_auto'] = 1
                                    prefs[all_id]['replay_channelid'] = row[
                                        'id']
                                    prefs[all_id][
                                        'replay_channelassetid'] = row[
                                            'assetid']
                            except:
                                prefs[all_id]['replay'] = 1
                                prefs[all_id]['replay_addonid'] = video_addon
                                prefs[all_id]['replay_auto'] = 1
                                prefs[all_id]['replay_channelid'] = row['id']
                                prefs[all_id]['replay_channelassetid'] = row[
                                    'assetid']

                        found_ar.append(all_id)

            prefs2 = prefs.copy()

            if type_tv_radio == 'live':
                for currow in prefs:
                    if not currow in found_ar:
                        del prefs2[currow]

            save_prefs(profile_id=1, prefs=prefs2)
コード例 #6
0
def save_all_replay_prefs():
    if api_get_channels() == True:
        profile_settings = load_profile(profile_id=1)

        all_channels = load_channels(type='all')
        prefs = load_prefs(profile_id=1)
        found_ar = []

        for x in range(1, 6):
            if len(profile_settings['addon' + unicode(x)]) > 0:
                type = profile_settings['addon' + unicode(x)]

                type_channels = load_channels(
                    type=type.replace('plugin.video.', ''))

                VIDEO_ADDON_PROFILE = ADDON_PROFILE.replace(ADDON_ID, type)
                addon_prefs = load_file(VIDEO_ADDON_PROFILE + 'prefs.json',
                                        ext=True,
                                        isJSON=True)
                addon_profile = load_file(VIDEO_ADDON_PROFILE + 'profile.json',
                                          ext=True,
                                          isJSON=True)

                ziggov3 = 0

                try:
                    if int(addon_profile['v3']) == 1:
                        ziggov3 = 1
                except:
                    pass

                for currow in type_channels:
                    row = type_channels[currow]

                    all_id = None

                    for currow2 in all_channels:
                        row2 = all_channels[currow2]

                        if (ziggov3 == 0 and unicode(row2[type + '_id'])
                                == unicode(row['id'])) or (
                                    ziggov3 == 1
                                    and check_key(row2, type + '_idv3')
                                    and unicode(row2[type + '_idv3'])
                                    == unicode(row['id'])):
                            all_id = unicode(currow2)

                    if not all_id or not check_key(prefs, all_id):
                        continue

                    disabled = False

                    if addon_prefs:
                        try:
                            if int(addon_prefs[unicode(
                                    row['id'])]['replay']) == 0:
                                disabled = True
                        except:
                            pass

                    if disabled == True:
                        try:
                            if all_id and check_key(
                                    prefs, all_id
                            ) and prefs[all_id]['replay_addonid'] == type:
                                del prefs[all_id]['replay']
                                del prefs[all_id]['replay_addonid']
                                del prefs[all_id]['replay_auto']
                                del prefs[all_id]['replay_channelid']
                                del prefs[all_id]['replay_channelassetid']
                        except:
                            pass

                        continue

                    try:
                        if (not prefs or not check_key(prefs, all_id)) or (
                                int(prefs[all_id]['replay_auto']) == 1
                                and all_id and not all_id in found_ar):
                            prefs[all_id]['replay'] = 1
                            prefs[all_id]['replay_addonid'] = type
                            prefs[all_id]['replay_auto'] = 1
                            prefs[all_id]['replay_channelid'] = row['id']
                            prefs[all_id]['replay_channelassetid'] = row[
                                'assetid']
                    except:
                        prefs[all_id]['replay'] = 1
                        prefs[all_id]['replay_addonid'] = type
                        prefs[all_id]['replay_auto'] = 1
                        prefs[all_id]['replay_channelid'] = row['id']
                        prefs[all_id]['replay_channelassetid'] = row['assetid']

                    found_ar.append(all_id)

        prefs2 = prefs.copy()

        for currow in prefs:
            if not currow in found_ar:
                del prefs2[currow]

        save_prefs(profile_id=1, prefs=prefs2)