+
Elastix como Plataforma
para Nuevos Desarrollos
Por Andres Gorostidi
+¿ Que es Elastix ?
Distribución de Asterisk, añadiendo al mismo un Interfaz
Gráfico (FreePBX), y una seria de utilidades : VoIP, Fax,
Mensajeria Instantanea, 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 ¿ Porqué ?
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 !!!
Apliances 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 -> Ejemplo,
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 Codificacion
Ejemplo:
Supongamos que queremos obtener la n asociada al usuario logeado.
//El usuario logoneado se almacena en la variable de n$_SESSION[“elastix_user”]
$username = $_SESSION[“elastix_user”];
$extension = $pACL->getUserExtension($username);
Si deseamos que nuestro dulo haga ciertas tareas si el usuario logoneado es del grupo “administrador” y otras si no, amos añadir lo siguiente:
if($pACL->isUserAdministratorGroup($username)){
//Do some task for administrators
} else{
}
+Casos Practicos
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
+Elastix Connect
Reutilizació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 ConnectMy Extension – Desktop Notifier
Cliente Windows (tanto
Desktop como Metro)
URL Launcher y Desktop
Notifier
Click –to- call
API de Desarrollo -> AMI
Connector
+Elastix Connect
GXP-2200 Edition
• Acceso a Directorio Elastix
• Acceso a “My Extension”
• OOO – Out of The Office
• URL Launcher
• Gestion de Colas
+Elastix Connect
Android 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 Elastic Connect:
API de Sincronizacion Contactos
Seguridad: Protocolo Port-Knock
Integración ECCP / CallCenter - CallCentet
Integración más Telefonos 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…
+
11/17/2013
¿ Preguntas ?
Stand de Elastix y/o EuropeSIP
Correo [email protected]
GRACIAS POR VENIR Y POR SU ATENCIÓN !!!!
Por favor, si le ha gustado la presentación, votela!!
Pruebe ElastixConnect !!! Recoja su NFC TAG !!!
Para más info, quejas, sugerencias, cervezas, etc -> [email protected]