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

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

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

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

{
"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 প্যারামিটারটি সংশ্লিষ্ট ক্যাটাগরি ID-র মান সহ ব্যবহার করা উচিত:

{
"categoryId": 65 // ঐচ্ছিক। স্ট্রিং মান। Pushwoosh থেকে iOS8 ক্যাটাগরি ID
}

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

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

Anchor link to

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

CustomDelegate

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" {
// কিছু একটা করুন
} else {
// অন্য কিছু করুন
}
}
completionHandler()
}
}

যেখানে identifier হল একটি বোতাম ID, এবং category নোটিফিকেশন পেলোড থেকে নেওয়া হয়।

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

AppDelegate

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 ইন্টারেক্টিভ পুশ নোটিফিকেশন