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

iOS ইন্টারেক্টিভ পুশ তৈরি করুন

iOS 8 ইন্টারেক্টিভ নোটিফিকেশন চালু করেছে, যা ব্যবহারকারীদের সরাসরি নোটিফিকেশন ব্যানার থেকে অ্যাকশন নিতে দেয়। Pushwoosh এখন iOS ক্যাটাগরি অফার করে, যা আপনাকে Pushwoosh কন্ট্রোল প্যানেলের মধ্যে কাস্টম বাটন তৈরি করতে সক্ষম করে। আরও জানুন

যখন আপনার অ্যাপ্লিকেশন registerDevice কল করে, তখন Pushwoosh API একটি রেসপন্স প্রদান করে যেখানে উপলব্ধ ক্যাটাগরিগুলির একটি তালিকা থাকে, তাদের আইডি এবং প্রতিটি বাটনের জন্য বিস্তারিত তথ্য সহ, যা নিম্নরূপ:

{
"status_code": 200,
"status_message": "OK",
"response": {
"iosCategories": [
{
"categoryId": 65,
"buttons": [
{
"id": 0,
"label": "Rate",
"type": "1",
"startApplication": 1
},
{
"id": 1,
"label": "Later",
"type": "0",
"startApplication": 0
}
]
}
]
}
}

এই ক্যাটাগরিগুলি এখন ডিভাইসে উপলব্ধ, তাই যখন একটি মেসেজ আসে এবং আপনার অ্যাপ্লিকেশন ফোরগ্রাউন্ডে চলছে না, তখন সেগুলি সঠিকভাবে প্রদর্শিত হতে পারে।

Pushwoosh Journey থেকে একটি ক্যাটাগরি সহ আপনার পুশ পাঠাতে, আপনার মেসেজ কম্পোজ করার সময় iOS প্ল্যাটফর্ম সেটিংসে কেবল এটি নির্বাচন করুন। যদি আপনি Pushwoosh API-এর মাধ্যমে দূর থেকে আপনার পুশ পাঠান, তাহলে createMessage রিকোয়েস্টে আপনার ios_category প্যারামিটারটি সংশ্লিষ্ট ক্যাটাগরি আইডি সহ একটি মান হিসাবে ব্যবহার করা উচিত:

{
"categoryId": 65 // Optional. String value. iOS8 category ID from Pushwoosh
}

যখন একটি ক্যাটাগরি আইডি সহ একটি পুশ মেসেজ আসে, তখন Pushwoosh SDK সেই ক্যাটাগরিতে থাকা বাটনগুলির একটি সেট সহ নোটিফিকেশনটি প্রদর্শন করে।

Pushwoosh iOS SDK-তে বাটন এবং অ্যাকশন

Anchor link to

অ্যাপ খোলার পর বিভিন্ন অ্যাকশন সম্পাদন করার জন্য, আপনার একটি কাস্টম UNUserNotificationCenterDelegate ইমপ্লিমেন্টেশন তৈরি করা উচিত এবং এর didReceiveNotificationResponse মেথডটি ওভাররাইড করা উচিত:

কাস্টমডেলিগেট

Anchor link to
class CustomDelegate: NSObject, UNUserNotificationCenterDelegate {
func userNotificationCenter(_ center: UNUserNotificationCenter, didReceive response: UNNotificationResponse, withCompletionHandler completionHandler: @escaping () -> Void) {
let identifier = response.actionIdentifier
let category = response.notification.request.content.categoryIdentifier
if category == "10212" {
if identifier == "1" {
// DO SOMETHING
} else {
// DO SOMETHING ELSE
}
}
completionHandler()
}
}

যেখানে identifier হল একটি বাটন আইডি, এবং category নোটিফিকেশন পেলোড থেকে প্রাপ্ত।

তারপর, এই ক্লাসের একটি ইনস্ট্যান্স তৈরি করুন এবং প্রক্সি মেথড ব্যবহার করে এটি Pushwoosh SDK-তে পাস করুন:

অ্যাপডেলিগেট

Anchor link to
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
Pushwoosh.sharedInstance().registerForPushNotifications()
let customDelegate = CustomDelegate()
Pushwoosh.sharedInstance().notificationCenterDelegateProxy?.add(customDelegate)
return true
}
নোটিফিকেশন ব্যানারে প্রদর্শিত কাস্টম অ্যাকশন বাটন সহ iOS ইন্টারেক্টিভ পুশ নোটিফিকেশন