Por defecto asterisk-cdr-viewer usa el UNIQUEID de cada llamada como el nombre del archivo a buscar, esto para ofrecer la descarga de las grabaciones.

Para habilitar esta funcionalidad seguimos los siguientes pasos:

  1. Como indica el ReadMe editamos el archivo config.inc.php para darle un valor acorde con nuestra configuracion a las variables $system_monitor_dir y $system_audio_format.
  2. Grabar usando el UNIQUEID como nombre de archivo o usar el nombre personalizado en la funcion formatFiles.

El UNIQUEID resulta poco legible para identificar fechas de llamadas si deseamos manipularlas en grandes cantidades o con expresiones regulares, por ejemplo, cuando deseamos respaldar o borrar grabaciones de llamadas pasadas que nos ocupen mucho espacio en disco.

Por ello es preferible usar el formato propio y cambiar el valor de la cadena, en mi caso el valor fue:

$recorded_file = ‘Entrante_’.str_replace(‘ ‘,’_’,str_replace(array(‘-’,’:’),”,$row['calldate'])).’-’.$row['src'].’-Ext_’.substr($row['dst'],-4);

Últimamente me las encontré con la frustrante experiencia de querer usar el RAID por hardware de una tarjeta controladora B120i usando openSuSE y otras distros. Lo que me parecía más extraño de todo el caso es que configurando el arreglo en el ACU (Array Configuration Utility de HP) el instalador seguía viendo los discos por separado.

Me indagué con la documentación de HP y se requería deshabilitar IOMMU en el BIOS, cargar un driver (citado como DUD image) durante la instalación de la distro y únicamente estaba soportado SLES, RHEL y VMWARE en los sistemas operativos linux. Read More

Esta semana, y por primera vez, me encontré con un arreglo de discos fallido. Sabía que ese día tenía que llegar, temía con que pasara pero a fin de cuentas ya me encontraba en esa situación.
Se trataba de un RAID 5 con 4 discos de 1TB de una NAS Seagate BlackArmor 440/420. Según mi checklist mental el primer paso era identificar cual disco había fallado, luego reemplazarlo por uno idéntico (seagate hace incapie en que deben usarse únicamente discos fabricados por ellos en el equipo), realizar algún procedimiento de reconstrucción de RAID y listo.
Para mi sorpresa todos los discos tenían sus tablas de particiones correctas y pasan el health check del mismo NAS.
Me puse a investigar y me encontré con que era un error recurrente en ese modelo y que como primer paso recomendaban hacer un upgrade del firmware. Actualicé manualmente al 4000.1411 pero el mensaje de error no varió: “Volume not found”. Read More

Suelo hacer favores de informática a familiares y amigos en la medida de lo posible y lo interesante que puedan aparentar ser los problemas. Nada de  instalar antivirus o Windows, siempre me hago “el loco”. Me pidieron subir un sitio a un FTP, me entregaron las credenciales y fuentes del sitio, el problema es que había sido “programado” (diseñado) con photoshop y dreamweaver y las referencias a las img hacían referencia a un directorio con nombre “Imágenes” que al ser codificado dentro de peticiones HTTP se cambiaban por “Im%E1genes” y terminaban por hipervínculos rotos.

Eran muchas las referencias por modificar como para cambiarlas a mano así que usé:

  • grep para buscar ocurrencias de la palabra.
  • sed para modificar dichas ocurrencias.
  • find para recorrer los archivos html.
  • mv para cambiar el nombre a los directorios.
  • perl en un pequeño one-liner para hacer match con caracteres no ascii.

Acá están los comandos usados: Read More

Si instalando Flash Operator Panel bajo OpenSUSE 64 bits obtenemos ENOENT (no such file or directory) la solución es hacer el enlace simbólico para el archivo libcrypto.so.6:

error:

Can’t load ‘/tmp/par-root/cache-f6ba657fdf55d1e2610c81a3cd82f6709d197a8b/7d2160ee.so’ for module Filter::Crypto::Decrypt: libcrypto.so.6: cannot open shared object file: No such file or directory at /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/DynaLoader.pm line 230.
 at /usr/lib/perl5/site_perl/5.8.8/PAR/Heavy.pm line 128
BEGIN failed–compilation aborted at /loader/0x10b5820/Filter/Crypto/Decrypt.pm line 37.
Compilation failed in require at script/fop2_server.pl line 1.
BEGIN failed–compilation aborted at script/fop2_server.pl line 1.

Enlace simbólico:

ln -s /usr/lib64/libcrypto.so /usr/lib64/libcrypto.so.6

Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.