llamada se corta a los 16 segundos ringeando

Discussion in 'Elastix 2.x' started by eperines, Apr 12, 2011.

  1. eperines

    Joined:
    Aug 24, 2010
    Messages:
    9
    Likes Received:
    0
    Hola a todos:

    he usado asterisk desde hace un tiempo , todo funciona perfecto salvo un pequeño problema

    al llamar a telefonos analogos , si la llamada suena (ring) durante 16 segundos se corta automáticamente como no contesta, esto de donde se podrá corregir? sera en el dialplan ? ya que he revisado toda la configuracion de asterisk y dadhi y no aparece alguna variable que haga referencia a eso , fuera de eso todo funciona ok incluso el retomar una llamada si el anexo no contesta

    saludos desde chile
     
  2. Luis Diego

    Joined:
    Nov 1, 2010
    Messages:
    237
    Likes Received:
    0
    En el dial Plan:

    exten => 10,1,Set(RINGTIME=90,g)

    y el tiempo es en segundos.

    Pero si tienes la interface del elastix o freepbx, ahi esta en la opcion de tu extensión SIP el tiempo de timbrado.
     
  3. eperines

    Joined:
    Aug 24, 2010
    Messages:
    9
    Likes Received:
    0
    me parece que no me he explicado bien, pido disculpas por eso.

    no es el tiempo que la extencion suena (eso funciona ok ) sino al llamar desde la extensión a un numero externo a la central usando las lineas pstn , es en ese entonces que la llamada ringea solo 16 segundos , si la llamada es contestada antes de ese tiempo no hay problema , pero si no se debe marcar nuevamente .

    tal vez se deba configurar en el custom context pero no e pillado el problema

    saludos y gracias don luis

    ######edit #######

    agrego la configuración de dial plan , macro dialout tal vez se pueda modificar , pero no soy experto en el tema


    [macro-dialout-trunk]
    include => macro-dialout-trunk-custom
    exten => s,1,Set(DIAL_TRUNK=${ARG1})
    exten => s,n,GosubIf($[$["${ARG3}" != ""] & $["${DB(AMPUSER/${AMPUSER}/pinless)}" != "NOPASSWD"]]?sub-pincheck,s,1)
    exten => s,n,GotoIf($["x${OUTDISABLE_${DIAL_TRUNK}}" = "xon"]?disabletrunk,1)
    exten => s,n,Set(DIAL_NUMBER=${ARG2})
    exten => s,n,Set(DIAL_TRUNK_OPTIONS=${DIAL_OPTIONS})
    exten => s,n,Set(OUTBOUND_GROUP=OUT_${DIAL_TRUNK})
    exten => s,n,GotoIf($["${OUTMAXCHANS_${DIAL_TRUNK}}foo" = "foo"]?nomax)
    exten => s,n,GotoIf($[ ${GROUP_COUNT(OUT_${DIAL_TRUNK})} >= ${OUTMAXCHANS_${DIAL_TRUNK}} ]?chanfull)
    exten => s,n(nomax),GotoIf($["${INTRACOMPANYROUTE}" = "YES"]?skipoutcid)
    exten => s,n,Set(DIAL_TRUNK_OPTIONS=${TRUNK_OPTIONS})
    exten => s,n,Macro(outbound-callerid,${DIAL_TRUNK})
    exten => s,n(skipoutcid),ExecIf($["${PREFIX_TRUNK_${DIAL_TRUNK}}" != ""],AGI,fixlocalprefix)
    exten => s,n,Set(OUTNUM=${OUTPREFIX_${DIAL_TRUNK}}${DIAL_NUMBER})
    exten => s,n,Set(custom=${CUT(OUT_${DIAL_TRUNK},:,1)})
    exten => s,n,ExecIf($[$["${MOHCLASS}" != "default"] & $["${MOHCLASS}" != ""]],Set,DIAL_TRUNK_OPTIONS=M(setmusic^${MOHCLASS})${DIAL_TRUNK_OPTIONS})
    exten => s,n(gocall),Macro(dialout-trunk-predial-hook,)
    exten => s,n,GotoIf($["${PREDIAL_HOOK_RET}" = "BYPASS"]?bypass,1)
    exten => s,n,GotoIf($["${custom}" = "AMP"]?customtrunk)
    exten => s,n,Dial(${OUT_${DIAL_TRUNK}}/${OUTNUM},300,${DIAL_TRUNK_OPTIONS})
    exten => s,n,Goto(s-${DIALSTATUS},1)
    exten => s,n(customtrunk),Set(pre_num=${CUT(OUT_${DIAL_TRUNK},$,1)})
    exten => s,n,Set(the_num=${CUT(OUT_${DIAL_TRUNK},$,2)})
    exten => s,n,Set(post_num=${CUT(OUT_${DIAL_TRUNK},$,3)})
    exten => s,n,GotoIf($["${the_num}" = "OUTNUM"]?outnum:skipoutnum)
    exten => s,n(outnum),Set(the_num=${OUTNUM})
    exten => s,n(skipoutnum),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})
    exten => s,n,Goto(s-${DIALSTATUS},1)
    exten => s,n(chanfull),Noop(max channels used up)
    exten => s-BUSY,1,Noop(Dial failed due to trunk reporting BUSY - giving up)
    exten => s-BUSY,n,Playtones(busy)
    exten => s-BUSY,n,Busy(20)
    exten => s-NOANSWER,1,Noop(Dial failed due to trunk reporting NOANSWER - giving up)
    exten => s-NOANSWER,n,Playtones(congestion)
    exten => s-NOANSWER,n,Congestion(20)
    exten => s-CANCEL,1,Noop(Dial failed due to trunk reporting CANCEL - giving up)
    exten => s-CANCEL,n,Playtones(congestion)
    exten => s-CANCEL,n,Congestion(20)
    exten => s-CHANUNAVAIL,1,GotoIf($["x${OUTFAIL_${ARG1}}" = "x"]?noreport)
    exten => s-CHANUNAVAIL,n,AGI(${OUTFAIL_${ARG1}})
    exten => s-CHANUNAVAIL,n(noreport),Noop(TRUNK Dial failed due to ${DIALSTATUS} (hangupcause: ${HANGUPCAUSE}) - failing through to other trunks)
    exten => _s-.,1,GotoIf($["x${OUTFAIL_${ARG1}}" = "x"]?noreport)
    exten => _s-.,n,AGI(${OUTFAIL_${ARG1}})
    exten => _s-.,n(noreport),Noop(TRUNK Dial failed due to ${DIALSTATUS} - failing through to other trunks)
    exten => disabletrunk,1,Noop(TRUNK: ${OUT_${DIAL_TRUNK}} DISABLED - falling through to next trunk)
    exten => bypass,1,Noop(TRUNK: ${OUT_${DIAL_TRUNK}} BYPASSING because dialout-trunk-predial-hook)
    exten => h,1,Macro(hangupcall,)
     
  4. wolverin0

    Joined:
    Sep 8, 2009
    Messages:
    21
    Likes Received:
    0
    exten => s-NOANSWER,1,Noop(Dial failed due to trunk reporting NOANSWER - giving up)
    exten => s-NOANSWER,n,Playtones(congestion)
    exten => s-NOANSWER,n,Congestion(20)

    probaste cambiando ese último 20?
    aunque dudo..
     
  5. eperines

    Joined:
    Aug 24, 2010
    Messages:
    9
    Likes Received:
    0
    me llamo la atencion ese 20 pero no queria modificar a lo loko ya que es una central que esta en uso XD
     
  6. jgutierrez

    Joined:
    Feb 28, 2008
    Messages:
    5,737
    Likes Received:
    0
    Según veo en el contexto que pegaste:

    exten => s,n,Dial(${OUT_${DIAL_TRUNK}}/${OUTNUM},300,${DIAL_TRUNK_OPTIONS})

    Indica que tiene un timeout de marcación de 300 segundos, ahora, si es que sólo llega a las 16 segundos, sería porque tu proveedor sólo permite 16 segundos de marcación o a causa de tu detección de colgado, que le hace pensar a asterisk que ya has colgado mientras no ha sido de esa forma.
     
  7. Luis Diego

    Joined:
    Nov 1, 2010
    Messages:
    237
    Likes Received:
    0
    Puedes conectarte directamente y probar la llamada sin tu asterisk, asi para validar tu tiempo como te dijo jgutierrez.
     
  8. eperines

    Joined:
    Aug 24, 2010
    Messages:
    9
    Likes Received:
    0
    eres un capo!! no pidia ser el proveedor ya que por ahora solo uso las lineas analogas
    pero modifique el tiempo del busy detect y voila!! , era eso!!! se cambio el busycount de 3 a 6 y la llamada dura 25 segundos XD muchas gracias

    pd:
    pero ahora me salta otra duda como hacer para que el busydect de asterisk no interfiera con las llamadas realizadas al exterior? tengo entendido que es con un comando llamado busypattern pero no se como se usa...


    saludos desde chile
     
  9. Luis Diego

    Joined:
    Nov 1, 2010
    Messages:
    237
    Likes Received:
    0
    busydetect=yes
    busypattern=200,200
    // Con estas opciones, simplemente detectamos si el otro lado esta comunicando con un tono de comunicando clasico en nuestro auricular.
     
  10. eperines

    Joined:
    Aug 24, 2010
    Messages:
    9
    Likes Received:
    0

    yo creo que la cosa va por ese camino aunque al agregar el busypattern 200/200 las llamadas no se cortan y pasan a t si corto y no se contesta , yo creo que para chile debe ser otro pattern :laugh:
    bueno gracias por su ayuda con este tema
     

Share This Page