¿Le resultó útil esta página?
Sus comentarios sobre este contenido son muy importantes. Háganos saber su opinión.
¿Tiene comentarios adicionales?
Caracteres restantes: 1500
Exportar (0) Imprimir
Expandir todo

Enviar notificación de inserción

Actualizado: junio de 2015

En un servicio móvil de back-end de JavaScript, los scripts de servidor que se registran en las operaciones de tabla y los trabajos programados usan el objeto push global para enviar notificaciones de inserción a las aplicaciones. Cuando se envían notificaciones de inserción desde una API personalizada, el objeto push se obtiene de la propiedad service del objeto request suministrado, como en el código siguiente que controla una solicitud POST:

exports.post = function(request, response) {
    var push = request.service.push;
    // Send a push request to one or more devices, 
    // and then return a 200 status code if no error occurs.
};

Para enviar notificaciones de inserción a un dispositivo, debe configurar el servicio móvil para que funcione con el proveedor de notificaciones de inserción específico de la plataforma. Al usar la integración de las bases de datos central de notificaciones, debe registrar los clientes con la base de datos central de notificaciones. Para obtener más información, vea Introducción a las notificaciones de inserción (Tienda Windows C# / Tienda Windows JavaScript / Windows Phone / iOS / Android).

Tienda Windows: el siguiente script envía una inserción como una notificación emergente para una aplicación aplicación de la Tienda Windows.

function insert(comment, user, request) {
    request.execute({
        success: function() {
            var sql = "SELECT channel FROM devices " +
                "INNER JOIN posts ON devices.userId = posts.userId " +
                "WHERE posts.id = ?";
            mssql.query(sql, [comment.postId], {
                success: function(results) {
                    if (results.length > 0) {
                        push.wns.sendToastText04(results[0].channel, {
                            text1: comment.username + ' commented on your post!'
                        }, {
                            success: function(pushResponse) {
                                console.log("Sent push:", pushResponse);
                            }
                        });
                    }
                }
            });
            // Write to the response for the original request 
            // while the push notification happens in the background.
            request.respond();
        }
    });
}

Windows Phone: el siguiente script envía la misma inserción que una notificación de cubierta para una aplicación Windows Phone 8.

function insert(comment, user, request) {
    request.execute({
        success: function() {
            var sql = "SELECT channel FROM devices " +
                "INNER JOIN posts ON devices.userId = posts.userId " +
                "WHERE posts.id = ?";
            mssql.query(sql, [comment.postId], {
                success: function(results) {
                    if (results.length > 0) {
                        push.mpns.sendFlipTile(results[0].channel, {
                            title: comment.username + ' commented on your post!'
                        }, {
                            success: function(pushResponse) {
                                console.log("Sent push:", pushResponse);
                            }
                        });
                    }
                }
            });
            // Write to the response for the original request 
            // while the push notification happens in the background.
            request.respond();
        }
    });
}

iOS: el siguiente script envía una notificación de texto a un dispositivo específico cuando se inserta un nuevo elemento en una tabla.

function insert(item, user, request) {
    request.execute({
        success: function() {
            // Write to the response and then send the push notification.
            request.respond();
            push.apns.send(item.deviceToken, {
                payload: { itemText: item.text, userId: user.userId } 
            });
        }
    });
}

Android: el siguiente script envía una notificación de texto a un dispositivo específico cuando se inserta un nuevo elemento en una tabla.

function insert(item, user, request) {
    request.execute({
        success: function() {
            // Write to the response and then send the push notification.
            request.respond();
            push.gcm.send(item.channel, item.text, {
                   success: function(response) {
                       console.log('Push notification sent: ', response);
                }, error: function(error) {
                       console.log('Error sending push notification: ', error);
                }
            });
        }
    });
}

Para obtener más información, vea la Referencia de scripts de servidor de Servicios móviles

Mostrar:
© 2015 Microsoft