Deteccion de polaridad en lineas analógicas

Telefonica utiliza cambios de polaridad para señalizar el estado de la llamada. Asterisk CVS tiene soporte para detectar estos cambios, aunque esta pendiente de aplicarse un parche que corrige un bug (#3874). Este parche es únicamente para asterisk stable 1.0.x.

10-05-2007 Actualización: Disponible parche para la rama 1.4 de asterisk, que no detectaba el corte en las llamadas entrantes.

04-02-2006 Actualización:Desde la versión 1.2.3, asterisk detecta de serie las inversiones de polaridad con tarjetas TDM400P. Ya no es necesario aplicar este parche.

27-11-2005 Actualización: Parece ser que entre la versión 1.2.0beta1 y 1.2.0 final, se han hecho cambios relativos a la detección de cambios de polaridad en el código. Lamentablemente siguen sin funcionar correctamente en las lineas españolas (al menos con Telefonica). He cambiado de estrategia, y esta vez he hecho un parche menos intrusivo, que corrige los fallos actuales, pero que espero sea mas fácil de incluir en el código de asterisk. Descárgate el parche para la versión 1.2.0 final de asterisk y comenta en la página del bug tus resultados.

28-10-2005 Actualización: En el enlace anterior referente al parche para asterisk CVS, he añadido una versión para Asterisk 1.2.0beta1. Estoy usandolo desde hace un tiempo, y he recibido confirmaciones de otros usuarios de que funciona sin problemas. Para conseguir que integren este parche en asterisk definitivamente, por favor, comentad los resultados (tanto buenos como malos) en la página del bug. Gracias.

Importante: Parece ser, teniendo en cuenta los diversos comentarios que he recibido, que la detección de cambios de polaridad no funciona con tarjetas clónicas X100P. He leido que, si bien la tarjeta podría detectarlos, sería necesario implementar algunos cambios en el módulo (wcfxs o wctdm, según la versión de asterisk). Con las TDM400P de Digium no ha habido ningún problema.

Nota:: Si vuestra linea no genera inversiones de polaridad (p.ej. Ono), echad un vistazo al blog de Sergio Serrano

Ejemplo de llamada saliente. A(Asterisk) llama a B:

  1. A marca el numero
  2. A recibe tonos de llamada
  3. A recibe un cambio de polaridad cuando B descuelga
  4. A recibe otro cambio de polaridad cuando B cuelga

Ejemplo de llamada entrante. B llama a A(Asterisk)

  1. A recibe un cambio de polaridad
  2. A recibe señales de llamada (RING)
  3. A descuelga
  4. A recibe un cambio de polaridad cuando B cuelga

Con esta información, nuestra centralita tiene toda la información que necesita para no quedarse colgada en el buzon de voz cuando el que deja el mesaje cuelga. Ademas nos permite tener unos CDR (Registros de detalle de llamada) más fiables, porque controlamos si la persona a la que llamamos descuelga efectivamente el telefono.

Descargar asterisk-stable-polarity-v5.diff

Aplicar el parche:

$ cd /usr/src/asterisk/channels

$ patch chan_zap.c < /ruta/al/fichero/asterisk-stable-polarity-v5.diff

Configuracion. Edita /etc/asterisk/zapata.conf, quita o comenta las lineas relativas a callprogress,busydetect y busycount, y añade estas lineas para los canales conectados a la linea telefonica:

answeronpolarityswitch=yes

hanguponpolarityswitch=yes

Documentacion: Publicación de Interfaces - Telefonica de España, concretamente Interfaz de Línea Analógica (pdf) (Página 25, punto 5.4.3)

Escrito por julianjm el 18/12/2005. |
Tags:

40 Comments »

  1. Deteccion de Polaridades en Argentina
    Hola, que tal? tengo una pregunta, soy de Argentina y mi linea analogica esta conectada a Telefonica de Argentina, saben si aca tambien existe el cambio de polaridad? Muchas Gracias y espero sus respuestas

    Comment by esculli ARGENTINA — 8 February 2006 @ 14:23

  2. Polaridad en argentina
    Puedes comprobar fácilmente si hay cambios de polaridad cargando el módulo de la tdm (wcfxs o wctdm) con el parámetro debug=1.

    Aunque por lo que se cuenta en este hilo de discusión de la lista de correo asterisk-es, en Argentina no se estilan los cambios de polaridad ;). Ahi dan una solución, que implica modificar el fichero zonedata.c del zaptel y recompilar. Ya nos contarás si funciona.
    Julián J. Menéndez

    Comment by Anonymous SPAIN — 9 February 2006 @ 1:05

  3. Cambio en las TDM240X
    Soy de Perú, y he construido un gateway usando una TE110P y las nuevas tarjetas TDM2400 (TDM2406 y TDM2402). EL gateway funciona bien, sólo que, a pesar que uso el último Asterisk del CVS, y he configurado en zapata.conf
    answeronpolarityswitch=yes
    hanguponpolarityswitch=yes
    .. cuando mido con un multimetro el voltaje de una llamada desde un telefóno analógico conectado a la tarjeta TDM240X (FXS) no veo ningun cambio de voltaje ni cuando contestan ni cuando cuelgan la llamada.
    Qué crees que pueda ser el problema? Aquí en Perú por ley, todas las líneas análogas deben soportar cambio de polaridad tanto en el answer como en el hangup.

    Comment by dpizarro PERU — 21 February 2006 @ 14:53

  4. Hola,
    Hola,

    El polímetro lo tienes que usar en la línea telefónica (puerto FXO de tu tarjeta)… Ya que es tu compañía telefónica la que va a generar las inversiones de polaridad, y asterisk quien las detectará.

    En el caso de extensiones analógicas (conectadas a puertos FXS de tu TDM24), no creo que se produzcan cambios de polaridad, tampoco creo que sean necesarios.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 21 February 2006 @ 20:42

  5. Julian, creo que no me
    Julian, creo que no me explique bien, como líneas de ingresodesde el PSTN tengo un E1 (TE110P) e “internamente” tengo tarjetas analogicas TDM240X (FXS). EL polimetro (multimetro) lo he puesto a la salida de las tarjetas TDM con la esperanza que el Asterisk al detectar el hangup/answer remoto en la línea digital, produzca la inversión de polaridad en las líneas internas ya que éstas estarán conectadas a una PBX que debe recibir inversiones de polaridad.

    Es posible esto?

    Comment by dpizarro PERU — 22 February 2006 @ 19:29

  6. Solución confirmada
    Gracias por la solución. Ahora consigo que detecte el fin de la comunicación perfectamente. Antes se quedaba la línea ocupada hasta que saltaba el timeout.

    Comment by geloak SPAIN — 14 March 2006 @ 11:35

  7. A mi me sigue sin ir….
    Hola Jualián,
    feclicidades por el blog ;-)
    yo tengo una digium tdm400 y nbo me detecta el colgado aqui en madrid. El caso es que lo detecta, pero 30 segundos despues. LA version que tengo es la asteriskathome 2.7 que se supone que lleva la 1.2.5 que se supone que ya no hace falta el parche. El caso es que no se que no he ocnfigurado o que hago mal pero no detecta el colgado.
    saludos y gracias

    Comment by integrae SPAIN — 26 March 2006 @ 19:05

  8. Hola
    Hola

    La verdad es que lo tengo un poco descuidado (el blog)… demasiado trabajo ;)

    Sobre tu consulta, si te digo la verdad nunca he usado Asterisk@Home, en ninguna de sus versiones. Es extraño lo que te ocurre, ya que como comentas, desde la versión 1.2.4 asterisk funciona “de serie”, confirmado por Alberto Sagredo en este comentario.

    ¿Tu línea es de Telefónica? Me consta que algunas operadoras de cable no generan dichas inversiones de polaridad en la línea.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 28 March 2006 @ 0:15

  9. Hola Julian,
    Hola Julian,
    Efectivamente la linea es de telefonica. La unica cosa rara que tiene la linea es que tiene configurado salto entre las cuatro lineas que tiene. Tambien me he dado cuenta que el CID no lo coje, y no solo eso, aunque configures el asterisk para que cuando una llamada no lleva CID te lo pregunte, cuando se lo metes manualmente tampoco te aparece en el display del telefono. En cuanto a la linea que es de telefonica noto una diferencia de cuando cuelgas con la de casa, mientras que en la de casa cuando cuelgas suena el tipico “tu tu”, en esta suena “tu tu tu”, es decir, tres tonos seguidos en vez de dos….
    alguna idea/recomendacion
    añadido:
    he hechoo la prueba a cargar el modulo con debug, y cuando el asterisk termina por colgar a los 30 segundos sale esto
    Mar 29 12:01:21 asterisk1 kernel: NO BATTERY on 1/4!
    Mar 29 12:01:21 asterisk1 kernel: NO RING on 1/4!
    Mar 29 12:01:21 asterisk1 kernel: BATTERY on 1/4 (+)!

    y cuando arranca la llamada sale esto

    Mar 29 12:08:07 asterisk1 kernel: NO BATTERY on 1/1!
    Mar 29 12:08:07 asterisk1 kernel: BATTERY on 1/1 (+)!
    Mar 29 12:08:12 asterisk1 kernel: NO BATTERY on 1/3!
    Mar 29 12:08:12 asterisk1 kernel: BATTERY on 1/3 (-)!
    Mar 29 12:08:12 asterisk1 kernel: RING on 1/3!
    Mar 29 12:08:14 asterisk1 kernel: NO RING on 1/3!

    lo que hacia era llamar desde la linea 1, y entraba la llamada a la linea 3

    gracias y perdonapor las moleestias

    Comment by integrae SPAIN — 29 March 2006 @ 16:47

  10. x100p
    A mí me funciona bien mientras no se cuelguen las líneas antes de establecer una comunicación real. Si alguno de los dos cuelga antes de de que el otro lo coja, la comunicación queda siempre ocupada. ¿Es este uno de los síntomas de polaridad?

    ¿Sirven estas modificaciones también para las tarjetas x100p? Lo digo porque en todo momento se ha hablado de TDM400P y antes de modificar nada me gustaría saberlo.

    Gracias.

    Comment by typo SPAIN — 19 April 2006 @ 19:23

  11. Hola,
    Las X100P no detectan
    Hola,

    Las X100P no detectan los cambios de polaridad. Tu única opción es busydetect/busycount.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 22 April 2006 @ 20:09

  12. Sigue sin colgar del todo
    Hay un caso en el que no me cuelga correctamente.

    En una TDM400, cuando la llamada entrante es contestada y redirigida a un teléfono SIP pero se deja “hasta el final” y no es enviada a buzón de voz ni nada, la TDM400 no detecta bien el fin de la comunicación. Cuando al llamante ya le suenan los pitidos típicos de que se ha “rendido” y ya no está sonando nada al otro lado, este cuelga. Pues a partir de este momento, mi Asterisk tarda siempre exactamente un minuto y dos segundos en hacer el Hangup. Me informa de que “es raro” y “ha detectado una señal de la que no sabe nada”. ¿Por qué? He probado con rtptimeout=30 y rtpholdtimeout=60 pero no me hace ni caso, sigue tardando un minuto y dos sengudos. Tengo los valores answeronpolarityswitch=yes hanguponpolarityswitch=yes

    Comment by typo SPAIN — 10 May 2006 @ 20:03

  13. Hola,
    Nunca había hecho esa
    Hola,

    Nunca había hecho esa prueba en concreto… De cualquier modo, son las limitaciones de la telefonía analógica. Nada como una digital, con señalización out-of-band (canal D) ;)

    Otro caso que asterisk no detectará (por diseño) es cuando desde la centralita llamas a un teléfono móvil o una línea digital (rdsi), y rechazas la llamada. Asterisk no detecta esa situación, y se escuchan los tipicos tonos de ocupado. La razón es que no hay forma (utilizando únicamente inversiones de polaridad) de señalizar ese evento, ya que una inversión significaría que la llamada se ha contestado, cuando no es el caso.

    Como solución temporal, puedes poner un timeout absoluto, de forma que asterisk cuelgue segundos antes de que telefónica “se de por rendida”.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 11 May 2006 @ 22:10

  14. Reverse polarity
    Hola Julian, cuando mencionas el manejo de polaridades reversas (called and caller) en asterisk te refieres exclusivamente al hardware digium actual?

    ¿Sabes si es posible configurar estas mismas caracteristicas para el SPA3000 (FXO de Sipura)?

    Soy testigo que esta señalizacion funciona bien desde Net2phone para SPA2000 (FXS de Sipura). Esta caractersitica es clave para los tarifadores (visores) en nuestros call centers ya que unicamente operan (inician la cuenta) mediante una inversion de polaridad.

    Hardware de Sangoma tambien operaria correctamente con estas caracteristicas.

    Simpatico blog. Muchos saludos desde Lima, PERU.

    Comment by Gabo PERU — 5 September 2006 @ 3:02

  15. Zaptel, SPA3000,…
    Hola,

    El post se refiere a canales Zaptel. Solo he probado tarjetas de Digium, pero me extrañaría enormemente que las de Sangoma no funcionasen.

    Con respecto al SPA3000, no lo he comprobado personalmente, pero según la documentación soportan varias formas de supervisión de la llamada en el puerto FXO (detección, ya que la inversión no la hace el ATA, sino que la recibe). En la parte FXS, es exactamente igual que un SPA2000.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 7 September 2006 @ 12:03

  16. urgente
    julian me interesa mucho el tema puesto que en la rama que trabajo necesito un circuito electronico que sea capaz de saber cuando a uno le contestan al otro lado del telefono, la aplicacion me sirve para cuando al otro lado me contesten hacer un cambio de polaridad en la linea para el circuito que ya tengo trabajando.
    espero tu respuesta puesto que me urge este circuito o alguna idea de como hacerlo por medio de alguna frecuencia con la que trabaje la linea telefonica cuando levantan la bocina ala persona que uno llame. muchas gracias

    Comment by wilmer suarez COLOMBIA — 7 December 2006 @ 0:50

  17. inversion de polaridad
    Es una simple inversión de polaridad… Si usas un polímetro digita, verás que el voltaje pasa de positivo a negativo (o viceversa) cuando descuelgan en el otro extremo.

    Julián J. Menéndez

    Comment by julianjm SPAIN — 17 December 2006 @ 0:46

  18. hola Julian, gracias por todo el trabajo que te coges.

    tengo una linea de telefonica con una tarjeta A400P01 clonica.

    he llamado a la tienda y me han dicho que necesito lo del answeronpolarityswitch y lo dehanguponpolarityswitch.

    donde debo de ponerlo?

    si lo pongo en zapata.conf

    answeronpolarityswitch=yes
    hanguponpolarityswitch=yes

    no me funciona. cuando llamo no me aparece ni el RING en la consola.

    necesito poner el parche¿?

    muchas gracias por todo.

    Comment by Josu SPAIN Windows XP Mozilla Firefox 2.0.0.3 — 25 April 2007 @ 10:27

  19. Debe ponerlo antes de la linea channel=>.

    Cual es tu compañia de telefonía? Si es Telefónica debería funcionarte bien. Con otras, sobre todo las de cable, es probable que no te estén generando las inversiones de polaridad pertinentes, y tendrás que recurrir al busydetect.

    Pasate por los archivos del grupo asterisk-es:
    http://groups.google.com.ni/group/asterisk-es?lnk=gschg&hl=es

    Saludos

    Comment by julianjm SPAIN Windows 2000 Mozilla Firefox 1.5.0.10 — 25 April 2007 @ 11:55

  20. Hola Julian: Tengo servidor asterisk con tarjeta TDM400 (4 lineas analogicas) y tengo otro servidor asterisk con 2 PAP-Sipura para lineas analogicas y en los dos se me quedan bloqueadas las lineas.. Esto es en Mexico….Crees que el parche funcione tambien para aca???

    Saludos,

    Comment by Ruben Zamora MEXICO Windows XP Mozilla Firefox 2.0.0.4 — 5 July 2007 @ 13:31

  21. Ruben, comprueba activando el parámetro debug=1 en el módulo wctdm, o bien con un polímetro conectado a la línea, que las inversiones de polaridad se producen.

    Comment by julianjm SPAIN Windows XP Mozilla Firefox 2.0.0.4 — 5 July 2007 @ 15:20

  22. Hola, soy de Venezuela, tengo asterisk 1.0.0.28 instalado con tarjetas Digium, pero tengo un problema y es que cuando asterisk llama a lineas analogicas no detecta cuando la persona contesta la llamada, creo que esto tiene que ver con los cambios de polaridad sera que me puedes ayudar??
    gracias de antemano..

    Comment by Carmen VENEZUELA Fedora Linux Mozilla Firefox 1.5.0.12 — 13 August 2007 @ 18:46

  23. Lo primero que deberías hacer es comprobar con un polímetro si realmente se producen dichas inversiones de polaridad. Si no, habla con tu compañía de teléfono a ver si pueden habilitarte el servicio.

    Comment by julianjm SPAIN Windows XP Mozilla Firefox 2.0.0.6 — 13 August 2007 @ 20:09

  24. Ya averigue y mi compañia de telefono no ofrece el servicio de inversion de polaridad asi que, por lo que lei en internet, estoy sujeta al callprogress. Yo realizo una llamada a lineas analogicas desde un archivo .call y tengo en mi zapata.conf lo siguien:
    callprogress=yes
    progzone=es
    busydetect=yes
    busycount=5
    Pero igual asterisk no detecta el momento exacto en el que la persona contesta el telefono. Sera que me puedes ayudar porfa??

    Comment by Carmen VENEZUELA Fedora Linux Mozilla Firefox 1.5.0.12 — 15 August 2007 @ 19:19

  25. Hola Julian.
    Felidades por tu blog…es realmente interesante e instructivo..

    Tengo una PBX instalada con trixbox, 3 líneas analógicas y una tarjeta TDM400, mi operador es Telefónica.
    Dos de las líneas están en un grupo y la tercera en otro grupo.
    En freePBX tengo definida una extensión con el número de telef. movil, de tal forma que puedan llamarme al movil desde cualquier extensión sin necesidad de marcar todo el número.
    El problema se plantea cuando entra una llamada por el grupo principal y realizan una transferencia a mi movil, (la llamada sale por el segundo grupo), muchas veces los canales quedan “colgados” ya que la centralita no detecta la señal de Hungup…

    Tienes idea de cual puede ser el problema…????

    Gracias de antemano

    Comment by Manuel SPAIN Windows 2000 Internet Explorer 6.0 — 1 October 2007 @ 21:14

  26. Manuel, comprueba que en tu línea se producen inversiones de polaridad:
    1) Carga el módulo wctdm con la opción debug=1
    2) o usa un polímetro para ver si cambia de + a - o viceversa.

    Asegúrate de que tienes bien escritos los parámetros answeronpolarityswitch y hanguponpolarityswitch, que no sería la primera vez :)

    Comment by julianjm SPAIN Ubuntu Linux Mozilla Firefox 2.0.0.6 — 1 October 2007 @ 21:43

  27. Hola Julian.

    Los parámetros answeronpolarityswitch y hanguponpolarityswitch los he colocado en zapata.conf en el grupo que supuestamente falla.

    Te remito parte de zapata.conf.

    group=1
    signalling=fxs_ks
    context=from-zaptel
    channel=>1-2

    group=2
    signalling=fxs_ks
    context=from-zaptel
    answeronpolarityswitch=yes
    hanguponpolarityswitch=yes
    channel=>3

    Lo que obtengo es lo siguiente, al tratar de llamar al grupo 2 se corta la llamada inmediatamente.

    Comment by Manuel SPAIN Windows 2000 Internet Explorer 6.0 — 2 October 2007 @ 10:49

  28. Hola Julian,
    estoy buscando una relacion calidad precio en el sistema que estoy intentando montar.
    La cuestion es que tengo un numero de fax analogico, vamos de los de toda la vida, por lo que me obliga a utilizar una tarjeta analogica. Con esta tarjeta analogica realizaria las llamadas al exterior que me resulten gratuitas por la tarifa plana que tengo contratada en estos momentos.
    La cuestion es que e elegido la siguiente configuracion y quiero que me aconsejes sobre si podria mejorar en algo. Bueno tengo dos telefonos IP y los telefonos analogicos conectados a un Gateway linksys PAP2. Para la centralita tengo pensado comprar una tarjeta analogica A400P de Openvox. Tengo un canal digital (RDSI) con dos canales de voz y para este caso e seleccionado una tarjeta RDSI de Billion con el chip HFC.
    Espero tu respuesta. Gracias de antemano.

    Comment by miguel SPAIN Windows XP Mozilla Firefox 2.0.0.9 — 19 November 2007 @ 15:49

  29. julian , yo tengo los mismos problemas de polaridad en mi linea analoga , estoy usando asterisk 1.4.18.1 , el parche es aplicable para esta version , cuando llamo a traves de mi linea me pone un answered sin contestar y si le agrego el

    answeronpolarityswitch=yes
    hanguponpolarityswitch=yes

    se me corta al 1:20 segundo en el CLI me sale un mensaje
    Nobody picked up in 68000 ms

    saludos julian

    Comment by rickygm Windows XP Mozilla Firefox 2.0.0.12 — 24 March 2008 @ 20:46

  30. Hola,

    actualmente tengo linea adls normal, me estoy pensado lo de cambiarme a linea analogica con telefonica me lo recomiendas o mejor me quedo como estoy?? Saludos.

    Comment by Lorena SPAIN Windows XP Mozilla Firefox 2.0.0.11 — 8 April 2008 @ 9:36

  31. Hola Julian,

    Se que me salgo completamente del topic pero me gustaria averiguar una cosa:

    Si pongo un follow me a un usuario todo funciona ok. Pero me gustaria saber si es posible que el follow funcione cuando sea llamada externa pero si le intentan pasar una llamada o bien le llamadan internamente simplemente comunique.

    Muchas gracias por todo,

    Laury

    Comment by Laury SPAIN Windows XP Mozilla Firefox 2.0.0.14 — 6 June 2008 @ 12:07

  32. Carmen, pudiste solucionar el problema de saber cuando atienden del otro lado? Porque yo tengo el mismo problema con los archivos call y bueno llama y automaticamente comienza a reproducir el mensaje.. y del otro lado todavia no atendieron, cuando atiende escucha la mitad.. Si alguien pudo solucionar eso se lo agradeceria que lo comparta.

    Comment by Jose ARGENTINA Ubuntu Linux Mozilla Firefox 2.0.0.14 — 18 July 2008 @ 14:17

  33. Algunos adaptadores ATA como el 496 de Grandstream te permiten marcar la opción de que hagan el cambio de polaridad al colgar y descolgar. ¿Sabes si esta opción es compatible con mantener answeronpolarityswitch=yes y hanguponpolarityswitch=yes en zapata.conf o si por el contrario sólo se debería hacer el cambio en uno de los dos sitios (asterisk o el ata)?

    Gracias.

    Comment by David SPAIN Windows Vista Mozilla Firefox 3.0.1 — 8 August 2008 @ 9:42

  34. David, creo que ese parámetro se refiere a los puertos FXS. Es decir, que en answer y hangup, el ATA generaría un cambio de polaridad en ese puerto.

    Se utiliza en tarificadores (como los que se ponen en los locutorios), para indicarles cuándo empieza y termina la llamada.

    No tiene nada que ver con las opciones answer y hanguponpolarityswitch. Estos parámetros (solo para canales Zaptel analógicos) solo detectan los cambios que se producen en los puertos FXO (los que se conectan a la línea telefónica).

    Comment by julianjm SPAIN Linux Mozilla Firefox 3.0.1 — 8 August 2008 @ 10:27

  35. Hola Julián,

    Tengo una TDM410P, que usa wctdm24xxp, y asterisk 1.2.21 y el último zaptel.

    Me ocurre igual que algo que te comentaron en un post de asterisk-es, que las llamadas salientes van perfectas pero con las entrantes asterisk detecta un cambio de polaridad y las cuelga automáticamente.

    Con una TDM400P y asterisk 1.2 todo va perfecto.

    Cambié para wctdm24xxp el DEFAULT_RING_DEBOUNCE y lo puse con un valor 256. Pero nada, la llamada entrante es recibida por asterisk y automáticamente se cuelga.

    Ésto es lo que veo en el log:

    [Aug 31 20:52:19] VERBOSE[2883] logger.c: — Starting simple switch on ‘Zap/4-1′
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@default:1] Playback(”Zap/4-1″, “vm-goodbye”) in new stack
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Took Zap/4-1 off hook
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Engaged echo training on channel 4
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Playing ‘vm-goodbye’ (language ‘es’)
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Ignore switch to REVERSED Polarity on channel 4, state 6
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Polarity Reversal event occured - DEBUG 1: channel 4, state 6, pol= 1, aonp= 1, honp= 1, pdelay= 600, tv= 123
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Polarity Reversal detected but NOT hanging up (too close to answer event) on channel 4, state 6
    [Aug 31 20:52:20] DEBUG[2883] chan_zap.c: Polarity Reversal event occured - DEBUG 2: channel 4, state 6, pol= 1, aonp= 1, honp= 1, pdelay= 600, tv= 123
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@default:2] Macro(”Zap/4-1″, “hangupcall”) in new stack
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:1] ResetCDR(”Zap/4-1″, “w”) in new stack
    [Aug 31 20:52:20] DEBUG[2883] app_macro.c: Executed application: ResetCDR
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:2] NoCDR(”Zap/4-1″, “”) in new stack
    [Aug 31 20:52:20] DEBUG[2883] app_macro.c: Executed application: NoCDR
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:3] GotoIf(”Zap/4-1″, “1?skiprg”) in new stack
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Goto (macro-hangupcall,s,6)
    [Aug 31 20:52:20] DEBUG[2883] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:6] GotoIf(”Zap/4-1″, “1?skipblkvm”) in new stack
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Goto (macro-hangupcall,s,9)
    [Aug 31 20:52:20] DEBUG[2883] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:9] GotoIf(”Zap/4-1″, “1?theend”) in new stack
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Goto (macro-hangupcall,s,11)
    [Aug 31 20:52:20] DEBUG[2883] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Executing [s@macro-hangupcall:11] Hangup(”Zap/4-1″, “”) in new stack
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′ in macro ‘hangupcall’
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′
    [Aug 31 20:52:20] VERBOSE[2883] logger.c: — Hungup ‘Zap/4-1′
    [Aug 31 20:52:30] VERBOSE[2884] logger.c: — Starting simple switch on ‘Zap/4-1′
    [Aug 31 20:52:38] WARNING[2884] chan_zap.c: CallerID returned with error on channel ‘Zap/4-1′
    [Aug 31 20:52:38] VERBOSE[2884] logger.c: — Executing [s@default:1] Playback(”Zap/4-1″, “vm-goodbye”) in new stack
    [Aug 31 20:52:38] DEBUG[2884] chan_zap.c: Took Zap/4-1 off hook
    [Aug 31 20:52:38] DEBUG[2884] chan_zap.c: Engaged echo training on channel 4
    [Aug 31 20:52:38] VERBOSE[2884] logger.c: — Playing ‘vm-goodbye’ (language ‘es’)
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@default:2] Macro(”Zap/4-1″, “hangupcall”) in new stack
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:1] ResetCDR(”Zap/4-1″, “w”) in new stack
    [Aug 31 20:52:39] DEBUG[2884] app_macro.c: Executed application: ResetCDR
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:2] NoCDR(”Zap/4-1″, “”) in new stack
    [Aug 31 20:52:39] DEBUG[2884] app_macro.c: Executed application: NoCDR
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:3] GotoIf(”Zap/4-1″, “1?skiprg”) in new stack
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Goto (macro-hangupcall,s,6)
    [Aug 31 20:52:39] DEBUG[2884] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:6] GotoIf(”Zap/4-1″, “1?skipblkvm”) in new stack
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Goto (macro-hangupcall,s,9)
    [Aug 31 20:52:39] DEBUG[2884] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:9] GotoIf(”Zap/4-1″, “1?theend”) in new stack
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Goto (macro-hangupcall,s,11)
    [Aug 31 20:52:39] DEBUG[2884] app_macro.c: Executed application: GotoIf
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Executing [s@macro-hangupcall:11] Hangup(”Zap/4-1″, “”) in new stack
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′ in macro ‘hangupcall’
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′
    [Aug 31 20:52:39] VERBOSE[2884] logger.c: — Hungup ‘Zap/4-1′

    — Starting simple switch on ‘Zap/4-1′
    — Executing [s@default:1] Playback(”Zap/4-1″, “vm-goodbye”) in new stack
    — Playing ‘vm-goodbye’ (language ‘es’)
    — Executing [s@default:2] Macro(”Zap/4-1″, “hangupcall”) in new stack
    — Executing [s@macro-hangupcall:1] ResetCDR(”Zap/4-1″, “w”) in new stack
    — Executing [s@macro-hangupcall:2] NoCDR(”Zap/4-1″, “”) in new stack
    — Executing [s@macro-hangupcall:3] GotoIf(”Zap/4-1″, “1?skiprg”) in new stack
    — Goto (macro-hangupcall,s,6)
    — Executing [s@macro-hangupcall:6] GotoIf(”Zap/4-1″, “1?skipblkvm”) in new stack
    — Goto (macro-hangupcall,s,9)
    — Executing [s@macro-hangupcall:9] GotoIf(”Zap/4-1″, “1?theend”) in new stack
    — Goto (macro-hangupcall,s,11)
    — Executing [s@macro-hangupcall:11] Hangup(”Zap/4-1″, “”) in new stack
    == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′ in macro ‘hangupcall’
    == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′
    — Hungup ‘Zap/4-1′
    — Starting simple switch on ‘Zap/4-1′
    — Executing [s@default:1] Playback(”Zap/4-1″, “vm-goodbye”) in new stack
    — Playing ‘vm-goodbye’ (language ‘es’)
    — Executing [s@default:2] Macro(”Zap/4-1″, “hangupcall”) in new stack
    — Executing [s@macro-hangupcall:1] ResetCDR(”Zap/4-1″, “w”) in new stack
    — Executing [s@macro-hangupcall:2] NoCDR(”Zap/4-1″, “”) in new stack
    — Executing [s@macro-hangupcall:3] GotoIf(”Zap/4-1″, “1?skiprg”) in new stack
    — Goto (macro-hangupcall,s,6)
    — Executing [s@macro-hangupcall:6] GotoIf(”Zap/4-1″, “1?skipblkvm”) in new stack
    — Goto (macro-hangupcall,s,9)
    — Executing [s@macro-hangupcall:9] GotoIf(”Zap/4-1″, “1?theend”) in new stack
    — Goto (macro-hangupcall,s,11)
    — Executing [s@macro-hangupcall:11] Hangup(”Zap/4-1″, “”) in new stack
    == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′ in macro ‘hangupcall’
    == Spawn extension (macro-hangupcall, s, 11) exited non-zero on ‘Zap/4-1′
    — Hungup ‘Zap/4-1′

    En el zapata.conf tengo answeronpolarityswitch y hanguponpolarityswitch activados, que siempre me han ido muy bien.

    ¿Es un bug del wctdm24xxp o hago yo algo mal?

    Gracias.

    Comment by David SPAIN Windows XP Mozilla Firefox 2.0.0.16 — 31 August 2008 @ 19:07

  36. Buen dia Julian,

    Bueno aun estoy dando pasos en trixbox, tengo una tarjeta TDM2424e y los mudulos FXO que he configurado para las troncales no se si esten bien configuradas ya que cuando realizo llamadas por una de los telefonos analogos este se escucha con mucho ruido, pero se escucha que timbra y pasa el IVR. pero cuando se llama de un telefono ip se escucha correctamente. no se en que archivo este el problema, pero de todas formas te envio el codigo que tengo en zapata.conf.

    ; Zapata telephony interface
    ;
    ; Configuration file

    [trunkgroups]

    [channels]

    language=en
    context=from_zaptel
    signalling=fxs_ks
    rxwink=300 ; Atlas seems to use long (250ms) winks
    ;
    ; Whether or not to do distinctive ring detection on FXO lines
    ;
    ;usedistinctiveringdetection=yes

    usecallerid=yes
    hidecallerid=no
    callwaiting=yes
    usecallingpres=yes
    callwaitingcallerid=yes
    threewaycalling=yes
    transfer=yes
    cancallforward=yes
    callreturn=yes
    echocancel=yes
    echocancelwhenbridged=no
    ;echotraining=800
    rxgain=0.0
    txgain=0.0
    group=0
    callgroup=1
    pickupgroup=1
    immediate=no
    busydetect=yes

    ;faxdetect=both
    faxdetect=incoming
    ;faxdetect=outgoing
    ;faxdetect=no

    ;Include genzaptelconf configs
    #include zapata-auto.conf

    group=1

    ;Include AMP configs
    #include zapata_additional.conf

    Comment by Victor Cruz COLOMBIA Windows Vista Mozilla Firefox 3.0.1 — 7 November 2008 @ 22:58

  37. Victor, probablemente tengas el módulo FXS defectuoso (en el que tienes conectado el teléfono analógico).

    Julian.

    Comment by julianjm SPAIN Ubuntu Linux Mozilla Firefox 3.0.4 — 20 November 2008 @ 11:23

  38. Buen dia Julian,

    encontre una solucion para este inconveniente y es colocar la dos lineas correspondientes a la polaridad en zapata.conf.
    answeronpolarityswitch=yes
    hanguponpolarityswitch=yes

    En cuento se incluyen estos cambios las lineas analogas funcionan correctamente, pero se afectan los telefonos IP, sucede que, cuando llamo a cualesquier numero externo de la empresa yo puedo escuchar a la otra persona, pero ellos no me escuchan absolutamente nada.
    Te agradeceria si me puedes ayudar con este tema.

    Comment by Victor Cruz COLOMBIA Windows Vista Mozilla Firefox 3.0.3 — 20 November 2008 @ 13:36

  39. Buen dia Julian,

    correspondiente a lo que me dices que puede estar afectado algunos de los modulos fxs, no creeria ya que con la solicion que anteriormente envie si funcionan, no se que puedas decir al respecto.

    Gracias

    Comment by Victor Cruz COLOMBIA Windows Vista Mozilla Firefox 3.0.3 — 20 November 2008 @ 13:37

  40. hola julian , espero que estes bien tengo el siguiente problema, tengo creado un ivr con 2 opciones por ahora:

    la primera en una cola , la cual tiene 2 agentes estaticos.

    la segunda es una extension xxx

    cuando la llamada entra en la cola suenan todas las extensiones, (como debe de ser) , este detecta el colgado del usuario si se diera durante la llamada (con un pequeño retardo pero no mucho) .

    cuando la llamada entra a la extension por medio del ivr esta empieza a sonar (como debe de ser ) sin embargo no detecta el colgado del usuario en caso de que llegara a colgar antes de que le contestaran , el telefono se queda sonando por un buen rato .

    ya no se que hacer con esta situacion

    vivo en colombia actualemte estor trabajando con los parametros answeronpolarity y hanguponpolarity en yes , trate de utilizar busydetect y busyaccount per no me funciono

    el sistema tambien trabaja con a2billing y si me tarifica desde cuando me contestan por lo que creo que la solucion debe estar cerca agradezco por tu colaboracion

    Comment by mauricio COLOMBIA Linux Mozilla Firefox 3.0.4 — 11 December 2008 @ 21:49

RSS feed for comments on this post. | TrackBack URI

XHTML ( Puedes usar estas etiquetas): <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong> .