Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revisionBoth sides next revision
en:wiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:16-sys-message:start [2018/02/28 15:34] – [SYS MESSAGE Node] patriciaen:wiki:2.-desarrollo-app:2.3.-codigo:c.-eventos:16-sys-message:start [2018/09/03 18:45] – [SYS MESSAGE Node] ejetoro
Line 1: Line 1:
 +{{indexmenu_n>1}}
 +====== SYS MESSAGE Node ======
 +\\
 +The **sys-message** node is a special node of the "Companies" collection, to receive events from <nowiki>XOneLive</nowiki>  \\
 +Used to make actions when some of the events carried out by <nowiki>XOneLive</nowiki> are happening. \\
 +These events are numerically coded, and following we show an example of each one of them where we show a descriptive message of the action which every event code belongs to.\\
 +\\
 +
 +<code xml>
 +<sys-message>
 + <action name="runscript">
 + <param name="codigo" />
 + <param name="message" />
 + <!-- Este parámetro liveResponse en iOS aún no está implementado
 + <param name="liveResponse" />
 + -->
 + <script language="javascript">
 + sysMessage(codigo,message);
 + </script>
 + </action>
 +</sys-message>
 +</code>
 +
 +<code javascript>
 +function sysMessage(codigo,message) {
 + var cadena="";
 + switch(codigo) {
 +
 + case 1000:
 + cadena=" Actualización descargándose (un mensaje por cada actualización).";
 + break;
 +
 + case 1001:
 + cadena=" Actualización aplicada (un mensaje por cada actualización).";
 + break;
 +
 + case 1002:
 + cadena=" Se han aplicado todas las actualizaciones (al comprobar las actualizaciones puede haber más de una, éste se invoca al aplicar todas).";
 + break;
 + 
 + case 1003:
 +
 + /* Provisionamiento seguro. */
 + /* Declarar el nodo sys-message requiere que este caso lo controle el programador,
 + /* es responsabilidad del programador limpiar la cola de réplica y cerrar la aplicación.
 + /* ************************ */
 +
 + ui.msgBox("Advertencia, se ha programado una actualización de base de datos. Se va a replicar todos los datos y cerrar la aplicación.", "Mensaje", 0);
 + var bResult = replica.processReplicatorQueue(liveResponse);
 + if (bResult) {
 + //ui.msgBox("Cola de salida del replicador procesada correctamente. Cerrando aplicación.", "Mensaje", 0);
 + appData.failWithMessage(-11888, "##EXITAPP##");
 + } else {
 + ui.showToast("Error al procesar la cola de salida");
 + }
 + break;
 +    }
 +}
 +</code>