বিষয়বস্তুতে যান

Mendix মডিউলের বেসিক ইন্টিগ্রেশন গাইড

এই গাইডটি একটি বিদ্যমান Mendix নেটিভ মোবাইল অ্যাপে Pushwoosh মডিউল যোগ করার প্রক্রিয়া বর্ণনা করে, মার্কেটপ্লেস থেকে এটি ইনস্টল করা থেকে শুরু করে একটি ডিভাইসে নোটিফিকেশন পাওয়া পর্যন্ত।

পূর্বশর্ত

Anchor link to

আপনার অ্যাপে Pushwoosh মডিউল ইন্টিগ্রেট করার জন্য, আপনার নিম্নলিখিত জিনিসগুলির প্রয়োজন হবে:

উপরের তালিকায় থাকা Device API Token এই মডিউলের জন্য প্রয়োজন নেই। উইজেটটি শুধুমাত্র অ্যাপ্লিকেশন কোড নেয়।

এছাড়াও আপনার নিম্নলিখিত জিনিসগুলির প্রয়োজন হবে:

  • Mendix Studio Pro 11.12.3 বা নতুন সংস্করণ। মডিউল প্যাকেজটি সেই সংস্করণ দিয়ে তৈরি করা হয়েছে, এবং Studio Pro নিজের চেয়ে নতুন সংস্করণ দ্বারা উৎপাদিত প্যাকেজ খুলতে পারে না।
  • আপনার অ্যাপে একটি নেটিভ মোবাইল নেভিগেশন প্রোফাইল।
  • নেটিভ বিল্ড তৈরি করার জন্য Xcode বা Android Studio। Make It Native অ্যাপটি এই মডিউলটি চালাতে পারে না, কারণ এতে তৃতীয় পক্ষের নেটিভ কোড নেই।

১. মার্কেটপ্লেস থেকে মডিউলটি ইনস্টল করুন

Anchor link to

Studio Pro-তে, উপরের ডান কোণায় মার্কেটপ্লেস আইকনে ক্লিক করুন, Pushwoosh অনুসন্ধান করুন, এবং Download-এ ক্লিক করুন। Studio Pro আপনার অ্যাপে Pushwoosh নামের একটি মডিউল যোগ করবে।

Studio Pro-তে মার্কেটপ্লেস প্যানেল যেখানে Pushwoosh-এর জন্য একটি সার্চ রেজাল্ট দেখা যাচ্ছে

আর কিছু ইনস্টল করার নেই। নেটিভ লাইব্রেরিগুলি নেটিভ বিল্ডের সময় npm থেকে আসে, যা মডিউলটি পরীক্ষা করা সঠিক সংস্করণে পিন করা থাকে।

২. আপনার হোম পেজে Pushwoosh ইভেন্টস উইজেট যোগ করুন

Anchor link to

Pushwoosh events উইজেটটি SDK শুরু করে এবং পুশ নোটিফিকেশনগুলিকে ন্যানোফ্লো ইভেন্টে পরিণত করে। এটি কিছুই রেন্ডার করে না, তাই এটি একবার রাখুন, যে পেজটি নেটিভ মোবাইল নেভিগেশন প্রোফাইলে প্রথমে লোড হয়।

  1. আপনার নেটিভ মোবাইল নেভিগেশন প্রোফাইলের হোম পেজ খুলুন।
  2. Pushwoosh events উইজেটটি পেজে ড্র্যাগ করুন। এটি টুলবক্সের Pushwoosh ক্যাটাগরিতে রয়েছে।
  3. Pushwoosh কন্ট্রোল প্যানেল থেকে আপনার অ্যাপের অ্যাপ্লিকেশন কোড দিয়ে Application Code প্রপার্টি সেট করুন। এটি XXXXX-XXXXX-এর মতো দেখতে।
Studio Pro-তে পেজ এক্সপ্লোরার যা হোম পেজে Pushwoosh ইভেন্টস উইজেট দেখাচ্ছে

Register on load সক্রিয় রাখুন যাতে অ্যাপ খোলার সাথে সাথেই ডিভাইসটি রেজিস্টার হয়ে যায়। যদি আপনি পরে নোটিফিকেশনের অনুমতি চাইতে চান, অ্যাপের এমন একটি পর্যায়ে যেখানে অনুরোধটি ব্যবহারকারীর কাছে আরও অর্থবহ মনে হয়, তাহলে এটি বন্ধ করুন। নিচে ডিভাইস রেজিস্টার করুন দেখুন।

৩. নেটিভ বিল্ড কনফিগার করুন

Anchor link to

Pushwoosh একটি Mendix অ্যাপের বিল্ট-ইন পুশ নোটিফিকেশনের পাশে কাজ করার পরিবর্তে সেগুলিকে প্রতিস্থাপন করে। নেটিভ মোবাইল বিল্ডারে, ক্ষমতাগুলি নিম্নরূপ সেট করুন:

  • Push notifications: বন্ধ।
  • Firebase Android: চালু, যাতে google-services.json এখনও পিক আপ করা হয়।

দুটি নোটিফিকেশন সার্ভিস com.google.firebase.MESSAGING_EVENT ইভেন্টের জন্য রেজিস্টার করা হলে একে অপরকে শ্যাডো করে, এবং নোটিফিকেশন আসা বন্ধ হয়ে যায়। অ্যান্ড্রয়েডে, FCM সেন্ডার আইডি google-services.json থেকে আসে; এটি মডিউলে পাস করা হয় না।

iOS-এ, Signing & Capabilities-এ জেনারেট করা Xcode প্রজেক্টে Push Notifications ক্ষমতা যোগ করুন, এবং আপনার APNs কী Pushwoosh কন্ট্রোল প্যানেলে আপলোড করুন যেমনটি iOS প্ল্যাটফর্ম কনফিগারেশন গাইড-এ বর্ণনা করা হয়েছে।

৪. ডিভাইস রেজিস্টার করুন

Anchor link to

একটি ডিভাইস শুধুমাত্র Pushwoosh-এর সাথে রেজিস্টার হওয়ার পরেই নোটিফিকেশন পায়। রেজিস্টার করার দুটি উপায় আছে, এবং আপনার এর মধ্যে একটি প্রয়োজন।

লোড হওয়ার সময় রেজিস্টার করুন। উইজেটের Register on load প্রপার্টি সক্রিয় রাখুন। উইজেট লোড হওয়ার সাথে সাথেই ডিভাইসটি রেজিস্টার হয়ে যায়, এবং iOS-এ সেই মুহূর্তে সিস্টেমের অনুমতি প্রম্পট দেখা যায়।

ন্যানোফ্লো থেকে রেজিস্টার করুন। Register on load বন্ধ করুন এবং আপনার নিজের একটি ন্যানোফ্লো থেকে RegisterForPushNotifications অ্যাকশন কল করুন, উদাহরণস্বরূপ ব্যবহারকারী সাইন ইন করার পরে বা একটি সম্মতি স্ক্রিন গ্রহণ করার পরে। অ্যাকশনটি পুশ টোকেনটি একটি স্ট্রিং হিসাবে ফেরত দেয়।

একটি ন্যানোফ্লো RegisterForPushNotifications কল করছে এবং ফেরত আসা পুশ টোকেন দেখাচ্ছে

একটি ডিভাইসে ডেলিভারি বন্ধ করতে, UnregisterForPushNotifications কল করুন।

৫. অ্যাপ খোলা থাকা অবস্থায় আসা একটি নোটিফিকেশন হ্যান্ডেল করুন

Anchor link to

যখন অ্যাপটি ফোরগ্রাউন্ডে থাকা অবস্থায় একটি নোটিফিকেশন আসে, তখন উইজেটটি আপনার নির্দেশিত অ্যাট্রিবিউটগুলিতে নোটিফিকেশনটি লেখে, এবং তারপর On push received-এ ন্যানোফ্লো ট্রিগার করে।

  1. Message-কে একটি স্ট্রিং অ্যাট্রিবিউটে সেট করুন যা নোটিফিকেশন টেক্সট গ্রহণ করে।
  2. Payload-কে একটি স্ট্রিং অ্যাট্রিবিউটে সেট করুন যা সম্পূর্ণ পেলোড JSON হিসাবে গ্রহণ করে।
  3. On push received-কে একটি ন্যানোফ্লোতে সেট করুন যা এর প্রতি প্রতিক্রিয়া জানায়, উদাহরণস্বরূপ একটি যা একটি বার্তা দেখায় বা একটি তালিকা রিফ্রেশ করে।

ন্যানোফ্লো চলার আগেই অ্যাট্রিবিউটগুলি পূরণ করা হয়, তাই ন্যানোফ্লো সেগুলি সরাসরি পড়তে পারে।

উইজেটের পুশ ইভেন্ট প্রপার্টি: পেলোড, মেসেজ, অন পুশ রিসিভড এবং অন পুশ ওপেনড

৬. একটি খোলা নোটিফিকেশন এবং একটি ডিপ লিঙ্ক হ্যান্ডেল করুন

Anchor link to

যখন ব্যবহারকারী একটি নোটিফিকেশনে ট্যাপ করে, তখন উইজেটটি On push opened-এ ন্যানোফ্লো ট্রিগার করে, একই Message এবং Payload অ্যাট্রিবিউটগুলি পূরণ করা অবস্থায়।

যদি নোটিফিকেশনটি একটি ডিপ লিঙ্ক বহন করে, তবে উইজেটটি Deep link-এ সেট করা অ্যাট্রিবিউটে লিঙ্কটিও লেখে এবং On deep link-এ ন্যানোফ্লো ট্রিগার করে। সেই ন্যানোফ্লোটি On push opened-এর পাশাপাশি চলে, তাই এটি ব্যবহারকারীকে লিঙ্কটি যে পেজে নির্দেশ করে সেখানে রুট করতে ব্যবহার করুন।

৭. ব্যবহারকারীকে শনাক্ত করুন এবং ট্যাগ সেট করুন

Anchor link to

ট্যাগগুলি একটি ব্রডকাস্টকে একটি টার্গেটেড বার্তায় পরিণত করে। যেকোনো ন্যানোফ্লো থেকে SetTags কল করুন একটি JSON অবজেক্টকে তার প্যারামিটার হিসাবে দিয়ে:

'{"Language":"en","Plan":"pro","Level":7}'

ডিভাইসটিকে একটি ডিভাইসের পরিবর্তে একজন ব্যক্তির সাথে যুক্ত করতে আপনার নিজের ব্যবহারকারী শনাক্তকারী দিয়ে SetUserId কল করুন। একই ইউজার আইডির অধীনে রেজিস্টার করা সমস্ত ডিভাইস তখন একটি বার্তা দিয়ে পৌঁছানো যাবে।

একটি ন্যানোফ্লো SetTags কল করছে যেখানে ডিভাইসে ট্যাগ কী এবং ভ্যালু টাইপ করা হয়েছে

৮. ইভেন্ট পোস্ট করুন

Anchor link to

ইভেন্টগুলি ট্রিগারড ক্যাম্পেইন এবং ইন-অ্যাপ বার্তা চালায়। ইভেন্টের নাম এবং, ঐচ্ছিকভাবে, অ্যাট্রিবিউটের একটি JSON অবজেক্ট দিয়ে PostEvent কল করুন:

'{"product":"Coffee grinder","price":129}'

ইভেন্টের নামটি অবশ্যই Pushwoosh কন্ট্রোল প্যানেলে কনফিগার করা ইভেন্টের সাথে মিলতে হবে।

৯. একটি পরীক্ষামূলক নোটিফিকেশন পাঠান

Anchor link to

ডিভাইসটিকে একটি পরীক্ষামূলক ডিভাইস হিসাবে রেজিস্টার করুন এবং Pushwoosh কন্ট্রোল প্যানেল থেকে এটিতে একটি বার্তা পাঠান। ধাপগুলির জন্য আপনার ইন্টিগ্রেশন পরীক্ষা করুন দেখুন।

অ্যাপ খোলা থাকা অবস্থায় আসা একটি নোটিফিকেশন সিস্টেম দ্বারা একটি সতর্কতা হিসাবে দেখানো হয়, এবং On push received ন্যানোফ্লোও চলে। সিস্টেম সতর্কতা দমন করতে এবং শুধুমাত্র ন্যানোফ্লোতে নোটিফিকেশনটি হ্যান্ডেল করতে, SetShowForegroundAlert-কে false দিয়ে কল করুন। এই অ্যাকশনটি শুধুমাত্র iOS-এ কাজ করে।

১০. যখন কিছু না আসে তখন ইন্টিগ্রেশন পরীক্ষা করুন

Anchor link to

যখন ডিভাইস কোনো নোটিফিকেশন পায় না তখন এগুলি ক্রমানুসারে কাজ করুন:

  1. নিশ্চিত করুন যে অ্যাপটি একটি কাস্টম ডেভেলপার অ্যাপ বা একটি আসল নেটিভ বিল্ড। Make It Native অ্যাপে মডিউলটি নেই, তাই প্রতিটি Pushwoosh অ্যাকশন এতে নীরবে ব্যর্থ হয়।
  2. নেটিভ বিল্ডের ক্ষমতা নিশ্চিত করুন: Push notifications বন্ধ, Firebase Android চালু।
  3. নিশ্চিত করুন যে ডিভাইসটি রেজিস্টার করা আছে। GetPushToken কল করুন এবং পরীক্ষা করুন যে এটি একটি খালি স্ট্রিংয়ের পরিবর্তে একটি টোকেন ফেরত দেয়।
  4. নিশ্চিত করুন যে প্ল্যাটফর্মটি Pushwoosh কন্ট্রোল প্যানেলে কনফিগার করা আছে, iOS-এর জন্য APNs কী আপলোড করা হয়েছে এবং অ্যান্ড্রয়েডের জন্য Firebase সার্ভার কী আপলোড করা হয়েছে।

যদি ডিভাইসটি এখনও পৌঁছানো না যায়, GetHwid কল করুন এবং সেই শনাক্তকারী দিয়ে একটি সাপোর্ট টিকিট খুলুন।

পরবর্তী পদক্ষেপ

Anchor link to
  • মডিউল অ্যাকশন রেফারেন্স - উইজেট প্রপার্টি এবং জাভাস্ক্রিপ্ট অ্যাকশন, প্যারামিটার এবং রিটার্ন ভ্যালু সহ
  • Mendix FAQ - প্রথম ইন্টিগ্রেশনের সময় যে প্রশ্নগুলি আসে