Grabber XMLTV para el servicio de Televisión IPTV de Movistar España.
Genera la guía EPG en formato XMLTV y la lista de canales en formato M3U a partir de los datos suministrados por el operador vía multicast.
Se integra con TVHeadend.
172.26.23.3
y rutas correspondientes).Título de la serie
y 1x01 Título del episodio
respectivamente
(en caso de película el año se establece como subtítulo)Argumentos que acepta el programa:
usage: tv_grab_es_movistartv [-h] [--description] [--capabilities]
[--output FILENAME] [--m3u OUTPUT]
[--tvheadend CHANNELS] [--reset]
Grab Movistar TV EPG guide via Multicast from 10/06/2017 to 14/06/2017
optional arguments:
-h, --help show this help message and exit
--description Show 'Spain (MovistarTV)'
--capabilities Show xmltv capabilities
--output FILENAME Redirect the xmltv output to the specified file.
Otherwise output goes to stdout.
--m3u OUTPUT Dump channels in m3u format to the specified file.
--tvheadend CHANNELS Grab EPG and dump channels in m3u format to CHANNELS
file (use this argument in TVHeadend grabber's
configuration page to update both: the EPG guide and
the m3u channel list)
--reset Delete saved configuration, log file and caches.
Vuelca la guía EPG en un archivo XML:
$ tv_grab_es_movistartv --output /home/hts/.xmltv/guia.xml
Genera la lista de canales:
$ tv_grab_es_movistartv --m3u /home/hts/.xmltv/MovistarTV
Actualiza la EPG y la lista de canales en TVHeadend:
$ tv_grab_es_movistartv --tvheadend /home/hts/.xmltv/MovistarTV
Edita el programa con vi, nano, gedit, kedit... y cambia los parámetros de configuración según tus necesidades:
default_demarcation = demarcations['Asturias']
app_dir = '/home/hts/.xmltv'
use_multithread = True
cache_exp = 3 # Días
log_file = 'tv_grab_es_movistartv.log'
log_level = logging.INFO
log_size = 5 # MB
cookie_file = 'tv_grab_es_movistartv.cookie'
end_points_file = 'tv_grab_es_movistartv.endpoints'
max_credits = 4
Los más importantes son default_demarcation
y app_dir
:
default_demarcation
: cambia 'Asturias'
por el nombre de tu provincia (ver diccionario demarcations
)app_dir
: si cambias la ruta por defecto asegúrate de que TVHeadend tiene permisos de escritura en la nueva rutamax_credits
: número máximo de actores/directores que se mostrarán en la lista de créditosMueve el script a /usr/bin y cambia el propietario y los permisos:
$ sudo mv tv_grab_es_movistartv.py /usr/bin/tv_grab_es_movistartv
$ sudo chown root:root /usr/bin/tv_grab_es_movistartv
$ sudo chmod 755 /usr/bin/tv_grab_es_movistartv
Reinicia y ve a la interfaz web de TVHeadend:
En Configuration -> Channel / EPG -> EPG Grabber Modules
activa el grabber Internal XMLTV: Spain (MovistarTV)
y pon como argumento: --tvheadend /home/hts/.xmltv/MovistarTV
Ve a Configuration -> Channel / EPG -> EPG Grabber
:
Sustituye el contenido de Cron multi-line
por:
# Se ejecuta todos los días a las 22:30h
30 22 * * *
Y guarda los cambios.
Movistar ha cambiado las URI de los logos de los canales al menos en una ocasión. Si has actualizado el grabber y aún así no se ven los logos en Kodi, sigue estos pasos:
Borra la caché del grabber:
$ sudo tv_grab_es_movistartv --reset
Regenera la lista de canales (cambia el usuario y la ruta según tu configuración):
$ sudo -u hts tv_grab_es_movistartv --m3u /home/hts/.xmltv/MovistarTV
Ve a la lista de canales de la interfaz web de TVHeadend en Configuration -> Channel / EPG -> Channels
,
selecciónalos todos y bórralos pulsando Delete
:
Ahora ve a la lista de Servicios en Configuration -> DVB Inputs -> Services
y vuelve a mapearlos pulsando
en Map all services
:
Reinicia Kodi. Si siguen sin verse ve a la configuración de Kodi y borra los datos de la TV en
Configuración -> Ajustes de PVR y TV en directo -> General -> Borrar datos
:
Ve a la lista de canales y comprueba que ya se ven.
La descarga de la guía básica que viene por Multicast es multihilo, se conecta a varias IP simultáneamente para agilizar el tiempo de ejecución del grabber. Por defecto hay tres hilos (tres conexiones a tres IP diferentes) porque a partir de cuatro he notado que pueden aparecer errores de este tipo.
Si es tu caso, baja el número de conexiones a dos: edita el grabber, busca la línea threads = 3
y cámbiala por
threads = 2
.
Si sigues teniendo problemas desactiva el multihilo: busca la línea use_multithread = True
y cámbiala por
use_multithread = False
Escrito por _ WiLloW _