usar programar issabel freepbx extensiones elastix datos consulta configurar configuraciĆ³n como installation voip asterisk ivr

installation - programar - configurar un IVR con Asterisk



ivr asterisk consulta base datos (11)

Necesito configurar un sistema IVR simple para la compañía de un amigo que permita que la persona que llama navegue por el menú presionando las teclas del teléfono. Es como un horario de autobuses.

para el horario de hoy, presione ''1'', para el horario de mañana presione ''2'' y así sucesivamente.

Es únicamente un sistema de información, es decir, ninguna ruta de navegación terminará con una persona real, pero solo se reproducirán los mensajes de audio.

Ahora, nunca antes configuré algo como esto e investigué un poco en Google. Parece que podré lograr esto usando Asterisk.

  • ¿Qué más necesito hardware-wise?
  • ¿Es suficiente un simple servidor Linux y una cuenta VOIP con un proveedor en Alemania?
  • ¿Un VPS manejará la tarea?
  • ¿Qué hay de las múltiples llamadas entrantes simultáneas?
  • ¿Los maneja Asterisk?

Es bastante simple. Estoy usando sipgate.de como proveedor de mi asterisco. necesita configurar un plan de marcado.

esto también es bastante simple. échale un vistazo aquí . también deberías echarle un vistazo a las extensiones.conf. hay algunas muestras adentro. el es también una muestra que se ajusta a su problema. para conectarse a sipgate, eche un vistazo a su knowledgebase. hay algunas muestras para la configuración del asterisco.

sipgate es gratuito, excepto que está haciendo llamadas salientes.


He trabajado con IVR en el pasado, pero principalmente con sistemas grandes y nunca he usado Asterisk. Eché un vistazo rápido a su sitio web ( http://www.asterisk.org/ ) y me parece muy informativo, ¿ha revisado allí?


No está relacionado con la programación, pero ...

Eche un vistazo a trixbox.org , admite la configuración de cisco para ... snom teléfonos su mod Asterisk / Freepbx y todo bajo un buen ui!

Tengo un proveedor en Australia que los agregó como un baúl gsm, tomó 3 horas para configurar 4 teléfonos. IVR es compatible

Los únicos problemas posiblemente serían ... calidad de la grabación


Es perfectamente posible.

Lo que necesitas saber:

  1. Asterisk tiene algunos problemas con H323 . Si su proveedor proporciona SIP , solicite SIP lugar.

  2. Puede construir un IVR completo en planes de marcado en su extensions.conf , pero para tareas complejas es mejor usar AGI . Estos son Perl o Python o cualquiera de los lenguajes que implementen su lógica de IVR . Cada sesión de AGI abarca un proceso secundario, usa FastAGI y un daemon de red si esperas conexiones frecuentes.

  3. Múltiples llamadas concurrentes no son un problema, mi instalación de Asterisk en una PC simple maneja cientos de llamadas simultáneas.

  4. Las únicas cosas que pueden afectar el rendimiento son la conversión de sonido y la detección de tono .

    Para mejorar el rendimiento, debes:

    1. Se adhieren a un códec ( µLaw es que yo uso), fuerce todas las conexiones SIP para usar ese códec y preconvierte todos sus archivos de sonido utilizando sox -t ul . Tan pronto como lo haya hecho, todas las operaciones de Asterisk equivalen a leer los bytes del archivo del disco y enviarlos a través de la red con solo un ajuste básico. No hay matemática, nada más que simples operaciones de lectura-envolver-enviar.

    2. Pídale a su proveedor que detecte tonos de su lado y se los envíe fuera de banda , usando RFC 2833 . La detección de tonos es una operación que consume bastante CPU, que ellos mismos lo hagan.

    Personalmente ejecuto Asterisk en un 2,66 MHz Celeron IV con 2048 MB RAM , con Fedora 10 X86_64 . 150 conexiones a la vez funcionan bien, no hay retrasos.

    El tráfico total asciende a alrededor de 9.6 KByte/sec por conexión. Para un VPS moderno, no debería haber ningún problema.


Asterisco rocas. Para algunas líneas, un simple P3 o mejor será suficiente. No virtualice la PBX; Asterisk depende de un tiempo bastante preciso.

FreePBX hace que sea realmente fácil configurar un IVR: tiene una interfaz decente basada en la web y admite algunas herramientas geniales de Asterisk listas para usar.

EDITAR: FreePBX no es Asterisk: es una bonita interfaz que genera las configuraciones por usted. Trixbox lo incluye por defecto si quieres una solución simple de apuntar y disparar.

Si su cuenta VoIP admite múltiples líneas entrantes, entonces Asterisk las usará muy bien. También necesita suficiente ancho de banda de Internet y buena calidad de servicio. Para más de una línea en un sistema comercial, insistiría en una conexión dedicada para que no experimente abandonos cuando los usuarios accedan a la red.


La mejor forma de crear una aplicación de IVR es usar VoiceXML diseñado por W3C.org (http://www.w3.org/TR/voicexml21/). Asterisk no viene con el navegador VoiceXML, pero hay compañías que ofrecen eso para Asterisk como SoftSyl Technologies (http://www.softsyl.com).

Las empresas como Cisco y Avaya también ofrecen navegador VoiceXML, pero no son para Asterisk.


Puede hacer esto en el plan de marcado ...

[menu-main] exten => s,1,Noop() exten => s,n(msg),Background(ForTodayPress1TomorrPress2) exten => s,1,Goto(menu-today) exten => s,2,Goto(menu-tomorrow) exten => i,1,Playback(invalid) exten => i,n,Goto(msg) exten => t,1,Goto(msg) [menu-today] etc... [menu-tomorrow] etc...

O, como alguien más ha sugerido, puede hacerlo en cualquier idioma que pueda escribir en stdin y leer desde stdout. La implementación de phpagi es mi sabor favorito particular. Podría encajar en este ejemplo como el de PHP en una caja separada para que no afecte a la PBX bajo ningún tipo de carga.

[menu-main] exten => s,1,Noop() exten => s,n(msg),Background(ForTodayPress1TomorrPress2) exten => s,1,Goto(menu-today,s,1) exten => s,2,Goto(menu-tomorrow,s,1) exten => i,1,Playback(invalid) exten => i,n,Goto(msg) exten => t,1,Goto(msg) [menu-today] exten => s,1,Noop() exten => s,n,agi(http://myapache/agi/readschedule.php) exten => s,n,Hangup()


El diseño de IVR en Asterisk no es difícil, pero hay un poco de "acantilado de aprendizaje" asociado con la puesta en marcha de su primer servidor Asterisk.

Como dijo otra persona, la calidad de la llamada lo es todo. Pague para tener grabaciones de grado profesional para sus avisos de IVR y sus anuncios. Asegúrese de estar usando códigos de 64k como uLaw y aLaw; GSM (teléfono celular) puede ser barato en banda ancha, pero rompe las expectativas de los clientes sobre la calidad.

Recomiendo encarecidamente que coloque el IVR en su propio contexto de plan de marcado y luego envíe llamadas directamente al mismo. Eso hace que gestionar cosas como las opciones de menú sea mucho más fácil. Para cada subconjunto de opciones, use un contexto de plan de marcado diferente.

Intenta mantener tu menú "superficial". Si se necesitan más de tres opciones de menú para obtener la información que su cliente está buscando, es muy probable que cuelguen, o simplemente presione "0" para hablar con un ser humano. Eso derrota el punto de tu IVR.

Si vas a hacer algo bastante bueno con las búsquedas de bases de datos, o la autenticación de cuentas o similares, te recomendaría usar una aplicación "AGI" - Asterisk Gateway Interface -. Mi favorito personal es " Adhearsion ", que se combina bien con Ruby / Rails en el lado DB / Web.

Si necesita ayuda o más información, hágamelo saber.


Si estás completamente fresco, te sugiero que estudies FreeSWITCH en lugar de Asterisk. Está mucho mejor estructurado, y también viene con algunos ejemplos preconstruidos, incluido un menú de IVR, y la sintaxis de IVR es bastante simple: http://wiki.freeswitch.org/wiki/IVR_Menu

Estoy ejecutando una instancia de FreeSWITCH en un servidor virtual Xen, y funciona perfectamente con múltiples llamadas simultáneas.


Para los IVR más complejos, puede probar Astive Toolkit , especialmente si necesita bases de datos o iteración de servicios web.


Si desea configurar un Asterisk IVR, también puede utilizar alguna herramienta de arrastrar y soltar basada en la web para hacer un asistente automático simple (como en su ejemplo) o un IVR complejo (administración de secuencias de comandos o base de datos manejada por IVR). Una opción es Cally Square . Eche un vistazo aquí: http://www.callysquare.com/