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.

Dışa aktarılan mesaj etkinliklerini içeren BigQuery veri kümesi

Message events and properties

Message event kinds

Property: event_kind Type: String The kind of message and event (e.g. message.push.received, message.push.sent).
Message Event (OneSignal)event_kindDescription
Push Sentmessage.push.sentPush notification successfully sent.
Push Receivedmessage.push.receivedDelivered push (see Confirmed Delivery).
Push Clickedmessage.push.clickedUser clicked the push.
Push Failedmessage.push.failedDelivery failure. See message reports.
Push Unsubscribedmessage.push.unsubscribedUser unsubscribed from push.
In-App Impressionmessage.iam.displayedIn-App message shown.
In-App Clickedmessage.iam.clickedIn-App message clicked.
In-App Page Viewedmessage.iam.pagedisplayedIn-App page shown.
Email Sentmessage.email.sentEmail delivered.
Email Receivedmessage.email.receivedEmail accepted by recipient’s mail server.
Email Openedmessage.email.openedEmail opened. See Email Reports.
Email Link Clickedmessage.email.clickedLink in email clicked.
Email Unsubscribedmessage.email.unsubscribedRecipient unsubscribed.
Email Marked Spammessage.email.resporedasspamMarked as spam. See Email Deliverability.
Email Bouncedmessage.email.hardbouncedBounce due to permanent delivery failure.
Email Failedmessage.email.failedDelivery failed.
Email Suppressedmessage.email.supressedSuppressed due to suppression list.
SMS Sentmessage.sms.sentSMS sent.
SMS Deliveredmessage.sms.deliveredSMS successfully delivered.
SMS Failedmessage.sms.failedSMS failed to deliver.
SMS Undeliveredmessage.sms.undeliveredSMS rejected or unreachable.

Event data schema

For each message event generated by a user, the following metadata will be attached to the record.
Column NameTypeDescription
event_idUUIDUnique identifier for the event
event_timestampTimestampTime of event occurrence
event_kindStringThe Event Kind
subscription_device_typeStringDevice type (e.g., iOS, Android, Web, Email, SMS)
languageStringSubscription language code
versionStringIntegration version
device_osStringDevice operating system version
device_typeNumberNumeric device type
tokenStringPush token, phone number, or email
subscription_idUUIDSubscription ID
subscribedBooleanSubscription status
onesignal_idUUIDOneSignal user ID
last_activeStringLast active timestamp
sdkStringOneSignal SDK version
external_idStringExternal user ID that should match the integration user ID
app_idUUIDApp ID from OneSignal
template_idUUIDTemplate ID (if applicable)
message_idUUIDMessage batch/request ID
message_nameStringName of the message
message_titleStringMessage title (English only)
message_contentsStringTruncated message body (English only)
_created, _id, _index, _fivetran_syncedInternal useFivetran sync metadata

Notes

  • Syncs after saving/activating may take an additional 15-30 minutes to complete.
  • Deactivating may still result in one final sync after deactivation.
  • To ensure efficient data synchronization, our system automatically creates and manages staging datasets. These datasets, named with a pattern like fivetran_{two random words}_staging, temporarily store data during processing before it’s integrated into your main schema. These staging datasets are essential for maintaining a streamlined workflow and should not be deleted, as they will be automatically recreated.

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.

BigQuery entegrasyonu ekleyin

  • 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