Yeastar/Historial/LDAP

  1. 9 years ago

    Hola. Estoy probando este fantástico software y me encuentro con algunos problemas.

    Lo tengo instalado y funcionando pero hay varios puntos que me fallan.

    Mi centralita es una Yeastar, concretamente modelo U100. Tiene en su interior un asterisk 1.6-

    Tengo varias preguntas

    A)
    He tenido que modificar varios archivos para poder acceder a la base de datos del historial, concretamente he añadido las siguiente líneas:

    config.php

    Debido a que la base de datos está en otro host, pero necesito acceder también al phonebook local he añadido a parte del fop2 local:

    $HOST2='192.168.168.151';
    $USER2='cdr';
    $PASS2='cdr2015';
    $DB2='asteriskcdr';
    $CDRDBTABLE2 ='asteriskcdr.cdr_201502';

    He añadido también la definicion $db3 como sigue:

    if(function_exists('mysql_connect')) {
    $db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, false);
    $db3 = new dbcon($HOST2, $USER2, $PASS2, $DB2, false);
    if(!$db->is_connected()) {
    // Database connection details from amportal
    if (is_readable("/etc/freepbx/freepbx.conf")) {
    $amp_conf = parse_amportal_conf("/etc/freepbx/freepbx.conf");
    $DBHOST = $amp_conf['AMPDBHOST'];
    $DBNAME = $amp_conf['AMPDBNAME'];
    $DBUSER = $amp_conf['AMPDBUSER'];
    $DBPASS = $amp_conf['AMPDBPASS'];
    } else if (is_readable("/etc/amportal.conf")) {
    $amp_conf = parse_amportal_conf("/etc/amportal.conf");
    $DBHOST = $amp_conf['AMPDBHOST'];
    $DBNAME = $amp_conf['AMPDBNAME'];
    $DBUSER = $amp_conf['AMPDBUSER'];
    $DBPASS = $amp_conf['AMPDBPASS'];
    }
    $db = new dbcon($DBHOST, $DBUSER, $DBPASS, $DBNAME, true);

    }

    En phonetabs.php:

    cdr=1;
    $res2 = $db3->consulta("DESC $CDRDBTABLE2");
    if(!$res2) {
    $cdr=0;
    }

    Parece que no da error y que tiene acceso a la tabla, pero no se me presentan en pantalla los datos. Adjunto imagen.

    He mirado la tabla de la base de datos en concreto y los nombre de los campos cambian. No sé si puede ser debido a eso.

    b) He instalado también el plugin para chrome, pero no me identifica el nombre de quien llama , pone <unknown>, en cambio desde el panel fop2 si que lo hace.

    c) Debido a que la centalita utiliza LDAP para la agenda, me encuentro que los nombres del teléfono y del panel no están sincronizados. Es posible configurar el FOP2 para hacer llamadas a LDAP? De esta manera, configurando los teléfonos contra LDAP y el FOP2 tendria una phonebook centralizada.

    Uff vaya royo que he metido para ser la primera pergunta... jeje, es que me urgee .

    Gracias de antemano.

  2. admin

    23 Feb 2015 Administrator

    Hola,

    Entiendo que estés urgido, pero imagino que también entiendes que todo lo que necesitas son personalizaciones específicas para tu entorno, cosa que ya has empezado a encarar de forma correcta, pero que NO va a funcionar de forma automática. Estás desdoblando bases de datos, accediendo a bases distintas, el proceso es correcto en una mirada rápida, y debería de funcionar. Desafortunadamente no veo la imagen adjunto y no se que dato es el que no ves. Yo te diría que hagas las cosas por pasos, primero configures config.php como viene mas o menos por defecto, pero apuntando a la tabla de cdr, y que revises si en el historial ves los llamados o no, una vez que tengas funcionando eso, entonces recien encara la 2da base de datos o phonebook.

    De todas maneras, me dices que quieres sincronizar de alguna manera con ldap, en ese caso, NO deberias usar el phonebook del fop2 para nada, olvidarte de eso y usar lo que te de tu centralita para manejar tu directorio. Y deberias entonces enfocarte en modificar el vphonebook.php para que en lugar de consultar las bases mysql propias del fop2, hagan una consulta ldap adecuada (eso es para el auto complete del campo dial de la barra de herramientas). Y modificar el checkdir.php si lo deseas tambien para consultar ldap (eso es para poner nombre en base al numero de telefono que hace un llamado).

    Si necesitas asistencia para desarrollar esas customizaciones, puedes contratarlas, hay paquetes de horas en www.fop2.com/buy.php

    Con respecto al unknown de la extensión de chrome, ese dato viene del manager mismo de asterisk, que versión de asterisk estás usando?

    Saludos,

  3. Resuvo el adjunto

    En relación a la versión, és una Asterisk 1.6.2.6

  4. admin

    26 Feb 2015 Administrator

    puedes habilitar debug en dblib.php o bien en config.php, y luego trata de cargar directamente el showcdr.php para ver si funciona o no, como te dije, estás haciendo configuraciones muy personalizadas, así que vas a tener que meterle mano al código. Al showcdr puedes quitarle los controles de sesión activa para poder probar más rápido, y habilita debug tanto en config.php del fop2 como en el dblib.php si quieres ver las consultas mysql que se hacen, para luego realizarlase a mano con un cliente mysql directo y ver si obtienes resultados o no.

  5. Bien, al final lo he conseguido, el problema son los campos de la BBDD de mi MyPBX que eran diferentes.

    Además he tenido que cambiar el formato de como se nombra la tabla puesto que la centralita lo cambia en función del mes en curso:
    $FECHA = date('Ym');
    $CDRDBTABLE2 ='asteriskcdr.cdr_'. $FECHA .'';

    A parte de esto ahora funciona.

    Ahora voy a mirar de poner un desplegable de llamadas en la principal, para que sea un poco más rápido ver las últimas llamadas. A ver si lo consigo.

or Sign Up to reply!