Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Gigaset HD795T versión: r5324
Agregar un archivo a BitTorrent
Programa para dividir los archivos .ts
Poner en hora.
Poner en red.
Activar el FTP.
Actualizar el firmware.
Borrar archivos desde el mando.
Hola a tod@s, aquí os dejo una nueva versión del programa RecTimerMgr, le he mejorado algunas cosillas.
Historial de versiones:
(0.2.0.0)
* La modificación mas IMPORTANTE es que ya NO se necesita la tabla Frequency en la base de datos, la descripción del campo de frecuencia que se llama date (los campos tienen unos nombres malísimos), junto con la descripción de otros muchos campos, se hace ahora en el momento de visualizar los datos de los eventos. De esta manera se descodifican los campos: date (frecuencia), channel (Nombre de la cadena), dia (día de la semana), source (origen de la grabación), quality (calidad de la grabación) y target (destino de la grabación)
* Se han simplificado el número de columnas que no cambian o no nos indican nada, se recuperan pero las columnas no son visibles.
* Se ha añadido la lectura del fichero de canales para poder disponer de los NOMBRES de las cadenas junto con su número de canal, de tal forma que se puede usar el número de canal y nos pondrá su nombre o el nombre de la cadena y nos pondrá su número de canal.
* El nombre de la cadena en la lista de grabaciones, aparece de color rojo si es un nombre de 10 caracteres o más, para que sepamos que podemos correr el peligro del nombre largo, y lo tengamos en cuenta
* En el fichero de configuración se ha eliminado la variable DatabaseDD que no se usaba y se ha añadido la variable ChannelFile que es la ubicación del fichero de canales.
(0.2.0.1)
* Se han anclado algunos controles para que no se pierdan los botones en resoluciones de pantalla menores, ahora saldrán barras de scroll para acceder a los botones de la derecha (Delete), y el botón Insert estará siempre visible en la parte inferior de la ventana.
* Se ha añadido el cálculo del checksum para el fichero de canales ubicado en el directorio BT. De esta manera, se puede cambiar el fichero y añadir el checksum resultante en las últimas 4 posiciones del fichero, para crear un fichero válido. Hay que tener en cuenta que el orden es inverso, es decir si el checksum nos da: AA BB CC DD en el fichero se pondrían los últimos cuatro bytes como: DD CC BB AA, luego habría que mandar el fichero a su sitio (el programa no hace esto).
* Si entramos en Insert, Update o Delete y no hemos enviado la base de datos al equipo (botón Save), al cerrar el programa saltará un aviso para que sepamos que no hemos "grabado".
* Se han mejorado algunas cosillas que no se ven.
Este programa sirve para editar, insertar y borrar registros de la base de datos de la programación de grabaciones del HD795T, aunque puede servir para cualquier equipo que use el mismo sistema de base de datos SIN guia avanzada. En la práctica son casi todos los equipos con el chip Realtek.
INSTALACIÓN:
Bájate este fichero:
http://www.2shared.com/file/XJYSjsjI...rMgr-0201.html
Y descomprímelo en un directorio de tu elección.
Edita el fichero RecTimerMgr.exe.config y pon los parámetros adecuados, el fichero es XML, así que edítalo con sumo cuidado para no cambiar nada mas que el valor (<value>xxx</value> )de cada una de sus claves (<setting name="DatabaseFile" serializeAs="String">). En este ejemplo el valor que hay que cambiar es xxx y corresponde a la clave DatabaseFile.
Las claves de este fichero son:
* DatabaseFile: Es el nombre del fichero de base de datos al que vamos a acceder, el programa lo copia en el directorio BT del equipo visto desde Windows. Ejemplo: \\Gigaset_hd795t\hdd1\BT\schedule_record.db
* HD795IP: Es la IP del equipo. Ejemplo: 192.168.0.30
* TelnetPort: Es el valor de conexión del puerto telnet, este puerto tiene que estar abierto en tu PC, normalmente es el 23. Ejemplo: 23
* HD795User: Usuario telnet para entrar en el equipo, normalmente root. Ejemplo: root
* HD795Password: Password del usuario anterior, normalmente está en blanco. No tocar. Ejemplo: <value />
* GetDB: Comando linux para copiar las bases de datos desde su directorio original al directorio BT. Ejemplo: cp /usr/local/etc/dvdplayer/schedule_*.db /tmp/hdd/volumes/HDD1/BT
* SetDB: Comando linux para copiar las bases de datos desde el directorio BT a su directorio original. Ejemplo: cp /tmp/hdd/volumes/HDD1/BT/schedule_*.db /usr/local/etc/dvdplayer
* Timeout: Timeout en milisegundos para esperar al comando telnet. Ejemplo: 200
* DatabaseHistFile: Es el nombre del fichero de base de datos histórico al que vamos a acceder, el programa lo copia en el directorio BT del equipo visto desde Windows. Ejemplo: \\Mhdworld\ntfs\BT\schedule_history.db
* PasswordPresent: Valor que indica si el login de telnet va a tener password (aunque sea nula) o no, para los firmwares de Gigaset su valor es False (Respetar mayúsculas y minúsculas) y para el firmware de MHDWorld su valor es True. Ejemplo: True
* ChannelFile: Es el nombre del fichero de canales que vamos a usar, el programa lo copia en el directorio BT del equipo visto desde Windows. Ejemplo: \\Gigaset_hd795t\hdd1\BT\dtv_channel.txt
FUNCIONAMIENTO
Usar el programa es muy sencillo, después de arrancar podemos hacer tres cosas básicamente:
Obtener las bases de datos: Dando a este botón (botón abrir), el programa se conecta vía telnet al equipo, copia los ficheros correspondientes a un sitio de red "visible" (directorio BT) y abre la base de datos de las programaciones.
Con esta interface podemos insertar nuevas grabaciones, modificar alguna existente o borrar algunas.
Para ello usaremos los botones correspondientes de edición (uno por evento), borrado (uno por evento) o insert (uno al final de la tabla).
Una vez que estemos conformes con las modificaciones, tenemos que guardarlas o enviarlas de nuevo a su sitio, para ello usaremos el botón de grabación que lo que hace es conectarse al equipo vía telnet y copiar las bases de datos en sentido inverso, es decir desde el directorio BT a su ubicación definitiva.
Por último tenemos el botón Ver histórico, que sirve para ver el estado de las últimas grabaciones. Este botón recupera las bases de datos de la misma forma que lo hace el botón de obtención. Los estados de las grabaciones realizadas pueden ser:
* OK: Todo ha ido correctamente
* STOP!: La grabación la hemos detenido nosotros manualmente, en teoría todo estará bien.
* FAIL!: La grabación ha fallado.
* LONG!: La grabación ha fallado debido a que hemos usado un nombre de cadena largo.
Cada vez que se realice una conexión con el equipo, la ventana de los comandos telnet permanecerá visible, para ocultarla/mostrarla tenemos el botón "Ver telnet"
Una vez que hayamos modificado/insertado los eventos, no basta con enviar las bases de datos al equipo, puesto que el equipo maneja una tabla en memoria que no se actualiza desde la base de datos nada mas que cuando se enciende el equipo o cuando se modifica un evento desde el menú. Por esto, si no hacemos nada los parámetros modificados y/o insertados no se tendrán en cuenta.
Después de muchas pruebas he visto que la mejor manera es realizar un reboot del equipo, ya que probé (entre otras cosas) a realizar un edit por comandos desde el menú de grabaciones, pero aparte de muy complejo, hay que editar TODO lo nuevo (no basta con editar el primer evento), con lo cual la tarea es practicamente imposible (porque no sabemos que/cuantos eventos hay que editar) y he optado por el reboot.
Por todo lo anterior, esta versión cuenta con un botón que realiza el reboot del equipo y cierra el programa, avisando convenientemente. El uso de este botón, NO es obligatorio, pero ya sabes que aunque veas tus modificaciones en el menú de grabaciones, estas no se efectuarán si no apagas y enciendes el equipo.
Así mismo, he añadido un botón para cerrar el programa en cualquier momento.
CARACTERÍSTICAS
* El programa se conecta vía telnet con el equipo para obtener las bases de datos y el fichero de canales y para enviar las bases de datos cuando sea necesario, para ello se usan varios de los parámetros de configuración.
* La tabla de eventos se desarrolla de forma semanal, es decir, si hay un evento que se graba a diario, ese evento aparecera 7 veces en la tabla, con la fecha correspondiente a cada dia y su hora de comienzo, aunque si se edita, se pone la fecha de comienzo tal y como se haría con la interface del equipo; de la misma manera se desarrollan todos lo eventos (Cada dia, Lunes a Viernes, Lunes a Sábado, Todos los Martes, etc.), este desarrollo es fundamental para que se pueda determinar cuando puede haber un conflicto con las grabaciones usando los dos sintonizadores. Así pues, cada evento tiene una celda con el uso de los sintonizadores y un código de colores, verde si sólo se va a usar un sintonizador, amarillo si se van a usar los dos y rojo si se van a usar mas de dos, de esta manera, podremos ver si va a haber algún conflicto con nuestras grabaciones de forma totalmente visual, y podremos corregir lo que se necesite.
* El campo DiaSem indica el día de la semana que se va a producir el evento: Lunes, Martes, ..., etc.
* El campo Target indica donde se va a efectuar la grabación: HDD, USB y CARD
* Si en el momento de la edición hay algún programa grabando el campo lock estará a 1 y se coloreará de naranja. Hay que tener cuidado para que no cambie el estado de lock durante la edición (entre que recuperamos las bases de datos y las volvemos a guardar), por ejemplo si empezamos con el equipo grabando (lock=1) y cuando terminamos y enviamos las bd, el equipo ha terminado de grabar, nosotros le vamos a mandar lock=1 y podemos generar una inconsistencia.
* En la edición/inserción de eventos, se ha añadido, además de la hora de inicio y la duración un campo no editable para ver la hora de finalización sin necesidad de andar haciendo cálculos mentales. Así mismo, podemos nombrar el evento como queramos y ese será el nombre de nuestra grabación.
* Si no damos al botón de grabación, no se enviará nada al equipo y la edición que hagamos se perderá
* Para que nuestros cambios tengan efecto habrá que reinicar el equipo bien manualmente o por medio del nuevo botón "Reboot"
* Como "efecto secundario" en el directorio del programa se creará un fichero de texto llamado CanalesUTF8.txt, con la lista de nuestros canales.
Espero vuestros comentarios.
Saludos
Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Gigaset HD795T versión: r5324
Agregar un archivo a BitTorrent
Programa para dividir los archivos .ts
Poner en hora.
Poner en red.
Activar el FTP.
Actualizar el firmware.
Borrar archivos desde el mando.
Pues no se puede borrar desde el programa, de hecho me parece una "cutrez" total el que sólo permita 8 registros.
De todas formas, desde cualquier entorno sqlite (por ejemplo un plugin que hay para Firefox), podrías borrar los registros de la tabla timer_record_table de la base de datos del histórico schedule_history.db que sólo tendrá 8 registros porque el proceso correspondiente debe llevar un contador que sólo permite esos 8 registros, pero vamos por sqlite se podrían tener 8000 registros u 8 millones, esa limitación no está en sqlite.
Pero si me permites ¿para qué quieres borrarla?
Saludos
Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Gigaset HD795T versión: r5324
Agregar un archivo a BitTorrent
Programa para dividir los archivos .ts
Poner en hora.
Poner en red.
Activar el FTP.
Actualizar el firmware.
Borrar archivos desde el mando.
Hola Carva,
quería comentarte un par de tonterías respecto del RecTimerMgr. Y digo tonterías porque no afectan para nada a su funcionamiento, del cual estoy encantado.
La primera es que veo que la recopilación que haces de los canales (CanalesUTF8.txt) es acumulativa, de modo que al cabo de unos usos este TXT tiene repetida la información un motón de veces. Yo lo borro de vez en cuando dado que se crea cada vez. ¿Hay algún motivo para "añadir" en vez de "sustituir"?
La segunda es que en el visionado del histórico en ocasiones observo discrepancias con lo que se ve desde el 795. En concreto, algunas grabaciones aparecen con "STOP" como si las hubiese parado manualmente cuando no es así. Éstas, en el 795, aparecen con OK.
Y como siempre, muchas gracias por tu estupendo trabajo.
Un saludo.
Hola Trostky, me gusta que me deis vuestras opiniones sobre el programa y acepto y encajo perfectamente las críticas constructivas (por cierto te he borrado de mi lista de amigos, que no!!, que es broma).
Sobre lo de que el fichero CanalesUTF8.txt sea acumulativo, pues... a mi no me pasa (empate a uno), si os pasa a alguien mas decídmelo por favor. Estoy usando este código .NET:
y en la ayuda sobre esa versión del constructor (con la cadena del nombre) dice lo siguiente:Código:TextWriter tw = new StreamWriter("CanalesUTF8.txt");
El parámetro path puede ser un nombre de archivo, incluido un archivo en un recurso compartido UNC (Convención de nomenclatura universal). Si el archivo existe, se sobrescribe; en caso contrario, se crea un nuevo archivo.
Así que no debería acumularse. No lo entiendo
Sobre los códigos del histórico, me he basado en la "documentación" que tenemos sobre el equipo (o sea ninguna) y a base de ensayo y error uso la siguiente tabla:
Pero los valores 0, 1, 4 y 8 son experimentales y lo único que te puedo decir es que en el 795 esto está muy simplificado, mostrando sólo los valores OK y FAIL, pero, como es obvio, yo no sé cuando ponen un mensaje y cuando ponen otro, pero si que sólo ponen esos dos.Código:case 0: Value = "OK"; case 1:.Value = "STOP"; case 4: Value = "FAIL!"; case 8: Value = "LONG!"; default: Value = "Other";
Por cierto, hay que usar la última versión, no la que contiene la tabla Frequency.
Saludos
Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Pues yo tampoco lo entiendoPero que sepas, que a mí me pasaba con las tres versiones que has publicado. Y por supuesto que uso la última... No sabes lo que te agradezco que el botón Insert no desaparezca al estrechar la ventana... suelo tener abierta una página Web con las programaciones y esto me permite no perder de vista los datos del programa que inserto...
Pues si quieres ver como también utiliza el STOP sólo tienes que poner a grabar unos segundos cualquier cadena directamente con el botón REC del mando y luego pararla con el STOP del mando. Vete al histórico en el 795 y verás como la grabación está señalada con ese código (STOP).
Gracias por tus aclaraciones. A ver si alguien más puede comprobar si el archivo CanalesUTF8.txt anexa los canales cada vez que se abre el programa,- como es mi caso -, o los sustituye.
Saludos.
Trostky me alegra que me hagas esa pregunta....
Lo del STOP es exactamente eso, que lo has parado dando al STOP, pero ignoraba que en el 795 saliese ese código, y ¿dices que te sale STOP y no lo has parado?, pues eso es que tiene el código 1, en el RecTimerMgr (lo llamaremos RTM ¿OK?), pues en el RTM aparece el código en la columna result y ese código es el que hay en la base de datos schedule_history.db si no cuadran los códigos con los mensajes hay algún problema en el RTM, pero si cuadran... ¡yo no he sido!
Pues eso, ¿alguien puede confirmar si el fichero CanalesUTF8.txt crece indefinidamente?
Saludos
Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Hola Carva,
tengo un problema con los canales en el RTM. En tu programa salen en el desplegable las cadenas tal y como las tengo ordenadas. Pero cuando inserto una nueva grabación y elijo por ejemplo la 5 TELECINCO HD, me graba la 69 que es la COPE...
Tengo en el HD (Setup) el número lógico de canal activado. Pienso que si lo desactivo quizás funcione la correspondencia de canales pero no quiero perder el orden lógico (osea, apretar en el mando el número 5 y que me salga el canal que yo he ordenado en el 5º puesto)
¿Hay alguna solución?
Gracias y saludos.
Posts claves:
Instalación de sqlite3 y cron: Pág 35 #515
Grabaciones siempre disponibles: Pág 48 #708
Guardas en las programaciones: Pág 62 #929
Curso básico de vi: Pág 65 #974
Apagado programado: Pág 66 #984
Programa RecTimerMgr 0.2.0.2: Pág 103 #1538
Mírate este post.![]()
Gigaset HD795T versión: r5324
Agregar un archivo a BitTorrent
Programa para dividir los archivos .ts
Poner en hora.
Poner en red.
Activar el FTP.
Actualizar el firmware.
Borrar archivos desde el mando.
En este foro se aprende mucho però hay un nivelazo que hace que gente como yo de a pie, le cueste seguir y entender todo, pero lo intentamos.
Mi pregunta no es nada de programacion y es algo más mundano y es que mi duda es si es posible con una grabacion poder acceder a un punto de ella directamente sin tener que pasar con la flecha ede rebobinado x32 hasta el punto requerido
gracias y salu2
Otra dudilla.. el gigaset tb lo uso para grabar de SAT, es decir con la opcion de entrada de video1 y con hdmi, però aunque sea un canal hd. El Gigaset graba bajando considerablemente la calidad no? y el ritmo de la grbacion es un poco mas lento no? solo me pasa a mi?a que es debido? se puede mejorar?