hgmnetwork Con todo gusto.
Yo uso este método para llamar a un formulario escrito en html y que ingresa datos en un CRM (vTiger para ser exactos). Este es el procedimiento:
Crea un archivo con el nombre que desees, en una ruta como /var/www/html dentro de tu servidor Issabel. Llamaremos al archivo script.php. El contenido será
<?php
$phone=$GET['phone'];
$usuario=$SESSION{'elastix_user'};
$agent=$GET['agent'];
$agente=explode("/",$agent);
$idagent = $agente[1];
$campaign=$GET['campaign'];
$callerid=$GET['callerid'];
$channel=$GET['channel'];
$type=$GET['type'];
$nombre=$GET['Nombre'];
$cedula=$GET['cedula'];
$ruc=$GET['Ruc'];
$direccion=$GET{'direccion'};
$email=$GET{'email'};
echo <<<EOF
var contenido = '<h1>CRM</h1> \
<b>Campana Saliente: $campaign </b><br> \
<b>Numero marcado: $phone </b> <br>\
<br> \
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8"><form target="receiver" name="Ingreso desde Call Center" action="http://192.168.1.1/vtigercrm/modules/Webforms/capture.php" method="post"><tr><td><label>Tel. Móvil</label></td><td><input type="text" name="mobile" data-label="" value="$phone"></td></tr><input type="submit" value="Submit"></form><iframe name="receiver" id="receiver"></iframe>\
';
EOF;
echo "document.getElementById('issabel-callcenter-llamada-form').innerHTML = contenido;";
?>
Las partes importantes de este script son:
- Poner target="receiver" en la etiqueta form y luego de cerrar el form, colocar <iframe name="receiver" id="receiver"></iframe>. Esto hará que cuando presiones enviar en ese formulario, no se abrirá otra ventana sino un pequeño iframe donde saldrá el resultado de tu envío.
- También debes fijarte que debes poner la línea que dice issabel-callcenter-llamada-form porque eso hace que el URL externo se te abra en el frame donde te debería salir el formulario local.
- Puedes capturar las variables que pasas a través del URL con $_GET como lo ves al inicio del script.
- La página HMTL (el formulario externo que quiero que salga) se encuentra entre las palabras EOF, pero debes de escapar cada new_line con \
- Puedes copiar este código para practicar pero probablemente no te saldrá ningún texto porque he editado el código para no poner partes sensibles de mi verdadero formulario. Simplemente pon tu código ahí y ya.
Finalmente, creas una URL externa tipo JSONP con esta información:
http://192.168.0.2/script.php?agent={AGENT_NUMBER}&type={CALL_TYPE}&callerid={CALL_ID}&channel={REMOTE_CHANNEL}&campaign={CAMPAIGN_ID}&phone={PHONE}
Aquí en este URL se ve que la dirección del servidor Issabel es 192.168.0.2, el archivo se llama script.php y las variables que estoy pasando para dentro del script son las de entorno de la llamada.
Demás está decir que no podrás ver los formularios de Issabel si es que llegas a colocar uno pues este URL se posicionará encima de él.