Te dejo como lo tengo yo, haber si te puedo ayudar.
rtm.png
Regístrate para eliminar esta publicidad
@Trostky
Hola me "recito" a mi mismo.
Creo que el favor nos lo está haciendo el sqlite, aunque en la base de datos las horas están correctas, el siguiente select, que es una parte del que uso en el RTM, saca la columna "inicio" con una hora de más:
Es decir la instrucción: DATETIME(timestamp_start, 'unixepoch', 'localtime') inicioCódigo:SELECT Channel, strftime('%Y-%m-%d', timestamp_start, 'unixepoch', 'localtime') Fecha, start_hour Hora, start_minute Minuto, user_string Programa, length_hour DuraciónH, length_minute DuraciónM, DATETIME(timestamp_start, 'unixepoch', 'localtime') inicio, DATETIME(timestamp_start + timestamp_offset, 'unixepoch', 'localtime') final, enable, lock, ID, strftime('%w',timestamp_start, 'unixepoch', 'localtime') Dia, date, source s, quality q, target t, schedule_type, event_id FROM timer_record_table ORDER BY inicio
es la culpable; el campo timestamp_start tiene la fecha en formato unix y al pasarla a hora local con 'localtime' es cuando aparece con una hora mas.
El "infielno" es que si en vez de usar: DATETIME(timestamp_start, 'unixepoch', 'localtime') inicio, uso: DATETIME(timestamp_start, 'unixepoch') inicio, es decir sin 'localtime', me pone una hora DE MENOS.
Parece un problema de sqlite o de Windows, no lo se.
El caso es que ahora mismo no tengo instalado el sqlite en el 795. ¿Podría alguien probar este select en el 795, y decirme si la columna inicio tiene la hora correcta de inicio de la grabación?
Gracias
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
Te dejo como lo tengo yo, haber si te puedo ayudar.
rtm.png
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.
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,
En realidad, a mí el RTM me pone 1 día más, no 1 hora más (con programaciones que empezaban el domingo y acababan el lunes de madrugada... hice varias). Aunque es cierto que luego mirando desde el 795 la fecha aparecía bien
Pero lo de ayer ha sido un desastre ¡Y yo que pensaba que eras un alarmista! Y no lo digo por el RTM, lo digo porque se ha pasado por el arco del triunfo una programación que mantengo todos los domingos desde hace mucho (Redes) y lo cojonudo es que en el historial de grabaciones no hay rastro de ella... ni como FAIL... En el db la ha programado para el domingo que viene y a correr Así que todo parece indicar que las programaciones hechas con anterioridad al cambio de hora presentan problemas.
Por ello, he borrado otra antigua que tenía para hoy lunes y la he vuelto a crear desde el 795. Al ir a editarla para modificar las horas de inicio y fin el muy capullo me decía que no se podía modificar Vuelvo al RTM para hacerlo y cuando lo inserto modifica a su vez la programación anterior que aparecía con 1 día más...
En fin, que los que pensábamos que este cambio horario iba a ser inocuo estábamos equivocados.
Siento no tener instalado el sqlite para hacer la prueba que pides. Esperemos que alguien pueda hacerla...
Un saludo
Hola Trostky, me ha pasado exactamente lo mismo con la programación de Redes, se la ha saltado limpiamente y la ha puesto para el domingo que viene, y sin rastro de ella en el historial.
Pero yo he dejado las que había para hoy lunes, y las observaré con lupa a ver que pasa; quizá lo de considerar que todas las programaciones hechas con anterioridad al cambio de hora presentan problemas, sea un poco precipitado, como digo, yo las he dejado y ya iré comentando lo que pasa.
Y lo de 1 día mas, madre mía! a mi se me programa bien pero me aparece con una hora de más, y como he comentado parece un problema con el parámetro 'localtime' de sqlite, por eso quiero que alguien lo pruebe en el equipo. Yo lo he probado desde dos visores distintos de sqlite en Windows, y me falla en los dos (me pone la hora de mas).
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 a tod@s, aquí os dejo una nueva versión del programa RecTimerMgr, había un problema con los tiempos y el horario de verano.
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.
(0.2.0.2)
* Se ha solucionado un problema con el manejo de los tiempos y el horario de verano.
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/CGbQntiZ...rMgr-0202.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
Hola a tod@s.
Como podeis ver en el post #1538 acabo de poner una nueva versión del programa RTM, la 0.2.0.2 que corrige el problema de los tiempos de grabación.
Cuando empiezas a ver que puede fallar Windows, que puede fallar sqlite y, en resumen, que puede fallar el mundo entero menos tú, es hora de hacer un acto de humildad y pensar que, a lo mejor, el problema lo tiene tu programa.
Así que, me he puesto manos a la obra, y aunque he de reconocer que PARECÍA que fallaba el mundo entero , he seguido buscando y buscando en el código y he encontrado el fallo. Resulta que según tenía el código parecía totalmente un fallo en sqlite, porque las horas las transformaba mal a localtime, y eso era así, pero sucedía porque estaban grabadas con una hora de menos por culpa del fallo en el RTM.
Pasaba lo siguiente: Hora REAL de grabación 22:00, hora de escritura en la base de datos, la transformada a UTC, es decir 21:00, hasta aquí todo bien, pero al transformarla a localtime, que ahora tenemos una diferencia de +2 horas, el resultado era 21:00 + 2:00 = 23:00 (o sea, una hora de más).
Lo que RTM hacía mal era grabar el UTC como 21:00, en este caso lo tiene que grabar como 20:00, para que al extraer la información con localtime haga lo siguiente:
20:00 + 2:00 = 22:00 (que es la hora correcta).
Total que ya está corregido en la versión 0.2.0.2.
IMPORTANTE
Hay que entrar con el nuevo RTM y modificar TODAS las grabaciones que no coincidan las columnas Hora-Minuto con la columna inicio, un caso de ejemplo:
Como veis no coincide la hora-minuto con la hora de la columna inicio, en este caso, hay que editar esa programación y bajar la hora de inicio de 23 a 22 y dar Update.Código:Hora Minuto ..... inicio 22 00 2011-03-28 23:00
Esto hay que hacerlo con todas las grabaciones que no coincidan y al final, dar el botón Save (Enviar base de datos), por supuesto.
Perdonad por los inconvenientes causados y me alegro mucho de que no "falle el mundo" y de haber encontrado el bug en el RTM.
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, teneis solucionado el problema de grabar?, no entiendo lo que pasa con la hora, aunque la pongas bien el tiene siempre una hora de mas con lo cual las grabaciones estan todas mal, uso el ultimo firm.
Gracias y suerte
PD, les he enviado un mensaje al SAT, ya me imagino la respuesta.
Última edición por marcelg; 28/03/2011 a las 17:24
Marcel Garcia
LG 49UJ620V, Yamaha RX-V667, Nvidia Shield pro 2019, Pure Acoustics Romba RB6
Jamo sub200.
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, me refiero al equipo, no hay manera de que grabre a la hora, le pongo la hora bien, pero graba mal, buscare tu mensaje sobre lo de al hora de verano, aunque diria que lo hice bien.
Suerte
PD, ya lo he hecho, hay que hacer algo cuando vuelva la hora de invierno?, ahora lo tengo en gmt +2
Última edición por marcelg; 28/03/2011 a las 20:10
Marcel Garcia
LG 49UJ620V, Yamaha RX-V667, Nvidia Shield pro 2019, Pure Acoustics Romba RB6
Jamo sub200.
Pero ¿ahora ya te graba bien?.
Los settings son: Zona horaria GMT+2 y la hora correcta.
En invierno hay que poner GMT+1
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
Marcel Garcia
LG 49UJ620V, Yamaha RX-V667, Nvidia Shield pro 2019, Pure Acoustics Romba RB6
Jamo sub200.