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

कैपेसिटर SDK बेसिक इंटीग्रेशन गाइड

इस सेक्शन में यह जानकारी दी गई है कि Pushwoosh कैपेसिटर SDK को अपने एप्लिकेशन में कैसे इंटीग्रेट करें।

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

Anchor link to

Pushwoosh कैपेसिटर SDK को अपने ऐप में इंटीग्रेट करने के लिए, आपको निम्नलिखित की आवश्यकता होगी:

इंटीग्रेशन के चरण

Anchor link to

1. Pushwoosh कैपेसिटर SDK डिपेंडेंसी जोड़ें

Anchor link to

Pushwoosh कैपेसिटर SDK डिपेंडेंसी को अपने प्रोजेक्ट में जोड़ें:

Terminal window
npm install pushwoosh-capacitor-plugin

कैपेसिटर कॉन्फ़िगरेशन को सिंक करें:

Terminal window
npx cap sync

2. कैपेसिटर SDK इनिशियलाइज़ेशन

Anchor link to

अपनी मुख्य JavaScript फ़ाइल में, Pushwoosh SDK को इम्पोर्ट और इनिशियलाइज़ करें:

index.js
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 to

3.1 क्षमताएँ

Anchor link to

अपने प्रोजेक्ट में पुश नोटिफिकेशन को सक्षम करने के लिए, आपको कुछ क्षमताएँ जोड़नी होंगी।

साइनिंग और क्षमताओं सेक्शन में, निम्नलिखित क्षमताएँ जोड़ें:

  • पुश नोटिफिकेशन
  • बैकग्राउंड मोड। इस क्षमता को जोड़ने के बाद, रिमोट नोटिफिकेशन के लिए बॉक्स को चेक करें।

यदि आप टाइम सेंसिटिव नोटिफिकेशन (iOS 15+) का उपयोग करना चाहते हैं, तो टाइम सेंसिटिव नोटिफिकेशन क्षमता भी जोड़ें।

3.2 Info.plist

Anchor link to

अपने Runner/Info.plist में __PUSHWOOSH_DEVICE_API_TOKEN__ कुंजी को Pushwoosh डिवाइस API टोकन पर सेट करें:

info.plist
<key>Pushwoosh_API_TOKEN</key>
<string>__PUSHWOOSH_DEVICE_API_TOKEN__</string>

3.3 संदेश डिलीवरी ट्रैकिंग

Anchor link to

आपको अपने प्रोजेक्ट में एक नोटिफिकेशन सर्विस एक्सटेंशन टारगेट जोड़ना होगा। यह iOS पर सटीक डिलीवरी ट्रैकिंग और रिच मीडिया जैसी सुविधाओं के लिए आवश्यक है।

एक्सटेंशन टारगेट और उसके भीतर आवश्यक Pushwoosh कोड जोड़ने के लिए नेटिव गाइड के चरणों का पालन करें।

4. Android नेटिव सेटअप

Anchor link to

4.1 डिपेंडेंसी इंस्टॉल करें

Anchor link to

सुनिश्चित करें कि आवश्यक डिपेंडेंसी और प्लगइन्स आपके Gradle स्क्रिप्ट में जोड़े गए हैं:

Google सर्विसेज Gradle प्लगइन को अपने प्रोजेक्ट-स्तरीय build.gradle डिपेंडेंसी में जोड़ें:

android/build.gradle
buildscript {
dependencies {
classpath 'com.google.gms:google-services:4.3.15'
}
}

प्लगइन को अपनी ऐप-स्तरीय build.gradle फ़ाइल में लागू करें:

app/build.gradle
apply plugin: 'com.google.gms.google-services'

4.2 Firebase कॉन्फ़िगरेशन फ़ाइल जोड़ें

Anchor link to

google-services.json फ़ाइल को अपने प्रोजेक्ट डायरेक्टरी में android/app फ़ोल्डर में रखें।

4.3 Pushwoosh मेटाडेटा जोड़ें

Anchor link to

अपने main/AndroidManifest.xml में <application> टैग के अंदर Pushwoosh डिवाइस API टोकन जोड़ें:

AndroidManifest.xml
<meta-data android:name="com.pushwoosh.apitoken" android:value="__YOUR_DEVICE_API_TOKEN__" />

महत्वपूर्ण: सुनिश्चित करें कि टोकन को आपके Pushwoosh कंट्रोल पैनल में सही ऐप तक पहुंच दी गई है। और जानें

5. प्रोजेक्ट चलाएँ

Anchor link to
  1. प्रोजेक्ट को बिल्ड और रन करें।
  2. Pushwoosh कंट्रोल पैनल पर जाएँ और एक पुश नोटिफिकेशन भेजें
  3. आपको ऐप में नोटिफिकेशन दिखना चाहिए।

विस्तारित इंटीग्रेशन

Anchor link to

इस स्तर पर, आपने SDK को पहले ही इंटीग्रेट कर लिया है और पुश नोटिफिकेशन भेज और प्राप्त कर सकते हैं। अब, आइए मुख्य कार्यक्षमता का पता लगाएँ।

पुश नोटिफिकेशन इवेंट श्रोता

Anchor link to

Pushwoosh कैपेसिटर SDK में पुश नोटिफिकेशन को हैंडल करने के लिए दो कॉलबैक विधियाँ हैं:

  • pushReceivedCallback तब ट्रिगर होता है जब एक पुश नोटिफिकेशन प्राप्त होता है
  • pushOpenedCallback तब ट्रिगर होता है जब कोई उपयोगकर्ता एक नोटिफिकेशन खोलता है

आपको SDK के इनिशियलाइज़ेशन के ठीक बाद इन कॉलबैक को सेटअप करना चाहिए:

index.js
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

यदि आपको इंटीग्रेशन प्रक्रिया के दौरान कोई समस्या आती है, तो कृपया समर्थन और समुदाय सेक्शन देखें।