Obtener la Lista de Canales y Programación de Movistar TV

Re: Re:

\\\"rgallo79\\\" dijo:
Buenos días, por motivos estivales / laborales, no he podido continuar con el proyecto que tenía entre manos. Pero para ayudarte un poco, no hacía falta traducir el mensaje al completo porque el propio contenido del fichero y unos patrones eran los que me daban la información necesaria para encontrar en el tráfico del stream rtp toda la información necesaria.


Gracias. Si tuvieras unos minutos la próxima vez, ¿podrías dar un poco más de pistas? No entiendo lo de los patrones.
Un saludo.
 
Re: Re:

rgallo79 dijo:
\\\"RazorbladeR\\\" dijo:
\\\"rgallo79\\\" dijo:
Muchas gracias por vuestras lecturas. Ya he conseguido entender el tema por lo que cierro mi solicitud de ayuda.
¿Y al final cómo era? :O

Buenos días, por motivos estivales / laborales, no he podido continuar con el proyecto que tenía entre manos. Pero para ayudarte un poco, no hacía falta traducir el mensaje al completo porque el propio contenido del fichero y unos patrones eran los que me daban la información necesaria para encontrar en el tráfico del stream rtp toda la información necesaria.

Pues a mí me gustaría que informaras de tus logros, yo llevo trasteando con los streams, y siempre llego a la misma conclusión: o hay otro stream binario en algún sitio, o es IMPOSIBLE que la EPG descargada coincida con lo que contiene el stream RTP.

¿Podrías echar una mano, rgallo79?

Saludos.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Hola a todos, disculpad por entrometerme en esta conversación, pero quizás tenga algo que pueda interesar a alguien.

Parece que todo esto está parado por el cambio del fomato de la guía de xml a binario y que al parecer sólo vmjuidiaz ha conseguido abrir y ha incorporado en su módulo para kodi. Lo lógico y normal es que vmjuidiaz compartiese su código y conocimiento, pero al parecer tiene claro que no será así, por motivos que no logro comprender, pero que está en todo su derecho.

Gracias a que tuve dos días de ¿descanso? al final de diciembre del 2016, por un resfriado, me entretuve jugueteando con la EPG binaria y logré concretar ciertos campos, no todo, quizás eso lleve más tiempo, pero es más que suficiente para obtener una guía básica.

Este mensaje es para aportar mi mínimo conocimiento sobre ello y que alguien que tenga más tiempo lo termine.

Por cierto, quiero aclarar que esta información la he conseguido gracias a ingeniería inversa, al igual que vmjuidiaz, sólo por si alguien lo duda.

El formato general del segment con todas las secciones unidas y en orden:

cabecera:

Código:
offset tamaño  descrp
0      1       ¿?
1      2       tamaño segmento
3      2       serviceId
5      1       version  serviceIDRef  ¿longitud de 2 bytes? ¿version?
6      1       longitud serviceIDRef
7      <long>  serviceIDRef

cuerpo del segmento, puede haber más de uno, hasta que complete el tamaño de segmento indicado en la cabecera

Código:
offset tamaño  descrp
+<lon> 4       crid  productID
-      4       fecha
-      2       duración

?      14      ¿?
-      1       ¿ageRatingID?
-      6       ¿?

-      1       long titulo
-      <long>  titulo

-      1       ¿F1?  ¿info de series?  Opcional si es F1 es info series 
?      11        |-> ¿? sólo si F1
       |  4       ¿?
       |  2       serieID
       |  1       ¿?
       |  1       episidio
       |  2       ¿?
       |  1       temporada
       |  1       long serie
       | <long>   serie

-      1       F3
-      2       00 0F  ¿?
-      1       long NetworkRecordOperator
-      <long>  NetworkRecordOperator

Como podéis comprobar hay muchos interrogantes que no he conseguido saber qué indican y tampoco creo que invierta más tiempo en ello.

Hay dos campos de texto, titulo y serie, que están cifrados, pero este es muy débil, es un cifrado por sustitución y además simétrico. No creo que nadie tenga mucho problema en descrifrarlo, no voy a poner el cifrado completo, uno porque no lo tengo y otro por que algo os tiene que picar ;). Eso sí os voy a dejar algún que otro ejemplo:

En ascii:

Código:
cifra   claro
 77      88
 79      90
 98     119

y viceversa

Espero que el mensaje sea de vuestro agrado y que os sea de utilidad.


Goommer
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Goomer. No vas muy desencaminado, pero estás partiendo de un concepto equivocado, y es que la información siempre sigue la misma estructura. De ahí lo de F1, que "rompe" la aparente estructura fija de la información.

En cuanto a por qué vmjudiaz no quiere compartir la información de cómo descoficiar la EPG en binario, tuve la oportunidad de hablar con él del tema. Y sus razones me parecieron muy convincentes. Y que conste, no tengo ninguna relación con él.

La razón fundamental no es forzar a la gente a usar su addin para Kodi o recibir dinero a cambio. El problema viene cuando se quiere descargar tanto a la foto de cada programa como su información extendida (la información que se recibe vía multicast  sólo incluye el nombre, calificación de edad, género, hora de comienzo y duración).

Para acceder a la foto y a la info completa hay que llamar a un servicio web de Movistar. Es ahí donde se puede producir una saturación si no se llama correctamente al servicio web, pues si no se hace bien cada llamada al servicio Movistar trata la petición como si viniera de un decodificador diferente cada vez.

Si se empieza a pedir información de forma incorrecta para cada programa, para Movistar es como si se encendieron cientos de
decodificadores a la vez. Movistar tiene cuidadosamente planificados la disponibilidad de su servicio web en función del número de
descodificadores que ha instalado.

Es ahí donde se produce la saturación, pues un solo usuario se convierte de golpe, a efectos de Movistar, en cientos de usuarios diferentes.  Multiplica sólo 100 usuarios descargando incorrectamente la información de la EPG por unas 500 peticiones y acabas con
50.000 decodificadores "fantasma".

También hay que decir que su servicio web es un poco una chapuza en lo que se refiere a servir peticiones de información que es esencialmente estática.

¿Cuál es la clave? En mantener la cookie de sesión una vez realizada la primera consulta al servicio web.
¿Por qué no quiere vmjudiaz, ni yo mismo, mostrar cómo "desencriptar" la info de la EPG? Por culpa de scripts Python (o similares) como los publicados en este mismo hilo, scripts que hacían una descarga a lo bestia de toda la información extendida de la EPG de los 7 días completos (en lugar de limitarse a un sólo día y de sólo los canales contratados) y, sobre todo, que no mantenían la cookie de sesión entre petición y petición.

Muchos sospechamos que la razón por la movistar cambió el formato de XML a binario, además de por reducir sustancialmente el tamaño de la información que se envía, fue por culpa de esos scripts "mal" programados. Y yo comparto las reticencias a la hora de compartir los detalles del formato binario (obtenidos por pura ingeniería inversa) para evitar que se vuelvan a escribir scripts o programas "mal" programados y que fuercen a movistar a buscar un formato más complejo y más difícil de desentrañar, lo que al final redundaría en un perjuicio para todos.

Yo espero liberar en unas dos/tres semanas la beta 1 de mi programa de código abierto IPTViewr que incorporará el descodificador completo de la EPG, pero del cual no haré público el código por las razones ya mencionadas.

Saludos,
Alpha
 
Alpha lo ha explicado a la perfección, no hay mucho más que añadir al respecto.

Como análisis preeliminar es muy acertado, evidentemente faltan extracciones de datos y algunos de las soluciones es efectiva (se llega al resultado) pero no es correcta, aunque al final da igual.
Por cierto Goommer si eres el mismo que el de openwrt para las sesiones rtsp mándame un privado, tal vez te aporte info interesante para el mantenimiento de la conexión que tal vez te lleven a soluciones un poco mas sencillas.

Alpha, aunque ya supongo que has llegado a las conclusiones apropiadas (no se puede esperar menos de un tipo con tu capacidad técnica), te voy a mandar un privado con alguna solución para la EPG que tal vez te resulte interesante.
 
Goommer te he enviado un privado de respuesta pero no estoy seguro de que te este llegando, se queda en la bandeja de salida.
Si no te llega dimelo y vemos otra forma de comunicación.
 
Pues llevo un rato analizando como obtener la guía de Movistar y lo poco que he visto me parece que no tiene ningún misterio.

Pero comparto la opinión de no compartirlo para que no lo fundan los bestias

Saludos
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Hola

AlphaCentaury dijo:
... En cuanto a por qué vmjudiaz no quiere compartir ...
Ni entro ni salgo, cada uno busca las excusas que quiere para hacer lo que quiere. En ningún momento le he criticado de mala manera, la crítica siempre es buena si se hace con educación y criterio. Y como dije antes, está en su derecho, igual que cualquiera que tome esa opción, pero yo no lo entenderé.


AlphaCentaury dijo:
... mantener la cookie de sesión ...
Hombre, no sé, mi nivel de conocimiento en la estructura que usa telefónica para servir esta información es nula, pero que se vea saturada sólo por no mantener la cookie me resulta muy raro. Otra cosa bien distinta es el aumento de peticiones y consumo de ancho de banda de peticiones de los automatismos que se puedan crear, manteniendo cookie o no y los manuales desde el deco.

No me extrañaría que aunque nosotros sólo vemos una ip ellos tienen distribuidores, balanceadores, granjas, etc...

AlphaCentaury dijo:
... yo comparto las reticencias a la hora de compartir los detalles ... para evitar que se vuelvan a escribir scripts o programas "mal" programados ...
Precisamente es todo lo contrario, para que las personas que han creado esos guiones programen mejor necesitan leer mucho más código, y si les interesa para algo, mucho mejor. Es básico.


AlphaCentaury dijo:
... que fuercen a movistar a buscar un formato más complejo y más difícil de desentrañar ...
Éste es el problema, ya que he conseguido abrir lo cerrado, que lo que yo he abierto no se vuelva a cerrar. Esto parte de una premisa falsa, que telefónica no evolucione su sistema. Primero, creo que telefónica vendió esto, imagenio, a alguien, y éste no sólo se lo vende a telefónica sino a otros muchos, esto implica que otros mercados también pedirán evoluciones y seguramente se apliquen aquí, en telefónica u otros operadores que se lo compren.


AlphaCentaury dijo:
... espero liberar en unas dos/tres semanas la beta 1 de mi programa de código abierto IPTViewr que incorporará el descodificador completo de la EPG, pero del cual no haré público el código ...
Ante todo coherencia.


Bueno, a lo que me interesa.

AlphaCentaury dijo:
... pero estás partiendo de un concepto equivocado, y es que la información siempre sigue la misma estructura. De ahí lo de F1, que "rompe" la aparente estructura fija de la información ...
No sé a qué te refieres, no entiendo lo que dices. De todas formas lo deja bien claro vmjuidiaz:


vmjuidiaz dijo:
... faltan extracciones de datos y algunos de las soluciones es efectiva (se llega al resultado) ...
se llega al resultado.

Para obtener resultados, por gracia o por desgracia, no hace falta estar en posesión del conocimiento total, e incluso de la forma más adecuada u óptima de llegar al resultado, sólo llegar.

Un simple ejemplo, tomamos la epg de m.series de mañana 15:

Código:
$ ./prueba_epg.pl EPG/0011_2017-01-15_M._Series_HD.bin | head -31
offset  size  field                   : value
     0     1  ¿?                      : #f4#
     1     2  Segment size            :   4274    #10b2#
     3     2  serviceId               : 0x0af4    #0af4#
     5     1  version                 :      0    #00#
     6     1  longitud                :     16    #10#
     7    16  serviceidref            : 2804.imagenio.es    #323830342e696d6167656e696f2e6573#
----------------------------------------------------------------------

    23     4  productId               :   43637410  #0299daa2#
    27     4  fecha                   : 1484438580  Sun Jan 15 01:03:00 2017  #587abc34#
    31     2  duración                :       1800  Sun Jan 15 01:33:00 2017  #0708#
    33    21  ¿?                      : #0101005b00005400020074550001074d0029000000#
    54     1  longitud                :         37    #25#
    55    37  titulo                  : Wtyypgf5A'5Pe;5"585Azqz5py5x`{qz5ftwp    #577479797067663541273550653b3522353835417a717a3570793578607b717a3566747770#
                                      : Ballers T2 Ep. 7 - Todo el mundo sabe
    92     1  ¿?                      : #f1#
    93     4  ¿?                      : #0011028b#
    97     2  serie ID                :      27109   #69e5#
    99     1  ¿?                      : #00#
   100     1  episodio                :      7   #07#
   101     2  ¿?                      : #07e0#
   103     1  temporada               :      2   #02#
   104     1  longitud                :      7    #07#
   105     7  serie                   : Wtyypgf    #57747979706766#
                                      : Ballers
   112     1  ¿?                      : #f3#
   113     2  ¿?                      : #000f#
   115     1  longitud                :     14    #0e#
   116    14  NetworkRecordOperator   : default|STOVER    #64656661756c747c53544f564552#
----------------------------------------------------------------------
con esto tengo información más que de sobra para saber qué se emite y cuando, poder programar una grabación del programa o de la serie, y además si tengo dudas o quiero completar la información consultar a telefónica, sin necesidad de terminar la tabla de cifrado, aunque sea sencillo terminarla, puesto que aquí tengo todo:


Código:
$ ./prueba_epg_from_json.sh 0af4 43637410
{"resultCode":0,
"resultText":"Operation successful",
"resultData":{"isPromotional":0,
"productID":43637410,
"startOver":1,
"rating":0,
"episode":7,
"expDate":1485125999000,
"duration":1800,
"cover":"4363/43637410.jpg",
"productionDate":2015,
"wishListEnabled":1,
"genre":"Comedia",
"season":2,
"theme":"Series",
"beginTime":1484438580000,
"productType":24,
"recordingAllowed":1,
"seriesName":"Ballers",
"mainActors":["Troy Garity",
" Rob Corddry",
" Dwayne Johnson",
" Omar Benson Miller"],
"episodeName":"T2 Ep7",
"themeID":112,
"ageRatingID":7,
"serviceUID":2804,
"opvr":1,
"countries":["Estados Unidos"],
"synopsis":"Spencer hace malabares ...
"seriesID":42691045,
"originalTitle":"Everybody Knows",
"hasDolby":0,
"name":"Ballers T2 Ep. 7 - Todo el mundo sabe",
"producer":"Mark Wahlberg",
"channelName":"M. Series",
"endTime":1484440380000,
"serviceID":11},
"hashCode":"ccfe5483d3d631712976234e27257d48"}
Y ya tengo más ;-D. Es más, qué buena forma de terminar de abrir lo que queda.

Otro ejemplo que no es serie:

Código:
 ./prueba_epg.pl EPG/0031_2017-01-15_M._Estrenos_HD.bin | head -21
offset  size  field                   : value
     0     1  ¿?                      : #fc#
     1     2  Segment size            :   1491    #05d3#
     3     2  serviceId               : 0x0afc    #0afc#
     5     1  version                 :      0    #00#
     6     1  longitud                :     16    #10#
     7    16  serviceidref            : 2812.imagenio.es    #323831322e696d6167656e696f2e6573#
----------------------------------------------------------------------

    23     4  productId               :   43637331  #0299da53#
    27     4  fecha                   : 1484441700  Sun Jan 15 01:55:00 2017  #587ac864#
    31     2  duración                :       6000  Sun Jan 15 03:35:00 2017  #1770#
    33    21  ¿?                      : #0101003400005400020018550001034d0016000000#
    54     1  longitud                :         18    #12#
    55    18  titulo                  : Fpvgpazf5qp5r`pggt    #4670766770617a6635717035726070676774#
                                      : Secretos de guerra
    73     1  ¿?                      : #f3#
    74     2  ¿?                      : #000f#
    76     1  longitud                :     14    #0e#
    77    14  NetworkRecordOperator   : default|STOVER    #64656661756c747c53544f564552#
----------------------------------------------------------------------

Por cierto, además de consultar con cierta cadencia mantengo las galletitas:

Código:
$ cat prueba_epg_from_json.sh
#!/bin/bash

CHID=$1
PID=$2

BASE="http://www-60.svc.imagenio.telefonica.net:2001/appserver/mvtv.do"
EPGINFO="$BASE?action=epgInfo&extra=1&channelID=%s&productID=%s"

COOKIE="mvtv_cookie.txt"
OPTS="--cookie $COOKIE --cookie-jar $COOKIE"


URL=`printf "$EPGINFO" $CHID $PID`

curl $OPTS "$URL" \
     2>/dev/null  \
     | sed -e 's/, */,\n/g'

echo ""
Espero que sea de utilidad
 
No mantener variables de sesión lleva siempre a cargas extras y re direcciones de almacenaje de variables que pueden llevar a comprometer instalaciones, cuando además esa asignación de sesión solo se realizaba solo en el caso de nuevo deco o reseteo total.
Antes no se asignaba sesión como se hace ahora, ahora han creado nodos distribuidos se ve en el valor de la cookie.
De todas formas eso solo es solo una parte del problema, el problema es que esos scripts no cacheaban nada, es decir cada vez que se ejecutaban se descargan toda las EPG de los 7 días y sobre todo se descargan la guía detallada (epginfo) completa cada vez.
Eso supone que una vez lanzado realizaba cerca de 20.000 llamadas al servicio, un servicio que esta dimensionado para que accedan los decos cuando le das al detalle de un programa.
A ver gracia no puede hacerles si además encima esto lo ejecutas varias veces al día o se lo programas a las 00:00 como hace bastante gente.
Lo normal es que dimensionaran su infraestructura para lo que ellos vaya a utilizar y no pensando en otros desarrollos que tiren de sus servicios.

Goommer si vas a realizar el script además de la cadencia intenta no volver a descargarte de la descripción larga lo ya descargado o bien limita a tanto por hora o solo 2 horas antes o después cualquier cosa así o algo así, mas que nada por no ir haciendo daño a terceros (se telefónica o no).

Si cambiaron la EPG a binario y la ocultación de los textos no fue por eficiencia, que si tuvo una mejora al pasarlo a binario , que no justifica el coste y riesgo que supuso ese cambio solo para bajar el ancho de banda de transmisión de la guía y menos por que ocultar los textos.

Solo pido, y me incluyo, que intentemos ser cuidadosos con el uso que le damos a la infraestructura de un tercero, sino lo somos molestamos a la empresa, complicamos la vida al final a la gente que da el soporte (este es el que mas me duele la verdad) y al final nos perjudicamos a nosotros. Solo eso que seamos razonables.

Una vez que ya se dispone del código de programa efectivamente el resto puedes obtenerlo por el JSON.

Una vez que eso ya es publico no hay razón para mantener el resto oculto:
- Los textos no tienen tabla de conversión, con hacer un xor 0x15 es suficiente.
- Del resto de lo que tienes en ? muchos son longitudes de estructuras (long segmento, long del bloque Fx ... etc.), y alguno que esta desplazado (el id de serie?), pero vaya lo normal en unas primeras versiones.
- Hay algunos que tampoco yo he intentando saber que es ya que no me hacen falta (muchos serán de long de estructura y alguno de dato)

En general averiguar cada cosa, al igual que el enmascaramiento, no era una cosa del otro jueves, mucho se ha tardado en publicar algo, aunque también te digo no eres el único antes que lo ha averiguado, lo han hecho unos cuantos, eso si, eres el único que lo ha hecho publico.
 
Re:

Hola

vmjuidiaz dijo:
... intenta no volver a descargarte de la descripción larga lo ya descargado ...
Hombre eso es lo lógico, cuando he descargado una cosa no necesito volver a hacerlo. Y en estas situaciones no suelo comprobar si se ha modificado, por ejemplo las imágenes de cada programa o canal, no suelo hacer HEADs si ya tengo la información.


vmjuidiaz dijo:
... Una vez que eso ya es publico no hay razón para mantener el resto oculto ...
Efectívamente.

vmjuidiaz dijo:
... no era una cosa del otro jueves ...
Está claro que no, he conseguido hacerlo en muy poco tiempo, simplemente dedicándole atención. Si lo he conseguido yo lo puede hacer cualquiera.

vmjuidiaz dijo:
... mucho se ha tardado en publicar algo ...  eres el único que lo ha hecho publico ...
Pues es una lástima, por desgracia no tengo mucho tiempo para dedicar a esto, ya me gustaría, y agradecezco cada código que me permitan leer, es mucho más rápido aprender así.


Llevo desde el agosto del 2014 con este servicio y a ratos he conseguido aprender cómo funciona, apañando (ñapeando) ciertas cosas para que funcione en mi casa y sirva también para otros, todo lo he publicado. También hice algunos guioncillos y módulos para gestionar la guía, grabaciones, vod, series, películas, configuración, etc... Esas cosas no las he publicado porque, por el poco tiempo, no las he depurado para que cualquier mortal pueda usarlo, aunque no me importa compartir el qué y el cómo.

Yo fuí uno de los fastidiados el año pasado, no recuerdo cuándo cambiaron a binario, por el cambio, cacheaba toda la información para buscar fácilmente y la mostraba por web, en casa, además de poder programar desde fuera de casa grabaciones, o programar automáticamente ciertas series que no se tienen en cuenta como series por parte del proveedor. Ya tenía ganas de volver a esa situación, pero no he tenido tiempo. Aún así pasará todavía bastante tiempo hasta que vuelva a estar como en septiembre del 2014. Todo lleva su tiempo.

Tiempo, tiempo, tiempo, lo más preciado.

Por cierto vmjuidiaz, hace un par de semanas empecé a usar tu módulo para Kodi. En 2014 lo intenté con VDR y el módulo de iptv pero me resultaba bastante tedioso el cambio/inicio de canal, seguramente por falta de buffer, caché o ..., pero como siempre necesitaba tiempo y no lo tenía. Ahora he probado con Kodi, y con tu módulo, y funciona muy bien, pero como no dispongo del código he probado también con el módulo iptvsimple, e igual de bien. Estaba pensando en crear un módulo partiendo de iptvsimple ajustándolo lo mínimo imprescindible para poder tener toda la funcionalidad que proporciona telefónica. Pero como siempre, necesitaré tiempo, sobre todo en aprender la estructura de Kodi y cómo interactuar con él.


Goommer
 
Lo que no entiendo es por que montar tu modulo partiendo de simpleiptv para kodi si ya tienes el addon y ya te proporcina las funcionalidades, normalmente si falta alguna y me la solicitan la incluyo pero vaya tu mismo.

Yo por mi parte estoy preparando la versión 2 que estara en un mes mas o menos.
Como ventaja no sera en inicio en funcionalidades sino en que ahora se distribuye el addon en 2 un servidor y un frontal cliente (kodi).
El servidor podrá ser un servicio independiente y la conexion de clientes mediante tcp con n clientes conectados.
Tipo tvheadend vaya.
 
Re:

vmjuidiaz dijo:
Lo que no entiendo es por que montar tu modulo partiendo de simpleiptv para kodi si ya tienes el addon y ya te proporcina las funcionalidades,...
Pues básicamente porque no tengo acceso al código fuente.
Puntualizo, tu módulo lo uso en casa ajena, nunca en la mía.

vmjuidiaz dijo:
normalmente si falta alguna y me la solicitan la incluyo ...
Yo no suelo ser pedigüeño, prefiero aprender, hacer y ofrecer.

vmjuidiaz dijo:
...El servidor podrá ser un servicio independiente y la conexion de clientes mediante tcp con n clientes conectados.
Tipo tvheadend vaya.
Te podría poner lo que dices un poco más arriba como réplica a esto, pero puedo entender el interés :p.
De todas formas, podrías aprovechar el tvheadend y ampliarlo, Una fuente más. Es lo que tiene GPL :-D
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Buenas de nuevo,

Tras la ultima modificacion por parte de movistar en relacion a lo del EPG no he podido volver a descargar la programacion con la app que publico en su dia wiredrat, servicedsc.exe. Yo usaba esa app parra llamarla desde una app mia que basicamente sacaba la informacion necesaria de las descargas para crear un archivo EPG.xml con toda la programacion para tres dias para usarla luego con el SimpleTv. Hoy me he acordado de ella y he realizado una prueba de descarga y aunque solo he podido descargar 12 archivos, me han servido para poder entender como se guarda ahora la informacion en los archivos. He visto que Goommer ha publicado algo de informacion(me ha llegado un poco tarde, porque he estado como 5 horas dandole vueltas asta que lo he entendido jejeje).
bueno a lo que iva, este es el codigo de cambio de cifrado por sustitución, me falta alguno, pero con los 12 archivos y mirandolo un poco bastante he podido sacar.
Código:
Decimal         Decimal
Cifrado            Correcto
32                    53
33                    52
34                    55
35                    54
36                    49
37                    48
38                    51
39                    50
44                    57
45                    56
46                    59
47                    58
48                    37
49                    36
50                    39
51                    38
52                    33
53                    32
54                    35
55                    34
56                    45
57                    44
58                    47
59                    46
64                    85
65                    84
66                    87
67                    86
68                    81
69                    80
70                    83
71                    82
72                    93
73                    92
74                    95
75                    94
76                    89
77                    88
78                    91
79                    90
80                    69
81                    68
82                    71
83                    70
84                    65
85                    64
86                    67
87                    66
88                    77
89                    76
90                    79
91                    78
92                    73
93                    72
94                    75
95                    74
96                    117
97                    116
98                    119
99                    118
100                   113
101                   112
102                   115
103                   114
104                   125
105                   124
106                   127
107                   126
108                   121
109                   120
110                   123
111                   122
112                   101
113                   100
114                   103
115                   102
116                   97
117                   96
118                   99
119                   98
120                   109
121                   108
122                   111
123                   110
124                   105
125                   104
126                   107
127                   106
166                   179
170                   191
173                   184
179                   166
184                   173
191                   170
194                   215
195                   214
214                   195
215                   194


Espero que os pueda servir a alguno, yo seguire mirando como puedo realizar la descarga de los archivos desde imagenio.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Ya he avanzado mas en estos días, ya tengo hecho una pequeña aplicación en VB.net que realiza la descarga de los archivos binarios luego los abro para sacar la información necesaria para crear una archivo XML con la información básica de los eventos, por ahora solo saco canal, hora inicio, hora final, y titulo(es lo que básicamente necesito porque lo demás ni lo miro). Aunque me falta saber a que id corresponden unos canales que son estos.
2564
2763
2764
3463
497 (Encontrado TV Canaria)
539
58
59
782
843(Encontrado TPA TV Principado de Asturias)


También tengo que pulir porque en la descarga se me mete dos canales duplicados, y tengo que mirar como detectar esos eventos y descartarlos.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Hola Astuntxirri

Astuntxirri dijo:
... el codigo de cambio de cifrado por sustitución...
Efectívamente es un cifrado por sustitución pero creo que vmjuidiaz lo deja claro, que la sustitución es una fórmula matemática:

vmjuidiaz dijo:
... Los textos no tienen tabla de conversión, con hacer un xor 0x15 es suficiente.....
Suerte.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Buenas de nuevo,

Seguramente que el cifrado sea una ecuación, pero tampoco me he puesto con ella, con tener la tabla por ahora me sirve para lo que necesito, pero si es cierto que si tendría la ecuación simpificaria el código.

Por si alguno mas le viene bien, os dejo la app que tengo hecha, se ejecuta y tras terminar deja un archivo llamado Imagenio_EPG.xml en la misma carpeta donde se encuentre el ejecutable, con la programación en Formato XMLTV. La aplicación necesita NetFramework V4.6.1 para funcionar.

Descarga App Programación Imagenio
Por defecto la app solo descarga la programación para ayer, hoy y mañana, si se quiere descargar mas días hay que pasarla el argumento de días.


Ayer, hoy + 1 Día
Cifrado_EPG_Imagenio.exe
Cifrado_EPG_Imagenio.exe 1

Ayer, hoy + 2 Día
Cifrado_EPG_Imagenio.exe 2

Ayer, hoy + 3 Día
Cifrado_EPG_Imagenio.exe 3

Ayer, hoy + 4 Día
Cifrado_EPG_Imagenio.exe 4
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Hola,

He encontrado este proyecto: https://github.com/ese/movistartv2xmltv

Hace una referencia a este post, ¿sabeis como va el proyecto? Me interesa para integrarlo con Tvheadend, pero no funciona:

Código:
# python tv_grab_es_movistar.py 
Traceback (most recent call last):
  File "tv_grab_es_movistar.py", line 28, in 
    from tva import TvaStream, TvaParser
  File "/etc/tvheadend/epg_test/movistartv2xmltv-master/tva.py", line 16, in 
    import pytz
ImportError: No module named pytz

Veo que el codigo no se actualiza desde 2015. Si alguien tiene mas informacion sobre el proyecto lo agradeceria mucho.

Gracias por todo.

Un saludo.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

jlazkano dijo:
Hola,

He encontrado este proyecto: https://github.com/ese/movistartv2xmltv
...........
.......
Un saludo.

Si el proyecto no se actualiza desde 2015 entonces no te va a funcionar simplemente porque imagenio modifico el sistema. Aun así ese error es porque no tienes instalado el Pytz, para instalarlo mira este enlace.Pero como te digo te dará error, o no te generara el xml correctamente. Así que o bien te creas tu un script que realice la descarga de los archivos, y luego realices el descifrado de la información que esta cifrada (toda la información lo tienes en los post anteriores) o simplemente ejecutas la App que he creado(justo en el post de anterior al tullo la encontraras). Esta app te genera un archivo XMLTV que es lo que necesitas para el EPG y para los canales te puedes crear un archivo.m3u  con los canales que encontraras en la lista actualizada que hay en este hilo.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Hola,

Tras 14 años en Telecable me he pasado a la fibra de Movistar...

Al ir a configurar TVHeadend me he encontrado con este percal. En Telecable la guía se recibe mediante tablas EIT directamente de la señal DVB. Una vez obtenidas utilizaba TheTVDB y TMDB para agregar la información que faltaba: imágenes o carátulas de cada serie o película, actores, director, año, etc.

El resultado era este...








...una guía en condiciones, con datos cacheados y demás.

Y la intención es tener exactamente lo mismo, un grabber para TVHeadend que inyecte una guía como la que veis arriba.

Esta tarde he dado con este hilo y me he puesto manos a la obra. Parece que a día de hoy todo se distribuye mediante tramas UDP multicast. Si lo he entendido bien, antes utilizabais un servicio web de Movistar para obtener los datos extendidos de cada programa, una vez teníais toda la información de las tramas UDP: proveedores de servicio de cada provincia, paquetes de canales, los propios canales, los segments para obtener la EPG y, una vez obtenida, los ID de cada programa.

El servicio para obtener los datos de cliente, plataforma y EPG extendida era:
http://www-60.svc.imagenio.telefonica.net:2001/appserver/mvtv.do

Pero soy incapaz de conectar... ¿este servicio sigue activo?

Como todos, supongo, he llegado a obtener los proveedores de servicio de cada provincia, los paquetes de canales, los propios canales, las direcciones IP de la EPG, los segments y accedo a la EPG binaria de cada una de las ocho IP.

Pero estoy estancado en el último punto: son tramas multicast y los datos no paran de llegar una y otra vez... ¿hay algún patrón en la estructura que permita marcar el inicio y el fin de la EPG de cada canal claramente? ¿Qué relación hay entre los segments y la información de la guía binaria?

¿Movistar envía la guía de 7 días?
¿Cómo se obtienen los datos de cliente para saber a qué canales está suscrito?

En fin, como veis acabo de empezar y tengo muchas más preguntas que respuestas.
Os agradecería a los que ya estáis curtidos en esto, si es posible, que echarais una mano...

A ver si por fin conseguimos un grabber en condiciones para TVHeadend.

Un saludo.
 
Re: Obtener la Lista de Canales y Programación de Movistar T

Visto el éxito de mi petición, no me ha quedado más remedio que buscarme la vida....

Ya he entendido cómo va todo.

Mil gracias a migeng, ese, radioactivetoy, spacezed, vuelo23, vsanz y a todos los  que habéis colaborado en el desarrollo de movistar2xmltv y demás scripts, está todo ahí. Me habéis ahorrado horas y horas de estudio.

Todavía no sé cómo acceder al servicio web de Movistar que proporciona los datos de cliente, logos y demás.
Si alguien lo sabe se agradecería que lo comentara.

Un saludo.
 
Arriba