26
Jornada técnica: Corporate IP Madrid, 22 de febrero 2011 Bloque III. Arquitectura Corporate IP en Symbian S60

Bloque III. Arquitectura Corporate IP en Symbian S60

Embed Size (px)

Citation preview

Page 1: Bloque III. Arquitectura Corporate IP en Symbian S60

Jornada técnica: Corporate IP

Madrid, 22 de febrero 2011

Bloque III. Arquitectura Corporate IP en Symbian S60

Page 2: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

1

Índice

Framework IMS ¿Qué es?Como usarlo

Capacidades IMSPresenciaMensajería

Capacidades SVADirectorio corporativoContactos en redSincronización agenda

01

02

03

Page 3: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

2

Antes de empezar…

No Symbian S60 newbies beyondthis point

Page 4: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

3

Posibles efectos secundarios

Page 5: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

4

Framework IMS

Telefónica España, S.A.movilforum

Page 6: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

5

Framework IMS ¿Qué es?

5

Framework IMS

Aplicación Corporate IPAplicación

Corporate IPCORPORATE

IP

Para que las aplicaciones utilicen las capacidades IMS es necesario que dispongan

de un punto de acceso a dichas capacidades y de un

perfil SIP

Page 7: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

6

Framework IMS ¿Qué es?

Nucleo de la gestión de las capacidades y los perfiles SIP

Funciones• Asociar capacidades a nuestra aplicación• Acceso al nucleo IMS• Registro y desregistro de perfiles SIP• Suscripción a eventos de los perfiles SIP

Page 8: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

7

Acceso a IMS

Funciones del stack SIP de Symbian• Acceso a redes de datos 2G a 3G• Registro de un perfil SIP concreto• Gestión de señalización SIP a bajo nivel

(métodos, diálogos, sesiones…)

Perfil SIP. Elementos de información• Datos de usuario (IMPU, IMPI, password)• Tipo de acceso SIP (seguridad, compresión,

perfil 3GPP/IETF…)• Datos de red (Proxy/SBC, Registrar,

dominio)

Page 9: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

8

Cómo usarlo (I)

1.Obtener instancia del IMSFramework y proporcionar una referencia a un objeto que implemente el ObserverCIMSFramework* iFramework = CIMSFramework::NewL( );iFramework->SetIMSFrameworkObserver( this );

Métodos de la interfaz del Observervirtual void IMSProfileEnabled() = 0;virtual void IMSProfileDisabled() = 0;virtual void IMSProfileRegistryError() = 0;virtual void IMSAppRegistered() = 0;virtual void IMSAppDeRegistered() = 0;virtual void IMSAppError() = 0;

Page 10: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

9

Cómo usarlo (II)

2. Crear el objeto contenedor de capacidades IMS: CIMSAppCapabilities* iIMSAppCapabilities = CIMSAppCapabilities :: NewL();iIMSAppCapabilities->SetAppUid( KMyAppUid );

CIMSPresenceCapability* cIMSPresence = CIMSPresenceCapability::NewL( );cIMSPresence->StartCapability();iIMSAppCapabilities-> AddIMSCapabilityL (_L("PUBLISH"), cIMSPresence);iIMSAppCapabilities-> AddIMSCapabilityL (_L("SUBSCRIBE"), cIMSPresence);iIMSAppCapabilities-> AddIMSCapabilityL (_L("NOTIFY"), cIMSPresence);

3. Añadir las capacidades IMS que utilice nuestra aplicaciónEjemplo (basado en la capacidad de presencia)

Page 11: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

10

5. Solicitar inicio de registro del perfil SIP

Cómo usarlo (III)

4. Registro de la aplicación con las capacidades deseadas en el IMSFrameworkTInt err = iFramework->RegisterIMSApp( iIMSAppCapabilities );

iFramework->RegisterSipProfile();

Page 12: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

11

Cómo usarlo (y IV)

Resumen•Obtener instancia del framework•Asignar el observer•Crear el objeto contenedor de la

capacidades•Crear las capacidades y añadirlas al

objeto contenedor•Registrar las capacidades de

nuestra aplicación en el framework•Registrar el perfil SIP

Page 13: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

12

Capacidades IMS

Telefónica España, S.A.movilforum

Page 14: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

13

Mensajería IMS. Introducción

APIs Corporate IP: IM Modo Pager• Basado en método SIP MESSAGE (RFC 3428)• Sesiones 1-a-1, contenidos pequeños-medios• Cualquier tipo de contenido.• Soporte de contenido text/plain OBLIGATORIO• Soporte de contenido message/cpim OPCIONAL

Modos de comunicación• Persona a persona / Persona a servicio / Persona a

máquina• Tiempo real / diferida

Page 15: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

14

Mensajería IMS. Cómo usarlo (I)

Procedimiento de creación de la capacidadCIMSIMCapability* cIMSIM = CIMSIMCapability::NewL( );cIMSIM->StartCapability();cIMSIM->SetIMObserver( this );iIMSAppCapabilities->AddIMSCapabilityL( _L("MESSAGE"), cIMSIM );

virtual void MessageAcceptedL( CIMSIMCapabilityHandler* aHandler );virtual void MessageErrorL( TInt aErrorCode, CIMSIMCapabilityHandler* aHandler );virtual void MessageReceivedL( CIMSIMCapabilityHandler* aHandler );

Interfaz del Observer de la capacidad

Page 16: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

15

Mensajería IMS. Cómo usarlo (II)

Ejemplo: envío de IMCIMSIMCapability* cap = ( CIMSIMCapability* ) iIMSAppCapabilities->GetIMSCapabilityL( _L("MESSAGE") );CIMSIMCapabilityHandler* handler = ( CIMSIMCapabilityHandler* )cap->GetNewCapabilityHandler( );handler->SetIMObserver( this );handler->SendInstantMessageL( aMessage, SIPUri8->Des() );//siendo la SIPUri8 la dirección del contacto

Page 17: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

16

Mensajería IMS. Cómo usarlo (III)

Recepción IM. Procedimiento• 1. Suscripción a eventos del Observer de IM• 2. Extracción de dirección SIP del usuario

destino del mensajeaHandler->GetRecipientLC();

aHandler->GetSenderLC();

aHandler->GetMessageContent();

CIMSIMCapability* cap = ( CIMSIMCapability* ) iIMSAppCapabilities->GetIMSCapabilityL( _L("MESSAGE") );cap->DeleteHandler( aHandler );

• 3. Extracción de dirección SIP del usuario origen del mensaje

• 4. Extracción del contenido mensaje

• 5. Eliminar Handler de la capacidad una vez tratado el evento

Page 18: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

17

Mensajería IMS. Cómo usarlo (y IV)

Ejemplo recepción mensajevoid CIMCapabilityCore::MessageReceivedL( CIMSIMCapabilityHandler* aHandler )

{iObserver->MessageReceived( aHandler-> GetMessageContent(), *aHandler-> GetSenderLC() );CleanupStack::PopAndDestroy();CIMSIMCapability* cap = ( CIMSIMCapability*) iIMSAppCapabilities->GetIMSCapabilityL( _L("MESSAGE") );cap->DeleteHandler( aHandler );}

Page 19: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

18

Una recomendación…

Page 20: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

19

Ya podeis mirar… ¡No era para tanto!

Page 21: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

20

Capacidades SVA

Telefónica España, S.A.movilforum

Page 22: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

21

Directorio corporativo. Resumen

Suscribirse a los paquetes de eventos “address-book” y “service-package”Obtener una instancia de NetworkFavouritesEngineEjecutar método de búsqueda por el criterio de búsqueda deseadoObtener y presentar/utilizar los resultados de la búsqueda

Page 23: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

22

Contactos en red. Resumen

Suscribirse a los paquetes de eventos “address-book” y “service-package”Obtener una instancia de NetworkFavouritesEngineEjecutar la operación deseada

Page 24: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

23

Sincronización de agenda (I)

La sincronización de agenda nos permite sincronizar la agenda de contactos de nuestras aplicaciones con la agenda de contactos del usuario en el servicio Copiagenda

Page 25: Bloque III. Arquitectura Corporate IP en Symbian S60

movilforumTelefónica España, S.A.

24

Sincronización de agenda (II)

Procedimiento para sincronización

CSyncMLCapabilityCore* iSyncMLCore = CSyncMLCapabilityCore::NewL( this );iSyncMLCore->SetObserver( aSyncMLCapabilityCoreObserver );iSyncMLCore->StartSynchronization( aSyncType );

Métodos de sincronización posibles• ESmlTwoWay• ESmlOneWayFromServer• ESmlOneWayFromClient• ESmlSlowSync• ESmlRefreshFromServer• ESmlRefreshFromClient

ESmlOneWayFromClient es el método aconsejado

Page 26: Bloque III. Arquitectura Corporate IP en Symbian S60