डिवाइस ग्रुप मैसेज सेवा की मदद से, एक ही ग्रुप में कई डिवाइस जोड़े जा सकते हैं. यह टॉपिक मैसेज की तरह है. हालांकि, इसमें पुष्टि करने की सुविधा शामिल होती है कि ग्रुप की सदस्यता को सिर्फ़ आपके सर्वर मैनेज करते हैं. उदाहरण के लिए, अगर आपको अलग-अलग फ़ोन मॉडल पर अलग-अलग मैसेज भेजने की अनुमति दें, तो आपके सर्वर जोड़े/हटा सकते हैं को ग्रुप में रजिस्टर करना होगा और हर ग्रुप को सही मैसेज भेजना होगा ग्रुप. डिवाइस ग्रुप मैसेज, टॉपिक मैसेज सेवा से अलग है डिवाइस ग्रुप को सीधे अपने सर्वर से मैनेज करने के बजाय, का इस्तेमाल करें.
सूचना कुंजी वाले सदस्यों की संख्या ज़्यादा से ज़्यादा 20 हो सकती है.
डिवाइस ग्रुप मैनेज करना
किसी डिवाइस ग्रुप को मैसेज भेजने से पहले, ज़रूरी है कि:
-
हर उस डिवाइस के लिए रजिस्ट्रेशन टोकन पाएं जिसे आपको जोड़ना है ग्रुप को भेज सकते हैं.
-
notification_key
बनाएं. इससे, किसी ग्रुप को मैप करके, डिवाइस ग्रुप (आम तौर पर उपयोगकर्ता) के तौर पर शामिल करना होगा. ऐप्लिकेशन सर्वर पर सूचना कुंजियां बनाई जा सकती हैं.
डिवाइस ग्रुप का बुनियादी मैनेजमेंट — ग्रुप बनाना और हटाना, डिवाइसों को जोड़ने या हटाने के लिए, एचटीटीपी v1 API का इस्तेमाल किया जाता है, सीमित समय तक चलने वाले टोकन का इस्तेमाल करके अनुरोध भेजने की अनुमति देना. देखें इस्तेमाल की जा सकने वाली कुंजियों की सूची के लिए, डिवाइस ग्रुप मैनेजमेंट कुंजियां.
ऐप्लिकेशन सर्वर पर डिवाइस ग्रुप मैनेज करना
डिवाइस ग्रुप बनाया जा रहा है
डिवाइस ग्रुप बनाने के लिए, नाम के साथ पोस्ट करने का अनुरोध भेजें
और डिवाइसों के लिए रजिस्ट्रेशन टोकन की सूची भी मिलेगी.
FCM, जवाब के तौर पर नया notification_key
दिखाता है
जो डिवाइस ग्रुप के बारे में बताता है.
एचटीटीपी पोस्ट अनुरोध
इसे नीचे दिया गया अनुरोध भेजें
https://fcm.googleapis.com/fcm/notification
:
https://fcm.googleapis.com/fcm/notification Content-Type:application/json access_token_auth: true Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA project_id:SENDER_ID { "operation": "create", "notification_key_name": "appUser-Chris", "registration_ids": ["bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...", "cR1rjyj4_Kc:APA91bGusqbypSuMdsh7jSNrW4nzsM...", ... ]
notification_key_name
एक नाम या आइडेंटिफ़ायर है
(उदाहरण के लिए, यह कोई उपयोगकर्ता नाम हो सकता है) जो किसी दिए गए ग्रुप के लिए यूनीक हो. कॉन्टेंट बनाने
notification_key_name
और
रजिस्ट्रेशन के ग्रुप के लिए, notification_key
यूनीक हैं
टोकन. यह ज़रूरी है कि notification_key_name
हर क्लाइंट ऐप्लिकेशन के लिए अलग होगा, अगर आपके पास एक ही
भेजने वाले का आईडी.
इससे यह पक्का होता है कि मैसेज सिर्फ़ टारगेट किए गए ऐप्लिकेशन पर जाएंगे.
जवाब का फ़ॉर्मैट
अनुरोध स्वीकार किए जाने पर, notification_key
लाइक मिलता है
निम्न:
{ "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ" }
notification_key
और उससे जुड़ी जानकारी को सेव करें
बाद की कार्रवाइयों में इस्तेमाल करने के लिए notification_key_name
.
सूचना कुंजी पुनर्प्राप्त करना
अगर आपको मौजूदा सूचना कुंजी को वापस पाना है, तो
जीईटी अनुरोध में notification_key_name
की जानकारी नीचे दी गई है:
https://fcm.googleapis.com/fcm/notification?notification_key_name=appUser-Chris Content-Type:application/json access_token_auth: true Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA project_id:SENDER_ID {}
सूचना की किसी कुंजी के नाम के लिए, हर जीईटी अनुरोध के लिए, सर्वर कोड में बदली गई यूनीक स्ट्रिंग दिखाता है. हालांकि, हर स्ट्रिंग कोई दूसरी कुंजी है, तो यह असल में एक मान्य `सूचना_की` वैल्यू है.
डिवाइस ग्रुप में डिवाइसों को जोड़ना और हटाना
किसी मौजूदा ग्रुप में डिवाइसों को जोड़ने या हटाने के लिए, पोस्ट भेजें
operation
पैरामीटर वाला अनुरोध इस पर सेट किया गया
add
या remove
से संपर्क करना होगा और
जोड़ने या हटाने के लिए रजिस्ट्रेशन टोकन.
एचटीटीपी पोस्ट अनुरोध
उदाहरण के लिए,
रजिस्ट्रेशन टोकन वाला डिवाइस bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...
appUser-Chris
को, आप यह अनुरोध भेजना होगा:
{
"operation": "add",
"notification_key_name": "appUser-Chris",
"notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ",
"registration_ids": ["bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1..."]
}
जवाब का फ़ॉर्मैट
किसी डिवाइस को जोड़ने या हटाने का सफल अनुरोध,
notification_key
को निम्न पसंद है:
{ "notification_key": "APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ" }अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है
डिवाइस ग्रुप मैनेज करने की कुंजियां
डिवाइस ग्रुप बनाने के लिए कुंजियों की सूची नीचे दी गई टेबल में दी गई है सदस्यों को जोड़ना और हटाना.
टेबल 10. डिवाइस ग्रुप मैनेज करने की कुंजियां.
पैरामीटर | इस्तेमाल किए जाने से जुड़ी जानकारी | ब्यौरा |
---|---|---|
operation |
ज़रूरी स्ट्रिंग | रन करने की कार्रवाई.मान्य वैल्यू create हैं,
add और remove . |
notification_key_name |
ज़रूरी स्ट्रिंग | डिवाइस ग्रुप बनाने या उसमें बदलाव करने के लिए, उपयोगकर्ता का तय किया गया नाम. |
notification_key |
ज़रूरी है (create ऑपरेशन, स्ट्रिंग को छोड़कर |
डिवाइस ग्रुप का यूनीक आइडेंटिफ़ायर. यह मान
create हो जाने पर रिस्पॉन्स के तौर पर मिला है
कार्रवाई होती है और
डिवाइस ग्रुप पर बाद की सभी कार्रवाइयों के लिए ज़रूरी है. |
registration_ids |
स्ट्रिंग का कलेक्शन ज़रूरी है | जोड़ने या हटाने के लिए, डिवाइस के टोकन. यदि आप मौजूदा सभी को किसी डिवाइस ग्रुप से रजिस्ट्रेशन टोकन इस्तेमाल करने पर, FCM डिवाइस ग्रुप को मिटा देता है. |
डिवाइस ग्रुप को डाउनस्ट्रीम मैसेज भेजे जा रहे हैं
डिवाइस ग्रुप को मैसेज भेजने के लिए, एचटीटीपी v1 एपीआई का इस्तेमाल करें. अगर आप वर्तमान में के लिए काम न करने वाले लीगेसी 'भेजें एपीआई' का इस्तेमाल करके डिवाइस समूहों को भेजना HTTP या XMPP, या कोई भी पुराना वर्शन Node.js के लिए Firebase Admin SDK के हिसाब से फ़िल्टर किया गया है, तो हमारा सुझाव है कि आप एचटीटीपी v1 एपीआई पर माइग्रेट करें जल्द से जल्द. लेगसी 'भेजें' एपीआई इसे जून 2024 में बंद कर दिया जाएगा और हटा दिया जाएगा.
किसी डिवाइस ग्रुप को मैसेज भेजना, किसी डिवाइस ग्रुप को मैसेज भेजने जैसा है
उसी तरीके से
अनुरोध भेजने की अनुमति देना. token
को सेट करें
फ़ील्ड को ग्रुप सूचना कुंजी के तौर पर जोड़ें:
REST
POST https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send HTTP/1.1
Content-Type: application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
{
"message":{
"token":"APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ",
"data":{
"hello": "This is a Firebase Cloud Messaging device group message!"
}
}
}
cURL निर्देश
curl -X POST -H "Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA" -H "Content-Type: application/json" -d '{
"message":{
"data":{
"hello": "This is a Firebase Cloud Messaging device group message!"
},
"token":"APA91bGHXQBB...9QgnYOEURwm0I3lmyqzk2TXQ"
}}' https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send