অ্যাপ খোলা অবস্থায় আসা পুশকে নিজের মতো সাজান
অ্যাপ খোলা থাকার সময় পুশ এলে iOS মুহূর্তটি আপনার উপর ছেড়ে দেয়। Pushwoosh iOS SDK এটি দেখায় আপনার নিজস্ব রঙ ও ফন্টে একটি অ্যানিমেটেড ব্যানার হিসেবে, iOS 26-এ Apple-এর Liquid Glass ম্যাটেরিয়ালসহ।
৮০,০০০+ কোম্পানি এনগেজমেন্ট বাড়াতে আস্থা রাখে
ফোরগ্রাউন্ড পুশ কি, সহজ ভাষায়
অ্যাপ যখন স্ক্রিনে খোলা (ফোরগ্রাউন্ডে) থাকে, তখন আসা পুশ সামলানোর দায়িত্ব আপনার অ্যাপের। iOS হয় আপনার ইন্টারফেসের উপর সাদামাটা সিস্টেম ব্যানার বসাবে, নয়তো কিছুই দেখাবে না — আর যে মেসেজের জন্য আপনি পুরো একটি জার্নি বানিয়েছেন, তা আসে ধূসর সিস্টেম ডিজাইনে। PushwooshForegroundPush মডিউল সেই একই payload দেখায় আপনার নিজস্ব ব্যানার হিসেবে।
Liquid Glass (iOS 26)
useLiquidView চালু করলে ব্যানার আঁকা হয় Apple-এর Liquid Glass ম্যাটেরিয়ালে, তাই এটি স্ক্রিনের উপর বসানো আলাদা স্তর নয়, iOS 26-এরই অংশ মনে হয়।
স্ট্যান্ডার্ড ব্যানার (iOS 13 থেকে 25)
iOS 26-এর নিচে একই কল আপনার গ্রেডিয়েন্ট ও রঙে একটি সলিড ব্যানার দেখায়, আর পুরনো Swift টুলচেইনে ঝাপসা ইফেক্ট ভিউ দেখায়। একটি কনফিগারেশনেই তিনটিই কভার হয়।
কার্ড ইমেজ ও GIF
টাইটেল, মেসেজ, কার্ড ইমেজ ও অ্যানিমেটেড GIF — সবই পুশ যে payload আগে থেকে বহন করে তা থেকে পড়া হয়।
মোশন, হ্যাপটিক ও সময়সীমা
এন্ট্রি অ্যানিমেশন, balls বা regularPush ডিসমিস, সাতটি লেভেল থেকে বেছে নেওয়া আগমনের হ্যাপটিক, আর ব্যানার নিজে সরে যাওয়ার আগে কত সেকেন্ড থাকবে।
আপনি যা নিয়ন্ত্রণ করেন
| প্রপার্টি | এটি কী সেট করে | ভ্যালু |
|---|---|---|
useLiquidView | iOS 26-এ Liquid Glass ম্যাটেরিয়াল | Bool, ডিফল্ট false |
gradientColors, backgroundColor | যে সারফেসে ব্যানার আঁকা হয় | আপনার ব্র্যান্ড রঙ |
titlePushColor, messagePushColor | দুই লাইনের টেক্সটের রঙ | আপনার ব্র্যান্ড রঙ |
titlePushFont, messagePushFont | দুই লাইনের টাইপফেস | আপনার অ্যাপে থাকা যেকোনো ফন্ট |
usePushAnimation | এন্ট্রি অ্যানিমেশন | Bool, ডিফল্ট true |
duration | সরে যাওয়ার আগে ব্যানার কতক্ষণ থাকবে | সেকেন্ড |
vibration | আগমনের সময় হ্যাপটিক | none, light, medium, heavy, soft, rigid, notification |
disappearedPushAnimation | ব্যানার কিভাবে স্ক্রিন ছাড়বে | balls অথবা regularPush |
style | বিল্ট-ইন লেআউট | style1, বর্তমানে একমাত্র |
useLiquidViewfalsegradientColors, backgroundColortitlePushColor, messagePushColortitlePushFont, messagePushFontusePushAnimationtruedurationvibrationnone, light, medium, heavy, soft, rigid, notificationdisappearedPushAnimationballs অথবা regularPushstylestyle1, বর্তমানে একমাত্রকোথায় সেট করবেন
লঞ্চে একটি কল
didFinishLaunchingWithOptions-এ foregroundNotificationWith(style:duration:vibration:disappearedPushAnimation:), সাথে appearance প্রপার্টি। পুরো অ্যাপের জন্য একবার কনফিগার করা হয়।
আগমনে একটি কল
আপনার PWMessagingDelegate.onMessageReceived callback থেকে showForegroundPush(userInfo:) সরাসরি মেসেজ payload থেকে ব্যানার দেখায়।
ট্যাপের জন্য একটি delegate
PWForegroundPushDelegate.didTapForegroundPush(userInfo:) আপনাকে পুরো payload দেয়, তাই ট্যাপ ঠিক সেখানেই ডিপ লিংক করে যেখানে ক্যাম্পেইন চেয়েছিল।
জার্নির ভেতরে এটি কিভাবে কাজ করে
এক পুশ, তিন রকম রূপ
ফোরগ্রাউন্ড ব্যানার হলো আপনি যে মেসেজ আগে থেকেই পাঠাচ্ছেন তার একটি রেন্ডার মোড। একই সেগমেন্ট, একই ট্রিগার, একই payload, একই কাস্টমার জার্নি-র একই ধাপ। বদলায় শুধু পৌঁছানোর পর ডিভাইস এটি নিয়ে কী করে।
অ্যাপ বন্ধ থাকলে মেসেজ আসে সাধারণ সিস্টেম পুশ হিসেবে, অথবা একটি Live Activity আপডেট করে। অ্যাপ খোলা থাকলে SDK এই ব্যানার আঁকে। মুহূর্তটি যখন অফার বা ফর্মসহ পূর্ণ স্ক্রিনের যোগ্য, তখন একই জার্নি এগিয়ে যায় ইন-অ্যাপ মেসেজে।
পাঠক আর্টিকেল পড়ার মাঝেই ব্রেকিং নিউজ
একটি সম্পাদকীয় ইভেন্ট জার্নি চালু করে। একটি silent push পাঠকের অগোচরে ব্যাকগ্রাউন্ডে আর্টিকেল লোড করে রাখে, আর এক সেকেন্ড পরে আসে অ্যালার্ট।
যাদের অ্যাপ বন্ধ, তারা লক স্ক্রিনে সিস্টেম পুশ দেখেন। যারা আগে থেকেই অ্যাপে আছেন, তারা দেখেন পত্রিকার নিজস্ব ব্যানার — থাম্বনেইলসহ — পড়তে থাকা আর্টিকেলের উপর দিয়ে স্লাইড করে আসছে, আর এক ট্যাপেই নতুন খবরে ডিপ লিংক। দুই ক্ষেত্রেই Message Inbox অ্যালার্টটি রেখে দেয়।
কোন কাজে ব্যবহার করবেন
ব্যানার শুধু তখনই দেখা যায় যখন কেউ আপনার অ্যাপের ভেতরে আছেন, তাই এর মূল্য নির্ভর করে ইন-সেশন ঘনত্বের উপর: আপনার পাঠানো মেসেজের কতটা আগে থেকে খোলা স্ক্রিনে পৌঁছায়। লম্বা সেশনের অ্যাপ এখান থেকে সবচেয়ে বেশি পায়, আর যে অ্যাপের মেসেজ পকেটে থাকা ফোনে পৌঁছায় তারা খুব কম পায়।
| মুহূর্ত | মেসেজে কী বলা হয় | ব্যানার কেন মানানসই |
|---|---|---|
| ফিনটেক: অ্যাপের ভেতরে কাজ চলাকালীন কনফার্মেশন | ট্রান্সফার সম্পন্ন | ইউজার যখন ঠিক এটার অপেক্ষায়, তখন ব্র্যান্ডেড কনফার্মেশন অ্যাপেরই অংশ মনে হয় |
| ই-কমার্স ও মার্কেটপ্লেস: ব্রাউজ করার সময় প্রাইস ড্রপ | আপনার সাইজ আবার স্টকে | স্ক্রলের মাঝে স্টাইল করা ব্যানার বাধা নয়, স্টোরেরই অংশ মনে হয় |
| লাইভ স্পোর্টস: অ্যাপে খেলা দেখার সময় গোল বা উইকেট | ১-০, ৬৮ মিনিট | ইউজার ইভেন্টের জন্যই অ্যাপ খুলেছেন এবং পুশ আসার সময় তা দেখছেন |
| মিডিয়া ও নিউজ: পড়ার সেশনে ব্রেকিং নিউজ | রায় ঘোষণা হয়েছে | পাঠক আগে থেকেই অ্যাপে, আর সিস্টেম ব্যানার পত্রিকার নিজস্ব ডিজাইনে বাধা দেয় |
| স্ট্রিমিং: এপিসোড চলাকালীন নতুন রিলিজ | সিজন ৩ এসে গেছে | অ্যালার্ট সিস্টেম ডিজাইনের বদলে শো-এর আর্ট নিয়ে আসতে পারে |
| মোবাইল গেম: ম্যাচের সময় ইভেন্ট বা রিওয়ার্ড | আপনার পালা: রেইড শুরু ৫ মিনিটে | লম্বা সেশনে বেশিরভাগ পুশ খেলার মাঝেই আসে, আর আর্টের সাথে মেলানো ব্যানার গেম UI-তে মানিয়ে যায় |
| ক্রিয়েটর ও সাবস্ক্রিপশন অ্যাপ: নতুন ড্রপ বা ট্রায়াল রিমাইন্ডার | আপনি যাকে ফলো করেন তার নতুন কাজ | যত্ন করে ডিজাইন করা অ্যাপ এই মুহূর্তটি সিস্টেমের হাতে ছাড়া উচিত নয়, আর ট্যাপ সরাসরি paywall-এ নিয়ে যায় |
কখন অন্য মাধ্যম সঠিক
ব্যানার হলো সাদামাটা সিস্টেম অ্যালার্ট আর পূর্ণ ইন-অ্যাপ টেকওভারের মাঝের এক নজরে দেখার ধাপ। অনেক মুহূর্ত এর দুই পাশে পড়ে।
- অ্যাপ বন্ধ থাকা অবস্থায় মুহূর্তটি আসে: দরজায় কুরিয়ার, গেট পরিবর্তন, ফ্রড অ্যালার্ট। এর জন্য সাধারণ পুশ, interruption লেভেল বা Live Activity।
- অবস্থাটি তাৎক্ষণিক নয়, চলমান: প্রক্রিয়াধীন অর্ডার, পথে থাকা রাইড, চলতি স্কোর। এর জন্য Live Activity।
- মেসেজের পূর্ণ স্ক্রিন দরকার: অফার, ফর্ম, paywall। এর জন্য ইন-অ্যাপ মেসেজ, যা আরও সমৃদ্ধ এবং নো-কোডে তৈরি।
- আপনি বদলাতে চান কে মেসেজ পাবেন বা কী লেখা থাকবে। এটি শুধু দেখতে কেমন তা বদলায়, রিচ থাকে মোবাইল পুশের হাতে।
প্ল্যাটফর্ম ও টেকনিক্যাল কভারেজ
মডিউলটি শুধু iOS-এর। Android-এ ফোরগ্রাউন্ড আচরণ নিয়ন্ত্রিত হয় নোটিফিকেশন চ্যানেল দিয়ে, যা Pushwoosh SDK পুশ payload থেকেই তৈরি করে — আপনার অ্যাপকে কোডে রেজিস্টার করতে হয় না। ওয়েবে তুলনীয় কোনো মাধ্যম নেই। শেষ কলামে লেখা আছে আসলে ব্যানার কে আঁকে, কারণ এর বেশিরভাগই সার্ভারে নয়, আপনার অ্যাপে থাকে।
| সক্ষমতা | iOS | Android | Web | কে ডেলিভার করে |
|---|---|---|---|---|
| কাস্টম ফোরগ্রাউন্ড ব্যানার | iOS 13.0+, Pushwoosh SDK 6.10.0+ | – | – | আপনার অ্যাপে PushwooshForegroundPush মডিউল |
| Liquid Glass ম্যাটেরিয়াল | iOS 26, Swift 5.13+-সহ | – | – | Apple-এর ম্যাটেরিয়াল, useLiquidView দিয়ে চালু |
| সলিড ব্যানার ফলব্যাক | iOS 26-এর নিচে, Swift 5.13+ | – | – | SDK-এর আঁকা স্ট্যান্ডার্ড ভিউ |
| ঝাপসা ব্যানার ফলব্যাক | যেকোনো iOS, Swift 5.13-এর নিচে | – | – | SDK-এর আঁকা ঝাপসা ইফেক্ট ভিউ |
| টাইটেল, মেসেজ, কার্ড ইমেজ, GIF | হ্যাঁ | – | – | পুশ payload, অপরিবর্তিত |
| ব্র্যান্ড রঙ, গ্রেডিয়েন্ট ও ফন্ট | হ্যাঁ | – | – | মডিউলের স্ট্যাটিক appearance প্রপার্টি |
| হ্যাপটিক, এন্ট্রি ও ডিসমিস অ্যানিমেশন, সময়সীমা | হ্যাঁ | – | – | অ্যাপ লঞ্চে foregroundNotificationWith |
| ট্যাপ হ্যান্ডলিং ও ডিপ লিংক | হ্যাঁ | – | – | PWForegroundPushDelegate.didTapForegroundPush |
| লুকের নো-কোড কনফিগারেশন | – | – | – | বর্তমানে নেই, স্টাইলিং থাকে অ্যাপ কোডে |
| অন্য প্ল্যাটফর্মে তুলনীয় ইন-সেশন মাধ্যম | ইন-অ্যাপ মেসেজ, Live Activities | ইন-অ্যাপ মেসেজ | ইন-অ্যাপ মেসেজ | আলাদা প্রোডাক্ট, Control Panel-এ নো-কোডে তৈরি |
PushwooshForegroundPush মডিউলuseLiquidView দিয়ে চালুforegroundNotificationWithPWForegroundPushDelegate.didTapForegroundPushসিকিউরিটি ও হোস্টিং
Pushwoosh চলে US ও জার্মানিতে নিজস্ব হার্ডওয়্যারে, GDPR মেনে।
কিভাবে কাজ করে
এর জন্য ইঞ্জিনিয়ারিং সময় লাগে, এবং আমরা তা সোজাসুজি বলি। ফোরগ্রাউন্ড লুকের জন্য Control Panel-এ কোনো কম্পোজার নেই, তাই একজন ডেভেলপার একবার অ্যাপে এটি যুক্ত করেন, আর তারপর সবকিছু চলে আপনার বর্তমান সেন্ডিংয়ের মতোই।
-
মডিউল যোগ করুন এবং ফোরগ্রাউন্ড অ্যাপের হাতে দিন (ডেভেলপার)
PushwooshFramework,PushwooshCore,PushwooshBridgeওPushwooshLiveActivities-এর পাশেPushwooshForegroundPushযোগ করুন, তারপরInfo.plist-এPushwoosh_SHOW_ALERTসেট করুনfalse। এতে iOS নিজের অ্যালার্ট আঁকা বন্ধ করে, কারণ ব্যানার এটির সাথে যোগ হয় না, বরং এটির জায়গা নেয়। -
লুক একবার কনফিগার করুন (ডেভেলপার)
didFinishLaunchingWithOptions-এforegroundNotificationWith(style:duration:vibration:disappearedPushAnimation:)কল করুন এবং রঙ, গ্রেডিয়েন্ট ও ফন্টের appearance প্রপার্টি সেট করুন। প্রতিটি মেসেজonMessageReceivedথেকেshowForegroundPush(userInfo:)দিয়ে দেখান, আর ট্যাপ সামলানdidTapForegroundPush-এ। -
আজ যেভাবে পাঠান, ঠিক সেভাবেই পাঠান (নো-কোড)
একই অডিয়েন্স, একই কাস্টমার জার্নি, একই payload — ক্যাম্পেইন Control Panel থেকে আসুক বা Messages API থেকে। অ্যাপ খোলা পেলে পুশটি এভাবেই দেখায়।
যে সীমাবদ্ধতাগুলো জানা দরকার
সম্পর্কিত পণ্য অন্বেষণ করুন
Pushwoosh-এর পুশ নোটিফিকেশন সার্ভিস দিয়ে প্রতিটি ডিভাইসে পৌঁছান — ছবি, বাটন ও ডিপ লিংক সহ। সুনির্দিষ্ট টার্গেটিং, ক্রস-চ্যানেল জার্নি এবং ৯৯% আপটাইম।
Pushwoosh ইন-অ্যাপ মেসেজিং দিয়ে onboarding, upsell, ঘোষণা ও feedback সংগ্রহ করুন — ঠিক যখন ইউজার আপনার অ্যাপে সক্রিয় থাকেন। No-code editor, native SDK layout, প্রতিটি এলিমেন্টের analytics। GDPR মেনে চলে। বিনামূল্যে শুরু করুন।
আপনার পাঠানো পুশে লেবেলযুক্ত অ্যাকশন বাটন যোগ করুন — ইউজার এক ট্যাপেই অ্যাপ্রুভ, ক্লেইম বা ট্র্যাক করবেন। iOS বাটন সেট Control Panel-এ নো-কোডে তৈরি করুন।
অর্ডার, রাইড বা ডেলিভারির অগ্রগতি Android 16 লক স্ক্রিনে একটি কার্ডে দেখান। Pushwoosh সার্ভার থেকে কার্ডটি শুরু, আপডেট ও শেষ করে।
একটি iOS পুশে কয়েকটি ছবি রাখুন, ইউজার এক্সপ্যান্ড করা নোটিফিকেশনে সোয়াইপ করে দেখবেন। Pushwoosh content extension দেয়, আর ক্যারোসেল যায় একই জার্নি থেকে।
Message Inbox আপনার অ্যাপ ও ওয়েবসাইটে নোটিফিকেশন সেন্টার যোগ করে। সাইলেন্ট ডেলিভারি পুশ বন্ধ রাখা ইউজারদের কাছেও পৌঁছায়, মেসেজ পরে পড়া যায়।