सामग्री पर जाएं

वेब पुश SDK 3.0

एकीकरण

Anchor link to

GitHub पर एकीकरण का नमूना

Pushwoosh वेब पुश SDK प्राप्त करें और इसे अनज़िप करें। आपके पास निम्नलिखित फ़ाइलें होनी चाहिए:

Anchor link to
  • pushwoosh-service-worker.js

इन सभी फ़ाइलों को अपनी वेबसाइट डायरेक्टरी के टॉप-लेवल रूट में रखें।

Anchor link to

SDK को प्रारंभ करें:

Anchor link to
  1. हमारे CDN से SDK को असिंक्रोनस रूप से शामिल करें।
<script type="text/javascript" src="//cdn.pushwoosh.com/webpush/v3/pushwoosh-web-notifications.js" async></script>
  1. वेब पुश SDK को प्रारंभ करें और सुनिश्चित करें कि SDK पूरी तरह से लोड होने तक आप प्रारंभ को कतार में रखें।
<script type="text/javascript">
var Pushwoosh = Pushwoosh || [];
Pushwoosh.push(['init', {
logLevel: 'info', // possible values: error, info, debug
applicationCode: 'XXXXX-XXXXX', // you application code from Pushwoosh Control Panel
apiToken: 'XXXXXXX', // Device API Token
safariWebsitePushID: 'web.com.example.domain', // unique reverse-domain string, obtained in you Apple Developer Portal. Only needed if you send push notifications to Safari browser
defaultNotificationTitle: 'Pushwoosh', // sets a default title for push notifications
defaultNotificationImage: 'https://yoursite.com/img/logo-medium.png', // URL to custom custom notification image
autoSubscribe: false, // or true. If true, prompts a user to subscribe for pushes upon SDK initialization
subscribeWidget: {
enable: true
},
userId: 'user_id', // optional, set custom user ID
tags: {
'Name': 'John Smith' // optional, set custom Tags
}
}]);
</script>

वेब पॉपअप

Anchor link to

अपनी साइट पर वेब पॉपअप अभियान सक्षम करने के लिए अपने init ऑब्जेक्ट में webPopups जोड़ें।

webPopups: {
enable: true,
},

वेब पॉपअप अभियान आपके द्वारा कंट्रोल पैनल में कॉन्फ़िगर किए गए ओवरले प्रदर्शित करते हैं जैसे प्रोमो, घोषणाएं, या लीड कैप्चर फॉर्म। कस्टम सदस्यता पॉपअप (subscribePopup) के विपरीत, जो केवल वेब पुश ऑप्ट-इन को संभालता है, वेब पॉपअप अभियान आपके द्वारा कॉन्फ़िगर की गई किसी भी सामग्री को प्रदर्शित कर सकते हैं। कंट्रोल पैनल में सेटअप के लिए, वेब पॉपअप को समझना देखें।

पुश सदस्यता बटन

Anchor link to

अपने उपयोगकर्ताओं को पुश सूचनाओं के लिए सदस्यता लेने के लिए प्रेरित करने के लिए, हम आपकी वेबसाइट पर पुश सदस्यता बटन लागू करने की सलाह देते हैं। उपयोगकर्ता अनुभव को बढ़ाएं और अधिक ग्राहक प्राप्त करें!

कॉन्फ़िगरेशन

Anchor link to

अपनी वेबसाइट में पुश सूचनाओं को लागू करना समाप्त करने के लिए, आपको हमारे चरण-दर-चरण गाइड का पालन करते हुए अपने Pushwoosh कंट्रोल पैनल में वेब प्लेटफॉर्म को कॉन्फ़िगर करना होगा:

सर्विस वर्कर को एक अलग स्कोप में पंजीकृत करना

Anchor link to

कभी-कभी आप सर्विस वर्कर फ़ाइल को वेबसाइट की रूट डायरेक्टरी में नहीं बल्कि एक सबडायरेक्टरी में रख सकते हैं।

इस मामले में, एक पैरामीटर जोड़कर कॉन्फ़िगरेशन (चरण 4.3) को संशोधित करें

serviceWorkerUrl: “/push-notifications/pushwoosh-service-worker.js”

जहां /push-notifications/pushwoosh-service-worker.js pushwoosh-service-worker.js फ़ाइल का पथ है।

इवेंट हैंडलर

Anchor link to

Pushwoosh वेब SDK 3.0 में आप कुछ घटनाओं को ट्रैक करने के लिए उनकी सदस्यता ले सकते हैं**,** या यदि आपको अब उन्हें ट्रैक करने की आवश्यकता नहीं है तो घटनाओं से सदस्यता समाप्त कर सकते हैं।

वेब SDK 3.0 लोड को ट्रैक करने के लिए, onLoad इवेंट को इस प्रकार फायर करें:

// Load Event
Pushwoosh.push(['onLoad', (api) => {
console.log('Pushwoosh load!');
}]);

सही वेब SDK प्रारंभ को ट्रैक करने के लिए, onReady इवेंट को फायर करें:

// Ready Event
Pushwoosh.push((api) => {
console.log('Pushwoosh ready!');
});

किसी भी SDK इवेंट की सदस्यता लेने या सदस्यता समाप्त करने के लिए, SDK लोड के बाद हैंडलर का उपयोग करें:

Pushwoosh.push(['onLoad', (api) => {
function onEventNameHandler() {
console.log('Triggered event: event-name!');
}
// To subscribe to an event:
Pushwoosh.addEventHandler('event-name', onEventNameHandler)
// To unsubscribe from an event:
Pushwoosh.removeEventHandler('event-name', onEventNameHandler)
}]);

SDK इवेंट्स

Anchor link to

सब्सक्राइब इवेंट

Anchor link to

उपयोगकर्ता द्वारा पुश सूचनाएँ प्राप्त करने के लिए सहमत होने के बाद निष्पादित किया जाता है।

Pushwoosh.push(['onLoad', (api) => {
Pushwoosh.addEventHandler('subscribe', (payload) => {
console.log('Triggered event: subscribe');
});
}]);

अनसब्सक्राइब इवेंट

Anchor link to

डिवाइस को सूचनाओं से अपंजीकृत करने के बाद निष्पादित किया जाता है।

Pushwoosh.push(['onLoad', (api) => {
Pushwoosh.addEventHandler('unsubscribe', (payload) => {
console.log('Triggered event: unsubscribe');
});
}]);

सदस्यता विजेट इवेंट्स

Anchor link to

एक सदस्यता प्रॉम्प्ट विजेट के प्रदर्शन को ट्रैक करें।

Pushwoosh.push(['onLoad', (api) => {
// सदस्यता प्रॉम्प्ट विजेट के प्रदर्शन पर निष्पादित
Pushwoosh.addEventHandler('show-subscription-widget', (payload) => {
console.log('Triggered event: show-subscription-widget');
});
// सदस्यता प्रॉम्प्ट विजेट को छिपाने पर निष्पादित
Pushwoosh.addEventHandler('hide-subscription-widget', (payload) => {
console.log('Triggered event: hide-subscription-widget');
});
}]);

सूचना अनुमति संवाद इवेंट्स

Anchor link to

देशी सदस्यता संवाद के प्रदर्शन को ट्रैक करें।

Pushwoosh.push(['onLoad', function (api) {
// अनुमति संवाद प्रदर्शन पर निष्पादित
Pushwoosh.addEventHandler('show-notification-permission-dialog', (payload) => {
console.log('Triggered event: show-notification-permission-dialog');
});
// तीन संभावित स्थितियों में से एक के साथ अनुमति संवाद को छिपाने पर निष्पादित:
// 1. डिफ़ॉल्ट - संवाद बंद है
// 2. दी गई - अनुमति दी गई है
// 3. अस्वीकृत - अनुमति अस्वीकृत है
Pushwoosh.addEventHandler('hide-notification-permission-dialog', (payload) => {
console.log('Triggered event: hide-notification-permission-dialog', payload.permission);
});
}]);

अनुमति इवेंट्स

Anchor link to

SDK प्रारंभ पर पुश सूचनाओं की अनुमति की स्थिति की जाँच करें; जब भी यह स्थिति अपडेट होती है तो उसे ट्रैक करें।

Pushwoosh.push(['onLoad', (api) => {
// SDK प्रारंभ के दौरान निष्पादित यदि 'autoSubscribe: false' या/और यदि कोई उपयोगकर्ता पुश सूचना प्रॉम्प्ट को अनदेखा करता है।
Pushwoosh.addEventHandler('permission-default', (payload) => {
console.log('Triggered event: permission-default');
});
// SDK प्रारंभ के दौरान निष्पादित यदि सूचनाएँ अवरुद्ध हैं या एक बार जब कोई उपयोगकर्ता पुश सूचनाओं को अवरुद्ध करता है।
Pushwoosh.addEventHandler('permission-denied', (payload) => {
console.log('Triggered event: permission-denied');
});
// SDK प्रारंभ के दौरान निष्पादित यदि सूचनाओं की अनुमति है या एक बार जब कोई उपयोगकर्ता पुश सूचनाओं की अनुमति देता है।
Pushwoosh.addEventHandler('permission-granted', (payload) => {
console.log('Triggered event: permission-granted');
});
}]);

पुश इवेंट प्राप्त करें

Anchor link to

डिवाइस पर पुश डिलीवरी को ट्रैक करें।

Pushwoosh.push(['onLoad', (api) => {
// जब एक पुश सूचना प्रदर्शित होती है तो निष्पादित किया जाता है।
Pushwoosh.addEventHandler('receive-push', (payload) => {
console.log('Triggered event: receive-push', payload.notification);
});
}]);

सूचना इवेंट्स

Anchor link to

ट्रैक करें कि क्या कोई पुश सूचना उपयोगकर्ता द्वारा खोली या बंद की गई है।

Pushwoosh.push(['onLoad', (api) => {
// जब कोई उपयोगकर्ता सूचना पर क्लिक करता है तो निष्पादित किया जाता है।
Pushwoosh.addEventHandler('open-notification', (payload) => {
console.log('Triggered event: open-notification', payload.notification);
});
// जब कोई उपयोगकर्ता पुश सूचना बंद करता है तो निष्पादित किया जाता है।
Pushwoosh.addEventHandler('hide-notification', (payload) => {
console.log('Triggered event: hide-notification', payload.notification);
});
}]);

इनबॉक्स इवेंट्स

Anchor link to

इनबॉक्स में भेजी गई सूचनाओं को ट्रैक करें।

Pushwoosh.push(['onLoad', (api) => {
// इनबॉक्स संदेश प्राप्त होने और indexedDB में सहेजे जाने के बाद सर्विसवर्कर द्वारा निष्पादित।
Pushwoosh.addEventHandler('receive-inbox-message', (payload) => {
console.log('Triggered event: receive-inbox-message', payload.message);
});
// पेज लोड होने के दौरान इनबॉक्स के स्वचालित रूप से अपडेट होने के बाद निष्पादित।
Pushwoosh.addEventHandler('update-inbox-messages', (payload) => {
console.log('Triggered event: receive-inbox-message', payload.messages);
});
}]);

कस्टम सदस्यता पॉपअप इवेंट्स

Anchor link to

कस्टम सदस्यता पॉपअप इवेंट्स को संभालने के बारे में विवरण के लिए, कृपया कस्टम सदस्यता पॉपअप इवेंट्स गाइड देखें।

वेब पुश SDK प्रारंभ होने के बाद, आप Pushwoosh API पर निम्नलिखित कॉल कर सकते हैं। सभी विधियाँ Promise ऑब्जेक्ट लौटाती हैं।

Pushwoosh.push((api) => {
// उपयोगकर्ता के लिए टैग सेट करें
api.setTags({
'Tag Name 1': 'value1',
'Tag Name 2': 'value2'
});
// सर्वर से उपयोगकर्ता के लिए टैग प्राप्त करें
api.getTags();
// उपयोगकर्ता आईडी पंजीकृत करें
api.registerUser('user123');
// उपयोगकर्ता ईमेल पंजीकृत करें
api.registerEmail('user@example.com');
// SMS नंबर पंजीकृत करें
api.registerSmsNumber('+15551234567');
// WhatsApp नंबर पंजीकृत करें
api.registerWhatsappNumber('+1234567890');
// एक इवेंट पोस्ट करें
api.postEvent('myEventName', {attributeName: 'attributeValue'});
//सूचनाओं से अपंजीकृत करें
api.unregisterDevice();
// डिवाइस की भाषा सेट करें ("भाषा" टैग में मान को ओवरराइड करता है)
api.setLanguage('es');
// वैकल्पिक रूप से उपकरणों और चैनलों के साथ उपयोगकर्ता को बहु-पंजीकृत करें
api.multiRegisterDevice({
user_id: 'user123',
email: 'user@example.com',
sms_phone_number: '+1234567890',
tags: {
'UserType': { operation: TTagOperationSet, value: 'Premium' },
'Interests': { operation: TTagOperationAppend, values: ['sports', 'technology'] }
}
});
});

multiRegisterDevice

Anchor link to

उन्नत पंजीकरण विधि जो एक ही API कॉल में कई उपकरणों और मैसेजिंग चैनलों के साथ एक उपयोगकर्ता प्रोफ़ाइल को पंजीकृत करने की अनुमति देती है। यह विधि विशेष रूप से क्रॉस-प्लेटफ़ॉर्म अनुप्रयोगों के लिए या ओमनीचैनल मैसेजिंग रणनीतियों को लागू करते समय उपयोगी है।

Pushwoosh.push((api) => {
api.multiRegisterDevice({
user_id: 'user123', // Optional: User identifier
email: 'user@example.com', // Optional: Email for email messaging
sms_phone_number: '+1234567890', // Optional: SMS phone number (E.164 format)
whatsapp_phone_number: '+1234567890', // Optional: WhatsApp number (E.164 format)
kakao_phone_number: '+1234567890', // Optional: KakaoTalk number (E.164 format)
language: 'en', // Optional: Language code (ISO 639-1)
timezone: 'America/New_York', // Optional: Timezone identifier
city: 'New York', // Optional: City for targeting
country: 'US', // Optional: Country for targeting
state: 'NY', // Optional: State for targeting
tags: { // Optional: Tag values with operations
'UserType': {
operation: TTagOperationSet, // Set tag value (0)
value: 'Premium'
},
'Interests': {
operation: TTagOperationAppend, // Append to tag value (1)
values: ['sports', 'technology']
},
'LoginCount': {
operation: TTagOperationIncrement, // Increment tag value (3)
value: '1'
}
},
push_devices: [ // Optional: Array of push devices
{
hwid: 'web-device-456',
platform: TPlatformChrome, // Chrome platform (11)
push_token: 'fcm-token-here',
app_version: '2.1.0',
platformData: {
public_key: 'web-push-public-key',
auth_token: 'web-push-auth-token',
browser: 'chrome'
}
}
]
})
.then((response) => {
console.log('Multi-registration successful:', response);
})
.catch((error) => {
console.error('Multi-registration failed:', error);
});
});

प्लेटफ़ॉर्म प्रकार:

  • TPlatformSafari (10): Safari प्लेटफ़ॉर्म
  • TPlatformChrome (11): Chrome प्लेटफ़ॉर्म
  • TPlatformFirefox (12): Firefox प्लेटफ़ॉर्म

टैग ऑपरेशन प्रकार:

  • TTagOperationSet (0): टैग मान सेट करें (मौजूदा मान को बदलें)
  • TTagOperationAppend (1): टैग मान में जोड़ें (सूची में जोड़ें)
  • TTagOperationRemove (2): टैग मान हटाएँ (सूची से हटाएँ)
  • TTagOperationIncrement (3): टैग मान बढ़ाएँ (संख्यात्मक वृद्धि)

लाभ:

  • एकल API कॉल: एक साथ कई डिवाइस और चैनल पंजीकृत करें
  • परमाणु संचालन: सभी पंजीकरण एक साथ सफल या विफल होते हैं
  • उपयोगकर्ता-केंद्रित: सभी उपकरणों को एक ही उपयोगकर्ता प्रोफ़ाइल से जोड़ता है
  • उन्नत टैगिंग: जटिल टैग संचालन का समर्थन करता है
  • क्रॉस-प्लेटफ़ॉर्म: एक साथ कई प्लेटफ़ॉर्म संभालें

Pushwoosh को टैग भेजने का उदाहरण:

Pushwoosh.push((api) => {
var myCustomTags = {
'Tag 1': 123,
'Tag 2': 'some string'
};
api.setTags(myCustomTags)
.then((res) => {
var skipped = res && res.skipped || [];
if (!skipped.length) {
console.log('success');
}
else {
console.warn('skipped tags:', skipped);
}
})
.catch((err) => {
console.error('setTags error:', err);
});
});

टैग मान बढ़ाएँ

Anchor link to

एक नंबर टैग के मान को बढ़ाने के लिए, operation पैरामीटर का उपयोग ‘increment’ मान के साथ इस प्रकार करें:

Pushwoosh.push((api) => {
api.setTags({
'Tag 1': {
operation: 'increment',
value: 1
}
})
});

टैग मान जोड़ें

Anchor link to

मौजूदा सूची टैग में नए मान जोड़ने के लिए, operation पैरामीटर का उपयोग ‘append’ मान के साथ इस प्रकार करें:

Pushwoosh.push((api) => {
api.setTags({
'Tag 3': {
operation: 'append',
value: ['Value3']
}
})
});

टैग मान हटाएँ

Anchor link to

एक सूची टैग से एक मान हटाने के लिए, operation पैरामीटर का उपयोग ‘remove’ मान के साथ इस प्रकार करें:

Pushwoosh.push((api) =>{
api.setTags({
'Tag 3': {
operation: 'remove',
value: ['Value2']
}
})
});

सार्वजनिक विधियाँ

Anchor link to

Pushwoosh.subscribe()

इस विधि का उपयोग पुश सूचनाओं के लिए उपयोगकर्ता की अनुमति का अनुरोध करने के लिए किया जाता है। यदि कोई उपयोगकर्ता पहले से ही सब्सक्राइब है, तो विधि निष्पादन बंद कर देगी।

यदि किसी उपयोगकर्ता ने अभी तक पुश के लिए सब्सक्राइब नहीं किया है:

1. पुश सूचनाओं के लिए अनुमति का अनुरोध किया जाता है।

2. यदि कोई उपयोगकर्ता सूचनाओं की अनुमति देता है, तो onSubscribe इवेंट ट्रिगर होता है।

Pushwoosh.subscribe() स्वचालित रूप से निष्पादित होता है यदि SDK प्रारंभ के दौरान autoSubscribe: true सेट किया गया है।

यदि आपने प्रारंभ के दौरान autoSubscribe: false पैरामीटर का उपयोग करके उपयोगकर्ता को पुश के लिए सब्सक्राइब करने के लिए मैन्युअल रूप से प्रॉम्प्ट करने का विकल्प चुना है तो इस विधि को कॉल करें:

<button onclick="Pushwoosh.subscribe()">Subscribe</button>
<script>
Pushwoosh.push(['onSubscribe', (api) => {
console.log('User successfully subscribed');
}]);
</script>

Pushwoosh.unsubscribe()

  1. /unregisterDevice विधि निष्पादित होती है।
  2. onUnsubscribe इवेंट ट्रिगर होता है।
<button onclick="Pushwoosh.unsubscribe()">Unsubscribe</button>
<script type="text/javascript">
Pushwoosh.push(['onUnsubscribe', (api) => {
console.log('User successfully unsubscribed');
}]);
</script>

Pushwoosh.isSubscribed()

जाँचता है कि क्या कोई उपयोगकर्ता सब्सक्राइब है और true/false फ्लैग लौटाता है।

Pushwoosh.isSubscribed().then((isSubscribed) => {
console.log('isSubscribed', isSubscribed);
});

Pushwoosh.getHWID()

Pushwoosh HWID लौटाता है।

Pushwoosh.getHWID().then((hwid) => {
console.log('hwid:', hwid);
});

Pushwoosh.getPushToken()

यदि उपलब्ध हो तो पुश टोकन लौटाता है।

Pushwoosh.getPushToken().then((pushToken) => {
console.log('pushToken:', pushToken);
});

Pushwoosh.getUserId()

यदि उपलब्ध हो तो उपयोगकर्ता आईडी लौटाता है।

Pushwoosh.getUserId().then((userId) => {
console.log('userId:', userId);
});

Pushwoosh.getParams()

निम्नलिखित मापदंडों की एक सूची लौटाता है:

Pushwoosh.getParams().then((params) => {
params = params || {};
var hwid = params.hwid;
var pushToken = params.pushToken;
var userId = params.userId;
});

Pushwoosh.isAvailableNotifications()

जाँचता है कि क्या कोई ब्राउज़र Pushwoosh WebSDK 3.0 का समर्थन करता है, ‘true’ या ‘false’ लौटाता है।

Pushwoosh.isAvailableNotifications() // true/false

इनबॉक्स संदेश विधियाँ

Anchor link to

messagesWithNoActionPerformedCount(): Promise<number>

खोले गए संदेशों की संख्या लौटाता है।

Pushwoosh.pwinbox.messagesWithNoActionPerformedCount()
.then((count) => {
console.log(`${count} messages opened`);
});

unreadMessagesCount()

अपठित संदेशों की संख्या लौटाता है।

Pushwoosh.pwinbox.unreadMessagesCount()
.then((count) => {
console.log(`${count} messages unread`);
});

messagesCount(): Promise<number>

संदेशों की कुल संख्या लौटाता है।

Pushwoosh.pwinbox.messagesCount()
.then((count) => {
console.log(`${count} messages`);
});

loadMessages(): Promise<Array>

हटाए नहीं गए संदेशों की सूची लोड करता है।

Pushwoosh.pwinbox.loadMessages()
.then(() => {
console.log('Messages have been loaded');
});

readMessagesWithCodes(codes: Array<string>): Promise<void>

संदेशों को Inbox_Ids द्वारा पढ़े गए के रूप में चिह्नित करता है।

Pushwoosh.pwinbox.readMessagesWithCodes(codes)
.then(() => {
console.log('Messages have been read');
});

performActionForMessageWithCode(code: string): Promise<void>

एक संदेश को सौंपे गए कार्य को करता है और संदेश को पढ़े गए के रूप में चिह्नित करता है।

Pushwoosh.pwinbox.performActionForMessageWithCode(code)
.then(() => {
console.log('Action has been performed');
});

deleteMessagesWithCodes(codes: Array<string>): Promise<void>

संदेशों को हटाए गए के रूप में चिह्नित करता है।

Pushwoosh.pwinbox.deleteMessagesWithCodes([code])
.then(() => {
console.log('Messages have been deleted');
});

syncMessages(): Promise<void>

सर्वर के साथ संदेशों को सिंक्रनाइज़ करता है।

Pushwoosh.pwinbox.syncMessages()
.then(() => {
console.log('Messages have been synchronized');
});

प्रोग्रेसिव वेब ऐप समर्थन

Anchor link to

Pushwoosh को अपने प्रोग्रेसिव वेब एप्लिकेशन (PWA) में एकीकृत करने के लिए, नीचे वर्णित चरणों का पालन करें।

1. अपनी सर्विस वर्कर फ़ाइल का पथ कॉपी करें:

if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/service-worker.js') // <- your service worker url
});
}

फिर, WebSDK को प्रारंभ करते समय serviceWorkerUrl पैरामीटर का उपयोग इस प्रकार करें:

var Pushwoosh = Pushwoosh || [];
Pushwoosh.push(['init', {
logLevel: 'error',
applicationCode: 'XXXXX-XXXXX',
safariWebsitePushID: 'web.com.example.domain',
defaultNotificationTitle: 'Pushwoosh',
defaultNotificationImage: 'https://yoursite.com/img/logo-medium.png',
serviceWorkerUrl: '/service-worker.js', // <- your service worker url
}]);

WebSDK नए सर्विस वर्कर को तुरंत पंजीकृत नहीं करता है; एक सर्विस वर्कर तब पंजीकृत होता है जब इसकी आवश्यकता होती है:

  • जब कोई डिवाइस एक पुश टोकन प्राप्त करता है (डिवाइस पंजीकरण या पुनः सदस्यता पर),
  • जब एक पुश टोकन हटा दिया जाता है (उपयोगकर्ता आधार से एक डिवाइस को हटाने पर)।

यह सर्वर अनुरोधों की संख्या को कम करके आपके पृष्ठों की लोडिंग को तेज करता है।

ब्राउज़र एक ही समय में दो अलग-अलग सर्विस वर्करों को पंजीकृत करने की अनुमति नहीं देते हैं (और पढ़ें: https://github.com/w3c/ServiceWorker/issues/921), इसलिए आपके PWA को सही ढंग से काम करने के लिए, आपके कोडबेस और Pushwoosh कोडबेस के लिए एक सामान्य सर्विस वर्कर पंजीकृत होना चाहिए।

2. अपने सर्विस वर्कर में निम्नलिखित स्ट्रिंग जोड़ें (शुरुआत में या अंत में, इससे कोई फर्क नहीं पड़ता):

importScripts('https://cdn.pushwoosh.com/webpush/v3/pushwoosh-service-worker.js' + self.location.search);

इस प्रकार आप अपने सर्विस वर्कर के लिए Pushwoosh सेवाओं के माध्यम से भेजी गई पुश सूचनाओं को प्राप्त करने और संसाधित करने में सक्षम बनाते हैं।

Google Tag Manager से इंस्टॉल करना

Anchor link to

Pushwoosh SDK को प्रारंभ करने के लिए अपने Google Tag Manager में निम्नलिखित कोड का उपयोग करें। एक कस्टम HTML टैग बनाएं और नीचे दिए गए कोड को पेस्ट करें। अपने Pushwoosh एप्लिकेशन कोड, Safari वेबसाइट आईडी, और डिफ़ॉल्ट सूचना छवि URL को बदलना सुनिश्चित करें।
साथ ही उच्च टैग फायरिंग प्राथमिकता (उदा: 100) सेट करें और इसे सभी पृष्ठों पर ट्रिगर करें। स्क्रीनशॉट के लिए नीचे देखें। कॉपी करें

<script type="text/javascript" src="//cdn.pushwoosh.com/webpush/v3/pushwoosh-web-notifications.js" async></script>
<script type="text/javascript">
var Pushwoosh = Pushwoosh || [];
Pushwoosh.push(['init', {
logLevel: 'error',
applicationCode: 'XXXXX-XXXXX',
safariWebsitePushID: 'web.com.example.domain',
defaultNotificationTitle: 'Pushwoosh',
defaultNotificationImage: 'https://yoursite.com/img/logo-medium.png',
autoSubscribe: true,
subscribeWidget: {
enable: false
},
userId: 'user_id'
}]);
</script>