प्रकाशित करें/सदस्यता लें मॉडल के आधार पर, FCM विषय संदेश सेवा आपको ऐसे एकाधिक डिवाइस पर संदेश भेजने की सुविधा देती है जिन्होंने किसी विशेष विषय के लिए ऑप्ट इन किया है. ज़रूरत के हिसाब से विषय के मैसेज लिखे जाते हैं और FCM, मैसेज को सही डिवाइसों पर भेजने और उसे रूट करने की प्रोसेस को मैनेज करता है.
उदाहरण के लिए, ज्वार के अनुमान का स्थानीय ऐप्लिकेशन इस्तेमाल करने वाले लोग, "ज्वार की जानकारी देने वाली चेतावनियां" विषय के लिए ऑप्ट इन कर सकते हैं. इससे उन्हें तय किए गए इलाकों में, समुद्र में मछली पकड़ने के लिए सबसे सही समय की सूचनाएं मिल सकती हैं. किसी स्पोर्ट्स ऐप्लिकेशन के उपयोगकर्ता, अपनी पसंदीदा टीमों के लिए, लाइव गेम के स्कोर के अपने-आप अपडेट होने की सुविधा की सदस्यता ले सकते हैं.
विषयों के बारे में ध्यान में रखने वाली कुछ बातें:
किसी विषय के बारे में मैसेज भेजना, मौसम या सार्वजनिक तौर पर उपलब्ध अन्य जानकारी के लिए सबसे अच्छा विकल्प है.
विषय के हिसाब से मैसेज, इंतज़ार के समय के बजाय, थ्रुपुट के लिए ऑप्टिमाइज़ किए जाते हैं. एक डिवाइस या डिवाइसों के छोटे ग्रुप पर तेज़ और सुरक्षित डिलीवरी के लिए, मैसेज को रजिस्टरेशन टोकन पर टारगेट करें, न कि विषयों पर.
अगर आपको हर उपयोगकर्ता के एक से ज़्यादा डिवाइसों पर मैसेज भेजने हैं, तो उन इस्तेमाल के उदाहरणों के लिए, डिवाइस ग्रुप मैसेजिंग का इस्तेमाल करें.
विषय के हिसाब से मैसेज सेवा क�� मदद से, हर विषय के लिए अनलिमिटेड सदस्यताएं ली जा सकती हैं. हालांकि, FCM इन मामलों में सीमाएं लागू करता है:
- एक ऐप्लिकेशन इंस्टेंस के लिए, 2,000 से ज़्यादा विषयों की सदस्यता नहीं ली जा सकती.
- अगर ऐप्लिकेशन इंस्टेंस की सदस्यता लेने के लिए, बैच इंपोर्ट का इस्तेमाल किया जा रहा है, तो हर अनुरोध में 1,000 ऐप्लिकेशन इंस्टेंस ही जोड़े जा सकते हैं.
- हर प्रोजेक्ट के लिए, नई सदस्यताओं की संख्या सीमित होती है. अगर कम समय में सदस्यता के लिए बहुत ज़्यादा अनुरोध भेजे जाते हैं, तो FCM सर्वर
429 RESOURCE_EXHAUSTED
("कोटा पूरा हो गया है") के साथ जवाब देंगे. एक्स्पोनेंशियल बैकऑफ़ के साथ फिर से कोशिश करें.
क्लाइंट ऐप्लिकेशन को किसी विषय की सदस्यता देना
क्लाइंट ऐप्लिकेशन किसी भी मौजूदा विषय की सदस्यता ले सकते हैं या वे नया विषय बना सकते हैं. जब कोई क्लाइंट ऐप्लिकेशन किसी नए विषय के नाम की सदस्यता लेता है (जो आपके Firebase प्रोजेक्ट के लिए पहले से मौजूद नहीं है), तो FCM में उस नाम का एक नया विषय बन जाता है. इसके बाद, कोई भी क्लाइंट उस विषय की सदस्यता ले सकता है.
किसी विषय की सदस्यता लेने के लिए, subscribeToTopic()
को उस विषय का नाम बताएं. यह तरीका, Future
दिखाता है. यह तब दिखता है, जब सदस्यता लेने की प्रोसेस पूरी हो जाती है:
await FirebaseMessaging.instance.subscribeToTopic("topic");
सदस्यता छोड़ने के लिए, विषय के नाम के साथ unsubscribeFromTopic()
को कॉ��� करें.
subscribeToTopic()
और unsubscribeFromTopic()
, वेब क्लाइंट के लिए काम नहीं करते. वेब पर उपयोगकर्ताओं की सदस्यताओं को मैनेज करने का तरीका जानने के लिए, वेब/JavaScript पर विषयों को मैसेज भेजना लेख पढ़ें.
अगले चरण
- विषय के हिसाब से मैसेज भेजने का तरीका जानें.
- सर्वर पर विषय की सदस्यताएं मैनेज करने का तरीका जानें.