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

वेब संदेश इनबॉक्स सेट करें

पूर्वापेक्षाएँ

Anchor link to

सुनिश्चित करें कि आपने अपनी वेबसाइट पर Pushwoosh Web SDK लागू किया है। ऐसा करने के लिए, कृपया हमारे गाइड का पालन करें।

वेबसाइटों के लिए Message Inbox आपको वेब पुश नोटिफिकेशन स्टोर करने की अनुमति देता है ताकि उपयोगकर्ता बाद में उन्हें फिर से देख सकें, यह सुनिश्चित करते हुए कि महत्वपूर्ण संदेश देखे जाते हैं।

यह कैसे काम करता है

Anchor link to

यहाँ InboxMessages के साथ एक सामान्य वर्कफ़्लो है:

चरणमेथड
पेज लोड
सर्वर के साथ संदेशों को सिंक्रनाइज़ करना

InboxMessagesModel.updateMessages
SDK के इनिशियलाइज़ होने के दौरान निष्पादित

पुराने संदेशों को हटाना

InboxMessagesModel.updateMessages
SDK के इनिशियलाइज़ होने के दौरान निष्पादित

बैज को अपडेट करने के लिए अपठित संदेशों की संख्या प्राप्त करना

Pushwoosh.pwinbox.unreadMessagesCount
मैन्युअल रूप से निष्पादित (onUpdateInboxMessagesइवेंट के ट्रिगर होने के बाद)

इनबॉक्स में प्रदर्शित होने वाले संदेशों को लोड करना

Pushwoosh.pwinbox.loadMessages
मैन्युअल रूप से निष्पादित (onUpdateInboxMessagesइवेंट के ट्रिगर होने के बाद)

व्यूपोर्ट में आए संदेशों को पढ़े गए के रूप में चिह्नित करना

Pushwoosh.pwinbox.readMessagesWithCodes
मैन्युअल रूप से निष्पादित

खोले गए संदेश को सौंपे गए कार्य को करना

Pushwoosh.pwinbox.performActionForMessageWithCode
मैन्युअल रूप से निष्पादित

डिलीट आइकन पर क्लिक करके या संदेश को दाएं स्वाइप करके संदेशों को हटाना

Pushwoosh.pwinbox.performActionForMessageWithCode
मैन्युअल रूप से निष्पादित

इवेंट श्रोता

Anchor link to
onUpdateInboxMessages
// पेज लोड होने के दौरान इनबॉक्स के स्वचालित रूप से अपडेट होने के बाद निष्पादित होता है।
Pushwoosh.push(['onUpdateInboxMessages', function(api, pwinbox) {
pwinbox.loadMessages().then(function(messages) {
console.log('EVENT: onUpdateInboxMessages', messages);
});
}]);
onPutNewMessageToInboxStore
// ServiceWorker द्वारा इनबॉक्स संदेश प्राप्त होने और indexedDB में सहेजे जाने के बाद निष्पादित होता है।
Pushwoosh.push(['onPutNewMessageToInboxStore', function(api, message) {
console.log('EVENT: onPutNewMessageToInboxStore', message);
}]);

पब्लिक मॉड्यूल

Anchor link to

WebSDK InboxMessagesPublic मॉड्यूल वेब इनबॉक्स को लागू करने के लिए एक सार्वजनिक इंटरफ़ेस प्रस्तुत करता है।

Model
type TInboxMessageTypePlain = 0;
type TInboxMessageTypeRichmedia = 1;
type TInboxMessageTypeURL = 2;
type TInboxMessageTypeDeeplink = 3;
type TInboxMessageType = TInboxMessageTypePlain // depends on action_params
| TInboxMessageTypeRichmedia
| TInboxMessageTypeURL
| TInboxMessageTypeDeeplink;
type TInboxLayout = 'classic' | 'banner' | 'captioned' | 'carousel';
interface IInboxMessageSlide {
imageUrl: string;
caption: string; // caption overlaid on the slide; empty when the slide has none
link: string; // where a tap on the slide goes; empty when the slide has none, and the message's own action applies instead
}
interface IInboxMessagePublic {
code: string; // inbox_id
title: string; // title
message: string; // body
imageUrl: string; // image
sendDate: string; // send_date, ISO 8601 in UTC
type: TInboxMessageType; // depends on action_params
isRead: boolean; // true if status is "read" or "open"
link: string; // Deeplink | URL | "/"
isActionPerformed: boolean; // true if status is "open"
layout: TInboxLayout; // cell layout to draw, already degraded to one this message can render
iconUrl: string; // small round avatar; same value as imageUrl, under the name the layouts use
heroUrl: string; // hero image; falls back to iconUrl when the message has no banner, so it's set for classic messages too
carousel: Array<IInboxMessageSlide>; // slides of the carousel layout; empty for every other layout
customData: Record<string, unknown>; // the campaign's own custom data, as sent from the control panel
}

सेल लेआउट। एक संदेश चार लेआउट में से एक के रूप में प्रस्तुत होता है — classic, banner, captioned, या carousel — वही लेआउट जो कंट्रोल पैनल में अभियान पूर्वावलोकन दिखाता है। एक लेआउट जो संदेश के साथ प्रस्तुत नहीं हो सकता है, वह classic में बदल जाता है: banner को एक हीरो छवि की आवश्यकता होती है, captioned को एक हीरो छवि के साथ-साथ एक शीर्षक और एक बॉडी दोनों की आवश्यकता होती है, और carousel को कम से कम एक स्लाइड के साथ-साथ एक शीर्षक और एक बॉडी दोनों की आवश्यकता होती है। सार्वजनिक संदेश पर layout हमेशा वही होता है जो वास्तव में खींचा जाता है, पहले से ही डिग्रेड हो चुका होता है।

यह बताने का एकमात्र विश्वसनीय तरीका है कि एक संदेश क्या प्रस्तुत करेगा, layout की जाँच करना है — heroUrl classic संदेशों के लिए भी सेट है (ऊपर फ़ील्ड नोट देखें), इसलिए एकीकरण को यह तय करने के लिए इसकी उपस्थिति का उपयोग नहीं करना चाहिए कि हीरो बनाना है या नहीं।

पब्लिक मेथड्स

Anchor link to

Web Push SDK 3.0 गाइड में सार्वजनिक तरीकों के विवरण देखें।

Pushwoosh.pwinbox.syncMessages() सर्वर से वर्तमान इनबॉक्स खींचता है; बिल्ट-इन विजेट के अपने पोलिंग के बाहर एक रिफ्रेश को मजबूर करने के लिए इसे कॉल करें।