Ana içeriğe atla
OneSignal’e hoş geldiniz! Bu kılavuz, mevcut mesajlaşma platformunuzdan OneSignal’e minimum kesinti ile geçiş yapmanıza yardımcı olacaktır. Şunlar için tasarlanmıştır:
  • OneSignal SDK’yı uygulayan Geliştiriciler
  • Kampanyaları ve analitiği yöneten Pazarlamacılar

Ön koşullar

Başlamadan önce:

Geçiş adımları

1. Mevcut mesajlaşma kurulumunuzu denetleyin

Geçişten önce, mevcut uygulamanızın envanterini çıkarın: Geliştiriciler için:
  • Desteklediğiniz platformlar: iOS, Android, Web, e-posta, SMS, vb.
  • Push ve uygulama içi mesaj olaylarını işleyen kod:
    • Ön plan görüntüleme ve tıklama işleme
    • Push, e-posta vb. için deep link kullanımı
    • Push token ve payload işleme
  • E-posta adreslerini, telefon numaralarını, push token’larını vb. nasıl topladığınız
  • E-posta alan adları ve DNS sahipliği
  • SMS gönderenler ve katılım mekanizmaları
Pazarlamacılar için:
  • Gönderdiğiniz mesaj türleri: (işlemsel, pazarlama, vb.)
    • Bu mesajlar için şablonlar
  • Kullanıcıları nasıl segmentlediğiniz ve hedeflediğiniz
  • İzlediğiniz analitik veya dönüşüm metrikleri

2. Temel OneSignal kavramları

Başlamadan önce OneSignal hakkında anlaşılması gereken bazı temel kavramlar:
  • Users - External ID aracılığıyla tanımlanır. Kullanıcılar özelliklerden (etiketler, oturum verileri, vb.) ve aboneliklerden (push, e-posta, SMS) oluşur.
  • Subscriptions - Bir kullanıcının mesaj alabileceği yolları ifade eder. 4 tür abonelik vardır:
    • Mobile: Push bildirimleri, uygulama içi mesajlar ve Live Activities alabilir.
    • Web push: Web push bildirimleri alabilir.
    • Email: E-posta bildirimleri alabilir.
    • SMS: SMS bildirimleri alabilir.
  • Segments - Ortak özellikleri paylaşan bir kullanıcı grubu.
  • Tags - Özel bir kullanıcı özelliği.
  • Custom Events - Bir kullanıcının gerçekleştirdiği bir eylem.

3. OneSignal SDK’yı ekleyin (geliştiriciler)

Mobil uygulamanızda ve/veya web sitenizde OneSignal SDK’yı kurun:

Kullanıcıları External ID ile tanımlayın

External ID, bir kullanıcıyı cihazlar ve mesajlaşma kanalları arasında tanımlamak için kullanabileceğiniz benzersiz bir tanımlayıcıdır. Bir kullanıcı uygulamanızı veya web sitenizi kullandığında External ID’yi ayarlamak için SDK’mızın login metodunu çağırın.

Yeni e-postaları ve telefon numaralarını toplayın

E-posta adresleri ve telefon numaraları, bu kılavuzda daha sonra tartışıldığı gibi OneSignal uygulamanıza çeşitli şekillerde eklenebilir. E-posta adreslerini ve/veya telefon numaralarını doğrudan mobil uygulamanızda veya web sitenizde topluyorsanız, bu abonelikleri oluşturmak için SDK’mızı kullanabilirsiniz:

4. Eski uygulamanızı kaldırın

Push token’ları, e-posta adreslerini ve telefon numaralarını toplamak için herhangi bir yerel veya 3. taraf metodu ve API’sini kaldırmanızı öneririz. Özellikle push token’larını toplamak için bunlar OneSignal SDK ile çakışmalar yaratabilir.

Push token çakışmaları ve formatı

Push token’ları üreten tüm eski kodu kaldırın. Yalnızca OneSignal’in push token’ı oluşturmasına izin verin, bu SDK başlatıldığında otomatik olarak gerçekleşir. Gerekirse, token’ı almak ve diğer sağlayıcınıza veya backend’inize göndermek için SDK’mızı kullanın. Bunu yapmak için metotlar:
  • Frontend Mobile SDK’mızı kullanarak cihazın push token tanımlayıcısını alın
  • View user API’mizi kullanarak cihazın tanımlayıcısını alın
OneSignal’in push token formatı:
  • iOS Push APNS token formatı: 64 karakter, yalnızca onaltılık karakterler (0-9,a-f). deviceToken.map {String(format: "%02x", $0)}.joined()
  • Android Push FCM token formatı: Genellikle 163 karakter, alfanümerik karakterler, tire, iki nokta üst üste ve alt çizgi içerebilir.

Push payload işleme

OneSignal’i ve başka bir push sağlayıcısını paralel olarak kullanıyorsanız, tekrarları önlemek için diğer SDK’nızın OneSignal bildirimlerini işlemesini engellemeniz gerekir. OneSignal’in push payload’u, SDK’mızın bildirimi işleyip işlemeyeceğini belirlemek için kullandığı OSNotification object’in rawPayload’u içinde belirli bir "custom" anahtarı içerir. Bizden gönderilen bildirimleri işlemesini önlemek için Android NotificationCompat’ınızı, OSNotification payload üzerinde diğer sağlayıcınızın payload’undan farklı bir nesneyi dinleyecek şekilde güncellemeniz gerekir.

Aşamalı geçiş (yalnızca mobil uygulamalar)

Sınırlı bir süre için her iki SDK’yı da tutmanız gerekiyorsa:
  • Birden fazla SDK’nın push token’ları oluşturmasına izin vermeyin. OneSignal’in bunu ele almasına izin verin ve gerekirse token’ı eski sisteminizle paylaşın.
  • Payload filtrelerini güncelleyin böylece eski SDK’nız OneSignal push’larını işlemesin.
    • OneSignal, rawPayload’unda bir "custom" anahtarı kullanır (dokümantasyon).
    • Bu anahtarı NotificationCompat’te (Android) kontrol edin.
  • Hangi sağlayıcının hangi tür bildirimleri işleyeceğine karar verin.
  • Net bir son tarih belirleyin ve eski sistemler için bir aşamalı çıkış planı oluşturun.
    • Gönderdiğiniz her bildirim türü için bir bildirim şablonu oluşturun.
    • Eski sağlayıcınızı uygulamanızın eski sürümündeki kullanıcılara mesaj gönderecek ve OneSignal’i uygulamanızın yeni sürümündeki kullanıcılara mesaj gönderecek şekilde ayarlayın.
    • Belirli kullanıcı gruplarını hedeflemek için segmentler oluşturun.

5. Web push geçişi

Aynı HTTPS site origin’ini kullanıyorsanız, aboneler bir sonraki ziyaretlerinde sessizce OneSignal’e eklenecektir. Hiçbir bilgi istemi gösterilmeyecek ve hemen ardından OneSignal’den push alabilirler. Ayrıca önceki sağlayıcıdan push almayı da durdurmalıdırlar.
  • Tarayıcı güvenlik sınırları nedeniyle web push aboneliklerini içe aktaramazsınız. OneSignal, kullanıcılar döndüklerinde onları kaydedecektir.
  • OneSignal’in devralabilmesi için eski push service worker’larınızın kaydını kaldırmanız gerekir.
Adımlar:
  1. Eski SDK’yı kaldırın: Web sitesindeki kod ve Service Worker dosyaları.
  2. Service Worker’ın kaydının kaldırıldığından emin olmak için bu kodu ekleyin.
  3. sw.js’yi 3. taraf Service Worker dosyasının adıyla değiştirin.
javascript
if ('serviceWorker' in navigator) {
  navigator.serviceWorker.getRegistrations().then(function(registrations) {
    for (let registration of registrations) {
      if (registration.active.scriptURL.includes("sw.js")) {
        registration.unregister();
      }
    }
  });
}

OneSignal uygulamaları arasında geçiş

Bir OneSignal uygulamasından (Uygulama A) diğerine (Uygulama B) aboneleri taşıyorsanız:
  • Web push abonelikleri uygulamalar arasında doğrudan aktarılamaz. Her abonelik hem sitenizin alan adına (origin) hem de OneSignal App ID’sine bağlıdır.
  • Geçiş yapmak için, sitenizin OneSignal başlatma kodunu Uygulama B’nin appId’sini kullanacak şekilde güncelleyin:
OneSignal.init({
  appId: "YOUR_APP_B_ID",
});
  • Bir kullanıcı sitenizi yeniden ziyaret ettiğinde, tarayıcının mevcut push izni OneSignal’in onları Uygulama B’ye sessizce kaydetmesine izin verecektir.
  • Yeni bir izin istemi görünmeyecektir, ancak aboneliğin Uygulama B’de oluşturulması için kullanıcıların sitenizi en az bir kez ziyaret etmesi gerekir.
  • Aboneler, etkin olmayıncaya kadar Uygulama A’da görünmeye devam edecektir.
En iyi uygulama: Yeterli kullanıcının geçiş yaptığını doğruladıktan sonra Uygulama A’dan göndermeyi durdurun. Geçiş ilerlemesini doğrulamak için her iki uygulamadaki abone sayılarını izleyin.

6. E-posta ve SMS kurulumu

OneSignal ile e-posta ve/veya SMS gönderiyorsanız, E-posta kurulumu ve SMS kurulumu kılavuzlarımızı takip etmeniz gerekecektir. Mevcut e-posta gönderen alan adınızı OneSignal’e geçirmek basitçe DNS kayıtlarını güncellemeyi gerektirir. Gerekirse OneSignal’de birden fazla e-posta gönderici kurabilirsiniz. SMS gönderenleri geçirmek zaman alabilir. Ekibimiz bu süreçte size yardımcı olmak için sizinle iletişime geçmelidir, ancak geçmezse, yardım için herhangi bir zamanda support@onesignal.com adresinden bize ulaşabilirsiniz.

E-posta ısınması gerekli mi?

Gönderen alan adınızın yerleşik bir gönderim itibarı varsa, özel bir IP adresiniz olmadıkça ısınma gerekli değildir.

Özel bir IP adresi alabilir miyim?

Evet, plan türünüze ve ihtiyaçlarınıza bağlı olarak özel IP adresleri sağlayabiliriz. Daha fazla ayrıntı için hesap yöneticinizle iletişime geçin.

7. Mevcut kullanıcıları içe aktarın (isteğe bağlı)

Son 270 gün içinde uygulamanızda aktif olan abone kullanıcıları içe aktarmak, geçiş sırasındaki kesintileri en aza indirmeye yardımcı olacaktır. Bilinen test kullanıcılarını içe aktararak başlamanızı, ardından uygulama lansmanından önce kalan kullanıcıları içe aktarmanızı öneririz.

Platform değerlendirmeleri

  • E-posta adresleri aktif ve geçerli kullanıcılardan olmalıdır. Daha önce hiç e-posta tıklamayan veya açmayan e-posta adreslerini içe aktarmayın.
  • Telefon numaraları belirli bir formatta olmalı ve kullanıcılar SMS almaya onay vermiş olmalıdır.
  • iOS abonelikleri içe aktarmanın hemen ardından push bildirimleri almaya başlayabilir. Bildirim tıklama takibi ve onaylanmış teslimatlar gibi özellikler, SDK’mızın cihazda aktif olmasını gerektirir.
  • Android/Huawei/Amazon abonelikleri, bildirim alabilmek için otomatik güncelleme veya manuel güncelleme yoluyla SDK’mızın cihazda aktif olmasını gerektirir.
  • Web abonelikleri içe aktarılamaz. Web push geçişi’ndeki yukarıdakileri izlerseniz, web push aboneliği oluşturulacak ve kullanıcı siteye döndüğünde push token SDK’mız aracılığıyla alınacaktır.

İçe aktarma adımları

  1. Anlamak için Kullanıcılar ve Abonelikler dokümanlarını inceleyin.
  2. Eski sistemden test kullanıcı verilerini dışa aktarın.
  3. Verileri OneSignal’in Create user API’si için biçimlendirin.
  4. Test kullanıcılarını içe aktarın ve başarılı test sonrasında, sürüm öncesi kontrol listesinde tekrarlamak için süreci saklayın.
Gerekli alanlar:
  • token - Push token veya e-posta adresi veya telefon numarası
  • type - Abonelik türü: iOSPush, AndroidPush, WebPush, Email, SMS
  • external_id - Kullanıcı için benzersiz bir tanımlayıcı. Bu, takip ve analitik için kullanılması önerilir.
Örnek API isteği:
POST https://api.onesignal.com/users
  {
    "identity": {
      "external_id": "user_12345"
    },
    "subscriptions": [
      {
        "type": "iOSPush",
        "token": "7abcd49d0affb7426a8f1202420e8f4e2fc4df58e49501adc383f3bd66df8636"
      },
      {
        "type": "AndroidPush",
        "token": "dQGm89TZQXiTvLsRIj_GBo:APA91bpgqFgqkP2qYvV1uW2kdK5Z3TjgCXB_1jkL6VJrgH3hoYn16MvFY19tzDE4OuSgKjYC7itbFpSJYHBfKLWt-xZYBpgCVhYn9K5neV_9-Zj7s9mOSjRUJ2IwEwVSYhR-j5ICF9WB"
      },
      {
        "type": "Email",
        "email": "test@example.com"
      },
      {
        "type": "SMS",
        "phone_number": "+1234567890"
      }
    ]
  }

7. Geçişi test edin

Sorunsuz bir geçiş için kapsamlı test çok önemlidir.
  1. OneSignal SDK’da Hata Ayıklama Günlüğü’nü etkinleştirin.
  2. Tüm platformlar (Android, iOS, Web, vb.) için gerçek cihazlarda test edin.
  3. Hem ön plan hem de arka plan bildirim işlemesini doğrulayın.
Geliştirici ve pazarlamacı ekipleri için test senaryoları:
  • OneSignal SDK’yı eklemeden önce OneSignal’den içe aktarılan kullanıcılara test bildirimleri gönderin.
    • iOS’ta push almalısınız ancak onaylanmış teslimat veya tıklama analitiği almayacaksınız.
    • Başka bir push SDK’nız varsa ve henüz Payload işleme gereksinimlerini uygulamadıysanız Android’de push alabilirsiniz. Bildirim muhtemelen veri eksiktir ve tıklandığında beklendiği gibi çalışmaz.
  • OneSignal SDK’yı ekledikten sonra OneSignal’den içe aktarılan kullanıcılara test bildirimleri gönderin.
    • Hem Android hem de iOS’ta onaylanmış teslimat ve tıklama analitiği ile birlikte push almalısınız.
  • Uygulamanın farklı durumlarında bildirim davranışını test edin.
  • Derin bağlantıların ve özel eylemlerin doğru çalıştığını doğrulayın.
Birden fazla sağlayıcı kullanıyorsanız:
  • Hem mevcut sağlayıcınızdan hem de OneSignal’den gönderin.
  • Yinelenen bildirimleri kontrol edin
  • Her sağlayıcının bildirimlerinin doğru görüntülendiğini doğrulayın
  • Kullanıcı giriş/çıkış senaryolarını test edin
Need help?Chat with our Support team or email support@onesignal.comPlease include:
  • Details of the issue you’re experiencing and steps to reproduce if available
  • Your OneSignal App ID
  • The External ID or Subscription ID if applicable
  • The URL to the message you tested in the OneSignal Dashboard if applicable
  • Any relevant logs or error messages
We’re happy to help!

Sürüm öncesi kontrol listesi

Pazarlamacılar için:
  • Uygulama güncellemelerini teşvik etmek için bir mesajlaşma planı oluşturun
  • Kullanıcıları nazikçe güncellemeye hatırlatmak için eski sisteminizdeki push ve uygulama içi mesajları kullanmayı düşünün.
Geliştiriciler için:
  • Push ve uygulama içi mesaj analitiğinin beklendiği gibi çalıştığını doğrulayın.
    • Tıklama olayları ve onaylanmış teslimatın Android ve iOS’ta izlendiğini kontrol edin.
  • Her iki sağlayıcıdan gönderilen mesajlar için tıklama olaylarının ve ön planda alınan olayların doğru işlendiğini doğrulayın.
  • Kullanıcıları içe aktarıyorsanız, süresi dolmuş token’ları içe aktarmayı önlemek için son 270 gün içinde uygulamanızda aktif olan Android ve iOS kullanıcılarını dışa aktarın. Ayrıntılar için FCM Süresi Dolmuş Token SSS’ye bakın.

Uygulamanızı/sitenizi yayınlayın

  • Çoğu kullanıcının uygulamaları otomatik olarak en son sürüme güncellenecektir.
  • Kullanıcılar güncellenmiş uygulamanızı açtıklarında, izinler zaten verilmişse—gerekli izin istemlerinden veya uygulamanın bildirim ayarlarından—push bildirimlerine abone olmak için istenmeyeceklerdir.
Kullanıcıları içe aktarmadıysanız:
  • Kullanıcılar, uygulamanın güncellenmiş sürümünü açtıklarında otomatik olarak OneSignal’de oluşturulacaktır. Daha önce abone olmuşlarsa push için istenmeyeceklerdir.
  • Onlara mesaj gönderebilmeniz için güncellenmiş uygulamayı açmalarını beklemeniz gerekecektir.
  • Yeterli kullanıcı OneSignal’de görünene kadar birkaç gün boyunca önceki push sağlayıcısından bildirim ve uygulama içi mesaj göndermeye devam edin. Uygulamayı en son sürüme güncellemelerini isteyen ek uyarılar gönderin.

Sonuçları izleyin

Geliştiriciler için:
  • Dağıtımdan sonra hata oranlarını ve çökmeleri izleyin.
  • Beklenmeyen token geçersizleştirmelerini izleyin.
  • SDK entegrasyon analitiğini kontrol edin.
Pazarlamacılar için:
  • Uygulama yayın tarihini işaretleyin.
  • Geliştiricilerinizle şunları iletin:
    • Hangi geçiş yolunun alındığı (Temiz veya Aşamalı geçiş).
    • Kullanıcılar içe aktarıldı mı?
  • Temiz geçiş uyguluyorsanız:
    • Önceki platformda, aktif olmaya devam eden kullanıcıların bir segmentini veya grubunu oluşturun. Oturum sürelerini, alınan mesajları ve tıklama olaylarını kontrol edin.
    • Yalnızca uygulamayı güncellememiş kullanıcılar aktif olmaya ve bu grupta yer almaya devam etmelidir.
    • Önceki sağlayıcınızdan bu kullanıcılara push ve uygulama içi mesajlar göndermeye devam edin, onları nazikçe güncellemeye teşvik edin.
    • Tamamen OneSignal’e geçmeye hazır olana kadar önceki sağlayıcıdan göndermeyi durdurun.
  • Aşamalı geçiş uyguluyorsanız:
    • Önceki platformda, OneSignal’den önceki eski uygulama sürümüne sahip kullanıcıların bir segmentini veya grubunu oluşturun.
    • Önceki sağlayıcınızdan bu eski uygulama kullanıcılarına push ve uygulama içi mesajlar göndermeye devam edin, onları nazikçe güncellemeye teşvik edin.
    • Tamamen OneSignal’e geçmeye hazır olana kadar önceki sağlayıcıdan göndermeyi durdurun.
    • Bir sonraki uygulama sürümünde önceki push sağlayıcısının kodunu kaldırın.

OneSignal’e başarıyla geçiş yaptınız!Geçiş planlaması hakkında strateji soruları için müşteri başarı ekibimiz kişiselleştirilmiş rehberlik sağlayabilir.
Need help?Chat with our Support team or email support@onesignal.comPlease include:
  • Details of the issue you’re experiencing and steps to reproduce if available
  • Your OneSignal App ID
  • The External ID or Subscription ID if applicable
  • The URL to the message you tested in the OneSignal Dashboard if applicable
  • Any relevant logs or error messages
We’re happy to help!