domingo, 20 de septiembre de 2009

Inserción de usuarios en Joomla

Hace poco he tenido que construir una web con joomla y me he visto en la necesidad de dar de alta a más de cien usuarios. Realizar esa tarea con la herramienta administrativa era bastante tedioso, así que realicé un script sql para hacer el trabajo duro:

insert into jos_users (name,username,email,password,usertype,params) values ('nombreusuario','nombreusuario','nombreusuario@correo.com',
'6d572634408cf65877729c930066e:J4eWKqad4gwNvjPwxr2Ib5faw8nMQjED',
'Registered','admin_language= language= editor= helpsite= timezone=1 ');

insert into jos_core_acl_aro (section_value,value,order_value,name,hidden) values ('users',LAST_INSERT_ID(),0,'nombreusuario',0);

insert into jos_core_acl_groups_aro_map (group_id,aro_id) values (18,LAST_INSERT_ID());


Cuidado, la contraseña está encriptada, así que para darla de alta correctamente hay que copiar el valor de un usuario ya existente.

miércoles, 8 de julio de 2009

El nslu2 como reproductor de audio (III)

En esta entrada vamos a ver cómo podemos manejar todo el hardware que ya tenemos preparado.
La idea básica es utilizar un software sintetizador de voz como interfaz de salida del nslu2, ya que este no dispone de ninguna pantalla para permitirnos interactuar con él. Sería un sistema similar a las IVR que utilizan las compañías telefónicas. Constaría de un conjunto de menús, a través de los cuales nos podríamos mover. Lo ideal sería disponer de una base de datos con la información de todos los ficheros mp3 (autor, album, título,etc) que pudieramos recorrer fácilmente para seleccionar el archivo que queremos reproducir.
Como dispositivo de entrada utilizaremos un ratón usb de tres botones provisto de rueda. Las ventajas de utilizar este dispositivo son múltiples. Es barato, fácil de programar y la rueda nos permitirá deslizarnos a través del listado de canciones cómodamente. Evidentemente no vamos a tener en cuenta el desplazamiento del ratón, ya que no tenemos pantalla sobre la cual desplazarnos. Es mas, sería conveniente fijar el ratón en la caja donde colocaremos todos los trastos que vamos a utilizar.
Como software de síntesis de voz vamos a utilizar espeak. este software tiene muchas ventajas. Es ligero, open source, y multiidioma, incluyendo el castellano.
Para reproducir los ficheros mp3 utilizaremos el mad. Este programa funciona perfectamente en el nslu2 y además de ser muy ligero, su principal característica es que no utiliza operaciones de coma flotante (el nslu2 no tiene procesador numérico, por lo que estas operaciones cargan el procesador principal)
Y por último, el lenguaje de programación que vamos a utilizar. Este será Java. ¿por qué utilizar Java y no C o C++? Bueno, la principal razón es que aunque conozco el C, no tengo con el la misma soltura que tengo programando en Java, lenguaje que utilizo diariamente. Java permite utilizar librerías C utilizando JNI y puede ser igual de eficiente que C.

Hasta la próxima entrega.

jueves, 2 de julio de 2009

El nslu2 como reproductor de audio (I)

Hace bastante tiempo que tengo un nslu2 con la distribución debian. Hasta ahora el principal uso que le he dado ha sido sobre todo para p2p. Sin embargo, desde hace unos meses utilizo un sobremesa con ubuntu para realizar ese trabajo. Así que estoy pensando en convertir este pequeño cacharro en un reproductor de mp3 (o ficheros de audio en general). Llevo unos días dando vueltas a esta idea y estudiando cómo poder realizarla y creo que ya he dado con la solución.

El objetivo final es poder utilizar el nslu2 como reproductor de mp3 portátil, tanto en el coche, como en casa. Para ello tendremos que realizar un pequeña inversión en hardware (o reciclar componentes que ya tengamos) y construir un poco de software para manejarlo.

Hardware que necesitaremos:
  1. NSLU2 78 Euros
  2. HUB USB 10-15 Euros
  3. Memoria USB 1Gb 6 Euros
  4. Memorias USB 16gb 23 Euros
  5. Tarjeta sonido USB 13 Euros
  6. Ratón USB 6 Euros
  7. Emisor FM coche 20 Euros
Así que nos gastaremos unos 156 euros más o menos en el trasto que vamos a fabricar. La primera pregunta que nos surge es: ¿para qué gastarnos 156 euros en un trasto que nos tenemos que construir nosotros mismos si por ese dinero nos podemos comprar un reproductor comercial? Bueno, en mi caso, es porque ya tengo bastantes de esos componentes, sólo me he tenido que comprar la tarjeta de sonido usb y me falta un ratón usb que es muy asequible. Otra posible razón puede ser el aprendizaje que supone realizar este proyecto. Sin embargo hay algunas características, desde mi punto de vista, que son muy importantes y que tiene un reproductor casero que no tienen uno comercial: La modularidad de los componentes y la posibilidad de modificar el software utilizado.

El almacenamiento que vamos a utilizar son memorias USB, memorias que cada vez son de mayor capacidad y mas baratas. Así que si ahora ponemos una memoria de 16Gb para almacenar nuestras canciones, en el futuro la podremos cambiar por una mas grande. Por supuesto también podremos utilizar más memorias, no sólo una, utilizando dos hubs USB o un hub con mas bocas. Es cierto que hay reproductores comerciales que permiten utilizar tarjetas de memoria, pero no tienen la flexibilidad que tiene uno construido de esta manera.

Pero sobre todo, la mayor ventaja es poder escribir nuestro propio software y hacer que el trasto se adapte a nuestras necesidades.

Bueno, de momento, y para ser el primer post, ya está bien. En la próxima entrada veremos que software necesitamos para manejar todo esto.

Por supuesto si alguno quereis colaborar, sugerir o comentar algo, os animo a que lo hagáis.