एक नॉन-कोलैप्सिबल मैसेज का मतलब है कि हर मैसेज, डिवाइस पर डिलीवर किया जाता है. नॉन-कोलैप्सिबल मैसेज में काम का कॉन्टेंट होता है. वहीं, कोलैप्सिबल मैसेज, सर्वर से डेटा फ़ेच करने के लिए, मोबाइल ऐप्लिकेशन को कॉन्टेंट-फ़्री "पिंग" की तरह होता है.
नॉन-कोलैप्सिबल मैसेज के कुछ सामान्य इस्तेमाल के उदाहरण, चैट मैसेज या ज़रूरी मैसेज हैं. Android के लिए, 100 मैसेज तक को कोलैप्स किए बिना सेव किया जा सकता है. अगर यह सीमा पूरी हो जाती है, तो सेव किए गए सभी मैसेज हटा दिए जाते हैं. जब डिवाइस फिर से ऑनलाइन होता है, तो उसे एक खास मैसेज मिलता है. इससे पता चलता है कि सीमा पूरी हो गई थी. इसके बाद, ऐप्लिकेशन आम तौर पर ऐप्लिकेशन सर्वर से पूरा सिंक करने का अनुरोध करके, इस स्थिति को हैंडल कर सकता है.
एक कोलैप्सिबल मैसेज ऐसा मैसेज होता है जिसे डिवाइस पर डिलीवर न किए जाने पर, नए मैसेज से बदला जा सकता है.
कोलैप्सिबल मैसेज के इस्तेमाल का एक सामान्य उदाहरण: मोबाइल ऐप्लिकेशन को सर्वर से डेटा सिंक करने के लिए इस्तेमाल किए जाने वाले मैसेज. उदाहरण के लिए, कोई स्पोर्ट्स ऐप्लिकेशन उपयोगकर्ताओं को स्कोर की नई जानकारी देता है. सिर्फ़ सबसे नया मैसेज काम का होता है.
Android पर किसी मैसेज को कोलैप्सिबल के तौर पर मार्क करने के लिए, मैसेज के पेलोड में
collapse_key पैरामीटर शामिल करें. डिफ़ॉल्ट रूप से, कोलैप्स की, ऐप्लिकेशन पैकेज का नाम होता है
जो Firebase कंसोल में रजिस्टर किया गया है. FCM सर्वर, हर डिवाइस के लिए एक साथ चार अलग-अलग कोलैप्सिबल मैसेज सेव कर सकता है.
इनमें से हर मैसेज के लिए, अलग-अलग कोलैप्स की होती है. अगर यह संख्या पार हो जाती है,
FCM सिर्फ़ चार कोलैप्स की सेव करता है. हालांकि, यह तय करने का कोई तरीका नहीं है कि कौनसी की सेव की जाएंगी.
पेलोड के बिना वाले विषय के मैसेज, डिफ़ॉल्ट रूप से कोलैप्सिबल होते हैं. सूचना वाले मैसेज हमेशा कोलैप्सिबल होते हैं और वे collapse_key पैरामीटर को अनदेखा करेंगे.
मुझे किसका इस्तेमाल करना चाहिए?
परफ़ॉर्मेंस के हिसाब से, कोलैप्सिबल मैसेज बेहतर विकल्प होते हैं. हालांकि, यह तब लागू होता है, जब आपके ऐप्लिकेशन को नॉन-कोलैप्सेबल मैसेज इस्तेमाल करने की ज़रूरत न हो. हालांकि, अगर कोलैप्सिबल मैसेज का इस्तेमाल किया जाता है, तो ध्यान रखें कि FCM रजिस्ट्रेशन टोकन के हिसाब से, किसी भी समय ज़्यादा से ज़्यादा चार अलग-अलग कोलैप्स की इस्तेमाल करने की अनुमति देता है.FCM
| इस्तेमाल का उदाहरण | मैसेज भेजने का तरीका | |
|---|---|---|
| नॉन-कोलैप्सिबल | क्लाइंट ऐप्लिकेशन के लिए हर मैसेज ज़रूरी होता है और उसे डिलीवर किया जाना चाहिए. | सूचना वाले मैसेज को छोड़कर, सभी मैसेज डिफ़ॉल्ट रूप से नॉन-कोलैप्सिबल होते हैं. |
| कोलैप्सिबल | जब कोई नया मैसेज आता है, तो FCM पुराने और उससे जुड़े मैसेज को बदल देता है. ऐसा तब होता है, जब पुराना मैसेज क्लाइंट ऐप्लिकेशन के लिए काम का नहीं रह जाता. उदाहरण के लिए: सूचना वाले पुराने मैसेज. | मैसेज के अनुरोध में, सही पैरामीटर सेट करें:
|