Genel Bakış
OneSignal’de bir Kullanıcı, mesajlaşma kanallarınız (mobil push, web push, e-posta ve SMS) genelinde bir veya daha fazla Aboneliği olan bir bireyi temsil eder.- Her Kullanıcı en fazla 20 Aboneliğe sahip olabilir.
- Her Kullanıcıya otomatik olarak bir OneSignal ID (UUID v4) atanır.
- Kullanıcılar, onlara bir External ID atanana kadar anonim olarak başlar. External ID atamak Abonelikleri birbirine bağlar ve kullanıcı uygulamanızda zaten varsa mevcut OneSignal ID’yi değiştirebilir.
- Kullanıcılar ve Aboneliklerin farklı özellikleri vardır. Örneğin, Etiketler Kullanıcı düzeyinde saklanırken, abonelik durumu (katılım/çıkış) Aboneliğe aittir.
- Kullanıcı bağlamı değiştiğinde — örneğin, giriş yapma (anonim → tanımlanmış) veya hesap değiştirme (KullanıcıA → KullanıcıB) — Abonelik eski Kullanıcıdan yenisine yeniden atanır.
- Abonelik artık yeni Kullanıcının özelliklerini devralacaktır.
- Önceki Kullanıcıya bağlı özellikler (Etiketler, dil veya External ID gibi) artık geçerli olmayacaktır.
- KullanıcıA,
premium=trueEtiketi’ne sahip - KullanıcıB,
premium=falseEtiketi’ne sahip - Bir Abonelik KullanıcıA’dan KullanıcıB’ye geçerse, artık
premium=trueile ilişkilendirilmeyecek ve bunun yerine KullanıcıB’nin özelliklerini yansıtacaktır.
Anonim ve tanımlanmış kullanıcılar
- Anonim kullanıcı: External ID’ye sahip değil → her Abonelik kendi OneSignal ID’sine sahip ayrıdır (ayrı Kullanıcılar olarak değerlendirilir).
- Tanımlanmış kullanıcı: External ID’ye sahip → OneSignal tüm Abonelikleri tek bir OneSignal ID altında birleştirir.
- Web push Aboneliği →
OneSignal_ID_1 - Mobil Abonelik →
OneSignal_ID_2 - E-posta Aboneliği →
OneSignal_ID_3 - SMS Aboneliği →
OneSignal_ID_4 - Sonuç: Dört Kullanıcı (her Abonelik benzersiz özelliklere sahip ayrı bir Kullanıcıdır)
External_ID_AExternal ID’sine sahip Web push Aboneliği →OneSignal_ID_1- Aynı
External_ID_Aile Mobil Abonelik →OneSignal_ID_1’e birleştirildi - Aynı
External_ID_Aile E-posta Aboneliği →OneSignal_ID_1’e birleştirildi - Aynı
External_ID_Aile SMS Aboneliği →OneSignal_ID_1’e birleştirildi - Sonuç: Dört Aboneliği olan Bir Kullanıcı (tümü aynı Kullanıcıya bağlı)
Her zaman bir External ID atayın. Bu, kanallar ve cihazlar genelindeki Aboneliklerin tek bir Kullanıcı profili altında birleşmesini sağlar ve çoğaltmayı önler.
- Kararlı, genel olmayan tanımlayıcılar kullanın (örneğin, dahili kullanıcı kimliğiniz veya e-posta adresiniz).
- Uygulama yaşam döngünüzün başlarında
OneSignal.loginçağrısı yapın.
Anonim ve tanımlanmış kullanıcılar
- Anonim kullanıcı: External ID’ye sahip değil → her Abonelik kendi OneSignal ID’sine sahip ayrıdır (ayrı Kullanıcılar olarak değerlendirilir).
- Tanımlanmış kullanıcı: External ID’ye sahip → OneSignal tüm Abonelikleri tek bir OneSignal ID altında birleştirir.
- Web push Aboneliği →
OneSignal_ID_1 - Mobil Abonelik →
OneSignal_ID_2 - E-posta Aboneliği →
OneSignal_ID_3 - SMS Aboneliği →
OneSignal_ID_4 - Sonuç: Dört Kullanıcı (her Abonelik benzersiz özelliklere sahip ayrı bir Kullanıcıdır)
External_ID_AExternal ID’sine sahip Web push Aboneliği →OneSignal_ID_1- Aynı
External_ID_Aile Mobil Abonelik →OneSignal_ID_1’e birleştirildi - Aynı
External_ID_Aile E-posta Aboneliği →OneSignal_ID_1’e birleştirildi - Aynı
External_ID_Aile SMS Aboneliği →OneSignal_ID_1’e birleştirildi - Sonuç: Dört Aboneliği olan Bir Kullanıcı (tümü aynı Kullanıcıya bağlı)
Her zaman bir External ID atayın. Bu, kanallar ve cihazlar genelindeki Aboneliklerin tek bir Kullanıcı profili altında birleşmesini sağlar ve çoğaltmayı önler.
- Kararlı, genel olmayan tanımlayıcılar kullanın (örneğin, dahili kullanıcı kimliğiniz veya e-posta adresiniz).
- Uygulama yaşam döngünüzün başlarında
OneSignal.loginçağrısı yapın.
Kullanıcı özellikleri
| Özellik | Açıklama |
|---|---|
| Kanal | Kullanıcının sahip olduğu Abonelikler, Push, E-posta veya SMS gibi. |
| OneSignal ID | Her kullanıcı için OneSignal tarafından otomatik oluşturulan UUID v4. External ID atandığında değişebilir. |
| Son oturum | Uygulama etkileşiminin en son zaman damgası. |
| İlk oturum | Kullanıcının OneSignal’de ilk oluşturulduğu zaman. |
| E-posta | En son E-posta Aboneliğinden gelen e-posta. |
| Telefon | En son SMS Aboneliğinden gelen telefon numarası. |
| IP Adresi | En son güncellenmiş Abonelikten. |
| External ID | Kullanıcıyı sisteminizle birleştirmek için atadığınız benzersiz tanımlayıcı. |
| Etiketler | Özel meta veriler (örneğin tercihler, davranış). Veri Etiketleri’ne bakın. |
| Konum | Mobil aboneliklerin GPS koordinatları (konum takibi etkinse). Konuma Dayalı Bildirimler’e bakın. |
| Saat Dilimi | SDK tarafından ayarlanan IANA TZ formatında timezone_id. API aracılığıyla güncellenebilir. |
| Dil | ISO 639-1 formatında kullanıcının dili. API veya setLanguage aracılığıyla güncellenebilir. |
| Takma Adlar | mixpanel_id : 1234 gibi anahtar-değer çiftleri. Takma Adlar’a bakın. |
OneSignal ID
OneSignal ID, bir kullanıcıyı benzersiz şekilde temsil etmek için oluşturulan dahili bir UUID v4’tür. Şu gibi senaryolarda otomatik olarak oluşturulur:- İlk kez mobil uygulama açılışı (veya yeniden yükleme sonrası)
- Yeni web push Aboneliği
- Create user veya CSV Import aracılığıyla Kullanıcı/Abonelik oluşturma
- Tarayıcı önbelleğini temizleme ve siteye geri dönme
OneSignal.logoutile çıkış yapma
OneSignal.login aracılığıyla bir External ID kullanıldığında, mevcut Aboneliğe bağlı olan mevcut OneSignal ID, o External ID ile ilişkili olanla değiştirilir. Platformlar genelinde (Push, E-posta, SMS) Abonelikler, aynı External ID’yi paylaşıyorlarsa aynı OneSignal ID altında birleştirilecektir.
Yeniden atama ve davranış
Bir kullanıcı uygulamayı yeniden yüklerse veya önbelleği temizlerse, yeni bir OneSignal ID ve Abonelik oluşturulur. Ancak,OneSignal.login çağrısı yapmak yeni Aboneliği orijinal kullanıcı profiline geri bağlar.
OneSignal.User.addEmail veya addSms aracılığıyla eklenen Abonelikler, mevcut OneSignal ID’yi devralacaktır.
SDK referansları:
External ID
External ID, kullanıcıları cihazlar ve abonelikler genelinde izlemek için atadığınız benzersiz bir string’dir.
Kullanıcıyı abonelikleri genelinde izlemek için External ID'yi kullanın.
OneSignal.login- Önerilen Mobil SDK ve Web SDK’ye bakın- Create user API
- Transfer subscription API
OneSignal.logout(kaldırmak için)
Kısıtlı ID’ler
External ID’ler için yer tutucu değerler veya geçici değerler kullanmayın. Aşağıdaki değerler External ID’ler için kullanılamaz:NANULL-101all00000000-0000-0000-0000-000000000000
Aynı cihazda birden fazla kullanıcı
Birden fazla kullanıcı bir cihazı paylaştığında, her yeni giriş farklı bir External ID ileOneSignal.login çağrısını tetiklemelidir. Bu, OneSignal ID’yi ve Aboneliği yeni kullanıcıya yeniden atar.
Çıkış işlemini yönetmek için, kullanıcı bağlamını kaldırmak için aşağıdakileri yapabilirsiniz:
OneSignal.logout()çağrısı yapın → External ID’yi temizler, önceki kullanıcı özelliklerini (Etiketler, Takma Adlar, vb.) kaldırır ve anonim OneSignal ID atar.- İsteğe bağlı olarak
optOutkullanarak bildirimleri devre dışı bırakın ve tekrar giriş yaparkenoptInile yeniden etkinleştirin.
Aylık aktif kullanıcılar (MAU)
MAU, faturalandırma için kullanılır ve 30 günlük faturalandırma dönemi içinde son oturumu olan bir mobil Abonelik olarak tanımlanır. Bu şunları içerir:- SDK’mız aracılığıyla bir mobil Abonelik oluşturarak uygulamanızı ilk kez açan kullanıcılar
- Uygulamayı yeniden yükleyen ve tekrar açan, SDK’mız aracılığıyla başka bir mobil Abonelik oluşturan kullanıcılar
- API’miz aracılığıyla içe aktarılan kullanıcılar
MAU faturalandırma örneği
Bir Kullanıcının şu Abonelikleri varsa:- iOS mobil (son 30 günde etkin)
- Android mobil (son 30 günde etkin)
- Web push
- E-posta
- SMS
MAU’ları azaltma (örneğin, ödeme duvarı kullanım durumları)
Mobil SDK gizlilik yöntemlerini kullanarak SDK başlatmayı ve Abonelik oluşturmayı geciktirebilirsiniz.- SDK’yı başlatmadan önce
setConsentRequired()çağrısı yapın – bu, Aboneliğin otomatik oluşturulmasını önler - Kullanıcı için bir Abonelik oluşturmaya hazır olduğunuzda
setConsentGiven()çağrısı yapın