Ana içeriğe atla
OneSignal, cihaz merkezli bir modelden (Player ID) kullanıcı merkezli bir modele (OneSignal ID) güncellenmiştir. Geçiş rehberliği için Kullanıcı Modeli Geçiş Kılavuzu’na bakın.Eski cihaz merkezli uygulamalar için belgelere Versiyon 9 adresinden ulaşabilirsiniz.

Genel Bakış

Bu belge, OneSignal’in eski Player Model Web SDK’sinden daha yeni User Model SDK’ya metodları, özellikleri ve olayları eşleştirir. Her bölüm, entegrasyonunuzu nasıl güncelleyeceğinizi açıkça gösteren eşleşen TypeScript kod örnekleri içerir. Tüm örnekler gösterim amaçlı basitleştirilmiştir. Eksiksiz ve güncel uygulamalar için, her metod veya olay altında sağlanan dokümantasyon bağlantılarına bakın.

OneSignal Service Worker

OneSignalSDKWorker.js dosyanızdaki içe aktarımı güncelleyin: Player Model:
importScripts('https://cdn.onesignal.com/sdks/OneSignalSDKWorker.js');
User Model:
importScripts("https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.sw.js");
Dosya yolunu aynı tutun. Sadece importScripts URL’sini güncelleyin. Daha fazla bilgi için OneSignal Service Worker sayfasına bakın.

Başlatma

init()

Player Model: Belgeler
<script src="https://cdn.onesignal.com/sdks/OneSignalSDK.js" async></script>
<script>
window.OneSignal = window.OneSignal || [];
OneSignal.push(function() {
  OneSignal.init({
    appId: "YOUR_APP_ID"
  });
});
</script>
User Model: Belgeler
<script src="https://cdn.onesignal.com/sdks/web/v16/OneSignalSDK.page.js" defer></script>
<script>
window.OneSignalDeferred = window.OneSignalDeferred || [];
OneSignalDeferred.push(async function(OneSignal) {
  await OneSignal.init({
    appId: "YOUR_APP_ID",
  });
});
</script>

provideUserConsent()

Player Model: Belgeler
OneSignal.provideUserConsent(true)
User Model: Belgeler
OneSignal.setConsentGiven(true)

Push İçin Kayıt

showNativePrompt()

Player Model:
OneSignal.showNativePrompt()
User Model: Belgeler
OneSignal.Notifications.requestPermission()

registerForPushNotifications() — User Model’de Kaldırıldı

OneSignal.registerForPushNotifications()

#permissionPromptDisplay

Player Model:
OneSignal.on('permissionPromptDisplay', () => ...)
User Model: Belgeler
OneSignal.Notifications.addEventListener('permissionPromptDisplay', event => { ... })

showSlidedownPrompt()

Player Model:
OneSignal.showSlidedownPrompt()
User Model: Belgeler
OneSignal.Slidedown.promptPush()

showHttpPrompt() — User Model’de Kaldırıldı

OneSignal.showHttpPrompt()

showCategorySlidedown()

Player Model:
OneSignal.showCategorySlidedown()
User Model: Belgeler
OneSignal.Slidedown.promptPushCategories()

#getNotificationPermission

Player Model:
OneSignal.on('getNotificationPermission', (permission) => ...)
User Model: Belgeler
OneSignal.User.PushSubscription.addEventListener('change', ({ optedIn }) => { ... })

isPushNotificationsSupported()

Player Model:
OneSignal.isPushNotificationsSupported()
User Model: Belgeler
OneSignal.Notifications.isPushSupported()

isPushNotificationsEnabled()

Player Model:
await OneSignal.isPushNotificationsEnabled()
User Model: Belgeler
OneSignal.User.PushSubscription.optedIn

#subscriptionChange

Player Model:
OneSignal.on('subscriptionChange', (subscribed) => ...)
User Model:
OneSignal.User.PushSubscription.addEventListener('change', ({ token }) => { ... })

Analitik

#notificationPermissionChange

Player Model:
OneSignal.on('notificationPermissionChange', ({ to }) => ...)
User Model: Belgeler
OneSignal.Notifications.addEventListener('permissionChange', permission => { ... })

#popoverShown

Player Model:
OneSignal.on('popoverShown', () => ...)
User Model: Belgeler
OneSignal.Slidedown.addEventListener('slidedownShown', presented => { ... })

#customPromptClick

Player Model:
OneSignal.on('customPromptClick', ({ result }) => ...)
User Model: Belgeler
OneSignal.Notifications.addEventListener('click', ({notification, result}) => { ... })

Kullanıcı Kimlikleri

getUserId()

Player Model:
OneSignal.getUserId()
User Model: Belgeler
OneSignal.User.PushSubscription.id;

setExternalUserId()

Player Model: Belgeler
OneSignal.setExternalUserId("external id")
User Model: Belgeler
OneSignal.login("external id")

removeExternalUserId()

Player Model:
OneSignal.removeExternalUserId()
User Model: Belgeler
OneSignal.logout()

getExternalUserId()

Player Model:
await OneSignal.getExternalUserId()
User Model: Belgeler
OneSignal.User.externalId

Etiketler

sendTag()

Player Model:
OneSignal.sendTag("key", "value")
User Model:
OneSignal.User.addTag("key", "value")
User Model belgeler

sendTags()

Player Model:
OneSignal.sendTags({ key1: 'value1', key2: 'value2' })
User Model:
OneSignal.User.addTags({ key1: 'value1', key2: 'value2' })

getTags()

Player Model:
await OneSignal.getTags()
User Model:
OneSignal.User.getTags()

deleteTag()

Player Model:
OneSignal.deleteTag("key")
User Model:
OneSignal.User.removeTag("key")

deleteTags()

Player Model:
OneSignal.deleteTags(["key1", "key2"])
User Model:
OneSignal.User.removeTags(["key1", "key2"])

Push Bildirimleri

sendSelfNotification() — User Model’de Kaldırıldı

OneSignal.sendSelfNotification('title', 'message', 'url')

setSubscription()

Player Model:
OneSignal.setSubscription(false)
User Model:
OneSignal.Notifications.permission = false

Bildirim Alma

#notificationDisplay

Player Model:
OneSignal.on('notificationDisplay', (event) => { ... })
User Model:
OneSignal.Notifications.addEventListener('foregroundWillDisplay', ({ notification }) => { ... })

#notificationDismiss

Player Model:
OneSignal.on('notificationDismiss', (event) => { ... })
User Model:
OneSignal.Notifications.addEventListener('dismiss', ({ notification }) => { ... })

#addListenerForNotificationOpened

Player Model:
OneSignal.on('addListenerForNotificationOpened', (event) => { ... })
User Model:
// TODO: User Model'de henüz uygulanmadı

E-posta

setEmail()

User Model belgeler Player Model:
OneSignal.setEmail('email@example.com')
User Model:
OneSignal.User.addEmail('email@example.com')

logoutEmail()

Player Model:
OneSignal.logoutEmail()
User Model:
OneSignal.User.removeEmail('email@example.com')

getEmailId() — User Model’de Kaldırıldı

SMS

setSMSNumber()

Player Model:
OneSignal.setSMSNumber('+11234567890')
User Model:
OneSignal.User.addSms('+11234567890')

logoutSMSNumber()

Player Model:
OneSignal.logoutSMS()
User Model:
OneSignal.User.removeSms('+11234567890')