Documentation Index
Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
Use this file to discover all available pages before exploring further.
O que é um feed de atividades?
Um feed de atividades permite que os usuários vejam o histórico de notificações que receberam dentro do seu aplicativo.
O OneSignal se concentra em entregar notificações, mas atualmente não armazena o histórico de mensagens enviadas para cada usuário individual. Para construir essa funcionalidade, você precisará armazenar os dados de notificação você mesmo—seja no seu servidor backend ou diretamente no dispositivo do usuário.
Salvando no servidor
Abordagem recomendadaEm vez de confiar no processamento em segundo plano no seu aplicativo, use a API REST Create notification para enviar cada notificação e também armazenar uma cópia no seu servidor. Então, quando o aplicativo for iniciado, ele pode verificar o servidor para atualizações.Uma vez que os dados estejam armazenados, você pode recuperar e exibir o histórico de notificações do usuário a qualquer momento.Criar um feed de atividades usando o OneSignal Event Streams
O recurso Event Streams do OneSignal fornece uma maneira escalável de transmitir eventos em tempo real do seu aplicativo para seus sistemas backend ou data warehouse. Isso permite que você construa um feed que reflete o comportamento do usuário dentro do aplicativo—como seguir, comentários, compras ou eventos de notificação—sem atualizar manualmente o feed dentro do seu aplicativo.Como funciona
O Event Streams exporta dados de eventos ao vivo incluindo:
- Entregas de notificação
- Aberturas e cliques de email/SMS
- Ações acionadas pelo usuário
Destinos incluem:
- Webhooks (seus endpoints HTTP)
- Amazon Kinesis
- Amazon S3
- Google Cloud Storage
- BigQuery
- E mais
Seu sistema recebe esses eventos conforme eles ocorrem e pode usá-los para atualizar uma UI de feed ou pipeline de analytics.Habilitar Event Streams
- Vá para o OneSignal Dashboard > Settings > Event Streams.
- Escolha um destino como um Webhook ou pipeline de dados (por exemplo, Amazon Kinesis).
- Selecione os eventos que você deseja transmitir (por exemplo,
message.sent, message.delivered, message.clicked).
Configurar seu backend para lidar com dados de eventos
-
Crie um webhook ou consumer que ingere dados de eventos.
-
Analise o payload do evento para extrair campos relevantes como:
external_id (o ID do usuário)
- tipo
event (message.delivered, etc.)
timestamp
contents (mensagem de notificação)
additional_data (quaisquer metadados personalizados)
Armazenar e estruturar entradas do Feed de Atividades
- Salve esses eventos no seu banco de dados em um formato adequado para consulta e renderização.
{
"message.id": "f3c9cd09-10d7-4f59-b9bc-66e16607f1d5",
"message.name": "the-name-you-set",
"message.title": "Claim 50% Off Today", // email subject example
"message.title": "{'en':'the message title/headings'}", // push title example
"message.contents": "{'en':'the message content'}",
"message.template_id": "the-template-uuid-if-set",
"message.url": "the-message-url",
"message.app_url": "the-message-app-url",
"message.web_url": "the-message-web-url"
}
Renderizar o feed no seu aplicativo
- Construa um componente frontend (por exemplo, React, SwiftUI ou Android View) para consultar e exibir eventos recentes para o usuário logado.
- Opcionalmente inclua filtros ou agrupamento por tipo de evento.
Aprimorar com metadados adicionais
-
Ao enviar notificações, inclua
additional_data para fornecer contexto ao feed, por exemplo:
{
"action": "commented",
"post_id": "xyz123"
}
-
Isso permite que você crie entradas de feed ricas como “Jane comentou na sua postagem.”
Exemplos de casos de uso
- E-commerce: Mostrar confirmações de pedidos, atualizações de envio e promoções.
- Aplicativos sociais: Mostrar curtidas, comentários, seguir.
- Plataformas SaaS: Rastrear atribuições de tarefas, menções ou logs de atividades.
Benefícios
- Atualizações em tempo real via streaming de eventos
- Lógica e exibição totalmente personalizáveis
- Arquitetura escalável orientada por backend