From c4a0a7e97dbe54ef51f0fe4b157e175473b70645 Mon Sep 17 00:00:00 2001 From: xocko Date: Sat, 7 Nov 2026 11:59:01 +0100 Subject: [PATCH] 1.0.0+kodimov.3: one-tap TV guide setup "Create settings for IPTV Simple" now also: - turns on Kodi's "use backend channel numbers", so the guide shows Movistar's numbers - reloads the channel list daily at 04:00 - restarts IPTV Simple so the new setup loads without restarting Kodi and writes valid XML (the catch-up format had a bare &). Co-Authored-By: Claude Opus 5.5 --- addon.xml | 5 +++-- .../lib/__pycache__/iptv.cpython-315.pyc | Bin 6872 -> 6905 bytes .../lib/__pycache__/plugin.cpython-315.pyc | Bin 56631 -> 57263 bytes resources/lib/iptv.py | 4 ++-- resources/lib/plugin.py | 8 ++++++++ 5 files changed, 13 insertions(+), 4 deletions(-) diff --git a/addon.xml b/addon.xml index 2083ba7..6e49e2a 100644 --- a/addon.xml +++ b/addon.xml @@ -1,7 +1,7 @@ @@ -21,7 +21,8 @@ Movistar+ para Kodi, con inicio de sesión automático desde la red de Movistar Fork of Paco8's Movistar+ add-on (plugin.video.movistarplus). Logs in by itself from the Movistar home network, keeps the channel list and numbers up to date, hides the channels that need stronger DRM than Kodi has, adds free Galician channels (TVG2, TeleVigo) and writes a programme guide for every channel. Requires a Movistar+ subscription. Fork del addon Movistar+ de Paco8 (plugin.video.movistarplus). Inicia sesión solo desde la red de Movistar, mantiene la lista y los números de los canales al día, oculta los canales que necesitan una protección que Kodi no tiene añade canales gallegos gratuitos (TVG2, TeleVigo) y genera la guía de programación de todos los canales. Se necesita estar abonado a Movistar+. - 1.0.0+kodimov.2: programme guide for every channel (Movistar + TVG2/TeleVigo), TeleVigo on 15, silent background refresh. + 1.0.0+kodimov.3: one-tap TV setup: "Create settings for IPTV Simple" also turns on Movistar channel numbers, daily list reload, and restarts IPTV Simple; fixes invalid XML in that file. +1.0.0+kodimov.2: programme guide for every channel (Movistar + TVG2/TeleVigo), TeleVigo on 15, silent background refresh. 1.0.0+kodimov.1: first KodiMov+ release, based on Movistar+ 1.0.0. This addon is not officially commissioned/supported by Movistar+. All product names, logos, and trademarks mentioned in this project are property of their respective owners. Este addon no ha sido realizado ni apoyado por Movistar+. Todos los nombres de productos, logotipos y marcas registradas mencionados en este proyecto son propiedad de sus respectivos dueños. diff --git a/resources/lib/__pycache__/iptv.cpython-315.pyc b/resources/lib/__pycache__/iptv.cpython-315.pyc index 1fb37ebe59b5dad5cf5b377ee3803c09e44034ee..86b43dec240651045c7f0ccdea6deff969c51a90 100644 GIT binary patch delta 239 zcmca%`qNY}h>w?x0SMAr-e)b6U|@K>QBa79F=Dd{lM@q@ozdh%9)-ydShzMXWGUj{ z>mw?x0SFGidzZCRf`K7YnaWb#tUKL$)7VP+7)0wQ=pgb0vW$?zFSG872|iCY{tx%nxjIjMF< N5|b}Vsj!Fx1p)X}ETaGb diff --git a/resources/lib/__pycache__/plugin.cpython-315.pyc b/resources/lib/__pycache__/plugin.cpython-315.pyc index c785eb5c2ae1393601888e618a1525e410bef155..c16cf0eabf295420f7e647037d5ba46cdfb33d85 100644 GIT binary patch delta 1067 zcmah{Uu;uV7(b`?U)R#Y=%1}EV;u})D>QQ=12jXJj0~0SGB6Ti#$9{ZTHD)tZVR(M zkf>1}NLW1J16cxl0Ge!sk&DpqPfbif%l$Id%96zsKh%h7N40jKvCQWkrd5twzaB9omS zvaGYwFE5ZCvhzJCFO(O_wen)wCA)iSR$Er{WVFWh;>*`iNv|x(b-SehB%iy*8hQ(NK(23vRq+O}O$ML_ECD@I6Icow$oWsg&_{%^Mi?L~ z#*Q2`rG%DNaVDDQS|csEk>;6V3S|e=v3z|m%4Xy0fEJ<7GyfeWnL~Jl(Il-J&M(jG z$0#c(yP{bs5F|&&m)q~r?H?8jeF4d}@mHaXJRLuEu)h@o{3Hyz`H#gDW4M%Wm3rB{JdG+7UUWG!17VFT@o>MvKAxrdY@DVZfE?7sJ zFRX$0$?gm9?)`;Q%-ZMrmreH#rIL7-wNS(lX&66d%MA+PUm1G=YxBN%k`66}@FNOo zA`R{fQhOcy8P8-HY;ozeU*$O%(hnD(E`k;E+4mPcYy?#XQ#avDA&4L9@~xea5>Eec zMywJ@@9m7h(^0L{Z{D7)vCdI4WzLb&=?;r%ArGb>!#OflT5FLk#8z&1F>Z*Tf2Np` zF(vIO2Lw08NA-`&*P(#R6ekke*s1EOmP4J delta 516 zcmXAlOK4L;6o%*AN79&wlG>;N+lWO>9~e#Qn0q^qJ`4*Omh}Lhcn;&^Us-iuNPnGq4S~O zHb#|M`8O)>JrA9j!pWRZD`{e2YD|MpOga%43)antdVEoSrk{Xc=RC51tCf9!LO@DF3> z>VFN}W_RyuCip{BU#uV4$Bq`#PY~;G*Kr~j5!UP*FkLb+#eo;LP7!i1-@*b86wbhQ zoGcuLGR_wUL1JgIHCZK)|55UpJozu`WI#n59=UAULt_?SppoOD!{Hd!X&zPFyt<*p zFK!pF>#$Fluh({fi}kOC7WIP$q1+`LjsvfXFLM`wfVR>TPXoZYQpQ{-A|aCBzWbVL z)Dl_4Xt__@08EwtLJiN#V_F^XhU`6}*to$TssIY+8%nxJ9D`;m-c~xP^D8zF&<-Dn z75NT4(inBpHWu9;DB+@eA56UUdm_3OLv5-Nwyb>B8$5uC%3jzb&Q*HB3`5WILA+aS F-2@@+ui^jz diff --git a/resources/lib/iptv.py b/resources/lib/iptv.py index fc8d247..0323c88 100644 --- a/resources/lib/iptv.py +++ b/resources/lib/iptv.py @@ -15,7 +15,7 @@ def save_iptv_settings(filename, name, addon_id, epg_url=None): true 1 false - 0 + 2 60 4 10 @@ -82,7 +82,7 @@ def save_iptv_settings(filename, name, addon_id, epg_url=None): content += ''' true - &start_time={utc}&end_time={utcend} + &start_time={utc}&end_time={utcend} 2''' content += ''' diff --git a/resources/lib/plugin.py b/resources/lib/plugin.py index 6bd0b26..d8ecce6 100644 --- a/resources/lib/plugin.py +++ b/resources/lib/plugin.py @@ -766,7 +766,15 @@ def create_iptv_settings(): res = xbmcgui.Dialog().yesno(addon.getLocalizedString(30322), addon.getLocalizedString(30323)) if res == False: return save_iptv_settings(filename, 'KodiMov+', 'kodimovplus', epg_url) + # Show Movistar's own channel numbers instead of 1, 2, 3... + xbmc.executeJSONRPC(json.dumps({'jsonrpc': '2.0', 'id': 1, 'method': 'Settings.SetSettingValue', + 'params': {'setting': 'pvrmanager.usebackendchannelnumbers', 'value': True}})) export_epg_now() + # Restart IPTV Simple so it loads the new instance and channel list. + for enabled in (False, True): + xbmc.executeJSONRPC(json.dumps({'jsonrpc': '2.0', 'id': 1, 'method': 'Addons.SetAddonEnabled', + 'params': {'addonid': 'pvr.iptvsimple', 'enabled': enabled}})) + xbmc.sleep(3000) except: show_notification(addon.getLocalizedString(30324))