Ana içeriğe atla

Genel Bakış

OneSignal + SQL Server entegrasyonu, kullanıcı davranışına dayalı otomatik mesajlaşma kampanyalarını ve Journey’leri tetiklemek için Microsoft SQL Server veritabanınızdan OneSignal’e özel etkinliklerin senkronize edilmesini sağlar. SQL Server, kurumsal uygulamalar ve veri ambarlama için tasarlanmış Microsoft’un ilişkisel veritabanı yönetim sistemidir.

Gereksinimler

SQL Server

  • Ağ erişimine sahip SQL Server örneği
  • Uygun izinlere sahip Veritabanı kullanıcısı
  • Yapılandırılmış davranışsal veriler içeren Etkinlik tabloları
  • OneSignal’den SQL Server örneğinize Ağ bağlantısı

Kurulum

1

OneSignal için özel kullanıcı oluşturun

Güçlü, benzersiz bir şifre ile özel bir kullanıcı hesabı oluşturun:
-- Create census user with the ability to sign in with a password
CREATE USER CENSUS WITH PASSWORD = '<strong-unique-password>';

-- Give the census user the ability to connect to database
GRANT CONNECT TO CENSUS;
Tüm SQL Server komutları, betiği çalıştırırken belirtilen veritabanı içinde çalışacaktır.
2

Okuma izinlerini verin

Etkinlik verilerinize salt okunur erişim sağlayın:
-- Give the census user the ability to read tables within the database
EXEC sp_addrolemember 'db_datareader', CENSUS;

-- Grant census user ability to read data from within a schema
-- Run this for each schema you intend OneSignal to access
GRANT SELECT, VIEW DEFINITION ON SCHEMA::<your-schema> TO CENSUS;
<your-schema>’yı etkinlik verilerini içeren gerçek şema adınızla değiştirin. OneSignal’in erişmesini istediğiniz her şema için bu komutu tekrarlayın.
3

Advanced Sync Engine'i Yapılandırın (İsteğe Bağlı)

Gelişmiş performans için, OneSignal’in senkronizasyon durumu için bir kayıt tutma şeması oluşturun:
-- Create a private bookkeeping schema where Census can store sync state
CREATE SCHEMA CENSUS AUTHORIZATION CENSUS;

-- Give the census user full access to the bookkeeping schema
GRANT ALTER, DELETE, EXECUTE, INSERT, REFERENCES, SELECT,
          UPDATE, VIEW DEFINITION ON SCHEMA::CENSUS TO CENSUS;

-- Give the census user the ability to create tables within the database
GRANT CREATE TABLE TO CENSUS;
Basic Sync Engine veya salt okunur mod kullanıyorsanız bu adımı atlayın.
4

OneSignal'e bağlanın

In OneSignal, go to Data > Integrations and click Add Integration.SQL Server’ı seçin ve aşağıdaki bağlantı ayrıntılarını sağlayın:
  • Host: SQL Server örneği hostname’iniz veya IP adresiniz
  • Port: 1433 (varsayılan) veya özel portunuz
  • Database: Veritabanı adınız
  • Username: CENSUS
  • Password: 1. Adımdan şifre

Event data mapping

Map your to OneSignal’s custom events format:
OneSignal FieldDescriptionRequired
nameevent_nameEvent identifierYes
external_iduser_idUser identifierYes
timestampevent_timestampWhen event occurredNo
propertiesevent_dataNo

Örnek Etkinlik Tablo Şeması

-- Example SQL Server event table
CREATE TABLE analytics.user_events (
    event_id BIGINT IDENTITY(1,1) PRIMARY KEY,
    event_name NVARCHAR(100) NOT NULL,
    user_id NVARCHAR(255) NOT NULL,
    event_timestamp DATETIME2 DEFAULT GETUTCDATE(),
    event_data NVARCHAR(MAX),
    session_id NVARCHAR(255),
    device_type NVARCHAR(50)
);

SQL Sorgu Modu

Etkinlik verilerinizi dönüştürmek için özel SQL sorguları yazın:
-- Example: Recent high-value events
SELECT
    event_name,
    user_id,
    event_timestamp,
    event_data
FROM analytics.user_events
WHERE event_timestamp >= DATEADD(day, -7, GETUTCDATE())
    AND JSON_VALUE(event_data, '$.value') > 100
ORDER BY event_timestamp DESC;

Gelişmiş Ağ Yapılandırması

OneSignal, bölge kısıtlamaları, IP adresi izin listeleri veya SSH Tünelleme dahil olmak üzere gelişmiş ağ kontrolleri kullanan SQL Server örneklerine başarıyla bağlanabilir. Ağ erişimini yapılandırma hakkında daha fazla bilgi için SQL Server yöneticinize veya OneSignal desteğine başvurun.

Sync Engine Seçenekleri

Basic Sync Engine

  • Etkinlik verilerinize salt okunur erişim
  • OneSignal altyapısı tarafından yönetilen durum takibi
  • Minimal izinlerle daha basit kurulum

Advanced Sync Engine

  • Yerel durum takibi ile gelişmiş performans
  • Tablo oluşturmak için ek izinler gerektirir
  • Yüksek hacimli etkinlik işleme için önerilir

Sınırlamalar

  • Karmaşık sorgular, yoğun trafik dönemlerinde veritabanı performansını etkileyebilir
  • JSON işlemleri optimal performans için SQL Server 2016 veya üstünü gerektirir
  • Tüm izinler, kurulum sırasında belirtilen veritabanı düzeyinde verilir

SSS

Birden fazla SQL Server şemasına bağlanabilir miyim?

Evet, etkinlik verilerini içeren her şema için GRANT SELECT, VIEW DEFINITION ON SCHEMA::<schema> ifadesini çalıştırarak CENSUS kullanıcısına birden fazla şemaya erişim verebilirsiniz.

Hangi SQL Server sürümleri desteklenmektedir?

OneSignal modern SQL Server sürümlerini destekler. Etkinlik sorgularında JSON işlemleri için SQL Server 2016 veya üstü önerilir.

Advanced Sync Engine kullanmam gerekir mi?

Hayır, Basic Sync Engine çoğu kullanım senaryosu için iyi çalışır. Gelişmiş performansa ihtiyacınız varsa ve OneSignal’in SQL Server örneğinizde tablo oluşturmasına izin verebiliyorsanız Advanced Sync Engine’i kullanın.