Cursos Asterisk en México

llamadas en ivr

Colapsar

Anuncio

Colapsar
No hay anuncio todavía.
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • llamadas en ivr

    buenos dias me gustaria saber, si es posible saber cuantas llamadas entraron por el ivr
    pero por ejemplo
    entraron 100 llamadas en el ivr donde:

    50 aprentaron 1
    20 aprentaron 2
    y 30 apretaron 3

    es para hacer una estadistica de cuantas llamadas entraron a consultar las opciones del ivr

    saludos

  • #2
    Si, puedes usar SET o AGI para ingresar cada llamada a una BD o archivo o sumarla. y cada que aprieten una opción lo mismo como primer prioridad sumar ese evento al total que llevas ya sea por hora, mes o año.

    Comentario


    • #3
      creo que set seria mas facil no crees?
      pero donde se lo paso en la configuracion del ivr y en que parte de la base de datos se guardara, el set me servira como indentificador para que yo haga la consulta a travez de la base de datos
      es correcto?

      Comentario


      • #4
        este es la configuracion de mi ivr
        como le indico que lo inserte en la base por medio de set el digito que introdujo,

        [ivr-3]
        include => ivr-3-custom
        exten => h,1,Hangup
        exten => s,1,Set(MSG=custom/ivr_e)
        exten => s,n,Set(LOOPCOUNT=0)
        exten => s,n,Set(__DIR-CONTEXT=)
        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)=5)
        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 => 1,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
        exten => 1,n,Set(__NODEST=)
        exten => 1,n,Goto(ext-queues,100,1)
        exten => 2,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
        exten => 2,n,Set(__NODEST=)
        exten => 2,n,Goto(ext-queues,100,1)
        exten => 3,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
        exten => 3,n,Set(__NODEST=)
        exten => 3,n,Goto(ext-queues,100,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} > 1]?hang,1)
        exten => loop,n,Goto(ivr-3,s,begin)
        exten => return,1,Set(MSG=custom/ivr_e)
        exten => return,n,Set(_IVR_CONTEXT=${CONTEXT})
        exten => return,n,Set(_IVR_CONTEXT_${CONTEXT}=${IVR_CONTEXT _${CONTEXT}})
        exten => return,n,Goto(ivr-3,s,begin)
        exten => fax,1,Goto(${CUT(FAX_DEST,^,1)},${CUT(FAX_DEST,^,2 )},${CUT(FAX_DEST,^,3)})

        ; end of [ivr-3]

        y cuando checo la bd me da este resultado

        calldate clid src dst dcontext channel dstchannel lastapp lastdata duration billsec disposition amaflags accountcode uniqueid userfield
        2014-02-25 15:57:48 "numero" <numero> numero 101 from-internal Local/101@from-queue-abb4;2 SIP/101-00000002 Dial SIP/101,"",trM(auto-blkvm) 35 30 ANSWERED 3 1393365468.11 audio:20140225-155749-1393365468.11.wav

        donde puedo insertar por jemeplo un indentificador para que sepa a qe numero de ivr entro

        Comentario


        • #5
          Utiliza la variable CDR(userfield) para que puedas almacenarlo en la BD y consultarlo después. Por ejemplo, modifica estas lineas:
          Código:
          exten => 1,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
          exten => 1,n,Set(__NODEST=)
          Y pon una en medio que sea asi:

          Código:
          exten => 1,1,Noop(Deleting: ${BLKVM_OVERRIDE} ${DB_DELETE(${BLKVM_OVERRIDE})})
          exten => 1,n,Set(CDR(userfield)="Presiono 1")
          exten => 1,n,Set(__NODEST=)
          Cuando revises tu CDR, en el campo de userfield aparecerá la leyenda "Presiono 1" (o lo que quieras que diga) y podrás contabilizarlo.
          dCAP Christian Cabrera R.
          Para aprender a usar Asterisk, asiste a uno de mis cursos Asterisk
          Si deseas asesoría pagada, por favor contáctame

          Comentario


          • #6
            gracias Christian Cabrera funciono genial el codigo
            saludos cordiales

            Comentario

            Principales Usuarios Activos

            Colapsar

            No hay usuarios activos superiores.
            Trabajando...
            X