SlideShare una empresa de Scribd logo
FreeSWITCH para usuarios Asterisk
Qué es FreeSWITCH™?

FreeSWITCH™ es:

•    Una libreria
•    Un Softswitch
•    Un softphone
•    Una PBX IP



       Wikipedia: “FreeSWITCH™ is a free and open source
       communications software for the creation of voice and
       messaging products.”
Qué NO es FreeSWITCH™?

FreeSWITCH™ NO es:

•  Un SIP Proxy
•  Un polvo magico que soluciona todos nuestro problemas
•  Fácil – You have to know what you’re doing
De donde viene?

•  Viene de Asterisk
•  No comparte codigo de Asterisk
•  Creado por Anthony Minessale II
    •  Tony escribió los siguientes “apps” de Asterisk:
        •  App_chanspy
        •  App_dumpchan
        •  App_realtime
        •  Res_odbc
Objetivos del proyecto

•  Estabilidad
•  Escalabilidad
•  Abstracción
Como lograr?

•  Usando librerias ya existentes como:
   •  Libsofia para SIP
   •  Apache Portable Runtime para ser
      multiplataforma
   •  SQLite para base de datos
   •  PCRE para expresiones regulares
   •  Muchas otras…
Arquitectura
Configuración
•  FreeSWITCH utiliza XML internamente para su
   configuración
•  La configuración es cargada en memoria durante la
   ejecución
•  La configuración puede ser totalmente dinámica
    •  Cada vez que algun componente pide por
       configuración, otros modulos tienen la
       oportunidad de proveerla siempre y cuando la
       respuesta sea XML.
Directory
•  Es un repositório de usuarios organizados por
   dominio
    •  1000@khomp.com.ar != 1000@freeswitch.org
•  Las informaciones contenidas en el directorio son
   relevantes unicamente al modulo/tecnologia que
   pide por el usuario
•  El directorio es agnostico a tecnologia
Eventos, eventos
•  Subsistema de eventos sigue el patrón
   “observable”
    •  Es el medio de comunicación entre modulos
    •  Es utilizado para execución de aplicaciones en
       canales e incluso para cola de SQL utilizado pelo
       core
Observable


    B llama método de A
A                                  B




            Requiere cambio en la estructura de B

C

                  MALA PRAXIS, B no tendría que saber
                  del funcionamiento de A o C.
Observable



A                  B



                    EVENTO
                    INTERESANTE


                  Event
C
                 System
Pero, que és un evento?
Event-Subclass: sofia::register
Event-Name: CUSTOM
Core-UUID: fa05978b-1302-4b91-b7ee-8a37dc35f59d
FreeSWITCH-Hostname: hostname
FreeSWITCH-Switchname: hostname
FreeSWITCH-IPv4: X.X.X.X
Event-Date-Local: 2012-09-24 04:21:26
profile-name: internal
from-user: 1000
from-host: X.X.X.X
contact: "user" <sip:1000@X.X.X.X40811;line=30510>
status: Registered(UDP)
expires: 10
to-user: 1000
to-host: X.X.X.X
network-port: 40811
username: 1000
user-agent: snom-m3-SIP/02.11 (MAC=0004132A2E81; HW=1)
¿Y a mi qué?
•  Event Socket Library
    •  Es un event consumer que “escribe” los eventos
       en un socket TCP
    •  Libesl posee un protocolo
    •  Fs_cli == asterisk –r
    •  Libesl posee bindings para varios lenguajes a
       traves de un wrapper C++ y SWIG
        •  PHP, Python, Perl, Lua, C#, etc…
Aplicaciones
FSGui
Obrigado!


João Mesquita
jmesquita@khomp.com.ar / jmesquita@freeswitch.org
(54 11) 5917-6025
(54 9 11) 4191-4843

Más contenido relacionado

PPT
FreeSWITCH: Asterisk con Esteroides
PDF
La estructura es fundamental: PBX IP, tarjetas de telefonía y herramientas pa...
PPTX
Tres componentes fundamentales de un buen PBX IP: seguridad, alta disponibili...
PDF
Curso de VoIP / Parte 02: SIP
PDF
Las 12 pruebas de Asterisk
PDF
Mtcna mikrotik informatix
PDF
José Selvi - Unprivileged Network Post-Exploitation [RootedCON 2011]
PPTX
Ccna security-ch2-securing-network-devices
FreeSWITCH: Asterisk con Esteroides
La estructura es fundamental: PBX IP, tarjetas de telefonía y herramientas pa...
Tres componentes fundamentales de un buen PBX IP: seguridad, alta disponibili...
Curso de VoIP / Parte 02: SIP
Las 12 pruebas de Asterisk
Mtcna mikrotik informatix
José Selvi - Unprivileged Network Post-Exploitation [RootedCON 2011]
Ccna security-ch2-securing-network-devices

La actualidad más candente (20)

PDF
Curso de VoIP / Parte 03: Dialplan
PPTX
Virtualización Avanzada con Elastix
PPT
Protocolos wan tema4_ciclo_i_2016
PDF
Usando el módulo PIKE en Elastix MT
PDF
Conceptos nat
PPTX
I pv6 in_ccna_-_jpe
PPTX
¿Estás preparado para IPv6?
PDF
VOIP2DAY 2013: Construyendo una centralita virtual con FreeSWITCH
PDF
4.1 Gestión de trafico NAT
PPTX
IPv6 en la certificación CCNA R&S
PDF
2.1 Controles de acceso Basicos
PDF
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
PDF
SBCs como respuesta al soporte seguro de usuarios remotos. Casos de uso
PPTX
IPv6 llegó para quedarse
PPTX
Enrutamiento IPv6 OSPFv3
PDF
Kamailio en Elastix 3
PDF
IPv6 en entornos ISP
PDF
Interactuando con a2billing
PPTX
Estado de la Implementación de IPv6 v3.0
PPTX
Nat (network address translation) qué es y cómo funciona
Curso de VoIP / Parte 03: Dialplan
Virtualización Avanzada con Elastix
Protocolos wan tema4_ciclo_i_2016
Usando el módulo PIKE en Elastix MT
Conceptos nat
I pv6 in_ccna_-_jpe
¿Estás preparado para IPv6?
VOIP2DAY 2013: Construyendo una centralita virtual con FreeSWITCH
4.1 Gestión de trafico NAT
IPv6 en la certificación CCNA R&S
2.1 Controles de acceso Basicos
Cloud Native MX Meetup - Asegurando tu Cluster de Kubernetes
SBCs como respuesta al soporte seguro de usuarios remotos. Casos de uso
IPv6 llegó para quedarse
Enrutamiento IPv6 OSPFv3
Kamailio en Elastix 3
IPv6 en entornos ISP
Interactuando con a2billing
Estado de la Implementación de IPv6 v3.0
Nat (network address translation) qué es y cómo funciona
Publicidad

Similar a FreeSWITCH para usuarios Asterisk (20)

PDF
voip2day 2012 - Free switch para usuarios de asterisk by joao mesquita
PDF
Freeswitch para usuarios de asterisk
PPTX
Introducción a MuleSoft no IT.
PPT
Flex Camp 2008. Ricardo Poblete
PPTX
Arquitectura dirigida a eventos
PDF
Arquitectura basada a Eventos para principiantes con Apache Kafka
PPT
Egsi Sesion3
PPTX
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
DOC
PDF
PPT
PPTX
Framework
PPT
PPS
Programacion
PDF
Web services
PPSX
Sistemas distribuidos
DOC
Web service
DOC
Web service
PPSX
Universidad politécnica de madrid
voip2day 2012 - Free switch para usuarios de asterisk by joao mesquita
Freeswitch para usuarios de asterisk
Introducción a MuleSoft no IT.
Flex Camp 2008. Ricardo Poblete
Arquitectura dirigida a eventos
Arquitectura basada a Eventos para principiantes con Apache Kafka
Egsi Sesion3
Arquitectura-orientada-a-Servicios.-v-2017.01-Prof.-L.-Straccia.pptx
Framework
Programacion
Web services
Sistemas distribuidos
Web service
Web service
Universidad politécnica de madrid
Publicidad

Más de PaloSanto Solutions (20)

PDF
Voip y Big Data, ¿Cómo aplicar analytics a la VoIP?
PDF
Innovative technology for universal communication designed to involve the (he...
PPTX
Queuemetrics esencial, de la implementación a reportes avanzadas
PDF
La evolución de la telefonía IP a comunicaciones unificadas
PDF
WebRTC … ¡vamos a discar!
PDF
Integrando encuestas automáticas con iSurveyX
PPTX
Todo lo lo que necesita saber para implementar FreePBX
PPTX
Gestión de la Información de Desempeño con OpenNMS
PDF
Escalado y balanceo de carga de sistemas SIP
PDF
Elastix unified communications server cookbook
PDF
Seguridad en Asterisk: Un acercamiento detallado
PDF
Dynamic calls with Text To Speech
PDF
Proceso de migración de telefonía tradicional a Elastix (Caso)
PPTX
Building a new ecosystem for interoperable communications
PDF
Asterisk: the future is at REST
PDF
Presentacion Hardware Elastix 2015 - Colombia
PDF
Voicemail Avanzado
PDF
Módulo de Alta Disponibilidad de Elastix
PDF
Porteros IP SURiX con sin Video - Aplicaciones - Casos de éxito - Configuración
PDF
Plan de Marcado Distribuido con Dundi
Voip y Big Data, ¿Cómo aplicar analytics a la VoIP?
Innovative technology for universal communication designed to involve the (he...
Queuemetrics esencial, de la implementación a reportes avanzadas
La evolución de la telefonía IP a comunicaciones unificadas
WebRTC … ¡vamos a discar!
Integrando encuestas automáticas con iSurveyX
Todo lo lo que necesita saber para implementar FreePBX
Gestión de la Información de Desempeño con OpenNMS
Escalado y balanceo de carga de sistemas SIP
Elastix unified communications server cookbook
Seguridad en Asterisk: Un acercamiento detallado
Dynamic calls with Text To Speech
Proceso de migración de telefonía tradicional a Elastix (Caso)
Building a new ecosystem for interoperable communications
Asterisk: the future is at REST
Presentacion Hardware Elastix 2015 - Colombia
Voicemail Avanzado
Módulo de Alta Disponibilidad de Elastix
Porteros IP SURiX con sin Video - Aplicaciones - Casos de éxito - Configuración
Plan de Marcado Distribuido con Dundi

Último (20)

PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
Estrategia de apoyo tecnología grado 9-3
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PDF
clase auditoria informatica 2025.........
PPTX
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
Diapositiva proyecto de vida, materia catedra
PPTX
Power Point Nicolás Carrasco (disertación Roblox).pptx
PDF
Influencia-del-uso-de-redes-sociales.pdf
DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PPTX
Propuesta BKP servidores con Acronis1.pptx
PPT
Que son las redes de computadores y sus partes
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
CyberOps Associate - Cisco Networking Academy
PDF
Maste clas de estructura metálica y arquitectura
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Estrategia de apoyo tecnología grado 9-3
REDES INFORMATICAS REDES INFORMATICAS.pptx
El-Gobierno-Electrónico-En-El-Estado-Bolivia
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
clase auditoria informatica 2025.........
ANCASH-CRITERIOS DE EVALUACIÓN-FORMA-10-10 (2).pptx
Presentación PASANTIAS AuditorioOO..pptx
Diapositiva proyecto de vida, materia catedra
Power Point Nicolás Carrasco (disertación Roblox).pptx
Influencia-del-uso-de-redes-sociales.pdf
Zarate Quispe Alex aldayir aplicaciones de internet .docx
Propuesta BKP servidores con Acronis1.pptx
Que son las redes de computadores y sus partes
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
historia_web de la creacion de un navegador_presentacion.pptx
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
CyberOps Associate - Cisco Networking Academy
Maste clas de estructura metálica y arquitectura
Plantilla para Diseño de Narrativas Transmedia.pdf

FreeSWITCH para usuarios Asterisk

  • 2. Qué es FreeSWITCH™? FreeSWITCH™ es: •  Una libreria •  Un Softswitch •  Un softphone •  Una PBX IP Wikipedia: “FreeSWITCH™ is a free and open source communications software for the creation of voice and messaging products.”
  • 3. Qué NO es FreeSWITCH™? FreeSWITCH™ NO es: •  Un SIP Proxy •  Un polvo magico que soluciona todos nuestro problemas •  Fácil – You have to know what you’re doing
  • 4. De donde viene? •  Viene de Asterisk •  No comparte codigo de Asterisk •  Creado por Anthony Minessale II •  Tony escribió los siguientes “apps” de Asterisk: •  App_chanspy •  App_dumpchan •  App_realtime •  Res_odbc
  • 5. Objetivos del proyecto •  Estabilidad •  Escalabilidad •  Abstracción
  • 6. Como lograr? •  Usando librerias ya existentes como: •  Libsofia para SIP •  Apache Portable Runtime para ser multiplataforma •  SQLite para base de datos •  PCRE para expresiones regulares •  Muchas otras…
  • 8. Configuración •  FreeSWITCH utiliza XML internamente para su configuración •  La configuración es cargada en memoria durante la ejecución •  La configuración puede ser totalmente dinámica •  Cada vez que algun componente pide por configuración, otros modulos tienen la oportunidad de proveerla siempre y cuando la respuesta sea XML.
  • 9. Directory •  Es un repositório de usuarios organizados por dominio •  1000@khomp.com.ar != 1000@freeswitch.org •  Las informaciones contenidas en el directorio son relevantes unicamente al modulo/tecnologia que pide por el usuario •  El directorio es agnostico a tecnologia
  • 10. Eventos, eventos •  Subsistema de eventos sigue el patrón “observable” •  Es el medio de comunicación entre modulos •  Es utilizado para execución de aplicaciones en canales e incluso para cola de SQL utilizado pelo core
  • 11. Observable B llama método de A A B Requiere cambio en la estructura de B C MALA PRAXIS, B no tendría que saber del funcionamiento de A o C.
  • 12. Observable A B EVENTO INTERESANTE Event C System
  • 13. Pero, que és un evento? Event-Subclass: sofia::register Event-Name: CUSTOM Core-UUID: fa05978b-1302-4b91-b7ee-8a37dc35f59d FreeSWITCH-Hostname: hostname FreeSWITCH-Switchname: hostname FreeSWITCH-IPv4: X.X.X.X Event-Date-Local: 2012-09-24 04:21:26 profile-name: internal from-user: 1000 from-host: X.X.X.X contact: "user" <sip:1000@X.X.X.X40811;line=30510> status: Registered(UDP) expires: 10 to-user: 1000 to-host: X.X.X.X network-port: 40811 username: 1000 user-agent: snom-m3-SIP/02.11 (MAC=0004132A2E81; HW=1)
  • 14. ¿Y a mi qué? •  Event Socket Library •  Es un event consumer que “escribe” los eventos en un socket TCP •  Libesl posee un protocolo •  Fs_cli == asterisk –r •  Libesl posee bindings para varios lenguajes a traves de un wrapper C++ y SWIG •  PHP, Python, Perl, Lua, C#, etc…
  • 16. FSGui
  • 17. Obrigado! João Mesquita jmesquita@khomp.com.ar / jmesquita@freeswitch.org (54 11) 5917-6025 (54 9 11) 4191-4843