AGI e IVR

Discussion in 'General' started by wr4pp3r, Oct 2, 2010.

  1. wr4pp3r

    Joined:
    Oct 1, 2010
    Messages:
    2
    Likes Received:
    0
    Bueno este es mi primer tema, aunque soy usuario de elastix desde hace varios años. Tengo un problema con la siguiente situación:

    Deseo que cuando desde mi call center contacten a un cliente el operador hable con el cliente un momento y seguido a esto lo comunique con un IVR haciendo un transfer de llamada, solucione esto de la siguiente manera: Cree un grupo de timbrado y le configure 2 seg de tiempo de timbrado hasta que alguien conteste pero como nadie va a contestar entonces pasa al IVR que deseo que escuche el cliente, hasta aquí no está mal aunque sea un "machetazo" ; pero ahora tengo dos cosas más que hay que hacer:

    1. Mi cliente escucha el IVR diciendo Por favor digite su numero de cliente seguido de la tecla #, ALTO no quiero que se tenga que digitar la tecla numeral por que tengo un AGI que valida está info ante la base de datos y devuelve un error o simplemente pasa a la siguiente opción, pero aquí esta el punto
    2. No se donde meter el AGI dentro del contexto del IVR para que haga lo que quiero, puesto esto así vi el siguiente ejemplo:

    [weather-wakeup]
    exten => *61,1,Answer
    exten => *61,2,AGI(nv-weather.php)
    exten => *61,3,Hangup
    exten => *62,1,Answer
    exten => *62,2,AGI(wakeup.php)
    exten => *62,3,Hangup

    Lo anterior no parece tan dificil pero teniendo el siguiente contexto se ve más complicado y aún no logro que funcione, además quiero quitar el maldito #

    [ivr-6]
    include => ivr-6-custom
    include => from-did-direct-ivr
    include => app-directory
    exten => #,1,dbDel(${BLKVM_OVERRIDE})
    exten => #,n,Set(__NODEST=)
    exten => #,n,Goto(app-directory,#,1)
    exten => h,1,Hangup
    exten => s,1,Set(MSG=custom/Servicio_al_Cliente)
    exten => s,n,Set(LOOPCOUNT=0)
    exten => s,n,Set(__DIR-CONTEXT=default)
    exten => s,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT})
    exten => s,n,Set(_IVR_CONTEXT=${CONTEXT})
    exten => s,n,GotoIf($["${CDR(disposition)}" = "ANSWERED"]?begin)
    exten => s,n,Answer
    exten => s,n,Wait(1)
    exten => s,n(begin),Set(TIMEOUT(digit)=3)
    exten => s,n,Set(TIMEOUT(response)=10)
    exten => s,n,Set(__IVR_RETVM=)
    exten => s,n,ExecIf($["${MSG}" != ""],Background,${MSG})
    exten => s,n,WaitExten(,)
    exten => hang,1,Playback(vm-goodbye)
    exten => hang,n,Hangup
    exten => 0,1,dbDel(${BLKVM_OVERRIDE})
    exten => 0,n,Set(__NODEST=)
    exten => 0,n,Goto(ext-group,600,1)
    exten => 1,1,dbDel(${BLKVM_OVERRIDE})
    exten => 1,n,Set(__NODEST=)
    exten => 1,n,Goto(from-did-direct,2010,1)
    exten => 2,1,dbDel(${BLKVM_OVERRIDE})
    exten => 2,n,Set(__NODEST=)
    exten => 2,n,Goto(from-did-direct,2020,1)
    exten => 3,1,dbDel(${BLKVM_OVERRIDE})
    exten => 3,n,Set(__NODEST=)
    exten => 3,n,Goto(from-did-direct,2030,1)
    exten => 4,1,dbDel(${BLKVM_OVERRIDE})
    exten => 4,n,Set(__NODEST=)
    exten => 4,n,Goto(from-did-direct,2040,1)
    exten => 5,1,dbDel(${BLKVM_OVERRIDE})
    exten => 5,n,Set(__NODEST=)
    exten => 5,n,Goto(from-did-direct,2050,1)
    exten => i,1,Playback(invalid)
    exten => i,n,Goto(loop,1)
    exten => t,1,Goto(loop,1)
    exten => loop,1,Set(LOOPCOUNT=$[${LOOPCOUNT} + 1])
    exten => loop,n,GotoIf($[${LOOPCOUNT} > 2]?hang,1)
    exten => loop,n,Goto(ivr-6,s,begin)
    exten => return,1,Set(MSG=custom/Servicio_al_Cliente)
    exten => return,n,Set(_IVR_CONTEXT=${CONTEXT})
    exten => return,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT_${CONTEXT}})
    exten => return,n,Goto(ivr-6,s,begin)
    exten => fax,1,Goto(ext-fax,in_fax,1)

    ; end of [ivr-6]

    Bueno eso es más o menos lo que necesito si alguien quiere pulirlo más se lo agradecería mucho.

    De antemano muchas Gracias.
     

Share This Page