Página inicial do Docs → Serviços Atlas App
Notificações por push [Preterido]
Nesta página
- Visão geral
- Interface de gerenciamento
- Enviar uma notificação push
- Configurar clientes para receber notificações push
- Modelos de regra
- As notificações devem ter um título específico
- As notificações devem ser para um tópico específico
- As notificações só podem ser enviadas para um conjunto limitado de IDs de usuário
- Regras de notificação push
- Campos do documento de notificação
Importante
Suspensão de serviços de terceiros e notificações push
Os serviços de terceiros e as notificações por push no App Services foram preteridos em favor da criação de pontos de extremidade HTTP que usam dependências externas em funções.
Webhooks foram renomeados e agora são chamados de pontos de conexão HTTPS sem nenhuma alteração em seu comportamento. Recomendamos migrar webhooks existentes.
Os serviços existentes continuarão a funcionar até 1 de novembro de 2024.
Como os serviços de terceiros e as notificações por push agora estão obsoletos, eles foram removidos por padrão da UI do App Services. Para gerenciar um serviço de terceiros ou uma notificação por push existente, adicione as configurações de volta à UI fazendo o seguinte:
Na navegação à esquerda, na seção Manage, clique em App Settings.
Ative a chave de alternância ao lado de Temporarily Re-Enable 3rd Party Services e salve as alterações.
Visão geral
O Atlas App Services oferece suporte à integração de aplicativos móveis (Android e iOS) com o serviço Firebase Cloud Messaging (FCM) para fornecer notificações push. Você configura e envia mensagens de notificação de dentro do console do Atlas App Services, enquanto os clientes se registram no Firebase Cloud
Messaging (FCM)
para mensagens enviadas para tópicos específicos.
Interface de gerenciamento
A tela Push Notifications na interface do usuário do App Services permite escrever rascunhos de notificação, enviar notificações aos usuários e definir regras de notificação.
Existem quatro guias na tela Push Notifications:
Nome da aba | Descrição |
---|---|
Draft | Na guia Rascunho, você pode visualizar uma lista de rascunhos de mensagens. Para as mensagens de rascunho, você pode:
|
Sent | A guia Enviado mostra as mensagens que o App Services já enviaram aos clientes registrados. A partir daqui, você pode visualizar uma lista das mensagens enviadas. Para as mensagens enviadas, você pode:
|
Config | Na guia Configurações, você fornece as credenciais do FCM (ID do remetente e chave API legada). |
Rules | Opcionalmente, você pode especificar Regras de notificação por push para restringir os tipos de notificações por push que seu aplicativo envia. |
Enviar uma notificação push
Você pode enviar novas notificações push a partir da página Push Notifications. Clique no botão Send New Notification para abrir a caixa de diálogo Send New Notification . Nesta caixa de diálogo, você fornece a mensagem de notificação, o rótulo e o público do tópico relevante.
Configurar clientes para receber notificações push
Modelos de regra
As notificações devem ter um título específico
{ "%%args.notification.title": "Test Notification Please Ignore" }
As notificações devem ser para um tópico específico
{ "%%args.to": "%%values.validTopics" }
As notificações só podem ser enviadas para um conjunto limitado de IDs de usuário
{ "%%true": { "%function": { "name": "allUserIdsAreValid", "arguments": [ "%%args.userIds" ] } } }
Observação
Este modelo chama uma função de exemplo chamada allUserIdsAreValid
que faz o seguinte:
Aceita a lista de User IDs fornecida no argumento
userIds
Executa queries no MongoDB para um documento de usuário que corresponda ao ID de usuário atual
Compara o número de telefone fornecido com o número listado no documento do usuário
Retorna o resultado booleano da comparação
exports = function(toPhone) { const mdb = context.services.get('mongodb-atlas'); const users = mdb.db('demo').collection('users'); const user = users.findOne({ _id: context.user.id }); return user.phoneNumber === toPhone; }
Regras de notificação push
Para especificar regras para notificações push, clique na guia Rules na página Push Notifications.
Observação
Diferentemente de outros serviços no App Services, as regras para notificações push são opcionais. Por padrão, todas as notificações push são permitidas. No entanto, uma vez que você especifique uma regra, as restrições impostas por essa regra entrarão em vigor.
As regras de notificações push permitem os seguintes argumentos. Você pode acessá-los com a expansão "%%args"
:
Campo | Tipo | Descrição |
---|---|---|
userIds | Array de strings. | As IDs de usuário dos destinatários da mensagem. |
to | String | O destinatário da mensagem. O valor pode ser o token de registro de um dispositivo, a chave de notificação de um grupo de dispositivos ou um único tópico (prefixado com /topics/ ). |
registrationTokens | Array de strings. | A lista de tokens de registro para os dispositivos que recebem a mensagem multicast. |
priority | string | A prioridade da notificação. O valor é "high" ou "normal" . Corresponde à priority opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
collapseKey | string | A chave de colapso associada a mensagens recolhíveis. Corresponde à collapse_key opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
contentAvailable | boleano | Um sinalizador que determina se os aplicativos clientes ociosos devem ser ativados após o recebimento da mensagem. Corresponde à content_available opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
mutableContent | boleano | Um sinalizador que determina se o conteúdo da notificação pode ser modificado antes de ser exibido para o usuário. Corresponde à mutable_content opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
timeToLive | int | Tempo máximo (em milissegundos) para manter a mensagem se o dispositivo estiver off-line. O valor válido varia de 0 a 2419200. Corresponde à |
data | Documento JSON | Carga útil para mensagem de dados. data documento consiste em pares de chave-valor personalizados. Corresponde à data opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
notification | Documento JSON | Carga útil para notificação. notification documento consiste em campos predefinidos. Corresponde à notification opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
Campos do documento de notificação
A tabela a seguir lista os campos do documento notification
que estão disponíveis como um campo permitido para as regras de notificações push. Para acessar um desses campos em uma regra, use "%%args.notification.<field>"
.
Campo | Tipo | Descrição |
---|---|---|
title | string | O título da notificação. Corresponde à title opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
body | string | O corpo da notificação. Corresponde à body opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
sound | string | O som a ser reproduzido após o recebimento da notificação. Corresponde à sound opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
clickAction | string | A ação a ser tomada quando um usuário clica na notificação. Corresponde à click_action opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
bodyLocKey | string | A chave para localização da string do corpo. Corresponde à body_loc_key opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
bodyLocArgs | string | Os valores da string para substituir os especificadores de formato para localização na string do corpo. Corresponde à body_loc_args opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
titleLocKey | string | A chave para localização da sequência de títulos. Corresponde à title_loc_key opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
titleLocArgs | string | Os valores da string para substituir especificadores de formato para localização na string de título. Corresponde à title_loc_args opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
icon | string | Apenas para Android. O ícone de notificação. Corresponde à icon opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
color | string | Apenas para Android. Indica a cor do ícone no formato #rggbb. Corresponde à color opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
tag | string | Apenas para Android. Se especificado, cada notificação não resulta em uma nova entrada, mas substitui uma entrada existente pela tag especificada. Se não for definido, cada notificação resultará em uma nova entrada. Corresponde à tag opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |
badge | string | Apenas para iOS. O selo no ícone inicial do aplicativo gclient. Corresponde à badge opção para mensagens HTTP JSON via FCM. Consulte a referência do protocolo HTTP do FCM . |