Pular para o conteúdo principal

Visão geral

A integração OneSignal + MySQL permite a sincronização de eventos personalizados do seu banco de dados MySQL para o OneSignal para acionar campanhas de mensagens automatizadas e Journeys com base no comportamento do usuário. MySQL é um sistema de gerenciamento de banco de dados relacional de código aberto amplamente usado, ideal para armazenar dados de eventos estruturados que podem alimentar campanhas de mensagens personalizadas.

Requisitos

  • Acesso a Event Streams para eventos de mensagem de saída (Limitações de plano e excedentes se aplicam)
  • Acesso a Custom Events para sincronização de eventos de entrada (Limitações de plano e excedentes se aplicam)
  • Plano de Conta Atualizado (não disponível em apps gratuitos)

MySQL

  • MySQL Community 5.7 ou posterior, ou versões recentes do MariaDB
  • Tabelas de eventos contendo dados comportamentais estruturados
  • Conectividade de rede do OneSignal para sua instância MySQL
  • TLS v1.2 ou superior suportado

Configuração

1

Criar usuário dedicado para OneSignal

Crie uma conta de usuário dedicada com permissões somente leitura:
-- Create census user with ability to sign in with a password
CREATE USER CENSUS IDENTIFIED BY '<strong, unique password>';

-- Grant read-only access to your event schema
GRANT SELECT ON <your_schema>.* TO CENSUS;
Se você tiver vários esquemas que contêm dados de eventos, repita a instrução GRANT SELECT para cada esquema.
2

Configurar conexão OneSignal

No OneSignal, vá para Data > Integrations e clique em Add Integration.Selecione MySQL e forneça seus detalhes de conexão:
  • Host: Nome do host do seu servidor MySQL
  • Port: Porta MySQL (tipicamente 3306)
  • Database: Nome do banco de dados contendo suas tabelas de eventos
  • Username: CENSUS
  • Password: A senha que você criou acima
3

Testar conexão

Clique em Test Connection para verificar se o OneSignal pode se conectar com sucesso ao seu banco de dados MySQL e acessar suas tabelas de eventos.

Mapeamento de dados de evento

Mapeie seu para o formato de eventos personalizados do OneSignal:
Campo OneSignalDescriçãoObrigatório
nameevent_nameIdentificador de eventoSim
external_iduser_idIdentificador de usuárioSim
timestampevent_timestampQuando o evento ocorreuNão
propertiesevent_dataNão

Exemplo de Esquema de Tabela de Evento

CREATE TABLE user_events (
    id BIGINT AUTO_INCREMENT PRIMARY KEY,
    event_name VARCHAR(100) NOT NULL,
    user_id VARCHAR(255) NOT NULL,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    event_data JSON,
    session_id VARCHAR(255),
    device_type VARCHAR(50)
);

Modo de Tabela

Selecione sua tabela de eventos diretamente e o OneSignal sincronizará todas as linhas como eventos individuais.

Modo de Consulta SQL

Escreva consultas SQL personalizadas para transformar seus dados de eventos:
-- Example: Recent high-value events
SELECT
    event_name,
    user_id,
    created_at as timestamp,
    event_data as payload
FROM user_events
WHERE created_at >= DATE_SUB(NOW(), INTERVAL 7 DAY)
    AND JSON_EXTRACT(event_data, '$.value') > 100
ORDER BY created_at DESC;

Configuração Avançada de Rede

O OneSignal pode se conectar com sucesso a instâncias MySQL usando controles de rede avançados, incluindo restrições de região, listas de permissão de endereços IP ou Túnel SSH. O OneSignal suporta MySQL com versões TLS 1.2 e superior para conexões seguras.

FAQ

Quais versões do MySQL são suportadas?

O OneSignal suporta MySQL Community 5.7 ou posterior, assim como versões recentes do MariaDB.

Posso me conectar ao MySQL em uma rede privada?

Sim, o OneSignal suporta túnel SSH e listas de permissão de IP para conectar a instâncias MySQL em redes privadas ou atrás de firewalls.