miércoles, 10 de diciembre de 2008

Hay un comando en GNU/Linux ideal para manejar Motion desde un terminal ó consola y cualquier otra aplicación que se gestione via web. lwp-request realiza requerimientos a servidores web y ficheros locales via POST e imprime la respuesta en consola. Creando un alias el manejo de Motion se reduce a «orden + opcion» sin tener que abrir un navegador para nada.

Por ejemplo, si ejecutais Motion y el puerto de administración es 8888, podeis añadir en vuestro archivo ~/.alias la siguiente líneaalias motionconf='lwp-request -C administrador:contraseña -b http://localhost:8888/'a continuación reiniciais el terminal ó consola y basta escribir#desactivar la detección de movimientos en camara 2
motionconf 2/detection/pause
#reiniciar camara 6
motionconf 6/action/restart
#poner todas las cámaras en blanco y negro
motionconf 0/config/set?saturation=0
#escribir en el archivo de configuración
#los cambios efectuados en las cámaras
#nota: aunque se indique "escribir configuración de camara 4"
#realmente se sobrescriben TODOS
#los archivos de configuración que hayan sido modificados
motionconf 4/config/write

jueves, 27 de noviembre de 2008

Va para un mes ó más que desactivé los trackback de Cuaderno de Campo cansado de tener que borrar cada dia 30 ó 40 trackback de spam atrapados por Akismet. A continuación activé Disallow: /trackback/ en robots.txt. Pasado un tiempo prudencial empezar a banear cualquier IP que trate de enviar algo via trackback.

En los primeros tres dias se capturaron y banearon alrededor de 150 IPs, en los siguientes el número ha descendido considerablemente capturandose unas 5-10 diarias hasta las 216 que actualmente tienen el acceso prohibido al servidor. El método utilizado es el siguiente:
Sigue leyendo…

martes, 18 de noviembre de 2008

Desde que moví todo el contenido de Cuaderno de Campo para colgarlo en mi propio servidor de casa ando optimizando el rendimiento del propio blog y de las páginas que le acompañan, de manera que se acelere el tráfico, el tiempo de respuesta, se reduzca la carga del servidor, etc…
Al mismo tiempo he ido incorporando funcionalidades nuevas, como el nuevo formulario que incluye búsquedas en los apuntes, fotografías y vídeos ó esta que paso a comentar que incorpora al plugins de Falbum 0.7 la geolocalización de las fotografías.
Esta información geográfica es suministrada desde la API de Flickr, por lo que el plugins Falbum ya la recogía cada vez que solicita información sobre una foto en cuestión, pero por motivos que desconozco no se incorporaba al array de datos con los que se construye la página. Para hacer esto y poder tener acceso a estos datos he añadido en el script Falbum.class.php las siguientes líneas:(incorpora estas lineas de código dentro de la función show_photo, por ejemplo a la altura de la linea 835) // geoLocalización
// extras incorporados por Trebol-a
$salida = $this->_call_flickr_php('flickr.photos.geo.getLocation', array ('photo_id' => $photo));
if (isset ($salida)) {
$geodata['latitud']=$salida['photo']['location']['latitude'];
$geodata['longitud']=$salida['photo']['location']['longitude'];
$geodata['localizacion']="Nombre de localización desconocido";
if ( isset($salida['photo']['location']['county']) )
$geodata['localizacion']="".$salida['photo']['location']['county']['_content']." (".$salida['photo']['location']['region']['_content'].")";
if ( isset($salida['photo']['location']['locality']) )
$geodata['localizacion']="".$salida['photo']['location']['locality']['_content']." (".$salida['photo']['location']['county']['_content'].")";
$this->template->set('geotag', $geodata);
Sigue leyendo…

lunes, 3 de noviembre de 2008

El otro día comentaba como he conectado y configurado mi nuevo SAI/UPS Ellipse 600. El problema es que si dejabamos la configuración tal y como comentaba se produce un error en uno de los scripts en el momento en que vuelve la luz despues de haberse ido. En principio no es un error grave, pero hasta que lo atajamos comienza a emitir errores en el log del sistema con la frasesClient on 127.0.0.1 logged out
Connection from 127.0.0.1
Client on 127.0.0.1 logged out
Connection from 127.0.0.1

En estos dias pasados despues de varios cortes electricos y cansando de andar reiniciando el servicio para eliminar el mensaje de error me puse a googlear sin exito tratando de encontrar el fallo. Finalmente lo encontré revisando los script que NUT ejecuta.
El problema radica en el script de NUT /usr/sbin/upssched-cmd no está preparado para que se le cambie el nombre al dispositivo SAI en los archivos de configuración, de tal manera que al volver la corriente eléctrica, este script trataba de matar una instancia en un dispositivo que no encontraba. En el apunte anterior deciamos que #asigna un nombre a la unidad
[sai]
#el driver que vas a utilizar, en este caso el genérico para unidades USB
driver = usbhid-ups
#puerto de conexión
port = auto
#descripción a tu gusto.
desc = "Elipse 600"

Sinembargo este script espera que el dispositivo se llame siempre [mge-ups], con lo cual para evitar este error hay que asegurarse que el mismo nombre que usamos en /etc/ups/ups.conf sea el que aparecezca en /usr/sbin/upssched-cmd, donde en su línea 58 debe leerse Ups="sai@localhost" siendo sai el nombre del dispositivo

sábado, 1 de noviembre de 2008

Como lo comentaba a Fabián en un apunte anterior he dispuesto una carpeta donde el que lo desee puede consultar los archivos de configuración que estoy usando en Motion y el script encargado de generar los FLV y XML de la web. Los podeis consultar en http://camara.trebol-a.com/documentos.
Actualmente tengo funcionando 7 cámaras. Dejo solo uno de los archivos de configuración (de cámara 1 – comedero) ya que el resto son prácticamente idénticos y el archivo de configuración general de motion y encargado de cargar los 7 específicos.
Igualmente cuelgo el script bash que se ejecuta despues de cada grabación, (postgrabacion). Supongo que a nadie le va a servir de nada ya que además de algo farragoso el código (fruto de ampliaciones, añadidos, correcciones y ajustes continuos durante meses) es bastante específico, pero vaya, si alguno le sirve de algo ahí lo tiene. Para entenderlo mejor conviene saber que:

  • El script espera recibir como primer parámetro la ruta absoluta a un archivo de extensión AVI, JPEG ó FLV (en minúsculas).
  • Dicho archivo debe llamarse según el patrón: camara1_20081031193020.flv ( camara + número camara + _ + año + mes + dia + hora + segundo + . + extensión ).
  • Si el archivo recibido es un AVI
    • Crea un FLV y un thumbnail
    • Crea ó corrige archivo XML general y el XML específco de su camara con el FLV recien creado
    • Crea o corrige el enlace simbolico que apunta al último vídeo creado
    • Dependiendo de la cámara de que se trate ejecuta un script externo para las estadísticas
    • Realiza diversos avisos
  • Si se trata de un JPG (snapshot)
    • Simplemente lo mueve a la carpeta del dia en curso
    • Crea o corrige el enlace simbólico que apunta al último snapshot creado
  • Si se trata de un FLV y el segundo parámetro es la cadena «resumen» (se trata de un video timelapse horario generado en paralelo)
    • Incorpora el FLV al XML general y al XML de su cámara

Eso, más algunas comprobaciones, correciones y demás.
Nota: Por motivos evidentes las rutas de trabajo no son las originales…. ni las contraseñas tampoco.

martes, 21 de octubre de 2008

Pues con lo que este año me ahorro en alojamiento de la web me he comprado un UPS ó SAI (Sistema de Alimentación Ininterrumpida) Ellipse 600, vamos una batería que suministra electricidad al ordenador si falla la corriente, algo que en los 15 dias que lo llevo usando ya ha ocurrido dos veces y en ambos casos todo ha funcionado a la perfección.

SAI 600

El SAI en cuestión es un aparatito gris bastante pesado con un interruptor, 4 enchufes de salida y uno de entrada. Los 4 enchufes de salida tienen protección frente a sobrecargas en la red y 3 de ellos suministran en el momento en que el SAI comienza a funcionar en batería, sin corriente electrica. Como lo que me interesa proteger es la torre del ordenador ( y en concreto sus discos duros ) he conectado esta en solitario a una de las tomas de la bateria, el router a otra y todo el resto de periféricos (monitores, cámaras, altavoces, etc…) a la única salida no alimentaba por batería. De esta forma me aseguro que toda la capacidad de la batería en caso de corte de corriente es consumida exclusivamente por el ordenador propiamente dicho y el router,  y no un altavoz, monitor ó impresora consiguiendo exprimir al maximo el tiempo de aguante hasta que retorne la corriente electrica. En estas condiciones, un ordenador con una fuente de alimentación de 600W y con la batería a plena carga es capaz de mantener el ordenador funcionando durante 15 minutos, a partir de los cuales la carga llega al 30 % y el ordenador es apagado. Sigue leyendo…

Cuaderno de campo es un blog desarrollado y mantenido por Trebol-a y en el que escriben Trebol-a, Miguel, Merche y Mónica
Si quieres saber algo más sobre los autores acude a la página acerca-de, si quieres contactar con alguno de nosotros hazlo a través de contactar ó de Google+

Creative Commons: Todo el contenido de la web (imágenes, textos, vídeos, a excepción de aquellas obras de otros autores enlazados por Cuaderno de Campo) se acoge a los términos expresados en la licencia Creative Commons