Gereksinimler
- HTTPS web sitesi: Web push, HTTP’de veya gizli/özel modlarda çalışmaz.
- Sunucu erişimi: Sitenize bir service worker dosyası yüklemeniz gerekecektir.
- Tek kaynak: Web push, Aynı kaynak politikasını takip eder. Birden fazla kaynağınız (alan adı/alt alan adı) varsa birden fazla OneSignal uygulamasına ihtiyacınız olacaktır (kaynak başına bir tane). Bu tarayıcı kısıtlamasına uymak için şunlardan birini yapabilirsiniz:
- Abonelikler için trafiği tek bir kaynağa yönlendirin.
- Kaynak başına bir tane olmak üzere birden fazla OneSignal uygulaması oluşturun.
OneSignal uygulamanızı ve platformunuzu yapılandırın
OneSignal panosunda:- Settings > Push & In-App > Web bölümüne gidin.
- Custom Code entegrasyon türünü seçin.
Site kurulumu
Site ayrıntılarını ekleyin:- Site Name: Sitenizin adı ve varsayılan bildirim başlığı.
- Site URL: Sitenizin tam kaynağı, örn.
https://yourdomain.com. Siteniz bu şekilde yapılandırılmamışsawww.kullanmaktan kaçının. Birden fazla kaynağınız varsa Gereksinimlere bakın. - Auto Resubscribe: Kullanıcılar tarayıcı verilerini temizledikten sonra sitenize döndüklerinde otomatik olarak yeniden abone olmak için bunu etkinleştirin (yeni izin istemi gerekmez).
- Default Icon URL: Bildirimlerde ve istemlerde görünen kare
256×256PNG, JPG veya animasyonsuz GIF yükleyin. Ayarlanmazsa varsayılan olarak bir zil simgesi kullanılır. Bkz. Bildirim simgeleri.

OneSignal panosundaki Web ayarları
Yerel test
Localhost’ta test etmek için üretim uygulamanızdan ayrı bir OneSignal uygulaması kullanın veinit seçeneklerinize allowLocalhostAsSecureOrigin: true ekleyin.
Kendi imzalı sertifikayla HTTPS üzerinde localhost test ediyorsanız Chrome’a --allow-insecure-localhost ile geçersiz sertifikaları yok saymasını söylemeniz gerekebilir. Firefox ve Safari, güvenlik sertifikaları için istisna eklemek üzere yerleşik mekanizmalar sağlar.
Hoş geldin bildirimi (isteğe bağlı)
Özel Kod, hoş geldin bildiriminiOneSignal.init() içinde welcomeNotification parametreleriyle ayarlar. Tipik Site ve WordPress bunu panoda ayarlar. Bkz. Web SDK kurulumu.
Service worker dosyasını yükleyin
Web SDK,OneSignal.init() içinde özel bir yol iletmediğiniz sürece OneSignalSDKWorker.js dosyasını sitenizin kökünde arar (https://yourdomain.com/OneSignalSDKWorker.js).
Özel Kod, panodaki Customize service worker paths and filenames alanlarını kullanmaz. SDK’ya nereye bakacağını kodda serviceWorkerPath ve serviceWorkerParam ile söylersiniz.
Dosyayı OneSignal panosundan indirin veya şu tek satırı içeren OneSignalSDKWorker.js adlı bir dosya oluşturun:
https://yourdomain.com/OneSignalSDKWorker.js adresinde erişilebilir olacak şekilde yükleyin. serviceWorkerPath ayarlamanıza gerek yoktur. SDK bu URL’yi otomatik olarak ister.
Alt dizin: Sitenizde zaten bir service worker varsa (örneğin bir PWA), OneSignal’in dosyasını /’yi kontrol eden worker ile çakışmaması için /push/onesignal/ gibi bir alt dizine koyun. Ardından OneSignal.init() içinde serviceWorkerPath ve serviceWorkerParam iletmeniz gerekir. Bkz. Siteye kod ekleyin. Dosya, https://yourdomain.com/push/onesignal/OneSignalSDKWorker.js adresinde herkese açık şekilde erişilebilir olmalıdır.
OneSignal service worker
Siteye kod ekleyin
Bu kodu web sitenizin<head> bölümüne ekleyin. YOUR_ONESIGNAL_APP_ID yerine OneSignal panosundaki Uygulama ID’nizi yazın.
OneSignalSDKWorker.js sitenizin kökündeyse şu kod parçasını kullanın:
serviceWorkerPath ve serviceWorkerParam ekleyin. Bu seçenekler, Özel Kodun SDK’ya kök dışı bir konumu bildirmesinin tek yoludur.
persistNotification ile ayarlanır. Panodaki Persistence anahtarı Özel Kod için geçerli değildir. Seçeneği atlarsanız, SDK şu anda kalıcılığı açık olarak kabul eder. Kapatmak için persistNotification: false ayarlayın. Yalnızca masaüstünde Chrome ve Edge üzerinde çalışır. Bkz. Kalıcılık.
iOS web push desteği
Apple, iOS 16.4+ çalıştıran iPhone ve iPad’lerde web push bildirimlerini desteklemeye başladı. Desteklenen bir tarayıcıda ziyaret edildiği sürece web push’un “çalıştığı” Android cihazların aksine Apple,manifest.json dosyası ve kullanıcının sitenizi ana ekranına eklemesi gibi birkaç ek gereksinim ekledi.
iOS web push kurulumu
manifest.json dosyasını ekleyin ve kullanıcıları sitenizi ana ekranlarına eklemeye yönlendirin.Safari Web Push .p12 sertifikası (isteğe bağlı, eski)
Zaten kendi Safari Web Push.p12 sertifikanız yoksa ve eski Safari kullanıcılarını desteklemek istemiyorsanız bunu kapalı bırakın. Modern Safari (macOS 13+ ve iOS 16.4+), VAPID (Voluntary Application Server Identification) ile standartlara dayalı Web Push kullanır. OneSignal, VAPID’i otomatik olarak yönetir. Modern Safari tarayıcıları için sertifika yüklemezsiniz.
Zaten kendi .p12 dosyanız varsa (Apple, Safari Web Push için .p8 desteklemez), panodan yükleyin. Bkz. Safari Web Push .p12 sertifikası.
OneSignal SDK entegrasyonunu test etme
Bu kılavuz, push bildirimleri ve abonelik kaydı test ederek OneSignal SDK entegrasyonunuzun düzgün çalıştığını doğrulamanıza yardımcı olur.Web push aboneliklerini kontrol edin
Test cihazında sitenizi başlatın.
- Test ederken Chrome, Firefox, Edge veya Safari kullanın.
- Gizli veya özel tarama modunu kullanmayın. Kullanıcılar bu modlarda push bildirimlerine abone olamazlar.
- İstemler izin istemleri yapılandırmanıza göre görünmelidir.
- Push bildirimlerine abone olmak için yerel istemde İzin Ver’e tıklayın.

Web push yerel izin istemi
OneSignal panonuzu kontrol edin
- Kitle > Abonelikler’e gidin.
- Abone durumuna sahip yeni bir girdi görmelisiniz.

'Subscribed' durumuna sahip aboneliği gösteren pano
Test aboneliklerini ayarlayın
Test abonelikleri, bir mesaj göndermeden önce push bildirimi test etmek için yararlıdır.Test Aboneliklerine ekleyin.

Test Aboneliklerine cihaz ekleme
Aboneliğinizi adlandırın.
Test kullanıcıları segmenti oluşturun.
Segmenti adlandırın.
Test Users olarak adlandırın (ad önemlidir çünkü daha sonra kullanılacaktır).Test Users filtresini ekleyin ve Create Segment'e tıklayın.

Test Users filtresi ile 'Test Users' segmenti oluşturma
API aracılığıyla test push gönderin
Uygulama API Anahtarınızı ve Uygulama ID'nizi alın.
Sağlanan kodu güncelleyin.
YOUR_APP_API_KEY ve YOUR_APP_ID değerlerini gerçek anahtarlarınızla değiştirin. Bu kod, daha önce oluşturduğumuz Test Users segmentini kullanır.Kodu çalıştırın.
Görselleri ve onaylanmış teslimatı kontrol edin.

Chrome macOS'ta görsel içeren genişletilmiş push bildirimi
Onaylanmış teslimatı kontrol edin.
Push bildirimi mesaj raporları
support@onesignal.com ile iletişime geçin:
- API isteği ve yanıtını bir
.txtdosyasına kopyalayıp yapıştırın - Abonelik ID’niz
- OneSignal koduyla web sitesi URL’niz
Kullanıcı tanımlama
Önceki bölümde web push Abonelikleri oluşturma ele alındı. Bu bölüm, OneSignal SDK’yı kullanarak tüm abonelikler (push, e-posta ve SMS dahil) üzerinden Kullanıcıları tanımlamaya genişler. Kullanıcıları platformlar arasında birleştirmenize ve etkileşime geçirmenize yardımcı olmak için Harici ID’ler, etiketler, çok kanallı abonelikler, gizlilik ve etkinlik izleme konularını kapsar.Harici ID ata
Arka ucunuzun kullanıcı tanımlayıcısını kullanarak kullanıcıları cihazlar, e-posta adresleri ve telefon numaraları arasında tutarlı bir şekilde tanımlamak için Harici ID kullanın. Bu, mesajlaşmanızın kanallar ve 3. taraf sistemler arasında birleşik kalmasını sağlar (özellikle Entegrasyonlar için önemlidir). SDK’nınlogin metodu ile uygulamanız her kullanıcıyı tanımladığında Harici ID’yi ayarlayın.
Veri etiketleri ekleyin
Etiketler, kullanıcı özelliklerini (username, role veya tercihler gibi) ve etkinlikleri (purchase_date, game_level veya kullanıcı etkileşimleri gibi) depolamak için kullanabileceğiniz anahtar-değer çiftleri dizgisi verisidir. Etiketler, daha gelişmiş kullanım durumlarına olanak tanıyan gelişmiş Mesaj Kişiselleştirme ve Segmentasyonu destekler.
Uygulamanızda etkinlikler gerçekleştikçe SDK’nın addTag ve addTags metotları ile etiketleri ayarlayın.
Bu örnekte, kullanıcı current_level adlı etiket tarafından 6 değerine ayarlanarak tanımlanabilen 6. seviyeye ulaştı.

OneSignal'da "current_level" adlı etiketi "6" olarak ayarlanmış bir kullanıcı profili

4'ten büyük ve 10'dan küçük current_level değerine sahip kullanıcıları hedefleyen bir segmenti gösteren segment editörü

Kişiselleştirilmiş mesajla Seviye 5-10 segmentini hedefleyen bir push bildirimini gösteren ekran görüntüsü
E-posta ve/veya SMS abonelikleri ekleyin
OneSignal SDK, kullanıcılar kabul ettiğinde otomatik olarak web push abonelikleri oluşturur. İlgili abonelikleri oluşturarak kullanıcılara e-posta ve SMS kanalları aracılığıyla da ulaşabilirsiniz.- E-posta abonelikleri oluşturmak için
addEmailmetodunu kullanın. - SMS abonelikleri oluşturmak için
addSmsmetodunu kullanın.

Harici ID tarafından birleştirilmiş push, e-posta ve SMS aboneliklerine sahip bir kullanıcı profili
- E-posta veya SMS abonelikleri eklemeden önce açık onay alın.
- Kullanıcılara her iletişim kanalının faydalarını açıklayın.
- Kullanıcıların hangi kanalları tercih ettiklerini seçebilmeleri için kanal tercihleri sağlayın.
Gizlilik ve kullanıcı onayı
OneSignal’ın kullanıcı verilerini ne zaman topladığını kontrol etmek için SDK’nın onay kapısı metotlarını kullanın:setConsentRequired(true): Onay verilene kadar veri toplamayı engeller.setConsentGiven(true): Onay verildiğinde veri toplamayı etkinleştirir.
SDK tarafından toplanan veriler
Kişisel verilerin işlenmesi
Push, kullanıcı ve uygulama içi etkinlikleri dinleyin
Kullanıcı eylemlerine ve durum değişikliklerine tepki vermek için SDK dinleyicilerini kullanın. SDK, bağlanabileceğiniz birkaç etkinlik dinleyicisi sağlar. Daha fazla ayrıntı için SDK referans kılavuzumuza bakın.Push bildirimi etkinlikleri
- Tıklama etkinliği dinleyicisi: Bir bildirimin ne zaman dokunulduğunu tespit edin.
- Ön plan yaşam döngüsü dinleyicisi: Bildirimlerin ön planda nasıl davrandığını kontrol edin.
Kullanıcı durumu değişiklikleri
- Kullanıcı durumu değişiklik etkinliği dinleyicisi: Harici ID’nin ne zaman ayarlandığını tespit edin.
- İzin gözlemcisi: Kullanıcının yerel push izin istemi ile belirli etkileşimini izleyin.
- Push aboneliği değişiklik gözlemcisi: Push abonelik durumunun ne zaman değiştiğini izleyin.
Gelişmiş kurulum ve yetenekler
Entegrasyonunuzu geliştirmek için daha fazla yeteneği keşfedin:OneSignal'a Geçiş
Entegrasyonlar
Eylem düğmeleri
Çok dilli mesajlaşma
Kimlik Doğrulama
Özel Sonuçlar
Web SDK kurulumu ve referansı
Web push kurulumu
Web SDK referansı
SSS
Web SDK, service worker’ı nerede arar?
Web SDK,OneSignal.init() içinde serviceWorkerPath ve serviceWorkerParam iletmediğiniz sürece OneSignalSDKWorker.js dosyasını sitenizin kökünde arar (https://yourdomain.com/OneSignalSDKWorker.js). Özel Kod, panodaki yol alanlarını kullanmaz. Bkz. Service worker dosyasını yükleyin.