Pular para o conteúdo

Integração de streaming de eventos

Visão geral da integração

Anchor link to

Tipo de integração

Anchor link to

Fonte: Os dados são enviados do Pushwoosh para o seu sistema via HTTP ou gRPC com base nos gatilhos de eventos configurados.

Como funciona a integração?

Anchor link to

O Pushwoosh transmite dados de eventos de comunicação (por exemplo, atividade de push/e-mail) para um endpoint definido pelo cliente. Os dados são enviados em fluxos de lote em intervalos programados ou ao atingir um tamanho mínimo de lote.

Os dados são enviados apenas se corresponderem aos eventos, plataformas e filtros opcionais selecionados (códigos de campanha/mensagem, atividade ao vivo). O endpoint do cliente deve estar pronto para receber e, opcionalmente, responder com um status.

Glossário

Anchor link to

URL do Endpoint: Endpoint do lado do servidor que permite o recebimento de requisições. O cliente pode especificar uma porta, se necessário.

Exemplos:

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook_endpoint

Lista de entidades sincronizadas

Anchor link to
  • Eventos de estatísticas de comunicação (por exemplo, Push Enviado, E-mail Entregue)

Casos de uso

Anchor link to
  • Rastreamento de engajamento em tempo real

Monitore as interações do usuário, como push enviado, e-mail aberto ou mensagem entregue, à medida que acontecem, permitindo visibilidade imediata do desempenho da campanha.

  • Integração com análises externas

Transmita eventos para plataformas de análise de terceiros para relatórios e análises centralizados.

  • Fluxos de trabalho de usuário automatizados

Acione ações em sistemas externos (como CRMs ou ferramentas de automação de marketing) com base nos comportamentos do usuário, por exemplo, envie uma mensagem de acompanhamento quando um usuário abrir um e-mail.

Configurando a integração

Anchor link to

Para configurar a integração:

  1. Na sua conta Pushwoosh, vá para Settings > 3rd party Integrations, encontre Event streaming integration e clique em Configure.

Configurar integração de streaming de eventos

  1. Na janela que se abre, preencha os campos necessários.

Preencha os campos necessários

Insira o URL do endpoint

Anchor link to

No campo Endpoint URL, insira o URL completo para onde os eventos serão enviados, incluindo o protocolo e a porta, se aplicável.

Exemplo

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook\_endpoint

Selecione os eventos

Anchor link to

No menu suspenso Events, selecione pelo menos um evento. Se nenhum for selecionado, a validação falhará. A lista de eventos é gerenciada pelo backend и pode mudar com o tempo.

Forneça as credenciais de autorização

Anchor link to

Se exigido pelo seu servidor, insira o valor completo para o cabeçalho Authorization no campo Authorization.

Exemplos:

  • Bearer your_token_here

  • Basic base64encoded_credentials

Escolha o tipo de transporte

Anchor link to

No menu suspenso Transport type, escolha o protocolo de entrega para a transmissão de eventos: HTTP ou gRPC. Cada um tem comportamento e configuração específicos.

Com o tipo de transporte HTTP, o Pushwoosh envia dados em lotes com base em uma das seguintes condições:

  • Pelo menos 100 eventos estão prontos para serem enviados, ou

  • Uma hora se passou desde a última transmissão.

Após o envio dos dados, a conexão é fechada assim que uma resposta bem-sucedida é recebida.

Se o servidor responder com um erro 5xx, o Pushwoosh tentará novamente a requisição de acordo com a política de nova tentativa definida.

Mecanismo de nova tentativa

TentativaAtraso
1 segundo
3 segundos após a 1ª tentativa
8 segundos após a 2ª tentativa

Se todas as novas tentativas falharem, a requisição é descartada.

Timeout

O timeout padrão para uma requisição é de 30 segundos. Isso pode ser personalizado mediante solicitação via suporte.

O tipo de transporte gRPC usa streaming bidirecional para a transmissão de dados. Saiba mais na documentação do gRPC.

Um stream é aberto quando uma das seguintes condições é atendida:

  • Pelo menos 1.000 eventos estão prontos para entrega
  • Uma hora se passou desde que o último stream foi aberto

O stream é fechado após o envio dos eventos. Isso garante que um novo stream não seja aberto para cada evento individual em um curto período de tempo.

Mecanismo de nova tentativa
Cada evento inclui um uuid único. Se um evento falhar:

  1. A resposta deve incluir um status diferente de "Success"
  2. O uuid original da requisição deve ser incluído

O Pushwoosh tentará novamente a entrega com base nesta resposta.

Configurações de conexão

Opções avançadas como TLS, keep-alive ou políticas de nova tentativa são configuradas manualmente via suporte e podem exigir o envolvimento do desenvolvimento.

Selecione as plataformas

Anchor link to

Na seção Platforms, selecione pelo menos uma plataforma para ativar o streaming de eventos.

Selecione pelo menos uma plataforma

As plataformas suportadas incluem:

  • iOS, Android, macOS, Windows, Amazon, Safari
  • Chrome, Firefox, Internet Explorer, Baidu, Huawei
  • Email, SMS, Line, Xiaomi, WhatsApp

Configure filtros avançados

Anchor link to

Na seção Advanced filters, refine os critérios de entrega de eventos usando filtros:

  • Live activity events: Habilite para receber eventos de atividade ao vivo. Esses eventos contêm apenas metadados, incluindo live_activity_id.

  • Campaign filters: Filtre por código de campanha. Apenas eventos vinculados a essas campanhas serão entregues.

  • Message filters: Filtre por código de mensagem. Apenas eventos vinculados a essas mensagens serão entregues.

Definir filtros avançados

Após preencher todos os campos obrigatórios, clique no botão Apply para salvar e ativar sua integração.

Detalhes e exemplo da requisição

Anchor link to
Endpointhttps://exampleclientendpoint.com/webhook_endpoint
Requisição HTTPPOST
AutenticaçãoNão
Tipo de requisiçãoFonte
Significado da requisiçãoEnviar requisições para o endpoint do webhook
CabeçalhosContent-Type: application/json

Exemplo de corpo da requisição

{
"event_name": "Email Opened",
"message_code": "E682-E6D92B9A-53E24868",
"campaign_id": 961048,
"platform": "Email",
"payload": "Welcome to Headway! 👋",
"application_code": "XXXXX-XXXXX",
"hwid": "user@example.com",
"user_id": "USER_ID",
"timestamp": 1723799271,
"journey_title": "",
"journey_point_title": "5_Welcome_ID_new"
}

Resposta
No momento, o código de resposta e o corpo são ignorados.

Como saber se a integração está funcionando?

Anchor link to

Você começará a receber requisições do Pushwoosh no seu endpoint configurado.