Ana içeriğe atla

Genel Bakış

OneSignal + BigQuery entegrasyonu iki güçlü veri hattını destekler:
  • Dışa Aktarma: OneSignal’dan BigQuery’ye analiz ve raporlama için mesajlaşma etkinlik verilerini (push, e-posta, SMS, uygulama içi) otomatik olarak gönderin.
  • İçe Aktarma: BigQuery veri kümelerinizden OneSignal’a özel kullanıcı etkinliklerini senkronize ederek otomatik Yolculukları ve kişiselleştirilmiş mesajlaşmayı tetikleyin.
Bu entegrasyonlar bir araya geldiğinde, kullanıcı etkileşim verileri üzerinde tam kontrol sağlar—gelişmiş analitik ve gerçek zamanlı davranış odaklı mesajlaşmayı güçlendirir.

OneSignal etkinliklerini BigQuery’ye aktarma

Mesajlaşma performansı ve etkileşim etkinliklerini (örn. gönderimler, açılmalar, tıklamalar) BigQuery’ye göndererek:
  • Özel panolar ve raporlar oluşturun
  • Kanallar arasında teslimat ve etkileşim trendlerini takip edin
  • OneSignal verilerini analiz için diğer iş verileriyle birleştirin
Gereksinimler
  • Faturalandırma etkin Google Cloud Platform projesi
  • GCP projenizde etkinleştirilmiş BigQuery
  • BigQuery yazma izinlerine sahip hizmet hesabı
Kurulum Adımları

1. Hizmet Hesabı Oluşturma

1

Google Cloud Platform hesabınıza giriş yapın

Giriş yaptıktan sonra, doğru projenin seçildiğinden emin olun.
2

Hizmet hesabı oluşturun

Hizmet Hesabı Oluşturma sayfasını ziyaret edin ve Hizmet Hesabı Oluştur’a tıklayın.
3

Alanları doldurun.

Seçtiğiniz herhangi bir ad ve hizmet hesabı kimliği verin.
4

'BigQuery User' rolünü atayın

Hizmet hesabına “BigQuery User” rolünü verin.
5

Bu hesap için JSON anahtarı oluşturun

Yeni hizmet hesabınıza gidin > Anahtarlar > Anahtar Ekle > Yeni anahtar oluştur > JSON seçin. Dosyayı kaydedin.
Entegrasyonu etkinleştirmek için bu JSON anahtar dosyasının tüm içeriğini OneSignal’a yapıştıracaksınız.

2. OneSignal’da Entegrasyonu Etkinleştirme

1

OneSignal > Veri > Entegrasyonlar > BigQuery'ye gidin

2

Hizmet hesabı JSON anahtarınızı yapıştırın

3

Ayarları yapılandırın

  • Senkronizasyon Sıklığı: Her 15 dakikada bir kadar sık
  • Veri Kümesi/Tablo Adları: Yalnızca küçük harfler, sayılar ve alt çizgiler içermeli ve bir sayı ile başlayamaz.
  • Etkinlik Türleri: Belirli mesaj etkinliklerini seçin (örn. gönderildi, açıldı, tıklandı)
    • Not: Birden fazla etkinlik türü seçebilir veya seçilen etkinlikleri daha sonra güncelleyebilirsiniz.
4

Kaydet'e tıklayın ve onay bekleyin

İlk veri senkronizasyonunun BigQuery’de görünmesi 15-30 dakika sürebilir.Beklerken, seçilen etkinlikleri tetiklemek için push, e-posta, uygulama içi veya SMS yoluyla mesajlar gönderin.

3. BigQuery’de Verileri Görüntüleme

BigQuery konsolunuzu açın ve senkronize edilmiş mesaj etkinliklerini keşfetmek için veri kümesini (örn. onesignal_events_<app-id>) bulun.

Mesaj etkinlikleri ve özellikleri

Mesaj etkinlik türleri

Özellik: event_kind Tür: String Mesaj ve etkinlik türü (örneğin message.push.received, message.push.sent).
Mesaj Etkinliği (OneSignal)event_kindAçıklama
Push Gönderildimessage.push.sentPush bildirimi başarıyla gönderildi.
Push Alındımessage.push.receivedTeslim edilmiş push (bkz. Onaylanmış Teslimat).
Push Tıklandımessage.push.clickedKullanıcı push’u tıkladı.
Push Başarısızmessage.push.failedTeslimat hatası. Mesaj raporlarına bakın.
Push Abonelik İptal Edildimessage.push.unsubscribedKullanıcı push aboneliğini iptal etti.
Uygulama İçi Gösterimmessage.iam.impressionUygulama içi mesaj gösterildi.
Uygulama İçi Tıklandımessage.iam.clickedUygulama içi mesaj tıklandı.
Uygulama İçi Sayfa Görüntülendimessage.iam.page_displayedUygulama içi sayfa gösterildi.
E-posta Gönderildimessage.email.sentE-posta teslim edildi.
E-posta Alındımessage.email.receivedE-posta alıcının posta sunucusu tarafından kabul edildi.
E-posta Açıldımessage.email.openedE-posta açıldı. Bkz. E-posta Raporları.
E-posta Bağlantısı Tıklandımessage.email.clickedE-postadaki bağlantı tıklandı.
E-posta Abonelik İptal Edildimessage.email.unsubscribedAlıcı aboneliğini iptal etti.
E-posta Spam Olarak Raporlandımessage.email.reported_as_spamSpam olarak işaretlendi. Bkz. E-posta Teslim Edilebilirliği.
E-posta Geri Döndümessage.email.bouncedKalıcı teslimat hatası nedeniyle geri döndü.
E-posta Başarısızmessage.email.failedTeslimat başarısız oldu.
E-posta Bastırıldımessage.email.suppressedBastırma listesi nedeniyle bastırıldı.
SMS Gönderildimessage.sms.sentSMS gönderildi.
SMS Teslim Edildimessage.sms.deliveredSMS başarıyla teslim edildi.
SMS Başarısızmessage.sms.failedSMS teslim edilemedi.
SMS Teslim Edilemedimessage.sms.undeliveredSMS reddedildi veya ulaşılamıyor.

Etkinlik veri şeması

Bir kullanıcı tarafından oluşturulan her mesaj etkinliği için, aşağıdaki meta veriler kayda eklenecektir.
Sütun AdıTürAçıklama
event_idUUIDEtkinlik için benzersiz tanımlayıcı
event_timestampTimestampEtkinlik gerçekleşme zamanı
event_kindStringEtkinlik Türü
subscription_device_typeStringCihaz türü (örneğin, iOS, Android, Web, E-posta, SMS)
languageStringAbonelik dil kodu
versionStringEntegrasyon sürümü
device_osStringCihaz işletim sistemi sürümü
device_typeNumberSayısal cihaz türü
tokenStringPush token, telefon numarası veya e-posta
subscription_idUUIDAbonelik ID’si
subscribedBooleanAbonelik durumu
onesignal_idUUIDOneSignal kullanıcı ID’si
last_activeStringSon aktif zaman damgası
sdkStringOneSignal SDK sürümü
external_idStringEntegrasyon kullanıcı ID’si ile eşleşmesi gereken harici kullanıcı ID’si
app_idUUIDOneSignal’dan uygulama ID’si
template_idUUIDŞablon ID’si (varsa)
message_idUUIDMesaj grubu/istek ID’si
message_nameStringMesajın adı
message_titleStringMesaj başlığı (yalnızca İngilizce)
message_contentsStringKısaltılmış mesaj gövdesi (yalnızca İngilizce)
failure_reasonStringBaşarısızlık nedeni (push başarısızlık ve email başarısızlık olayları için)
_created, _id, _index, _fivetran_syncedDahili kullanımFivetran senkronizasyon meta verileri

Notlar

  • Kaydetme/etkinleştirme sonrası senkronizasyonlar tamamlanması için ek 15-30 dakika alabilir.
  • Devre dışı bırakma, devre dışı bırakıldıktan sonra hala bir son senkronizasyonla sonuçlanabilir.
  • Verimli veri senkronizasyonunu sağlamak için sistemimiz otomatik olarak hazırlama veri kümelerini oluşturur ve yönetir. fivetran_{iki rastgele kelime}_staging gibi bir desenle adlandırılan bu veri kümeleri, ana şemanıza entegre edilmeden önce işleme sırasında geçici olarak veri depolar. Bu hazırlama veri kümeleri akıcı bir iş akışını sürdürmek için gereklidir ve otomatik olarak yeniden oluşturulacakları için silinmemelidir.

BigQuery’den etkinlikleri içe aktarma

BigQuery’den OneSignal’a davranışsal etkinlik verilerini göndererek:
  • Kullanıcı etkinliğine dayalı Yolculukları tetikleyin
  • Davranışsal verilere dayalı mesajlaşmayı kişiselleştirin
Gereksinimler
  • BigQuery ve etkinlik veri tabloları olan GCP projesi
  • Okuma izinlerine sahip hizmet hesabı
  • BigQuery veri kümelerinde davranışsal veri içeren etkinlik veri tabloları
Kurulum Adımları
1

BigQuery hizmet hesabı oluşturun

OneSignal, bağlantıyı oluşturduğunuzda otomatik olarak bir hizmet hesabı oluşturacaktır. Alternatif olarak, kendi hizmet hesabı anahtar JSON dosyanızı sağlayabilirsiniz.Kendi hizmet hesabınızı oluşturuyorsanız, aşağıda listelenen gerekli izinlere sahip olduğundan emin olun.
2

Gerekli izinleri verin

OneSignal hizmet hesabı şu BigQuery IAM rollerine ihtiyaç duyar:
  • bigquery.dataViewer - Etkinlik verileri içeren veri kümelerine ve tablolara okuma erişimi
  • bigquery.jobUser - Veri sorguları için işler oluşturma izni
  • bigquery.metadataViewer - Proje düzeyinde meta veri erişimi (önerilir)
Google Cloud Console veya CLI kullanarak izinleri verin:
gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
  --member serviceAccount:ONESIGNAL_SERVICE_ACCOUNT_EMAIL \
  --role roles/bigquery.dataViewer

gcloud projects add-iam-policy-binding YOUR_PROJECT_ID \
  --member serviceAccount:ONESIGNAL_SERVICE_ACCOUNT_EMAIL \
  --role roles/bigquery.jobUser
3

OneSignal'da entegrasyonu ekleyin

In OneSignal, go to Data > Integrations and click Add Integration.
  • Senkronizasyon Motoru: Büyük veri kümeleri veya karmaşık etkinlik veri sorguları için gelişmiş senkronizasyon önerilir. Temel senkronizasyonla başlayabilir ve gerekirse daha sonra gelişmiş senkronizasyona geçebilirsiniz.
  • Google Cloud Proje Kimliği: BigQuery veri kümelerini içeren GCP projeniz
  • Veri Kümesi Bölgesi: BigQuery veri kümelerinizin depolandığı konum
  • Hizmet Hesabı Anahtarı (isteğe bağlı): Kendi hizmet hesabınızı kullanıyorsanız JSON anahtar dosyası
4

Etkinlik veri kaynağını yapılandırın

Etkinlik verilerinizi içeren BigQuery veri kümesini ve tablosunu belirtin:
  • Veri Kümesi: BigQuery veri kümesi adı (örn. analytics_events)
  • Tablo/Görünüm: Etkinlik kayıtlarını içeren tablo veya görünüm
  • Etkinlik Sorgusu: Etkinlik verilerini filtrelemek veya dönüştürmek için isteğe bağlı SQL sorgusu
Etkinlik tablonuz şunlar için sütunlar içermelidir:
  • Etkinlik adı/türü
  • Kullanıcı tanımlayıcısı
  • Etkinlik zaman damgası
  • Ek etkinlik özellikleri
5

Bağlantıyı test edin

OneSignal’ın BigQuery projenize erişebileceğini ve etkinlik verilerini okuyabileceğini doğrulamak için Bağlantıyı Test Et’e tıklayın.

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

Gelişmiş yapılandırma

Özel SQL Sorguları

OneSignal’a senkronize etmeden önce etkinlik verilerini filtrelemek veya dönüştürmek için özel SQL kullanın:
SELECT
  event_name,
  user_id,
  event_timestamp,
  STRUCT(
    product_id,
    purchase_amount,
    category
  ) as payload
FROM `project.dataset.events`
WHERE event_timestamp >= TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 7 DAY)

Çapraz Proje Erişimi

Etkinlik verileriniz birden fazla BigQuery projesine yayılıyorsa, OneSignal hizmet hesabına referans verilen tabloları veya görünümleri içeren her projeye erişim verin.
Optimal performans için BigQuery bağlantı bölgeniz belirli tablo bölgesiyle eşleşmelidir.

SSS

Senkronizasyonum neden başarısız oluyor?

Senkronizasyonunuzun başarısız olmasının birkaç yaygın nedeni vardır:
  • Hizmet hesabı gerekli izinlere sahip değil
  • Kaynak veri kümesi temel senkronizasyon için çok büyük ve gelişmiş senkronizasyon kullanmanız gerekiyor
Yukarıdaki kurulum adımlarını inceleyin ve bunları doğru şekilde takip ettiğinizden emin olun. Hala sorun yaşıyorsanız, lütfen support@onesignal.com ile iletişime geçin.

Aynı içerik için neden birden fazla mesaj kimliği görüyorum?

Bu genellikle bir mesaj şablonu birden fazla gönderimde veya tetiklenen akışta yeniden kullanıldığında meydana gelir.

OneSignal ne sıklıkla veri senkronize eder?

Hem dışa aktarma hem de içe aktarma entegrasyonları her 15 dakikada bir kadar sık senkronize edebilir.

BigQuery görünümlerini kullanabilir miyim?

Evet. Sadece hizmet hesabının görünümde referans verilen tüm tablolara erişimi olduğundan emin olun.

İlgili Kaynaklar