| প্ল্যাটফর্ম নির্বাচন করুন: | iOS+ অ্যান্ড্রয়েড ওয়েব ফ্লাটার ইউনিটি C++ |
এই নির্দেশিকায় বর্ণনা করা হয়েছে কীভাবে আপনার অ্যাপল প্ল্যাটফর্মের (যেমন iOS) ক্লায়েন্ট অ্যাপে Firebase Cloud Messaging শুরু করবেন, যাতে আপনি নির্ভরযোগ্যভাবে বার্তা পাঠাতে পারেন।
অ্যাপল ক্লায়েন্ট অ্যাপের ক্ষেত্রে, আপনি Firebase Cloud Messaging APNs ইন্টারফেসের মাধ্যমে ৪০৯৬ বাইট পর্যন্ত নোটিফিকেশন এবং ডেটা পেলোড গ্রহণ করতে পারবেন।
Objective-C বা Swift-এ আপনার ক্লায়েন্ট কোড লেখার জন্য, আমরা FIRMessaging API ব্যবহার করার পরামর্শ দিই। কুইকস্টার্ট উদাহরণটিতে উভয় ভাষার জন্যই নমুনা কোড দেওয়া আছে।
শুরু করার আগে, আপনার অ্যাপল প্রজেক্টে ফায়ারবেস যুক্ত করুন ।
Firebase Cloud Messaging এ মেথড সুইজলিং
FCM SDK দুটি প্রধান ক্ষেত্রে মেথড সুইজলিং সম্পাদন করে: আপনার APNs টোকেনকে Firebase Installation ID বা FCM রেজিস্ট্রেশন টোকেনের সাথে ম্যাপ করা এবং ডাউনস্ট্রিম মেসেজ কলব্যাক হ্যান্ডলিংয়ের সময় অ্যানালিটিক্স ডেটা ক্যাপচার করা। যে সকল ডেভেলপার সুইজলিং ব্যবহার করতে চান না, তারা অ্যাপের Info.plist ফাইলে FirebaseAppDelegateProxyEnabled ফ্ল্যাগটি যোগ করে এবং এর বুলিয়ান ভ্যালু NO সেট করে এটি নিষ্ক্রিয় করতে পারেন। গাইডের প্রাসঙ্গিক অংশগুলিতে মেথড সুইজলিং সক্রিয় এবং নিষ্ক্রিয় উভয় অবস্থাতেই কোডের উদাহরণ দেওয়া আছে।
আপনার APNs প্রমাণীকরণ কী আপলোড করুন
আপনার APNs অথেন্টিকেশন কী Firebase-এ আপলোড করুন। যদি আপনার আগে থেকে কোনো APNs অথেন্টিকেশন কী না থাকে, তবে Apple Developer Member Center থেকে একটি তৈরি করে নিন।
- Firebase কনসোলে, এখানে যান
> সাধারণ-এ যান । তারপর, ক্লাউড মেসেজিং ট্যাবে ক্লিক করুন। - iOS অ্যাপ কনফিগারেশনের অধীনে APNs অথেন্টিকেশন কী- তে, আপনার ডেভেলপমেন্ট অথেন্টিকেশন কী, অথবা প্রোডাকশন অথেন্টিকেশন কী, অথবা উভয়ই আপলোড করতে আপলোড-এ ক্লিক করুন। এগুলোর মধ্যে অন্তত একটি থাকা আবশ্যক।
- যেখানে আপনি আপনার কী (key) সংরক্ষণ করেছেন সেই অবস্থানে যান, সেটি নির্বাচন করুন এবং 'Open'-এ ক্লিক করুন। কী-টির জন্য কী আইডি (যা Apple Developer Member Center- এ পাওয়া যাবে) যোগ করুন এবং 'Upload'-এ ক্লিক করুন।
দূরবর্তী বিজ্ঞপ্তির জন্য নিবন্ধন করুন
অ্যাপ চালু করার সময় অথবা আপনার অ্যাপ্লিকেশন ফ্লো-এর কাঙ্ক্ষিত পর্যায়ে, রিমোট নোটিফিকেশনের জন্য আপনার অ্যাপটি রেজিস্টার করুন। দেখানো অনুযায়ীregisterForRemoteNotifications কল করুন:সুইফট
UNUserNotificationCenter.current().delegate = self let authOptions: UNAuthorizationOptions = [.alert, .badge, .sound] UNUserNotificationCenter.current().requestAuthorization( options: authOptions, completionHandler: { _, _ in } ) application.registerForRemoteNotifications()
উদ্দেশ্য-সি
[UNUserNotificationCenter currentNotificationCenter].delegate = self; UNAuthorizationOptions authOptions = UNAuthorizationOptionAlert | UNAuthorizationOptionSound | UNAuthorizationOptionBadge; [[UNUserNotificationCenter currentNotificationCenter] requestAuthorizationWithOptions:authOptions completionHandler:^(BOOL granted, NSError * _Nullable error) { // ... }]; [application registerForRemoteNotifications];
ফায়ারবেস ইনস্টলেশন আইডি অ্যাক্সেস করুন
ডিফল্টরূপে, FCM SDK অ্যাপ ইনস্ট্যান্সটিকে FCM সাথে রেজিস্টার করে এবং অ্যাপ চালু হওয়ার সময় ক্লায়েন্ট অ্যাপ ইনস্ট্যান্সটির জন্য একটি Firebase Installation ID (FID) ফেরত দেয়। APNs ডিভাইস টোকেনের মতোই, এই FID আপনাকে আপনার অ্যাপের যেকোনো নির্দিষ্ট ইনস্ট্যান্সে টার্গেটেড নোটিফিকেশন পাঠাতে সাহায্য করে।
যেভাবে অ্যাপল প্ল্যাটফর্মগুলো সাধারণত অ্যাপ চালুর সময় একটি APNs ডিভাইস টোকেন প্রদান করে, ঠিক সেভাবেই FCM নোটিফিকেশন টার্গেট করার জন্য একটি FID প্রদান করে। FCM SDK, FIRMessagingDelegate এর messaging:didReceiveRegistration: মেথড ব্যবহার করে FID-টি সরবরাহ করে, স্বয়ংক্রিয়ভাবে FID পরিবর্তনের উপর নজর রাখে এবং কোনো পরিবর্তন শনাক্ত হলে একটি নতুন FID সহ মেথডটি কল করে। আমরা আপনাকে নিয়মিত FID-টি সংগ্রহ এবং আপলোড করার পরামর্শ দিই, কারণ প্রাথমিক স্টার্টআপের পরে FID-টি পরিবর্তিত হতে পারে।
ফায়ারবেস ইনস্টলেশন আইডি ব্যবহার করে রেজিস্ট্রেশন সক্রিয় করুন।
Firebase Installation ID (FID) ব্যবহার করে FCM সাথে আপনার অ্যাপ ইনস্ট্যান্স রেজিস্টার করা সক্ষম করতে, নিম্নলিখিত মেটাডেটা ফ্ল্যাগটি আপনার Info.plist ফাইলে যোগ করুন, আপনার GoogleService-Info.plist ফাইলে নয়:
FirebaseMessagingInstallationIdEnabled = YES
মেসেজিং প্রতিনিধি সেট করুন
FID গ্রহণ করার জন্য, মেসেজিং ডেলিগেট প্রোটোকল প্রয়োগ করুন এবং [FIRApp configure] কল করার পর FIRMessaging এর delegate প্রপার্টি সেট করুন। উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশন ডেলিগেট মেসেজিং ডেলিগেট প্রোটোকল মেনে চলে, তাহলে আপনি application:didFinishLaunchingWithOptions: -এ ডেলিগেটটিকে এর নিজের মান হিসেবে সেট করতে পারেন।
সুইফট
Messaging.messaging().delegate = self
উদ্দেশ্য-সি
[FIRMessaging messaging].delegate = self;
didReceiveRegistration পদ্ধতিটি বাস্তবায়ন করুন
রেজিস্ট্রেশন সম্পন্ন হলে FID ব্যবহার করে অ্যাপ ইনস্ট্যান্সগুলোকে টার্গেট করা হয়। রেজিস্ট্রেশনের সময় FID পেতে, messaging:didReceiveRegistration: মেথডটি ইমপ্লিমেন্ট করুন। এই মেথডটি সাধারণত প্রতিবার অ্যাপ চালু হওয়ার সময় FID সহ একবার কল করা হয়। যখন এই মেথডটি কল করা হয়, তখন আপনি নিম্নলিখিত কাজগুলো করতে পারেন:
- আপনি যদি আপনার সার্ভারে FID না পাঠিয়ে থাকেন, অথবা সম্প্রতি FID পাঠিয়ে থাকেন, তাহলে সেটি আপনার অ্যাপ্লিকেশন সার্ভারে পাঠিয়ে দিন।
- সাবস্ক্রিপশনটি নতুন হলে বা ব্যবহারকারী অ্যাপটি পুনরায় ইনস্টল করলে, FID-টিকে টপিকগুলিতে সাবস্ক্রাইব করুন।
সুইফট
func messaging(_ messaging: Messaging, didReceiveRegistration installationId: String?) { print("Firebase Installation ID: \(String(describing: installationId))") // Note: This callback is fired at each app startup. if let installationId = installationId { // Send the Firebase Installation ID to your app server. sendRegistrationToServer(installationId) } }
উদ্দেশ্য-সি
- (void)messaging:(FIRMessaging *)messaging didReceiveRegistration:(nullable NSString *)installationId { NSLog(@"Firebase Installation ID: %@", installationId); // Note: This callback is fired at each app startup. if (installationId != nil) { // Send the Firebase Installation ID to your app server. [self sendRegistrationToServer:installationId]; } }
স্বয়ংক্রিয় প্রারম্ভিকীকরণ নিষ্ক্রিয় থাকলে ম্যানুয়ালি নিবন্ধন করুন।
আপনি যদি অটো-ইনিশিয়ালাইজেশন নিষ্ক্রিয় করে থাকেন, তাহলে অ্যাপ চালু হওয়ার সময় FCM SDK স্বয়ংক্রিয়ভাবে FCM সাথে অ্যাপ ইনস্ট্যান্সটি রেজিস্টার করবে না। রেজিস্ট্রেশন এবং FID ডেলিভারি চালু করার জন্য আপনাকে অবশ্যই অ্যাপ চালু হওয়ার সময় messaging:didReceiveRegistration: মেথডের মাধ্যমে register কল করতে হবে।
সুইফট
// Trigger manual registration if auto-initialization is turned off. Messaging.messaging().register { error in if let error = error { // Handle the error print("Failed registering: \(error)") return } // Registration was successful. FID is delivered through the messaging:didReceiveRegistration: method. print("Successfully registered.") }
উদ্দেশ্য-সি
// Trigger manual registration if auto-initialization is turned off. [[FIRMessaging messaging] registerWithCompletion:^(NSError * _Nullable error) { if (error) { // Handle the error NSLog(@"Failed registering: %@", error); return; } // Registration was successful. FID is delivered through the messaging:didReceiveRegistration: method. NSLog(@"Successfully registered."); }];
Swizzling নিষ্ক্রিয় করা হয়েছে: আপনার APNs টোকেন এবং FID ম্যাপ করা হচ্ছে
আপনি যদি মেথড সুইজলিং নিষ্ক্রিয় করে থাকেন অথবা একটি SwiftUI অ্যাপ তৈরি করেন, তাহলে আপনাকে অবশ্যই আপনার APNs টোকেনকে Firebase Installation ID (FID)-এর সাথে স্পষ্টভাবে ম্যাপ করতে হবে। APNs টোকেনটি পুনরুদ্ধার করতে application(_:didRegisterForRemoteNotificationsWithDeviceToken:) মেথডটি ইমপ্লিমেন্ট করুন, এবং তারপর Messaging এর apnsToken প্রপার্টিটি সেট করুন।
সুইফট
func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { Messaging.messaging().apnsToken = deviceToken }
উদ্দেশ্য-সি
// With "FirebaseAppDelegateProxyEnabled": NO - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { [FIRMessaging messaging].APNSToken = deviceToken; }
একবার FID নিবন্ধিত হয়ে গেলে, সুইজলিং সক্রিয় থাকার সময়ের মতোই একই পদ্ধতি ব্যবহার করে আপনি এটি অ্যাক্সেস করতে এবং রিফ্রেশ ইভেন্ট শুনতে পারবেন।
রেজিস্ট্রেশন টোকেন অ্যাক্সেস করুন
ডিফল্টরূপে, FCM SDK অ্যাপ চালু হওয়ার সময় ক্লায়েন্ট অ্যাপ ইনস্ট্যান্সের জন্য একটি রেজিস্ট্রেশন টোকেন তৈরি করে। APNs ডিভাইস টোকেনের মতোই, এই টোকেনটি আপনাকে আপনার অ্যাপের যেকোনো নির্দিষ্ট ইনস্ট্যান্সে টার্গেটেড নোটিফিকেশন পাঠাতে সাহায্য করে।
যেভাবে অ্যাপল প্ল্যাটফর্মগুলো সাধারণত অ্যাপ চালু হওয়ার সময় একটি APNs ডিভাইস টোকেন প্রদান করে, ঠিক সেভাবেই FCM, FIRMessagingDelegate এর messaging:didReceiveRegistrationToken: মেথডের মাধ্যমে একটি রেজিস্ট্রেশন টোকেন সরবরাহ করে। FCM SDK অ্যাপটি প্রথমবার চালু করার সময় এবং যখনই টোকেনটি আপডেট বা বাতিল করা হয়, তখন একটি নতুন বা বিদ্যমান টোকেন সংগ্রহ করে। সব ক্ষেত্রেই, FCM SDK একটি বৈধ টোকেন দিয়ে messaging:didReceiveRegistrationToken: কল করে।
নিম্নলিখিত ক্ষেত্রে রেজিস্ট্রেশন টোকেন পরিবর্তিত হতে পারে:
- অ্যাপটি একটি নতুন ডিভাইসে পুনরুদ্ধার করা হয়েছে।
- ব্যবহারকারী অ্যাপটি আনইনস্টল/পুনরায় ইনস্টল করে।
- ব্যবহারকারী অ্যাপের ডেটা মুছে ফেলেন।
মেসেজিং প্রতিনিধি সেট করুন
রেজিস্ট্রেশন টোকেন গ্রহণ করার জন্য, মেসেজিং ডেলিগেট প্রোটোকল প্রয়োগ করুন এবং [FIRApp configure] কল করার পরে FIRMessaging এর delegate প্রপার্টি সেট করুন। উদাহরণস্বরূপ, যদি আপনার অ্যাপ্লিকেশন ডেলিগেট মেসেজিং ডেলিগেট প্রোটোকল মেনে চলে, তাহলে আপনি application:didFinishLaunchingWithOptions: -এ ডেলিগেটটিকে নিজেই সেট করতে পারেন।
সুইফট
Messaging.messaging().delegate = self
উদ্দেশ্য-সি
[FIRMessaging messaging].delegate = self;
বর্তমান রেজিস্ট্রেশন টোকেন আনা হচ্ছে
রেজিস্ট্রেশন টোকেন ` messaging:didReceiveRegistrationToken: ` মেথডের মাধ্যমে পাঠানো হয়। রেজিস্ট্রেশন টোকেন সহ অ্যাপ চালু হওয়ার সময় এই মেথডটি সাধারণত একবার কল করা হয়। যখন এই মেথডটি কল করা হয়, তখন নিম্নলিখিত কাজগুলো করার জন্য এটিই আদর্শ সময়:
- রেজিস্ট্রেশন টোকেনটি নতুন হলে, সেটি আপনার অ্যাপ্লিকেশন সার্ভারে পাঠান।
- রেজিস্ট্রেশন টোকেনটি টপিকগুলিতে সাবস্ক্রাইব করুন। এটি শুধুমাত্র নতুন সাবস্ক্রিপশনের জন্য অথবা ব্যবহারকারী অ্যাপটি পুনরায় ইনস্টল করলে প্রয়োজন হয়।
আপনি `token(completion:)` ব্যবহার করে সরাসরি টোকেনটি পুনরুদ্ধার করতে পারেন। কোনোভাবে টোকেন পুনরুদ্ধার ব্যর্থ হলে একটি নন-নাল এরর (non-null error) দেখানো হয়।
সুইফট
Messaging.messaging().token { token, error in if let error = error { print("Error fetching remote FCM registration token: \(error)") } else if let token = token { print("Remote instance ID token: \(token)") } }
উদ্দেশ্য-সি
[[FIRMessaging messaging] tokenWithCompletion:^(NSString * _Nullable token, NSError * _Nullable error) { if (error != nil) { NSLog(@"Error fetching the remote FCM registration token: %@", error); } else { NSLog(@"Remote FCM registration token: %@", token); NSString* message = [NSString stringWithFormat:@"FCM registration token: %@", token]; // display message NSLog(@"%@", message); } }];
টোকেনটি সংরক্ষণ না করে, আপনি যেকোনো সময় এটি অ্যাক্সেস করতে এই পদ্ধতিটি ব্যবহার করতে পারেন।
মনিটর টোকেন রিফ্রেশ
যখনই টোকেন আপডেট করা হবে, তখন বিজ্ঞপ্তি পাওয়ার জন্য মেসেজিং ডেলিগেট প্রোটোকল মেনে একটি ডেলিগেট সরবরাহ করুন। নিম্নলিখিত উদাহরণটি ডেলিগেটটি রেজিস্টার করে এবং উপযুক্ত ডেলিগেট মেথডটি যোগ করে:
সুইফট
func messaging(_ messaging: Messaging, didReceiveRegistrationToken fcmToken: String?) { print("Firebase registration token: \(String(describing: fcmToken))") // TODO: If necessary send token to application server. // Note: This callback is fired at each app startup and whenever a new token is generated. }
উদ্দেশ্য-সি
- (void)messaging:(FIRMessaging *)messaging didReceiveRegistrationToken:(NSString *)fcmToken { NSLog(@"FCM registration token: %@", fcmToken); // Notify about received token. NSDictionary *dataDict = [NSDictionary dictionaryWithObject:fcmToken forKey:@"token"]; [[NSNotificationCenter defaultCenter] postNotificationName: @"FCMToken" object:nil userInfo:dataDict]; // TODO: If necessary send token to application server. // Note: This callback is fired at each app startup and whenever a new token is generated. }
বিকল্পভাবে, ডেলিগেট মেথড সরবরাহ করার পরিবর্তে আপনি kFIRMessagingRegistrationTokenRefreshNotification নামের একটি NSNotification জন্য লিসেন করতে পারেন। টোকেন প্রপার্টিতে সর্বদা বর্তমান টোকেন ভ্যালুটি থাকে।
সুইজলিং নিষ্ক্রিয় করা হয়েছে: আপনার APN টোকেন এবং রেজিস্ট্রেশন টোকেন ম্যাপ করা হচ্ছে
যদি আপনি মেথড সুইজলিং নিষ্ক্রিয় করে থাকেন, অথবা একটি SwiftUI অ্যাপ তৈরি করেন, তাহলে আপনাকে আপনার APNs টোকেনকে FCM রেজিস্ট্রেশন টোকেনের সাথে স্পষ্টভাবে ম্যাপ করতে হবে। APNs টোকেনটি পুনরুদ্ধার করতে application(_:didRegisterForRemoteNotificationsWithDeviceToken:) মেথডটি ইমপ্লিমেন্ট করুন, এবং তারপর Messaging এর apnsToken প্রপার্টিটি সেট করুন:
সুইফট
func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) { Messaging.messaging().apnsToken = deviceToken }
উদ্দেশ্য-সি
// With "FirebaseAppDelegateProxyEnabled": NO - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken { [FIRMessaging messaging].APNSToken = deviceToken; }
FCM রেজিস্ট্রেশন টোকেন তৈরি হয়ে গেলে, আপনি সুইজলিং চালু থাকার সময়ের মতোই একই পদ্ধতি ব্যবহার করে এটি অ্যাক্সেস করতে এবং রিফ্রেশ ইভেন্ট শুনতে পারবেন।
স্বয়ংক্রিয় প্রারম্ভিকীকরণ প্রতিরোধ করুন
যখন একটি FCM রেজিস্ট্রেশন তৈরি করা হয়, তখন লাইব্রেরিটি আইডেন্টিফায়ার এবং কনফিগারেশন ডেটা Firebase-এ আপলোড করে। আপনি যদি প্রথমে ব্যবহারকারীদের কাছ থেকে সুস্পষ্ট অপ্ট-ইন পেতে চান, তাহলে কনফিগার করার সময় FCM নিষ্ক্রিয় করে স্বয়ংক্রিয় রেজিস্ট্রেশন প্রতিরোধ করতে পারেন। এটি করার জন্য, আপনার Info.plist এ (আপনার GoogleService-Info.plist নয়) একটি মেটাডেটা ভ্যালু যোগ করুন:
FirebaseMessagingAutoInitEnabled = NO
FCM পুনরায় সক্রিয় করতে, আপনি একটি রানটাইম কল করতে পারেন:
সুইফট
Messaging.messaging().autoInitEnabled = true
উদ্দেশ্য-সি
[FIRMessaging messaging].autoInitEnabled = YES;
একবার সেট করা হলে, এই মানটি অ্যাপ পুনরায় চালু করার পরেও অপরিবর্তিত থাকে।
নোটিফিকেশন সার্ভিস এক্সটেনশন সেট আপ করুন
অ্যাপল ডিভাইসে ছবিসহ নোটিফিকেশন পাঠাতে হলে, আপনাকে একটি নোটিফিকেশন সার্ভিস এক্সটেনশন যোগ করতে হবে। এই এক্সটেনশনটি ডিভাইসগুলোকে নোটিফিকেশন পেলোডে পাঠানো ছবি প্রদর্শন করতে দেয়। যদি আপনি নোটিফিকেশনে ছবি পাঠানোর পরিকল্পনা না করেন, তবে এই ধাপটি বাদ দিতে পারেন।
একটি সার্ভিস এক্সটেনশন যোগ করতে, APNs-এ নোটিফিকেশন পরিবর্তন ও প্রদর্শনের জন্য প্রয়োজনীয় সেটআপ কাজগুলো সম্পন্ন করুন, এবং তারপর NotificationService.m এ FCM এক্সটেনশন হেল্পার API যোগ করুন। বিশেষভাবে, self.contentHandler(self.bestAttemptContent); দিয়ে কলব্যাকটি সম্পূর্ণ করার পরিবর্তে, দেখানো অনুযায়ী FIRMessaging extensionHelper দিয়ে এটি সম্পূর্ণ করুন:
@interface NotificationService () <NSURLSessionDelegate>
@property(nonatomic) void (^contentHandler)(UNNotificationContent *contentToDeliver);
@property(nonatomic) UNMutableNotificationContent *bestAttemptContent;
@end
@implementation NotificationService
- (void)didReceiveNotificationRequest:(UNNotificationRequest *)request withContentHandler:(void (^)(UNNotificationContent * _Nonnull))contentHandler {
self.contentHandler = contentHandler;
self.bestAttemptContent = [request.content mutableCopy];
// Modify the notification content here as you want
self.bestAttemptContent.title = [NSString stringWithFormat:@"%@ [modified]",
self.bestAttemptContent.title];
// Call FIRMessaging extension helper API.
[[FIRMessaging extensionHelper] populateNotificationContent:self.bestAttemptContent
withContentHandler:contentHandler];
}
...
একটি বিজ্ঞপ্তি বার্তা পাঠান
টার্গেট ডিভাইসে অ্যাপটি ইনস্টল করে চালান। অ্যাপল ডিভাইসে, রিমোট নোটিফিকেশন পাওয়ার অনুমতির অনুরোধটি গ্রহণ করুন।
অ্যাপটি ডিভাইসে ব্যাকগ্রাউন্ডে চালু আছে কিনা তা যাচাই করুন।
Firebase কনসোলে, DevOps & Engagement > Messaging- এ যান।
একটি প্রচারাভিযান তৈরি করুন।
এটি যদি আপনার প্রথম বার্তা হয়:
আপনার প্রথম প্রচারাভিযান তৈরি করুন নির্বাচন করুন।
Firebase নোটিফিকেশন বার্তাগুলি নির্বাচন করুন এবং তৈরি করুন নির্বাচন করুন।
আপনি যদি পূর্বে ক্যাম্পেইন তৈরি করে থাকেন:
ক্যাম্পেইন ট্যাবে, নতুন ক্যাম্পেইন নির্বাচন করুন।
নোটিফিকেশন- এ ক্লিক করুন।
বার্তার লেখাটি লিখুন।
ডান দিকের প্যানেল থেকে ‘Send test message’ নির্বাচন করুন।
‘Add a Firebase Installation ID or FCM registration token’ লেবেলযুক্ত ফিল্ডে আপনার রেজিস্ট্রেশন টোকেনটি প্রবেশ করান।
পরীক্ষা নির্বাচন করুন।
আপনি ‘টেস্ট’ নির্বাচন করার পর, ব্যাকগ্রাউন্ডে অ্যাপটি চালু থাকা অবস্থায় নির্দিষ্ট ক্লায়েন্ট ডিভাইসটিতে নোটিফিকেশনটি চলে আসবে।
আপনার অ্যাপে মেসেজ ডেলিভারি সম্পর্কে বিস্তারিত জানতে, Firebase কনসোলের DevOps & Engagement > Messaging > Reports ড্যাশবোর্ডে যান। এই ড্যাশবোর্ডটি Apple এবং Android ডিভাইসে পাঠানো ও খোলা মেসেজের সংখ্যা রেকর্ড করে, সাথে Android অ্যাপের জন্য 'ইম্প্রেশন' (ব্যবহারকারীদের দেখা নোটিফিকেশন)-এর ডেটাও থাকে।
পরবর্তী পদক্ষেপ
সেটআপ ধাপগুলো সম্পন্ন করার পর, অ্যাপল প্ল্যাটফর্মের জন্য FCM নিয়ে এগিয়ে যাওয়ার কয়েকটি বিকল্প নিচে দেওয়া হলো: