Messenger Activity para solo un usuario
Este tipo de Activities no necesariamente se deben implementar los manejadores de eventos del objecto Channel porque no hay una conexión con otro cliente de Windows Live Messenger y tampoco se envían invitaciones. Las Actividades para un solo usuario pueden ser usadas para enviar y recibir mensajes instantáneos para lo cual se necesita establecer los determinados permisos para que el Activity pueda participar en el intercambio de mensajes instantáneos.
Para enviar mensajería instantánea el Activity puede utilizar los siguientes métodos del objeto Channel EnterIM, SendIM, SendIMAsUser y puede recibir los mensajes instantáneos utilizando la propiedad IM dentro del manejador OnIMReceived del objeto Channel.
En el siguiente ejemplo es un Activity que permite a los vendedores informar a sus cliente desde la ventana de conversación de Windows Live Messenger el precio de un listado desde productos sin la necesidad de que el vendedor tenga que ingresar a una determina App para poder obtener el listado precio. De esta forma el vendedor puede dar respuestas a sus clientes de una forma más rápida y eficiente.
Cuando el Activity carga es invocado el método Javascript Initialize() que se encarga de invocar un WebService que retorna un listado de productos al método de devolución de llamada GetProduct() que se encarga de generar una serie de controles HTML que serán colocados en el control DIV llamado "Productos", como manejador del evento onclick de los controles HTML tipo Button se les asigna el método enviar y se envía como parámetro el índice que corresponde a cada producto.
Cuando el usuario realiza un clic sobre el botón enviar de cada producto el método enviar es invocado. Este método se encarga de recuperar el objeto producto mediante el índice del producto enviado como parámetro al método, generar el mensaje y enviarlo mediante el método SendIM del objeto Channel.
Para poder utilizar cualquiera de los objetos que se encuentra dentro del API de Messenger Activity se debe utilizar el siguiente prefijo windows.external.
Para ejecutar el Activity se debe ejecutar este App Web ASP.NET cuando este app esta en ejecución solo es necesario copiar la URL a la etiqueta URL del archivo de configuración MSGRP2P.xml, en la parte final pueden descargar este archivo XML con los permisos necesarios establecidos según los requerimientos para utilizar los métodos EnterIM, SendIM y SendIMAsUser. Lo único que se debe hacer establecer la URL de su proyecto.
Como se ejecuta el Activity
Al momento de realizar los clic sobre los botones enviar del listado de producto del Activity este envía unos mensajes instantáneos al usuario remoto.
Si se utiliza el método SendIMAsUser los mensajes instantáneos aparecerán que como si los fuera enviado a nombre del usuario y no ha nombre de el Activity.
Para el desarrollo de Activities es muy conveniente desactivar el uso de puertos dinámicos de la aplicación Web en la pestaña del panel de propiedades del proyecto.