कैपेसिटर SDK बेसिक इंटीग्रेशन गाइड
इस सेक्शन में यह जानकारी दी गई है कि Pushwoosh कैपेसिटर SDK को अपने एप्लिकेशन में कैसे इंटीग्रेट करें।
पूर्वापेक्षाएँ
Anchor link toPushwoosh कैपेसिटर SDK को अपने ऐप में इंटीग्रेट करने के लिए, आपको निम्नलिखित की आवश्यकता होगी:
इंटीग्रेशन के चरण
Anchor link to1. Pushwoosh कैपेसिटर SDK डिपेंडेंसी जोड़ें
Anchor link toPushwoosh कैपेसिटर SDK डिपेंडेंसी को अपने प्रोजेक्ट में जोड़ें:
npm install pushwoosh-capacitor-pluginकैपेसिटर कॉन्फ़िगरेशन को सिंक करें:
npx cap sync2. कैपेसिटर SDK इनिशियलाइज़ेशन
Anchor link toअपनी मुख्य JavaScript फ़ाइल में, Pushwoosh SDK को इम्पोर्ट और इनिशियलाइज़ करें:
import { Pushwoosh } from 'pushwoosh-capacitor-plugin';
// SDK को इनिशियलाइज़ करेंPushwoosh.onDeviceReady({ appid: "__YOUR_APP_CODE__", projectid: "__YOUR_FCM_SENDER_ID__"});
// पुश नोटिफिकेशन के लिए रजिस्टर करेंPushwoosh.registerDevice() .then(result => { console.log("Push token:", result.pushToken); // सफल रजिस्ट्रेशन को हैंडल करें }) .catch(error => { console.error("Failed to register device:", error); // रजिस्ट्रेशन त्रुटि को हैंडल करें });जहाँ:
__YOUR_APP_ID__Pushwoosh कंट्रोल पैनल से एप्लिकेशन कोड है।__YOUR_FCM_SENDER_ID__Firebase कंसोल से Firebase प्रोजेक्ट नंबर है।
3. iOS नेटिव सेटअप
Anchor link to3.1 क्षमताएँ
Anchor link toअपने प्रोजेक्ट में पुश नोटिफिकेशन को सक्षम करने के लिए, आपको कुछ क्षमताएँ जोड़नी होंगी।
साइनिंग और क्षमताओं सेक्शन में, निम्नलिखित क्षमताएँ जोड़ें:
पुश नोटिफिकेशनबैकग्राउंड मोड। इस क्षमता को जोड़ने के बाद,रिमोट नोटिफिकेशनके लिए बॉक्स को चेक करें।
यदि आप टाइम सेंसिटिव नोटिफिकेशन (iOS 15+) का उपयोग करना चाहते हैं, तो टाइम सेंसिटिव नोटिफिकेशन क्षमता भी जोड़ें।
3.2 Info.plist
Anchor link toअपने Runner/Info.plist में __PUSHWOOSH_DEVICE_API_TOKEN__ कुंजी को Pushwoosh डिवाइस API टोकन पर सेट करें:
<key>Pushwoosh_API_TOKEN</key><string>__PUSHWOOSH_DEVICE_API_TOKEN__</string>3.3 संदेश डिलीवरी ट्रैकिंग
Anchor link toआपको अपने प्रोजेक्ट में एक नोटिफिकेशन सर्विस एक्सटेंशन टारगेट जोड़ना होगा। यह iOS पर सटीक डिलीवरी ट्रैकिंग और रिच मीडिया जैसी सुविधाओं के लिए आवश्यक है।
एक्सटेंशन टारगेट और उसके भीतर आवश्यक Pushwoosh कोड जोड़ने के लिए नेटिव गाइड के चरणों का पालन करें।
4. Android नेटिव सेटअप
Anchor link to4.1 डिपेंडेंसी इंस्टॉल करें
Anchor link toसुनिश्चित करें कि आवश्यक डिपेंडेंसी और प्लगइन्स आपके Gradle स्क्रिप्ट में जोड़े गए हैं:
Google सर्विसेज Gradle प्लगइन को अपने प्रोजेक्ट-स्तरीय build.gradle डिपेंडेंसी में जोड़ें:
buildscript { dependencies { classpath 'com.google.gms:google-services:4.3.15' }}प्लगइन को अपनी ऐप-स्तरीय build.gradle फ़ाइल में लागू करें:
apply plugin: 'com.google.gms.google-services'4.2 Firebase कॉन्फ़िगरेशन फ़ाइल जोड़ें
Anchor link togoogle-services.json फ़ाइल को अपने प्रोजेक्ट डायरेक्टरी में android/app फ़ोल्डर में रखें।
4.3 Pushwoosh मेटाडेटा जोड़ें
Anchor link toअपने main/AndroidManifest.xml में <application> टैग के अंदर Pushwoosh डिवाइस API टोकन जोड़ें:
<meta-data android:name="com.pushwoosh.apitoken" android:value="__YOUR_DEVICE_API_TOKEN__" />महत्वपूर्ण: सुनिश्चित करें कि टोकन को आपके Pushwoosh कंट्रोल पैनल में सही ऐप तक पहुंच दी गई है। और जानें
5. प्रोजेक्ट चलाएँ
Anchor link to- प्रोजेक्ट को बिल्ड और रन करें।
- Pushwoosh कंट्रोल पैनल पर जाएँ और एक पुश नोटिफिकेशन भेजें।
- आपको ऐप में नोटिफिकेशन दिखना चाहिए।
विस्तारित इंटीग्रेशन
Anchor link toइस स्तर पर, आपने SDK को पहले ही इंटीग्रेट कर लिया है और पुश नोटिफिकेशन भेज और प्राप्त कर सकते हैं। अब, आइए मुख्य कार्यक्षमता का पता लगाएँ।
पुश नोटिफिकेशन इवेंट श्रोता
Anchor link toPushwoosh कैपेसिटर SDK में पुश नोटिफिकेशन को हैंडल करने के लिए दो कॉलबैक विधियाँ हैं:
pushReceivedCallbackतब ट्रिगर होता है जब एक पुश नोटिफिकेशन प्राप्त होता हैpushOpenedCallbackतब ट्रिगर होता है जब कोई उपयोगकर्ता एक नोटिफिकेशन खोलता है
आपको SDK के इनिशियलाइज़ेशन के ठीक बाद इन कॉलबैक को सेटअप करना चाहिए:
import { Pushwoosh } from 'pushwoosh-capacitor-plugin';
// पुश प्राप्त कॉलबैक सेटअप करेंawait Pushwoosh.pushReceivedCallback((notification, err) => { if (err) { console.error("Failed to process received notification:", err); } else { console.log("Push received:", JSON.stringify(notification)); // प्राप्त नोटिफिकेशन को हैंडल करें }});
// पुश खोला गया कॉलबैक सेटअप करेंawait Pushwoosh.pushOpenedCallback((notification, err) => { if (err) { console.error("Failed to process opened notification:", err); } else { console.log("Push opened:", JSON.stringify(notification)); // खोले गए नोटिफिकेशन को हैंडल करें }});उपयोगकर्ता कॉन्फ़िगरेशन
Anchor link toव्यक्तिगत उपयोगकर्ता व्यवहार और वरीयताओं पर ध्यान केंद्रित करके, आप व्यक्तिगत सामग्री वितरित कर सकते हैं, जिससे उपयोगकर्ता की संतुष्टि और वफादारी में वृद्धि होती है।
import { Pushwoosh } from 'pushwoosh-capacitor-plugin';
class Registration { async afterUserLogin(user) {
// उपयोगकर्ता आईडी सेट करें Pushwoosh.setUserId(user.getId);
// Pushwoosh के लिए टैग के रूप में अतिरिक्त उपयोगकर्ता जानकारी सेट करना await Pushwoosh.setTags({ "age": user.getAge(), "name": user.getName(), "last_login": user.getLastLoginDate() }); }}टैग उपयोगकर्ताओं या उपकरणों को सौंपे गए की-वैल्यू जोड़े हैं, जो वरीयताओं या व्यवहार जैसी विशेषताओं के आधार पर विभाजन की अनुमति देते हैं, जिससे लक्षित संदेश भेजना संभव होता है।
import { Pushwoosh } from 'pushwoosh-capacitor-plugin';
class UpdateUser { async afterUserUpdateProfile(user) {
// पसंदीदा श्रेणियों की सूची सेट करें await Pushwoosh.setTags({ "favorite_categories": user.getFavoriteCategoriesList() });
// भुगतान जानकारी सेट करें await Pushwoosh.setTags({ "is_subscribed": user.isSubscribed(), "payment_status": user.getPaymentStatus(), "billing_address": user.getBillingAddress() }); }}इवेंट्स
Anchor link toइवेंट्स ऐप के भीतर विशिष्ट उपयोगकर्ता क्रियाएँ या घटनाएँ हैं जिन्हें व्यवहार का विश्लेषण करने और संबंधित संदेशों या क्रियाओं को ट्रिगर करने के लिए ट्रैक किया जा सकता है।
import { Pushwoosh } from 'pushwoosh-capacitor-plugin';
class Registration {
// लॉगिन इवेंट को ट्रैक करें afterUserLogin(user) { Pushwoosh.postEvent("login", { "name": user.getName(), "last_login": user.getLastLoginDate() }); }
// खरीद इवेंट को ट्रैक करें afterUserPurchase(product) { Pushwoosh.postEvent("purchase", { "product_id": product.getId(), "product_name": product.getName(), "price": product.getPrice(), "quantity": product.getQuantity() }); }}समस्या निवारण
Anchor link toयदि आपको इंटीग्रेशन प्रक्रिया के दौरान कोई समस्या आती है, तो कृपया समर्थन और समुदाय सेक्शन देखें।