Cordova SDK বেসিক ইন্টিগ্রেশন গাইড
এই বিভাগে আপনার অ্যাপ্লিকেশনে Pushwoosh Cordova SDK কীভাবে ইন্টিগ্রেট করতে হয় সে সম্পর্কে তথ্য রয়েছে।
পূর্বশর্ত
Anchor link toআপনার অ্যাপে Pushwoosh Cordova SDK ইন্টিগ্রেট করার জন্য, আপনার নিম্নলিখিত জিনিসগুলির প্রয়োজন হবে:
ইন্টিগ্রেশন ধাপ
Anchor link to১. Pushwoosh Cordova SDK ডিপেন্ডেন্সি যোগ করুন
Anchor link toআপনার প্রজেক্টে Pushwoosh Cordova SDK ডিপেন্ডেন্সি যোগ করুন:
cordova plugin add pushwoosh-cordova-plugin২. Cordova SDK ইনিশিয়ালাইজেশন
Anchor link toআপনার index.js ফাইলের রুট কম্পোনেন্টে, deviceready ইভেন্ট হ্যান্ডলারের ভিতরে নিম্নলিখিত কোডটি যোগ করুন। ধাপগুলি সঠিক ক্রমে অনুসরণ করুন:
document.addEventListener('deviceready', function() { var pushwoosh = cordova.require("pushwoosh-cordova-plugin.PushNotification");
// ১. ইনিশিয়ালাইজেশনের আগে নোটিফিকেশন কলব্যাক রেজিস্টার করুন document.addEventListener('push-receive', function(event) { var notification = event.notification; console.log("Push received: " + JSON.stringify(notification)); });
document.addEventListener('push-notification', function(event) { var notification = event.notification; console.log("Push opened: " + JSON.stringify(notification)); });
// ২. Pushwoosh ইনিশিয়ালাইজ করুন pushwoosh.onDeviceReady({ appid: "__YOUR_APP_ID__", projectid: "__YOUR_FCM_SENDER_ID__" });
// ৩. পুশ নোটিফিকেশন পাওয়ার জন্য ডিভাইস রেজিস্টার করুন pushwoosh.registerDevice( function(status) { var pushToken = status.pushToken; // সফল রেজিস্ট্রেশন হ্যান্ডেল করুন }, function(status) { // রেজিস্ট্রেশন ত্রুটি হ্যান্ডেল করুন } );}, false);যেখানে:
__YOUR_APP_ID__হল Pushwoosh কন্ট্রোল প্যানেল থেকে অ্যাপ্লিকেশন কোড।__YOUR_FCM_SENDER_ID__হল Firebase কনসোল থেকে Firebase প্রজেক্ট নম্বর।
৩. iOS নেটিভ সেটআপ
Anchor link to৩.১ Capabilities
Anchor link toআপনার প্রজেক্টে পুশ নোটিফিকেশন সক্রিয় করতে, আপনাকে নির্দিষ্ট কিছু capabilities যোগ করতে হবে।
Signing & Capabilities বিভাগে, নিম্নলিখিত capabilities যোগ করুন:
Push NotificationsBackground Modes। এই capability যোগ করার পরে,Remote notifications-এর জন্য বক্সটি চেক করুন।
আপনি যদি টাইম সেনসিটিভ নোটিফিকেশন (iOS 15+) ব্যবহার করতে চান, তাহলে Time Sensitive Notifications capability-টিও যোগ করুন।
৩.২ 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>৩.৩ মেসেজ ডেলিভারি ট্র্যাকিং
Anchor link toআপনাকে অবশ্যই আপনার প্রজেক্টে একটি Notification Service Extension টার্গেট যোগ করতে হবে। এটি সঠিক ডেলিভারি ট্র্যাকিং এবং iOS-এ রিচ মিডিয়ার মতো বৈশিষ্ট্যগুলির জন্য অপরিহার্য।
এক্সটেনশন টার্গেট এবং এর মধ্যে প্রয়োজনীয় Pushwoosh কোড যোগ করতে নেটিভ গাইডের ধাপগুলি অনুসরণ করুন।
৪. Android নেটিভ সেটআপ
Anchor link to৪.১ ডিপেন্ডেন্সি ইনস্টল করুন
Anchor link toনিশ্চিত করুন যে প্রয়োজনীয় ডিপেন্ডেন্সি এবং প্লাগইনগুলি আপনার Gradle স্ক্রিপ্টে যোগ করা হয়েছে:
আপনার প্রজেক্ট-স্তরের build.gradle ডিপেন্ডেন্সিতে Google Services Gradle প্লাগইন যোগ করুন:
buildscript { dependencies { classpath 'com.google.gms:google-services:4.3.15' }}আপনার অ্যাপ-স্তরের build.gradle ফাইলে প্লাগইনটি প্রয়োগ করুন:
apply plugin: 'com.google.gms.google-services'৪.২ Firebase কনফিগারেশন ফাইল যোগ করুন
Anchor link toআপনার প্রজেক্ট ডিরেক্টরিতে android/app ফোল্ডারের মধ্যে google-services.json ফাইলটি রাখুন।
৪.৩ Pushwoosh মেটাডেটা যোগ করুন
Anchor link toআপনার main/AndroidManifest.xml-এ <application> ট্যাগের ভিতরে Pushwoosh ডিভাইস API টোকেন যোগ করুন:
<meta-data android:name="com.pushwoosh.apitoken" android:value="__YOUR_DEVICE_API_TOKEN__" />গুরুত্বপূর্ণ: আপনার Pushwoosh কন্ট্রোল প্যানেলে সঠিক অ্যাপে টোকেনটিকে অ্যাক্সেস দিতে ভুলবেন না। আরও জানুন
৫. প্রজেক্টটি চালান
Anchor link to- প্রজেক্টটি বিল্ড করুন এবং চালান।
- Pushwoosh কন্ট্রোল প্যানেলে যান এবং একটি পুশ নোটিফিকেশন পাঠান।
- আপনার অ্যাপে নোটিফিকেশনটি দেখতে পাওয়া উচিত।
বর্ধিত ইন্টিগ্রেশন
Anchor link toএই পর্যায়ে, আপনি ইতিমধ্যে SDK ইন্টিগ্রেট করেছেন এবং পুশ নোটিফিকেশন পাঠাতে ও গ্রহণ করতে পারেন। এখন, আসুন মূল কার্যকারিতা অন্বেষণ করি
পুশ নোটিফিকেশন ইভেন্ট লিসেনার
Anchor link toPushwoosh SDK-তে দুটি ইভেন্ট লিসেনার রয়েছে, যা পুশ নোটিফিকেশন হ্যান্ডেল করার জন্য ডিজাইন করা হয়েছে:
push-receiveইভেন্টটি ট্রিগার হয় যখন অ্যাপটি ফোরগ্রাউন্ডে থাকা অবস্থায় একটি পুশ নোটিফিকেশন পাওয়া যায়push-notificationইভেন্টটি ট্রিগার হয় যখন একজন ব্যবহারকারী একটি নোটিফিকেশন খোলেন
এই ইভেন্ট লিসেনারগুলি অবশ্যই onDeviceReady() কল করার আগে রেজিস্টার করতে হবে, যেমনটি উপরের ইনিশিয়ালাইজেশন ধাপে দেখানো হয়েছে। আপনি আপনার প্রয়োজন অনুযায়ী হ্যান্ডলার লজিক কাস্টমাইজ করতে পারেন:
// onDeviceReady()-এর আগে রেজিস্টার করুনdocument.addEventListener('push-receive', function(event) { var message = event.notification.message; var payload = event.notification.userdata; console.log("Push received: " + message); // এখানে আপনার কাস্টম লজিক যোগ করুন});
document.addEventListener('push-notification', function(event) { var message = event.notification.message; var payload = event.notification.userdata; console.log("Push accepted: " + message); // এখানে আপনার কাস্টম লজিক যোগ করুন (যেমন, একটি নির্দিষ্ট স্ক্রিনে নেভিগেট করুন)});ব্যবহারকারী কনফিগারেশন
Anchor link toস্বতন্ত্র ব্যবহারকারীর আচরণ এবং পছন্দের উপর ফোকাস করে, আপনি ব্যক্তিগতকৃত সামগ্রী সরবরাহ করতে পারেন, যা ব্যবহারকারীর সন্তুষ্টি এবং আনুগত্য বৃদ্ধি করে
class Registration { afterUserLogin(user) {
// ব্যবহারকারী আইডি সেট করুন pushwoosh.setUserId(user.getId());
// Pushwoosh-এর জন্য ট্যাগ হিসাবে অতিরিক্ত ব্যবহারকারীর তথ্য সেট করা হচ্ছে pushwoosh.setTags({ "age": user.getAge(), "name": user.getName(), "last_login": user.getLastLoginDate() }); }}ট্যাগ
Anchor link toট্যাগ হল ব্যবহারকারী বা ডিভাইসে নির্ধারিত কী-ভ্যালু পেয়ার, যা পছন্দ বা আচরণের মতো অ্যাট্রিবিউটের উপর ভিত্তি করে সেগমেন্টেশন করতে দেয়, ফলে টার্গেটেড মেসেজিং সক্ষম হয়।
class UpdateUser { afterUserUpdateProfile(user) {
// প্রিয় ক্যাটাগরির তালিকা সেট করুন pushwoosh.setTags({ "favorite_categories": user.getFavoriteCategoriesList() });
// পেমেন্ট তথ্য সেট করুন pushwoosh.setTags({ "is_subscribed": user.isSubscribed(), "payment_status": user.getPaymentStatus(), "billing_address": user.getBillingAddress() }); }}ইভেন্টস
Anchor link toইভেন্টস হল অ্যাপের মধ্যে নির্দিষ্ট ব্যবহারকারীর ক্রিয়া বা ঘটনা যা আচরণ বিশ্লেষণ করতে এবং সংশ্লিষ্ট বার্তা বা ক্রিয়া ট্রিগার করতে ট্র্যাক করা যেতে পারে
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ইন্টিগ্রেশন প্রক্রিয়ার সময় আপনি যদি কোনো সমস্যার সম্মুখীন হন, অনুগ্রহ করে সাপোর্ট এবং কমিউনিটি বিভাগটি দেখুন।