Fórum Ajuda com WEB-PUSH #620868
20/12/2023
0
Olá. Estou enfrentando dificuldades em enviar minhas notificações push(web-push) para meus usuários inscritos. Segue código abaixo que estou utilizando para enviar a solicitação de envio.
Esse código acima, não consigo de forma alguma enviar notificação aos meus usuários inscritos. Por vezes, tenho que clicar 2 vezes seguidas para envio das 2 notificações. Ou seja clico na 1 vez não vai, clico mais 1 vez rapidamente e envia as 2 notificações
async function(properties) {
const webpush = require(''web-push'');
// Configurar os detalhes do VAPID
const vapidDetails = {
subject: ''mailto:traderelite7@gmail.com'',
publicKey: properties.vapid_public, // Certifique-se de que ''properties'' está acessível
privateKey: properties.vapid_privat // Corrigido ''vapid_privat'' para ''vapid_private''
};
webpush.setVapidDetails(
vapidDetails.subject,
vapidDetails.publicKey,
vapidDetails.privateKey
);
// Exemplo de carga útil da notificação
let payload = JSON.stringify({
title: ''Exemplo de Notificação'',
body: ''Esta é a mensagem da notificação.'',
icon: ''https://cdn.icon-icons.com/icons2/2699/PNG/512/firebase_logo_icon_171157.png''
});
webpush.sendNotification(properties.subscription, payload);
} Esse código acima, não consigo de forma alguma enviar notificação aos meus usuários inscritos. Por vezes, tenho que clicar 2 vezes seguidas para envio das 2 notificações. Ou seja clico na 1 vez não vai, clico mais 1 vez rapidamente e envia as 2 notificações
Samuel Andrade
Curtir tópico
+ 0
Responder
Posts
20/12/2023
Samuel Andrade
Olá. Estou enfrentando dificuldades em enviar minhas notificações push(web-push) para meus usuários inscritos. Segue código abaixo que estou utilizando para enviar a solicitação de envio.
Esse código acima, não consigo de forma alguma enviar notificação aos meus usuários inscritos. Por vezes, tenho que clicar 2 vezes seguidas para envio das 2 notificações. Ou seja clico na 1 vez não vai, clico mais 1 vez rapidamente e envia as 2 notificações
async function(properties) {
const webpush = require(''web-push'');
// Configurar os detalhes do VAPID
const vapidDetails = {
subject: ''mailto:traderelite7@gmail.com'',
publicKey: properties.vapid_public, // Certifique-se de que ''properties'' está acessível
privateKey: properties.vapid_privat // Corrigido ''vapid_privat'' para ''vapid_private''
};
webpush.setVapidDetails(
vapidDetails.subject,
vapidDetails.publicKey,
vapidDetails.privateKey
);
// Exemplo de carga útil da notificação
let payload = JSON.stringify({
title: ''Exemplo de Notificação'',
body: ''Esta é a mensagem da notificação.'',
icon: ''https://cdn.icon-icons.com/icons2/2699/PNG/512/firebase_logo_icon_171157.png''
});
webpush.sendNotification(JSON.parse(properties.subscription), payload);
} Esse código acima, não consigo de forma alguma enviar notificação aos meus usuários inscritos. Por vezes, tenho que clicar 2 vezes seguidas para envio das 2 notificações. Ou seja clico na 1 vez não vai, clico mais 1 vez rapidamente e envia as 2 notificações
Editei para uma melhor análise
Responder
Gostei + 0
26/06/2025
Tiago Candido
Fala! Seu código está no caminho certo para o envio de notificações web push(https://www.e-goi.com/br/notificacoes-web-push/), mas tem alguns pontos que podem estar causando problema:
Os pares de aspas estão duplicados no require(''web-push'') e nos outros campos com aspas duplas. O correto seria usar aspas simples ou duplas normais. Exemplo:
const webpush = require('web-push');
Parece que há um erro de digitação aqui:
privateKey: properties.vapid_privat
O correto provavelmente seria vapid_private.
Certifique-se de que properties.subscription contém um objeto de inscrição válido, no formato retornado por PushManager.subscribe() no client-side. Caso contrário, o sendNotification vai falhar.
E vale lembrar que o payload precisa respeitar o limite de tamanho (geralmente até 4KB). E se estiver testando no Chrome, garanta que o service worker está ativo e com permissão concedida para notificações web push.
Se continuar dando erro, posta aqui a mensagem retornada pelo sendNotification que dá pra afunilar mais a causa.
Os pares de aspas estão duplicados no require(''web-push'') e nos outros campos com aspas duplas. O correto seria usar aspas simples ou duplas normais. Exemplo:
const webpush = require('web-push');
Parece que há um erro de digitação aqui:
privateKey: properties.vapid_privat
O correto provavelmente seria vapid_private.
Certifique-se de que properties.subscription contém um objeto de inscrição válido, no formato retornado por PushManager.subscribe() no client-side. Caso contrário, o sendNotification vai falhar.
E vale lembrar que o payload precisa respeitar o limite de tamanho (geralmente até 4KB). E se estiver testando no Chrome, garanta que o service worker está ativo e com permissão concedida para notificações web push.
Se continuar dando erro, posta aqui a mensagem retornada pelo sendNotification que dá pra afunilar mais a causa.
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)