Genel Bakış
OneSignal + Elasticsearch entegrasyonu, Elasticsearch kümenizden OneSignal’a özel etkinliklerin otomatik senkronizasyonunu sağlar. Bu, arama ve analitik motorunuzda saklanan kullanıcı davranış verilerine dayalı olarak otomatik Journey’ler ve kişiselleştirilmiş mesajlaşma kampanyaları tetiklemenize olanak tanır.Gereksinimler
- Giden mesaj etkinlikleri için Event Streams’e erişim (Plan kısıtlamaları ve aşımlar geçerlidir)
- Gelen etkinlik senkronizasyonu için Custom Events’e erişim (Plan kısıtlamaları ve aşımlar geçerlidir)
- Güncellenmiş Hesap Planı (ücretsiz uygulamalarda mevcut değildir)
Elasticsearch
- Elasticsearch kümesi (sürüm 7.0 veya üstü önerilir)
- Kimlik doğrulama bilgileri (API anahtarı, kullanıcı adı/şifre veya sertifika)
- Etkinlik indeksleri uygun belge yapısıyla davranışsal veri içerir
- OneSignal’dan Elasticsearch kümenize ağ erişimi
Kurulum
1
Elasticsearch erişimini yapılandırın
OneSignal’ın Elasticsearch kümenize bağlanabildiğinden emin olun:Elasticsearch Cloud için:
- Elasticsearch Cloud konsolunuzda Security’ye gidin
- Etkinlik indeksleri için okuma izinlerine sahip bir API anahtarı oluşturun
- Cloud ID ve API Key’inizi not edin
- Kimlik doğrulamayı yapılandırın (temel kimlik doğrulama veya API anahtarı)
- Kümenizin OneSignal’ın IP adreslerinden erişilebilir olduğundan emin olun
- Küme endpoint URL’nizi ve kimlik bilgilerinizi not edin
2
Özel kullanıcı oluşturun (önerilir)
Etkinlik indekslerine salt okunur erişime sahip OneSignal için özel bir kullanıcı oluşturun:
3
OneSignal'da entegrasyon ekleyin
OneSignal’da, Veri > Entegrasyonlar’a gidin ve Entegrasyon Ekle’ye tıklayın.Elasticsearch’i seçin ve şunları sağlayın:
- Cluster URL: Elasticsearch endpoint’iniz (örneğin,
https://your-cluster.es.amazonaws.com) - Authentication Method: API Key, Basic Auth veya Certificate
- Username/Password veya API Key: Kimlik doğrulama bilgileri
- Cloud ID (Elasticsearch Cloud kullanıyorsanız): Deployment Cloud ID’niz
4
Etkinlik veri kaynağını yapılandırın
Etkinlik verilerinizi içeren Elasticsearch indeksini belirtin:
- Index Pattern: Etkinlikleri içeren indeks veya indeks deseni (örneğin,
events-*) - Event Query: Etkinlik belgelerini filtrelemek için isteğe bağlı Elasticsearch Query DSL
- Time Field: Zaman tabanlı filtreleme için zaman damgası alanı (örneğin,
@timestamp)
- Etkinlik adı/türü (String)
- Kullanıcı tanımlayıcısı (String)
- Etkinlik zaman damgası (Date)
- Ek etkinlik özellikleri (Object)
5
Bağlantıyı test edin
OneSignal’ın Elasticsearch kümenize erişebildiğini ve etkinlik verilerini okuyabildiğini doğrulamak için Test Connection’a tıklayın.
Etkinlik veri eşleştirme
verilerinizi OneSignal’ın özel etkinlik formatına eşleştirin:| OneSignal Alanı | Açıklama | Gerekli | |
|---|---|---|---|
name | event_name | Etkinlik tanımlayıcı | Evet |
external_id | user_id | Kullanıcı tanımlayıcı | Evet |
timestamp | event_timestamp | Etkinliğin gerçekleştiği zaman | Hayır |
properties | event_data | Hayır |
Gelişmiş Yapılandırma
Query DSL Filtreleme
OneSignal’a senkronize etmeden önce etkinlik verilerini filtrelemek ve dönüştürmek için Elasticsearch Query DSL kullanın:Index Pattern Yapılandırması
Birden fazla indekste verimli sorgulama yapın:- Zaman tabanlı indeksler: Zaman bölümlenmiş veriler için
events-2024-*gibi desenler kullanın - Routing: Kullanıcı tabanlı sorgular için tutarlı yönlendirme sağlayın
- Aliases: Basitleştirilmiş yönetim için indeks takma adları kullanın
Performans Optimizasyonu
Büyük etkinlik hacimleri için sorguları optimize edin:- Alan filtreleme: Yalnızca gerekli alanları almak için
_sourcefiltreleme kullanın - Scroll API: Büyük sonuç kümeleri için OneSignal scroll sayfalama kullanır
- Date math: Verimli zaman tabanlı filtreleme için Elasticsearch date math kullanın
Elasticsearch kümenizin, kümeyi kullanan diğer uygulamaları etkilemeden OneSignal’ın sorgularını işlemek için yeterli kaynaklara sahip olduğundan emin olun.
SSS
OneSignal etkinlikleri Elasticsearch’ten ne sıklıkla senkronize eder?
OneSignal, yapılandırılmış programınıza göre minimum 15 dakikalık aralıklarla etkinlik verilerini senkronize eder.Birden fazla Elasticsearch indeksinden etkinlikleri senkronize edebilir miyim?
Evet, birden fazla indekste sorgu yapmak için indeks desenleri (örneğin,events-*) kullanabilir veya farklı indeks grupları için birden fazla entegrasyon oluşturabilirsiniz.