Tutorial para a2Billing y Elastix 2.4

Como anteriormente habia prometido, voy a poner un tutorial "simple" de como configurar a2billing para que puedan tarificar sus llamadas sin que solicite un pin por cada llamada que se genera.

1.- El primer paso es modificar un archivo para que las llamadas se puedan procesar mediante a2billing. vamos a agregar al inicio del archivo:   /etc/asterisk/extensions.conf las siguientes lineas:

[macro-dialout-trunk-predial-hook]
exten => s,1,GotoIf($["${OUT_${DIAL_TRUNK}:4:4}" = "A2B/"]?custom-freepbx-a2billing,${OUTNUM},1:2)
exten => s,2,MacroExit

[custom-freepbx-a2billing]
exten => _X.,1,DeadAGI(a2billing.php,${OUT_${DIAL_TRUNK}:8})
exten => _X.,n,Hangup()


2.- Al fnal del mismo archivo agregar:

#include extensions_a2billing.conf

3.- Crear el archivo:   /etc/asterisk/extensions_a2billing.conf   y agregar en este:

[a2billing]
exten => _X.,1,Answer
exten => _X.,2,Wait,2
exten => _X.,3,DeadAGI,a2billing.php
exten => _X.,4,Wait,2
exten => _X.,5,Hangup

[custom-a2billing-did]
exten => _X.,1,deadAGI(a2billing.php,1,did)
exten => _X.,2,Hangup

4.- Despues de eso deberemos iniciar sesión en la sección de a2billing y procederemos a dar de alta las opciones que correspondan a la manera en la que queremos tarificar:

Crear Provoider  (Nombre de nuestro proveedor de la troncal)
Crear Trunk (Tecnología de nuestra troncal, recordemos que si son troncales que utilizan alguna tarjeta vamos a tener que especificar que se usara DAHDI para sacar la llamada)
Creamos por lo menos 1 Ratecard
Creamos los Rates (Las tarifas de acuerdo a las marcaciones que vamos a tener en nuestro sistema)
Creamos un callplan, una vez creado lo editamos y asignamos el ratecard que va a tener dicho callplan.

Antes de crear los customers, debemos hacer algunos ajustes en las opciones gloables de a2billing, estas opciones sonpersonalizadas y lo que aqui pongo normalmente es para que una extensión asociada a un customer, pueda realizar llamadas con descuentos directos al customer asociado.

Say Balance After Authsay_balance_after_authNoPlay the balance to the user after the authentication (values : yes - no).  
Say Balance After Callsay_balance_after_callNoPlay the balance to the user after the call (values : yes - no).
Say Ratesay_rateinitialNoPlay the initial cost of the route (values : yes - no)
Say Durationsay_timetocallNoPlay the amount of time that the user can call (values : yes - no).
Auto Set CLIDauto_setcalleridYesenable the setup of the callerID number before the outbound is made, by default the user callerID value will be use.
CLID Enablecid_enableYesenable the callerid authentication if this option is active the CC system will check the CID of
caller .

Por lo menos estas opciones para que el customer se autentique y no solicite el numero de pin de pago. Sobre estos parametros podemos cortar el tamaño del numero del customer, pero es a elección persona.

Una vez hecho esto, deberemos crear los customer ya sea a mano o de forma automatica en batch, dependiendo del tipo de cobro deberán seleccionar prepago o pospago, lo importante aqui es que cualquiera que elijan, no puede ser cambiada despues.

Una vez creado el customer, lo editamos y asignamos el Callerid que no es otra cosa que la extensión que va a utilizar esa tarjeta, de esta forma, cada que esa extensión llame, utilizara el credito asignado al customer.

Espero este breve tutorial les sea de utilidad, si tienen alguna duda con gusto y en cuanto disponga de tiempo se las aclaro por este medio.

Comentarios

Entradas populares de este blog

Limitar el tiempo de una llamada por extensión para troncal G0

Linux/XOR.DDoS En sistemas Elastix

Borrar archivos con cierta antigüedad en el sistema