¡Esta es una revisión vieja del documento!



Es posible configurar el envío de notificaciones Push con el servicio XOneMonitor.

Para ello tendremos que hacer uso de un nodo CHECKING con una acción especial llamada “send-push”.

En este nodo checking tendremos que hacer uso de una SQL para obtener los diferentes valores, rescatando los destinatarios a los que enviar PUSH.

1.- Registro del Dispositivo en el servidor PUSH

2.- Envío del TOKEN recibido desde el servidor PUSH a la parte servidora.

3.- Envío del Mensaje desde la parte servidora al servidor de PUSH indicando los TOKEN destinatarios, para que este a su vez se lo envíe a los dispositivos.



Se debe realizar el registro del dispositivo en la nube para notificaciones Push de Google y envío del Token Push de vuelta al servidor que va a realizar el envío de las notificaciones.

Para esto se requiere
Definir el atributo push-id=“NumeroIdentificador” en el nodo <app> del mappings, siendo “NumeroIdentificador”, el Sender ID que se obtiene en la consola de APIs de Google, tal y como se ha explicado en el punto Para Dispositivo Android.
Se envía el Token Push al servidor externo, que preferiblemente se debe realizar con una conexión segura con una colección online. Ejecutar el siguiente método al loguearse en la aplicación, en concreto se indica el código en JavaScript.


Ejemplo:

   appData.registerPush(function(mEvento) 
  {
    mEvento.pushToken});


Envío del Mensaje Push


Para más información de cómo implementar los mensajes push en una aplicación, seguir el siguiente enlace:

http://developers.google.com/cloud-messaging/downstream

La aplicación del cliente, llamará al proveedor de push (google - apple) y éstos envían la notificación PUSH al dispositivo que sea.

Para que nos puedan enviar una notificación y que nuestro Framework sea capaz de interpretarla, junto con la información que se envíe, hay que añadir algunos parámetros “extra”:

Parámetros Extra
Dato “source”, con valor “push_server”. Necesario para que el framework pueda distinguir la pro-cedencia de la Notificación Push y actuar en consecuencia.
Dato “notification_title” Su valor será el título de la Notificación Push.
Dato “notification_message” Su valor será el mensaje de la Notificación Push.


El resto de Datos que se pasen, serán los que se reciban en el dispositivo para procesarlos como se crea conveniente, a continuación se pone un ejemplo de mensaje:

 { "data": {
    "datomensaje": "Esto es una prueba",
    "source": "push_server",
    "notification_title": "Titulo de la notificacion",
    "notification_message": "Mensaje de la notificacion"
  },
  "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdF..."
 }


Recepción del Mensaje Push


Para procesar el mensaje push, tendremos que definir un nodo “onpushnotificationclick” en la colección “Empresas”, donde se entrará directamente cuando el usuario pulse sobre la notificación que se reciba en el dispositivo.

En dicho nodo se pondrá un parámetro que en el ejemplo hemos llamado “mensajepush”, que contendrá los valores que hayamos recepcionado en el mensaje Push.
datomensaje es el nombre de uno de los datos que viene en el mensaje Push del Servidor.
Se pueden poner tantos como se necesiten, siempre teniendo en cuenta que NO pueden llamarse con caracteres especiales, como espacios, acentos, ñ, etc…

 <onpushnotificationclick>
    <action name="runscript">
    <param name="mensajepush" />
            <script language="vbscript">
                ui.showToast "vbscript: " + mensajepush.datomensaje
         </script>
    </action>
 </onpushnotificationclick>


Más información de la Réplica con Push aquí