পুশ পারমিশন প্রম্পটের আগে একটি ইন-অ্যাপ দেখান
একটি প্রি-পারমিশন ইন-অ্যাপ হলো এমন একটি মেসেজ যা আপনি সিস্টেম পুশ পারমিশন প্রম্পটের আগে দেখান। পুশ নোটিফিকেশন কেন দরকারি তা ব্যাখ্যা করার জন্য এটি ব্যবহার করুন, এবং ব্যবহারকারী আপনার ইন-অ্যাপে হ্যাঁ বলার পরেই পারমিশনের জন্য জিজ্ঞাসা করুন।
iOS-এ, সিস্টেম প্রম্পট প্রতি ইনস্টলে মাত্র একবার দেখা যায়। যদি ব্যবহারকারী Don’t Allow ট্যাপ করে, তাহলে অ্যাপটি সেই প্রম্পট আর দেখাতে পারে না। যতক্ষণ না তারা Settings-এ নোটিফিকেশন চালু করছে, ততক্ষণ পুশ বন্ধ থাকে। ইন-অ্যাপে প্রথমে জিজ্ঞাসা করার মানে হলো আপনি সেই একমাত্র সুযোগটি কেবল সেইসব ব্যবহারকারীদের জন্য ব্যয় করছেন যারা আপনাকে ইতিমধ্যেই হ্যাঁ বলেছে।
আপনি যদি কন্ট্রোল প্যানেলে একটি ক্রস-প্ল্যাটফর্ম HTML প্রম্পট ডিজাইন করতে চান এবং iOS ও Android উভয় ডিভাইসে ইভেন্টের মাধ্যমে এটি ট্রিগার করতে চান, তবে এই গাইডটি ব্যবহার করুন।
অন্য গাইড ব্যবহার করুন যদি:
- আপনার টিম অ্যাপ কোডে একটি iOS-শুধুমাত্র প্রম্পট পাঠাবে (কন্ট্রোল প্যানেলে সম্পাদনাযোগ্য নয়, জার্নি ইভেন্ট দ্বারা শুরু হয় না): iOS পুশ প্রাইমার।
- আপনার সেইসব ব্যবহারকারীদের পুনরায় যুক্ত করতে হবে যারা ইতিমধ্যে পুশ নিষ্ক্রিয় করেছেন বা কখনও অনুমতি দেননি (শুধুমাত্র রিকভারি, প্রথমবার জিজ্ঞাসা নয়): অপ্ট-আউট রিকভারি পপআপ তৈরি করুন।
শুরু করার আগে
Anchor link toPushwoosh নিজে থেকে সিস্টেম পারমিশন ডায়ালগ দেখায় না। এটি বিলম্বিত করার জন্য কন্ট্রোল প্যানেলে কনফিগার করার কিছু নেই। ডায়ালগটি কেবল তখনই প্রদর্শিত হয় যখন ব্যবহারকারী আপনার ইন-অ্যাপে অ্যাকসেপ্ট বোতামে ট্যাপ করে।
আপনার ডেভেলপমেন্ট টিমের সাথে এই পূর্বশর্তগুলো নিয়ে কাজ করুন:
- নিশ্চিত করুন যে অ্যাপটি আগে (প্রথম লঞ্চ সহ) পুশ পারমিশনের জন্য অনুরোধ করে না।
- একটি কাস্টম ইভেন্টের নাম এবং কখন এটি ফায়ার করতে হবে সে বিষয়ে একমত হন, উদাহরণস্বরূপ, অনবোর্ডিংয়ের ঠিক পরে
onboarding_completed, অথবা যখন ব্যবহারকারী এমন একটি ফিচারে ট্যাপ করে যার জন্য নোটিফিকেশন প্রয়োজন, তখনlocked_feature_tapped। আপনার টিম সেই নামেpostEventকল করবে। ইভেন্ট সম্পর্কে আরও জানুন।
ইন-অ্যাপটি তৈরি করুন
Anchor link toএই গাইডের বোতামগুলি কাস্টম জাভাস্ক্রিপ্টে চলে, যা শুধুমাত্র একটি HTML-ভিত্তিক ইন-অ্যাপ টেমপ্লেটে কাজ করে। একটি নেটিভ ইন-অ্যাপ টেমপ্লেট এই কোড চালাতে পারে না, তাই Native in-app দিয়ে টেমপ্লেট তৈরি করবেন না।
- Content → In-Apps এ যান এবং বিল্ট-ইন এডিটর সরাসরি খুলতে Create in-app এ ক্লিক করুন।
- একটি টেমপ্লেটের নাম লিখুন।
- ডান প্যানেলে Blocks ট্যাবটি খুলুন এবং পুশ সক্রিয় করার জন্য আপনার পিচ সহ একটি টেক্সট বা হেডিং ব্লক যোগ করুন।

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

- অ্যাকসেপ্ট বোতামটি নির্বাচন করুন এবং Action type কে Custom Javascript এ সেট করুন।
- নিচের কোডটি শুধুমাত্র onClick এ পেস্ট করুন।
pushwoosh.registerForPushNotifications();pushwoosh.closeInApp();- ডিক্লাইন বোতামটি নির্বাচন করুন এবং Action type কে Custom Javascript এ সেট করুন।
- শুধুমাত্র এটি onClick এ পেস্ট করুন:
pushwoosh.closeInApp();আপনি টেমপ্লেটটি সেভ করার পর:
- অ্যাকসেপ্ট বোতাম: সিস্টেম পারমিশন ডায়ালগ প্রদর্শিত হবে।
- ডিক্লাইন বোতাম: ইন-অ্যাপটি বন্ধ হয়ে যাবে এবং কোনো সিস্টেম ডায়ালগ প্রদর্শিত হবে না।

যারা ইতিমধ্যে অপ্ট-ইন করেছেন তাদের জন্য প্রম্পট এড়িয়ে যান
Anchor link toএকটি ডিসপ্লে কন্ডিশন যোগ করুন যাতে ইন-অ্যাপটি সেইসব ব্যবহারকারীদের জন্য নিজেকে লুকিয়ে রাখে যারা ইতিমধ্যে পুশ অনুমতি দিয়েছেন, এমনকি যদি পরবর্তী কোনো ট্রিগার টেমপ্লেটটি আবার দেখায়। পুশ সম্মতির স্ট্যাটাস Push Alerts Enabled থেকে আসে, যা একটি ডিফল্ট বুলিয়ান ট্যাগ যা SDK ডিভাইসের সিস্টেম নোটিফিকেশন পারমিশন থেকে সেট করে।
- Layers প্যানেলে, প্রথম ব্লকে ক্লিক করুন, তারপর Shift-ক্লিক করে অন্য সব ব্লক নির্বাচন করে পুরো টেমপ্লেটটি একসাথে নির্বাচন করুন।
- Show this block conditionally চালু করুন। আপনি নিচে যে নিয়মটি সেট করবেন তা পুরো নির্বাচনের উপর একবারে প্রযোজ্য হবে।
- নিয়মটি Push Alerts Enabled is false এ সেট করুন।
- If value is unknown এর অধীনে, Show block বেছে নিন। একটি নতুন ইনস্টল যার এখনও কোনো ট্যাগ ভ্যালু নেই, তারও প্রম্পটটি দেখা উচিত।

পারমিশন অনুরোধ করার আগে ইন-অ্যাপ ট্রিগার করুন
Anchor link toযে ডিভাইস এখনও রেজিস্ট্রেশনের মধ্য দিয়ে যায়নি তার কোনো পুশ টোকেন নেই, তাই আপনি পুশ নোটিফিকেশন দিয়ে তার কাছে পৌঁছাতে পারবেন না। আপনি ডেভেলপমেন্টের সাথে যে কাস্টম ইভেন্টে একমত হয়েছেন, সেই ইভেন্ট দ্বারা ইন-অ্যাপটি ট্রিগার করুন।
- আপনার ডেভেলপমেন্ট টিমকে বলুন যে মুহূর্তে আপনি জিজ্ঞাসা করতে চান, সেই মুহূর্তে সম্মত ইভেন্টের নাম দিয়ে
postEventকল করতে। - Customer Journey Builder → Create Campaign এ যান এবং একটি Trigger-based entry দিয়ে শুরু করুন যা সেই ইভেন্টের জন্য শোনে।
- একটি In-app এলিমেন্ট যোগ করুন এবং আপনার তৈরি করা টেমপ্লেটটি নির্বাচন করুন। Customer Journey এর মাধ্যমে ইন-অ্যাপ পাঠানোর বিষয়ে আরও জানুন।
- যখন আপনি প্রম্পটটি দেখাতে প্রস্তুত হবেন, তখন জার্নিটি লঞ্চ করুন।
উদাহরণ পরিস্থিতি: অনবোর্ডিংয়ের ঠিক পরে পুশ পারমিশনের জন্য জিজ্ঞাসা করুন
Anchor link toভাবুন আপনি টিউটোরিয়ালটি বাধাগ্রস্ত না করে, একজন ব্যবহারকারী অনবোর্ডিং শেষ করার মুহূর্তে পুশ পারমিশনের জন্য জিজ্ঞাসা করতে চান।
onboarding_completedইভেন্টটি তৈরি করুন এবং নিশ্চিত করুন যে আপনার ডেভেলপমেন্ট টিম ব্যবহারকারী অনবোর্ডিং ফ্লো শেষ করার সময় এটি ফায়ার করে। ইভেন্ট তৈরি করার বিষয়ে আরও জানুন- আপনার জার্নির জন্য
onboarding_completedকে ট্রিগার হিসেবে সেট করুন, একটি Trigger-based entry ব্যবহার করে। - একটি In-app এলিমেন্ট যোগ করুন এবং আপনার তৈরি করা প্রি-পারমিশন টেমপ্লেটটি নির্বাচন করুন।
- জার্নিটি লঞ্চ করুন।
প্রতিটি ব্যবহারকারী যারা অনবোর্ডিং সম্পন্ন করে, তারা একবার প্রম্পটটি দেখতে পাবে। যারা ইতিমধ্যে অপ্ট-ইন করেছেন তাদের জন্য প্রম্পট এড়িয়ে যান থেকে ডিসপ্লে কন্ডিশনটি এটিকে সেইসব ব্যবহারকারীদের জন্য আবার ফায়ার হওয়া থেকে বিরত রাখে যারা ইতিমধ্যে পুশ অনুমতি দিয়েছেন।
এটি কাজ করেছে কিনা তা পরীক্ষা করুন
Anchor link toসিস্টেম প্রম্পটটি এককালীন, তাই উভয় বোতাম পরীক্ষা করার জন্য দুটি টেস্ট ডিভাইস (বা দুটি নতুন ইনস্টল) প্রয়োজন যা এখনও পুশ অনুমতি দেয়নি বা অস্বীকার করেনি, প্রতিটি বোতামের জন্য একটি। প্রতিটি ডিভাইসে:
- অ্যাপ থেকে সম্মত ইভেন্টটি ফায়ার করুন।
- অ্যাপটি পুনরায় খুলুন এবং নিশ্চিত করুন যে জার্নিটি আপনার ইন-অ্যাপ ডেলিভার করে।
তারপর:
- প্রথম ডিভাইসে, অ্যাকসেপ্ট বোতামে ট্যাপ করুন এবং নিশ্চিত করুন যে সিস্টেম পারমিশন ডায়ালগ প্রদর্শিত হয়।
- দ্বিতীয় ডিভাইসে, ডিক্লাইন বোতামে ট্যাপ করুন এবং নিশ্চিত করুন যে ইন-অ্যাপটি কোনো সিস্টেম ডায়ালগ ছাড়াই বন্ধ হয়ে যায়।
- পরবর্তী অ্যাপ খোলার পর, নিশ্চিত করুন যে Push Alerts Enabled প্রতিটি ডিভাইসের পারমিশন অবস্থার সাথে মেলে।
যেসব ব্যবহারকারীর পুশ এখনও নিষ্ক্রিয় আছে তাদের একটি সেগমেন্ট তৈরি করুন
Anchor link toযারা অনুমতি প্রত্যাখ্যান করেছেন বা কখনও দেননি তাদের খুঁজে বের করতে Push Alerts Enabled এ ফিল্টার করুন। যখন পুশ এখনও অনুমোদিত নয়, তখন ট্যাগটি false থাকে, যার মধ্যে ব্যবহারকারী সিস্টেম ডায়ালগ দেখার আগেও অন্তর্ভুক্ত, তাই একটি প্রি-পারমিশন ডিভাইস ইতিমধ্যেই এই সেগমেন্টের মধ্যে পড়ে।
- সেগমেন্ট বিল্ডারে, Push Alerts Enabled ট্যাগ দ্বারা একটি ফিল্টার যোগ করুন।
- অপারেটরটিকে is false এ সেট করুন। ট্যাগ দ্বারা সেগমেন্ট তৈরি করার বিষয়ে আরও জানুন।
এই সেগমেন্টটি ব্যবহার করুন সেইসব ব্যবহারকারীদের থেকে একটি পুনরাবৃত্ত প্রম্পট আটকে রাখতে যাদের এখনও পুশ সক্রিয় নেই, অথবা একটি পর্যায়ক্রমিক উইন-ব্যাক জার্নি চালাতে। একই ট্যাগ সহ একটি কার্যকর উদাহরণের জন্য অপ্ট-আউট রিকভারি সেগমেন্ট দেখুন।
আরও দেখুন
Anchor link to- iOS পুশ প্রাইমার: এই ক্রস-প্ল্যাটফর্ম HTML পদ্ধতির নেটিভ, iOS-শুধুমাত্র বিকল্প।
- অপ্ট-আউট রিকভারি পপআপ তৈরি করুন: যারা ইতিমধ্যে পুশ নিষ্ক্রিয় করেছেন তাদের রিকভার করুন (প্রথম জিজ্ঞাসা নয়), একই Push Alerts Enabled ট্যাগ ব্যবহার করে।
- জাভাস্ক্রিপ্ট দিয়ে ইন-অ্যাপ তৈরি করুন: সম্পূর্ণ জাভাস্ক্রিপ্ট ব্রিজ রেফারেন্স।