Successfully reported this slideshow.
Qué es FreeSWITCH™?FreeSWITCH™ es:•    Una libreria•    Un Softswitch•    Un softphone•    Una PBX IP       Wikipedia: “Fr...
Qué NO es FreeSWITCH™?FreeSWITCH™ NO es:•  Un SIP Proxy•  Un polvo magico que soluciona todos nuestro problemas•  Fácil – ...
De donde viene?•  Viene de Asterisk•  No comparte codigo de Asterisk•  Creado por Anthony Minessale II    •  Tony escribió...
Objetivos del proyecto•  Estabilidad•  Escalabilidad•  Abstracción
Como lograr?•  Usando librerias ya existentes como:   •  Libsofia para SIP   •  Apache Portable Runtime para ser      mult...
Arquitectura
Configuración•  FreeSWITCH utiliza XML internamente para su   configuración•  La configuración es cargada en memoria duran...
Directory•  Es un repositório de usuarios organizados por   dominio    •  1000@khomp.com.ar != 1000@freeswitch.org•  Las i...
Eventos, eventos•  Subsistema de eventos sigue el patrón   “observable”    •  Es el medio de comunicación entre modulos   ...
Observable    B llama método de AA                                  B            Requiere cambio en la estructura de BC   ...
ObservableA                  B                    EVENTO                    INTERESANTE                  EventC           ...
Pero, que és un evento?Event-Subclass: sofia::registerEvent-Name: CUSTOMCore-UUID: fa05978b-1302-4b91-b7ee-8a37dc35f59dFre...
¿Y a mi qué?•  Event Socket Library    •  Es un event consumer que “escribe” los eventos       en un socket TCP    •  Libe...
Aplicaciones
FSGui
Obrigado!João Mesquitajmesquita@khomp.com.ar / jmesquita@freeswitch.org(54 11) 5917-6025(54 9 11) 4191-4843
FreeSWITCH para usuarios Asterisk
Upcoming SlideShare
Loading in …5
×

FreeSWITCH para usuarios Asterisk

2,014 views

Published on

Joao Mesquita
Khomp

Published in: Technology
  • Be the first to comment

FreeSWITCH para usuarios Asterisk

  1. 1. 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.”
  2. 2. 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
  3. 3. 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
  4. 4. Objetivos del proyecto•  Estabilidad•  Escalabilidad•  Abstracción
  5. 5. 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…
  6. 6. Arquitectura
  7. 7. 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.
  8. 8. 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
  9. 9. 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
  10. 10. Observable B llama método de AA B Requiere cambio en la estructura de BC MALA PRAXIS, B no tendría que saber del funcionamiento de A o C.
  11. 11. ObservableA B EVENTO INTERESANTE EventC System
  12. 12. Pero, que és un evento?Event-Subclass: sofia::registerEvent-Name: CUSTOMCore-UUID: fa05978b-1302-4b91-b7ee-8a37dc35f59dFreeSWITCH-Hostname: hostnameFreeSWITCH-Switchname: hostnameFreeSWITCH-IPv4: X.X.X.XEvent-Date-Local: 2012-09-24 04:21:26profile-name: internalfrom-user: 1000from-host: X.X.X.Xcontact: "user" <sip:1000@X.X.X.X40811;line=30510>status: Registered(UDP)expires: 10to-user: 1000to-host: X.X.X.Xnetwork-port: 40811username: 1000user-agent: snom-m3-SIP/02.11 (MAC=0004132A2E81; HW=1)
  13. 13. ¿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…
  14. 14. Aplicaciones
  15. 15. FSGui
  16. 16. Obrigado!João Mesquitajmesquita@khomp.com.ar / jmesquita@freeswitch.org(54 11) 5917-6025(54 9 11) 4191-4843

×