Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa | ||
wiki:3.-servidor:3.19.-tecnologia-push:e.-push-externo:start [2019/03/06 17:18] ejetoro [Registro del Dispositivo en el servidor PUSH] |
wiki:3.-servidor:3.19.-tecnologia-push:e.-push-externo:start [2019/03/11 10:25] (actual) ejetoro [Envío del Mensaje Push] |
||
---|---|---|---|
Línea 1: | Línea 1: | ||
===== Envío de PUSH con herramientas Externas ===== | ===== Envío de PUSH con herramientas Externas ===== | ||
\\ | \\ | ||
- | Es posible configurar las notificaciones Push a una aplicación realizada con XOne.\\ | + | Es posible configurar las notificaciones Push a través de una aplicación realizada con XOne.\\ |
- | El envío puede realizarse con una herramienta externa, el framework puede detectar dichas notificaciones, | + | El envío puede realizarse con una herramienta externa |
\\ | \\ | ||
==== Registro del Dispositivo en el servidor PUSH ==== | ==== Registro del Dispositivo en el servidor PUSH ==== | ||
\\ | \\ | ||
- | Se debe realizar el registro del dispositivo en el servidor de Push y el Token que recibamos del servidor cuando nos registremos, | + | Se debe realizar el registro del dispositivo en el servidor de Push y el Token que recibamos del servidor cuando nos registremos, |
+ | \\ | ||
+ | Para ello la plataforma XOne provee de un método **<wrap hi> | ||
+ | \\ | ||
+ | <code xml> | ||
+ | <!-- Código en la colección entry-point --> | ||
+ | <prop name=" | ||
+ | <prop name=" | ||
+ | <prop name=" | ||
- | ^Paso 1^ | + | <!-- Ponemos |
- | |Definir | + | |
- | |Se envía | + | < |
+ | <action name="runscript"> | ||
+ | <script language=" | ||
+ | <!-- En este caso cogemos los valores googleSenderId y googleApiKey que tenemos en BD del registro de la empresa actual, útil si tenemos varios entornos | ||
+ | self.MAP_SENDER_ID=appData.getCurrentEnterprise().SENDERID; | ||
+ | self.MAP_APIKEY=appData.getCurrentEnterprise().GOOGLEAUTHKEY; | ||
+ | self.MAP_TOKENPUSH=""; | ||
+ | |||
+ | <!-- En esta función registrarPush, nos registramos en el servidor | ||
+ | <!-- Le pasamos como parámetros | ||
+ | registrarPush(self.MAP_SENDER_ID,self); | ||
+ | // | ||
+ | </script> | ||
+ | </action> | ||
+ | </ | ||
+ | </code> | ||
\\ | \\ | ||
- | **Ejemplo: | + | 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, |
\\ | \\ | ||
- | <code javascript> | + | |
- | | + | <code javascript |
- | { | + | function registrarPush(sPushId, |
- | | + | |
- | … | + | /** Ordenamos el registro push. **/ |
- | }); | + | appData.registerPush(sPushId); |
+ | |||
+ | appData.bind(" | ||
+ | /* | ||
+ | * Lo que queramos hacer cuando ya tengamos registrado el dispositivo y tengamos token | ||
+ | */ | ||
+ | let ventana = ui.getView(selfObject); | ||
+ | if (ventana === null) { | ||
+ | return; | ||
+ | } | ||
+ | selfObject.MAP_TOKENPUSH = evento.pushToken; | ||
+ | ventana.refresh(" | ||
+ | // | ||
+ | }); | ||
+ | |||
+ | appData.bind(" | ||
+ | /* | ||
+ | * Aquí es donde recibimos un mensaje push, con los extras en forma de | ||
+ | * un objeto javascript normal y corriente. Previamente le hemos filtrado | ||
+ | * los extras del mensaje push verdadero que sean del framework */ | ||
+ | // | ||
+ | |||
+ | if (evento.notification-type===0){ | ||
+ | ui.showToast(evento.notification_title); | ||
+ | } | ||
+ | }); | ||
+ | |||
+ | appData.bind(" | ||
+ | // | ||
+ | }); | ||
+ | } | ||
</ | </ | ||
Línea 37: | Línea 90: | ||
\\ | \\ | ||
^Parámetros Extra^^ | ^Parámetros Extra^^ | ||
- | |**Dato** “source”, | + | |**Dato** “source”, |
|**Dato** “notification_title”| Su valor será el título de la Notificación Push.| | |**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.| | |**Dato** “notification_message”| Su valor será el mensaje de la Notificación Push.| |