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

वेब पुश 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', // संभावित मान: error, info, debug
applicationCode: 'XXXXX-XXXXX', // Pushwoosh कंट्रोल पैनल से आपका एप्लिकेशन कोड
apiToken: 'XXXXXXX', // डिवाइस API टोकन
safariWebsitePushID: 'web.com.example.domain', // अद्वितीय रिवर्स-डोमेन स्ट्रिंग, जो आपके Apple डेवलपर पोर्टल में प्राप्त होती है। केवल तभी आवश्यक है जब आप Safari ब्राउज़र पर पुश सूचनाएँ भेजते हैं
defaultNotificationTitle: 'Pushwoosh', // पुश सूचनाओं के लिए एक डिफ़ॉल्ट शीर्षक सेट करता है
defaultNotificationImage: 'https://yoursite.com/img/logo-medium.png', // कस्टम अधिसूचना छवि का URL
autoSubscribe: false, // या true। यदि true है, तो SDK प्रारंभ होने पर उपयोगकर्ता को पुश के लिए सदस्यता लेने के लिए प्रेरित करता है
subscribeWidget: {
enable: true
},
userId: 'user_id', // वैकल्पिक, कस्टम उपयोगकर्ता आईडी सेट करें
tags: {
'Name': 'John Smith' // वैकल्पिक, कस्टम टैग सेट करें
}
}]);
</script>

वेब पॉपअप

Anchor link to

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

webPopups: {
enable: true,
autoShow: true, // वैकल्पिक, पॉपअप को स्वचालित रूप से प्रदर्शित किए बिना लोड करने के लिए false पर सेट करें — नीचे WebPopups विधियाँ देखें
},

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

प्रोग्रामेटिक नियंत्रण के लिए, WebPopups विधियाँ और वेब पॉपअप ईवेंट देखें।

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

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 ईवेंट को इस प्रकार फायर करें:

// लोड ईवेंट
Pushwoosh.push(['onLoad', (api) => {
console.log('Pushwoosh लोड हो गया!');
}]);

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

// रेडी ईवेंट
Pushwoosh.push((api) => {
console.log('Pushwoosh तैयार है!');
});

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

Pushwoosh.push(['onLoad', (api) => {
function onEventNameHandler() {
console.log('ट्रिगर किया गया ईवेंट: event-name!');
}
// किसी ईवेंट की सदस्यता लेने के लिए:
Pushwoosh.addEventHandler('event-name', onEventNameHandler)
// किसी ईवेंट से सदस्यता समाप्त करने के लिए:
Pushwoosh.removeEventHandler('event-name', onEventNameHandler)
}]);

SDK ईवेंट

Anchor link to

सदस्यता ईवेंट

Anchor link to

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

Pushwoosh.push(['onLoad', (api) => {
Pushwoosh.addEventHandler('subscribe', (payload) => {
console.log('ट्रिगर किया गया ईवेंट: subscribe');
});
}]);

सदस्यता समाप्त करने का ईवेंट

Anchor link to

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

Pushwoosh.push(['onLoad', (api) => {
Pushwoosh.addEventHandler('unsubscribe', (payload) => {
console.log('ट्रिगर किया गया ईवेंट: unsubscribe');
});
}]);

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

Anchor link to

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

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

अधिसूचना अनुमति संवाद ईवेंट

Anchor link to

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

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

अनुमति ईवेंट

Anchor link to

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

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

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

Anchor link to

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

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

अधिसूचना ईवेंट

Anchor link to

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

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

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

Anchor link to

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

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

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

Anchor link to

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

वेब पॉपअप ईवेंट

Anchor link to
Pushwoosh.push(['onLoad', (api) => {
// एक बार वेब पॉपअप लोड हो जाने और वर्तमान पृष्ठ के लिए स्वचालित प्रदर्शन पाइपलाइन चलने के बाद निष्पादित
Pushwoosh.addEventHandler('web-popups-ready', () => {
console.log('ट्रिगर किया गया ईवेंट: web-popups-ready');
});
// जब कोई वेब पॉपअप दिखाया जाता है, स्वचालित रूप से या webPopups.show() के माध्यम से निष्पादित
Pushwoosh.addEventHandler('show-web-popup', (payload) => {
console.log('ट्रिगर किया गया ईवेंट: show-web-popup', payload.code, payload.trigger); // trigger: 'auto' | 'api'
});
// जब कोई वेब पॉपअप छिपाया जाता है तो निष्पादित
Pushwoosh.addEventHandler('hide-web-popup', (payload) => {
console.log('ट्रिगर किया गया ईवेंट: hide-web-popup', payload.code, payload.reason); // reason: 'user' | 'api' | 'preempted'
});
}]);

वेब पुश 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', // वैकल्पिक: उपयोगकर्ता पहचानकर्ता
email: 'user@example.com', // वैकल्पिक: ईमेल मैसेजिंग के लिए ईमेल
sms_phone_number: '+1234567890', // वैकल्पिक: SMS फ़ोन नंबर (E.164 प्रारूप)
whatsapp_phone_number: '+1234567890', // वैकल्पिक: WhatsApp नंबर (E.164 प्रारूप)
kakao_phone_number: '+1234567890', // वैकल्पिक: KakaoTalk नंबर (E.164 प्रारूप)
language: 'en', // वैकल्पिक: भाषा कोड (ISO 639-1)
timezone: 'America/New_York', // वैकल्पिक: समय क्षेत्र पहचानकर्ता
city: 'New York', // वैकल्पिक: लक्ष्यीकरण के लिए शहर
country: 'US', // वैकल्पिक: लक्ष्यीकरण के लिए देश
state: 'NY', // वैकल्पिक: लक्ष्यीकरण के लिए राज्य
tags: { // वैकल्पिक: संचालन के साथ टैग मान
'UserType': {
operation: TTagOperationSet, // टैग मान सेट करें (0)
value: 'Premium'
},
'Interests': {
operation: TTagOperationAppend, // टैग मान में जोड़ें (1)
values: ['sports', 'technology']
},
'LoginCount': {
operation: TTagOperationIncrement, // टैग मान बढ़ाएँ (3)
value: '1'
}
},
push_devices: [ // वैकल्पिक: पुश उपकरणों की सरणी
{
hwid: 'web-device-456',
platform: TPlatformChrome, // Chrome प्लेटफ़ॉर्म (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('बहु-पंजीकरण सफल:', response);
})
.catch((error) => {
console.error('बहु-पंजीकरण विफल:', 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('सफलता');
}
else {
console.warn('छोड़े गए टैग:', skipped);
}
})
.catch((err) => {
console.error('setTags त्रुटि:', err);
});
});

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

Anchor link to

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

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

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

Anchor link to

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

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

टैग मान हटाएं

Anchor link to

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

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()">सदस्यता लें</button>
<script>
Pushwoosh.push(['onSubscribe', (api) => {
console.log('उपयोगकर्ता ने सफलतापूर्वक सदस्यता ली');
}]);
</script>

Pushwoosh.unsubscribe()

  1. /unregisterDevice विधि निष्पादित होती है।
  2. onUnsubscribe ईवेंट ट्रिगर होता है।
<button onclick="Pushwoosh.unsubscribe()">सदस्यता समाप्त करें</button>
<script type="text/javascript">
Pushwoosh.push(['onUnsubscribe', (api) => {
console.log('उपयोगकर्ता ने सफलतापूर्वक सदस्यता समाप्त कर दी');
}]);
</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} संदेश खोले गए`);
});

unreadMessagesCount()

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

Pushwoosh.pwinbox.unreadMessagesCount()
.then((count) => {
console.log(`${count} संदेश अपठित`);
});

messagesCount(): Promise<number>

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

Pushwoosh.pwinbox.messagesCount()
.then((count) => {
console.log(`${count} संदेश`);
});

loadMessages(): Promise<Array>

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

Pushwoosh.pwinbox.loadMessages()
.then(() => {
console.log('संदेश लोड हो गए हैं');
});

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

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

Pushwoosh.pwinbox.readMessagesWithCodes(codes)
.then(() => {
console.log('संदेश पढ़े गए हैं');
});

performActionForMessageWithCode(code: string): Promise<void>

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

Pushwoosh.pwinbox.performActionForMessageWithCode(code)
.then(() => {
console.log('कार्रवाई की गई है');
});

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

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

Pushwoosh.pwinbox.deleteMessagesWithCodes([code])
.then(() => {
console.log('संदेश हटा दिए गए हैं');
});

syncMessages(): Promise<void>

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

Pushwoosh.pwinbox.syncMessages()
.then(() => {
console.log('संदेश सिंक्रनाइज़ हो गए हैं');
});

WebPopups विधियाँ

Anchor link to

प्रोग्रामेटिक वेब पॉपअप API के लिए init ऑब्जेक्ट में webPopups: {enable: true} की आवश्यकता होती है; यह web-popups-ready ईवेंट फायर होने के बाद Pushwoosh.moduleRegistry.webPopups के माध्यम से उपलब्ध है।

show(code: string): Promise<boolean>

एक पॉपअप को तुरंत दिखाता है, हर प्रदर्शन शर्त (देरी, पृष्ठ नियम, डिवाइस/आगंतुक प्रकार, आवृत्ति कैपिंग, ट्रिगर प्रकार) को दरकिनार करते हुए। जगह बनाने के लिए पहले से दिखाई देने वाले पॉपअप को बंद कर देता है। जब पॉपअप नहीं दिखाया जा सकता है तो अस्वीकार करने के बजाय false हल करता है।

Pushwoosh.moduleRegistry.webPopups.show('popup_code')
.then((shown) => console.log('पॉपअप दिखाया गया:', shown));

hide(code?: string): boolean

दिखाई देने वाले पॉपअप को छिपाता है। यदि code पास किया जाता है, तो केवल तभी छिपाता है जब यह दिखाई देने वाले पॉपअप से मेल खाता है। यदि कुछ भी नहीं छिपाया गया था तो false लौटाता है।

Pushwoosh.moduleRegistry.webPopups.hide();

hideAll(): boolean

दिखाई देने वाले पॉपअप को छिपाता है और वर्तमान पृष्ठ लोड के लिए अभी भी लंबित सब कुछ खारिज कर देता है। show() बाद में काम करता रहता है।

Pushwoosh.moduleRegistry.webPopups.hideAll();

isVisible(code?: string): boolean

जाँचता है कि क्या कोई पॉपअप वर्तमान में दिखाई दे रहा है। code के बिना, जाँचता है कि क्या कोई पॉपअप दिखाई दे रहा है।

Pushwoosh.moduleRegistry.webPopups.isVisible('popup_code');

getVisibleCode(): string | null

वर्तमान में स्क्रीन पर मौजूद पॉपअप का कोड लौटाता है, या यदि कोई दिखाई नहीं दे रहा है तो null लौटाता है।

Pushwoosh.moduleRegistry.webPopups.getVisibleCode();

getAvailableCodes(): Array<string>

इस डिवाइस के लिए सर्वर द्वारा लौटाए गए प्रत्येक पॉपअप के कोड लौटाता है।

Pushwoosh.moduleRegistry.webPopups.getAvailableCodes();

getState(): object

वेब पॉपअप की स्थिति का एक स्नैपशॉट लौटाता है: visible (स्क्रीन पर कोड, या null), queued (डिस्प्ले स्लॉट की प्रतीक्षा कर रहे कोड), waiting (एक सशस्त्र विलंब टाइमर के साथ कोड), और available (सर्वर द्वारा लौटाया गया प्रत्येक कोड)।

Pushwoosh.moduleRegistry.webPopups.getState();

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

Anchor link to

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

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

if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/service-worker.js') // <- आपका सर्विस वर्कर 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', // <- आपका सर्विस वर्कर 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>