Firebase ক্লাউড মেসেজিং ব্যবহার করে বার্তা গ্রহণ করুন

এই নির্দেশিকাটি বর্ণনা করে কিভাবে আপনার মোবাইল এবং ওয়েব ক্লায়েন্ট অ্যাপগুলিতে Firebase Cloud Messaging সেট আপ করবেন যাতে আপনি নির্ভরযোগ্যভাবে বার্তা গ্রহণ করতে পারেন।

বার্তা গ্রহণের জন্য, আপনার অ্যাপটিকে Firebase.Messaging.FirebaseMessaging.MessageReceived ইভেন্ট হ্যান্ডলারে একটি কলব্যাক বরাদ্দ করতে হবে।

MessageReceived ইভেন্ট

Firebase.Messaging.FirebaseMessaging.MessageReceived এ কলব্যাক বরাদ্দ করার মাধ্যমে আপনি প্রাপ্ত বার্তার উপর ভিত্তি করে ক্রিয়া সম্পাদন করতে পারেন এবং বার্তার ডেটা পেতে পারেন:

public void OnMessageReceived(object sender, Firebase.Messaging.MessageReceivedEventArgs e) {
  UnityEngine.Debug.Log("From: " + e.Message.From);
  UnityEngine.Debug.Log("Message ID: " + e.Message.MessageId);
}

বার্তা বিভিন্ন ধরণের ইনকামিং ডেটা উপস্থাপন করতে পারে। সাধারণত, ডেভেলপার দ্বারা শুরু করার পরে অ্যাপে বার্তা পাঠানো হয়। বার্তা পাঠানো ইভেন্ট, বার্তা পাঠানো ত্রুটি ইভেন্ট এবং বার্তা মুছে ফেলা ইভেন্টগুলি উপস্থাপন করার জন্য আপনার অ্যাপে বার্তা পাঠানো হয়। Message::message_type ক্ষেত্রটি পরীক্ষা করে এই বিশেষ ইভেন্টগুলিকে আলাদা করা যেতে পারে।

বার্তা মুছে ফেলা হয়েছে

FCM সার্ভার যখন মুলতুবি থাকা বার্তাগুলি মুছে ফেলে তখন আপনার অ্যাপে পাঠানো হয়। Message::message_type "deleted_messages" হবে। নিম্নলিখিত কারণে বার্তাগুলি মুছে ফেলা হতে পারে:

  1. FCM সার্ভারে অনেক বেশি বার্তা সংরক্ষিত।

    এটি তখন ঘটতে পারে যখন কোনও অ্যাপের সার্ভার ডিভাইসটি অফলাইনে থাকাকালীন FCM সার্ভারগুলিতে একগুচ্ছ নন-কোলাপসিবল বার্তা পাঠায়।

  2. ডিভাইসটি অনেক দিন ধরে সংযুক্ত নেই এবং অ্যাপ সার্ভার সম্প্রতি (গত ৪ সপ্তাহের মধ্যে) সেই ডিভাইসের অ্যাপটিতে একটি বার্তা পাঠিয়েছে।

    এই কলটি পাওয়ার পর অ্যাপটিকে অ্যাপ সার্ভারের সাথে সম্পূর্ণ সিঙ্ক করার পরামর্শ দেওয়া হচ্ছে।

ইভেন্ট পাঠান

FCM এ একটি আপস্ট্রিম বার্তা সফলভাবে পাঠানো হলে কল করা হয়। MessageType হবে "send_event"

পাঠানোর ত্রুটি

আপস্ট্রিম বার্তা পাঠানোর সময় কোনও ত্রুটি হলে কল করা হয়েছিল। MessageType হবে "send_error"