elastix como plataforma para nuevos desarrollos

Post on 12-Jun-2015

925 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Presentación desarrollada en el marco de VoIP2Day, en Noviembre de 2013 en Madrid, España. En esta charla, Andrés Gorostidi habla sobre el por qué desarrollar aplicaciones para Elastix e indica casos de ejemplo. Expositor: Andrés Gorostidi EuropeSIP

TRANSCRIPT

+

Elastix como Plataforma para Nuevos DesarrollosPor Andres Gorostidi

+¿ Qué es Elastix ?

■ Distribución de Asterisk, añadiendo al mismo un Interfaz Gráfica (FreePBX), y una serie de utilidades: VoIP, Fax, Mensajería Instantánea, Correo Electrónico, Colaboración.

■ Una comunidad de usuarios con el objetivo de “acercar” Asterisk al usuario tradicional.

■ Una Plataforma que posibilita el desarrollo de nuevas aplicaciones y acceso un “market” de Aplicaciones

■ Un entorno de desarrollo, con un framework que permite añadir aplicaciones con un API en Común.

+Elastix ¿Por qué ?

■ Desde el Cliente: ■ No tiene que preocuparse por conocer comandos complejos

■ Posibilidad de mantener una copia “segura” de su instalación.

■ Facilidad de instalarse aplicación de terceros -> Market Place !!!

■ Appliances económicas y/o sistemas embebidos

■ Desde el Desarrollador: ■ Tremenda Visibilidad -> Posibilidad de promocionar sus productos

■ Posibilidad de “Monetizar” sus desarrollos

■ Posibilidad de Servicios en la Nube (Elastix MultiTenant)

■ API de Desarrollo

■ Directorio !!!!!

+Programación en Elastix

■ Usando las APIs tradicionales de Asterisk:

■ AMI

■ ECCP (Elastix Call Center Protocol)

■ A traves de Web Services (Elastix Web Services)

■ SOAP

■ REST -> Ej. https://pbx.europesip.com/rest.php/address_book/ContactList

■ Framework

■ Modelo MVC, basado en Smarty

■ Clases PaloSanto

+Ejemplo FrameWork (I)

■ Librería misc.lib.php

■ Ejemplos:

Funcion _tr, Funcion ObtenerClaveAMIAdmin, Funcion GenerarDSNSistema, Funcion write_LOG

■ Clases Generales

■ paloSantoDBClass.php: Acceso bases de datos (generarquey, commit, rollback…)

■ paloSantoACLClass.php : Permisos y tipos de Usuarios (getUserExtension, isUserAdministratorGroup …)

■ paloSantoConfig.class.php: paloconfig, leer_configuracion, escribir_configuracion

■ paloSantoJSON.class.php: Acceso JSON, Ajax.

■ Clases “Smarty”

■ paloSantoForm.class.php

■ paloSantoGrid.class.php

+Ejemplo Codificación

Ejemplo:

Supongamos que queremos obtener la extensión asociada al usuario logeado. //El usuario logoneado se almacena en la variable de sesión

$_SESSION[“elastix_user”]

$username = $_SESSION[“elastix_user”]; $extension = $pACL->getUserExtension($username);

Si deseamos que nuestro módulo haga ciertas tareas si el usuario logoneado es del grupo “administrador” y otras si no, podríamos añadir lo siguiente:

if($pACL->isUserAdministratorGroup($username)){ //Do some task for administrators } else{ }

+Casos Prácticos

!■ Orkestal

■ AgentLogger

■ ElastixConnect

■ WHMS Provisioning Module

Ejemplos de Desarrollo:

+Orkestal

+Orkestal (II)

+ AgentLogger

■ Barra CTI

■ Cómodo Despliegue Lateral (Automático)

■ Rápido Cambio Estado Colas

■ Opciones Transferencia Llamadas

■ Botones / Acciones Personalizables por Agente

■ Conector URLs / Programas Externos / dCOM

■ Integración Correo y/o Contactos

■ SIP Phone Integrado

+

■ Re-utilización conocimiento obtenido en AgentLogger + Orkestal

■ Acercar el interface Elastix al usuario tradicional ■ Elastix Connect: My Extension - Desktop Notifier Edition ■ Elastix Connect GS Edition - Abrir nuevas posibilidades de Desarrollo y Integración ■ BYOD : Movilidad ■ Nuevos Markets : Google y Metro

Elastix Connect

+Elastix ConnectMy Extension – Desktop Notifier

■ Cliente Windows (tanto Desktop como Metro)

■ URL Launcher y Desktop Notifier

■ Click –to- call

■ API de Desarrollo -> AMI Connector

+Elastix ConnectGXP-2200 Edition• Acceso a Directorio Elastix

• Acceso a “My Extension”

• OOO – Out of The Office

• URL Launcher

• Gestion de Colas

+Elastix ConnectAndroid Edition■ Acercando Elastix a los usuarios

Móviles

■ Fácil para el Administrador Elastix : No añada complejidad

■ Técnicas BYOD (Bring Your Own Device)

■ Debe ser fácil de usar

■ Valido en cualquier dispositivo

■ Uso de NFC y / o GeoVallas

+WHMCS Pluging

■ Elastix en la nube

+¿ Hacia donde vamos ?

■ Potenciar aplicación Elastix Connect:

■ API de Sincronización Contactos

■ Seguridad: Protocolo Port-Knock

■ Integración ECCP / CallCenter

■ Integración más Teléfonos Android:

■ Ejemplo, Cisco Desktop Collaboration Experience DX650

■ BYOD -> Futuro comunicaciones

■ Dispositivos Móviles, sustituyen Desktop Tradicionales

■ I+D en nuevas tecnologías para Elastix Connect,

■ Google TV, Google Glasses, ChromeCast

■ Hacia Chile… ☺

+¿ Preguntas ?

■ Stand de Elastix y/o EuropeSIP

■ Correo agorostidi@sinologic.com

!!GRACIAS POR VENIR Y POR SU ATENCIÓN !!!!

■ Por favor, si le ha gustado la presentación, vótela!!

■ Pruebe ElastixConnect !!! Recoja su NFC TAG !!!

■ Para más info, quejas, sugerencias, cervezas, etc -> agorostidi@sinologic.com

6 de Noviembre de 2013

top related