इस दस्तावेज़ में, XMPP सिंटैक्स का रेफ़रंस दिया गया है. इसका इस्तेमाल, आपके ऐप्लिकेशन सर्वर, क्लाइंट ऐप्लिकेशन, और Firebase Cloud Messaging (FCM) के बीच मैसेज भेजने के लिए किया जाता है. आपका ऐप्लिकेशन सर्वर, इन एंडपॉइंट से कनेक्ट होना चाहिए:
// Production fcm-xmpp.googleapis.com:5235 // Testing fcm-xmpp.googleapis.com:5236
उपलब्ध पैरामीटर और विकल्प इन कैटगरी में आते हैं:
- डाउनस्ट्रीम मैसेज का सिंटैक्स
- डाउनस्ट्रीम मैसेज से जुड़ी गड़बड़ी के रिस्पॉन्स कोड
- अपस्ट्रीम मैसेज का सिंटैक्स
- FCM कंट्रोल मैसेज
डाउनस्ट्रीम मैसेज का सिंटैक्स
इस सेक्शन में, डाउनस्ट्रीम मैसेज भेजने के लिए सिंटैक्स दिया गया है.
डाउनस्ट्रीम XMPP मैसेज (JSON)
नीचे दी गई टेबल में, XMPP JSON मैसेज के लिए टारगेट, विकल्प, और पेलोड की सूची दी गई है.
पैरामीटर | इस्तेमाल | ब्यौरा | |
---|---|---|---|
टारगेट | |||
to |
ज़रूरी नहीं, स्ट्रिंग |
इस पैरामीटर से, मैसेज पाने वाले के बारे में पता चलता है.
यह वैल्यू, डिवाइस का रजिस्ट्रेशन टोकन, डिवाइस ग्रुप की
सूचना कुंजी या कोई एक विषय हो सकता है जिसकी शुरुआत में
|
|
condition |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर, शर्तों के लॉजिकल एक्सप्रेशन के बारे में बताता है. इससे मैसेज के टारगेट का पता चलता है. काम करने वाली शर्त: विषय, जिसे "विषयों में 'yourTopic'" के तौर पर फ़ॉर्मैट किया गया हो. यह वैल्यू, केस-इनसेंसिटिव होती है. इस्तेमाल किए जा सकने वाले ऑपरेटर: |
|
विकल्प | |||
message_id |
ज़रूरी है, स्ट्रिंग | यह पैरामीटर, XMPP कनेक्शन में किसी मैसेज की खास पहचान करता है. |
|
collapse_key |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर, मैसेज के ऐसे ग्रुप की पहचान करता है (जैसे, इस बात की कोई गारंटी नहीं है कि मैसेज किस क्रम में भेजे जाएंगे. ध्यान दें: एक समय में ज़्यादा से ज़्यादा चार अलग-अलग छोटा करने वाले बटन की अनुमति है. इसका मतलब है कि FCM, हर क्लाइंट ऐप्लिकेशन के लिए एक साथ चार अलग-अलग मैसेज सेव कर सकता है. अगर इस संख्या से ज़्यादा मैसेज सेव किए जाते हैं, तो इस बात की कोई गारंटी नहीं है कि FCM कौनसी चार कॉलप्स बटन की जानकारी सेव करेगा. |
|
priority |
ज़रूरी नहीं, स्ट्रिंग | मैसेज की प्राथमिकता सेट करता है. मान्य वैल्यू "सामान्य" और "ज़्यादा" हैं. Apple प्लैटफ़ॉर्म पर, ये एपीएन की प्राथमिकता 5 और 10 के मुताबिक होते हैं. डिफ़ॉल्ट रूप से, सूचना वाले मैसेज ज़्यादा प्राथमिकता पर भेजे जाते हैं और डेटा मैसेज सामान्य प्राथमिकता पर भेजे जाते हैं. सामान्य प्राथमिकता से, क्लाइंट ऐप्लिकेशन की बैटरी खपत को ऑप्टिमाइज़ किया जाता है. इसका इस्तेमाल तब तक किया जाना चाहिए, जब तक कि डेटा को तुरंत डिलीवर करने की ज़रूरत न हो. सामान्य प्राथमिकता वाले मैसेज के लिए, ऐप्लिकेशन को मैसेज मिलने में तय समय से ज़्यादा समय लग सकता है. जब किसी मैसेज को ज़्यादा प्राथमिकता के साथ भेजा जाता है, तो उसे तुरंत भेजा जाता है. इसके बाद, ऐप्लिकेशन सूचना दिखा सकता है. |
|
content_available |
ज़रूरी नहीं, बूलियन | Apple के प्लैटफ़ॉर्म पर, APNs
पेलोड में |
|
mutable_content |
ज़रूरी नहीं, JSON बूलियन | Apple के प्लैटफ़ॉर्म पर, APNs पेलोड में |
|
time_to_live |
ज़रूरी नहीं, संख्या | इस पैरामीटर से पता चलता है कि डिवाइस के ऑफ़लाइन होने पर, मैसेज को FCM के स्टोरेज में कितने समय (सेकंड में) तक रखा जाना चाहिए. लाइव स्ट्रीम में ज़्यादा से ज़्यादा चार हफ़्ते लग सकते हैं. डिफ़ॉल्ट रूप से, इसकी अवधि चार हफ़्ते होती है. ज़्यादा जानकारी के लिए, मैसेज की अवधि तय करना देखें. |
|
dry_run |
ज़रूरी नहीं, बूलियन | इस पैरामीटर को डिफ़ॉल्ट वैल्यू |
|
पेलोड | |||
data |
ज़रूरी नहीं, ऑब्जेक्ट | यह पैरामीटर मैसेज के पेलोड के की-वैल्यू पेयर को तय करता है. उदाहरण के लिए, Apple प्लैटफ़ॉर्म पर, अगर मैसेज APNs से डिलीवर किया जाता है, तो यह कस्टम डेटा फ़ील्ड दिखाता है. अगर इसे FCM डिलीवर करता है, तो इसे Android पर, इससे कुंजी कोई रिज़र्व शब्द ("from", "message_type" या "google" या "gcm" से शुरू होने वाला कोई भी शब्द नहीं होना चाहिए). इस टेबल में दिए गए किसी भी शब्द (जैसे कि हमारा सुझाव है कि स्ट्रिंग टाइप की वैल्यू दें. आपको ऑब्जेक्ट या स्ट्रिंग के अलावा किसी दूसरे डेटा टाइप (जैसे, इंटेजर या बूलियन) की वैल्यू को स्ट्रिंग में बदलना होगा. |
|
notification |
ज़रूरी नहीं, ऑब्जेक्ट | यह पैरामीटर, सूचना के पैल्यऑड के लिए पहले से तय किए गए, उपयोगकर्ता को दिखने वाले की-वैल्यू पेयर की जानकारी देता है. ज़्यादा जानकारी के लिए, सूचना पेलोड से जुड़ी सहायता देखें. सूचना मैसेज और डेटा मैसेज के विकल्पों के बारे में ज़्यादा जानकारी के लिए,
मैसेज के टाइप देखें. अगर कोई सूचना पेलोड दिया गया है या Apple डिवाइस पर मैसेज भेजने के लिए, content_available विकल्प को true पर सेट किया गया है, तो मैसेज एपीएन के ज़रिए भेजा जाता है. ऐसा न होने पर, मैसेज FCM के ज़रिए भेजा जाता है.
|
सूचना पेलोड के लिए सहायता
नीचे दी गई टेबल में, Apple प्लैटफ़ॉर्म और Android के लिए सूचना वाले मैसेज बनाने के लिए, पहले से तय की गई कुंजियों की सूची दी गई है.
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
title |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का टाइटल. यह फ़ील्ड, फ़ोन और टैबलेट पर नहीं दिखता. |
body |
ज़रूरी नहीं, स्ट्रिंग |
सूचना के मुख्य हिस्से का टेक्स्ट. |
sound |
ज़रूरी नहीं, स्ट्रिंग |
डिवाइस को सूचना मिलने पर चलने वाली आवाज़.
क्लाइंट ऐप्लिकेशन के मुख्य बंडल या ऐप्लिकेशन के डेटा कंटेनर के
|
badge |
ज़रूरी नहीं, स्ट्रिंग |
होम स्क्रीन पर ऐप्लिकेशन आइकॉन पर मौजूद बैज की वैल्यू. अगर इसके बारे में नहीं बताया गया है, तो बैज में कोई बदलाव नहीं होता.
अगर इस बैज को |
click_action |
ज़रूरी नहीं, स्ट्रिंग |
सूचना पर क्लिक करने से जुड़ी उपयोगकर्ता की कार्रवाई.
यह APNs पेलोड में |
subtitle |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का सबटाइटल. |
body_loc_key |
ज़रूरी नहीं, स्ट्रिंग |
ऐप्लिकेशन के स्ट्रिंग संसाधनों में मौजूद मुख्य स्ट्रिंग, जिसका इस्तेमाल मुख्य टेक्स्ट को उपयोगकर्ता की मौजूदा स्थानीय भाषा में अनुवाद करने के लिए किया जाता है.
यह APNs पेलोड में ज़्यादा जानकारी के लिए, पेलोड कुंजी का रेफ़रंस और रिमोट सूचनाओं के कॉन्टेंट को स्थानीय भाषा में उपलब्ध कराना देखें. |
body_loc_args |
ज़रूरी नहीं, JSON कलेक्शन को स्ट्रिंग के तौर पर |
वैरिएबल स्ट्रिंग की वैल्यू,
यह APNs पेलोड में ज़्यादा जानकारी के लिए, पेलोड कुंजी का रेफ़रंस और रिमोट सूचनाओं के कॉन्टेंट को स्थानीय भाषा में उपलब्ध कराना देखें. |
title_loc_key |
ज़रूरी नहीं, स्ट्रिंग |
ऐप्लिकेशन के स्ट्रिंग संसाधनों में मौजूद टाइटल स्ट्रिंग की कुंजी, जिसका इस्तेमाल करके टाइटल टेक्स्ट को उपयोगकर्ता के मौजूदा स्थानीय भाषा में बदला जा सकता है.
यह APNs पेलोड में ज़्यादा जानकारी के लिए, पेलोड कुंजी का रेफ़रंस और रिमोट सूचनाओं के कॉन्टेंट को स्थानीय भाषा में उपलब्ध कराना देखें. |
title_loc_args |
ज़रूरी नहीं, JSON कलेक्शन को स्ट्रिंग के तौर पर |
यह APNs पेलोड में ज़्यादा जानकारी के लिए, पेलोड कुंजी का रेफ़रंस और रिमोट सूचनाओं के कॉन्टेंट को स्थानीय भाषा में उपलब्ध कराना देखें. |
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
title |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का टाइटल. |
body |
ज़रूरी नहीं, स्ट्रिंग |
सूचना के मुख्य हिस्से का टेक्स्ट. |
android_channel_id |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का चैनल आईडी (Android O में नया). इस चैनल आईडी की कोई भी सूचना मिलने से पहले, ऐप्लिकेशन को इस चैनल आईडी के साथ एक चैनल बनाना होगा. अगर अनुरोध में यह चैनल आईडी नहीं भेजा जाता है या दिए गए चैनल आईडी को ऐप्लिकेशन ने अब तक नहीं बनाया है, तो FCM, ऐप्लिकेशन मेनिफ़ेस्ट में बताए गए चैनल आईडी का इस्तेमाल करता है. |
icon |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का आइकॉन.
ड्रॉबल संसाधन के लिए, सूचना आइकॉन को |
sound |
ज़रूरी नहीं, स्ट्रिंग |
डिवाइस पर सूचना मिलने पर बजने वाली आवाज़.
|
tag |
ज़रूरी नहीं, स्ट्रिंग |
आइडेंटिफ़ायर, जिसका इस्तेमाल नोटिफ़िकेशन पैनल में मौजूदा सूचनाओं को बदलने के लिए किया जाता है. अगर यह जानकारी नहीं दी जाती है, तो हर अनुरोध से एक नई सूचना बनती है. अगर टैग तय किया गया है और उसी टैग वाली सूचना पहले से दिख रही है, तो नई सूचना, सूचनाओं के ड्रॉअर में मौजूद मौजूदा सूचना की जगह ले लेगी. |
color |
ज़रूरी नहीं, स्ट्रिंग |
सूचना के आइकॉन का रंग, |
click_action |
ज़रूरी नहीं, स्ट्रिंग |
सूचना पर उपयोगकर्ता के क्लिक से जुड़ी कार्रवाई. अगर तय किया गया है, तो उपयोगकर्ता के सूचना पर क्लिक करने पर, मैच करने वाले इंटेंट फ़िल्टर वाली गतिविधि शुरू की जाती है. |
body_loc_key |
ज़रूरी नहीं, स्ट्रिंग |
ऐप्लिकेशन के स्ट्रिंग संसाधनों में मौजूद मुख्य स्ट्रिंग, जिसका इस्तेमाल मुख्य टेक्स्ट को उपयोगकर्ता की मौजूदा स्थानीय भाषा में अनुवाद करने के लिए किया जाता है. ज़्यादा जानकारी के लिए, स्ट्रिंग संसाधन देखें. |
body_loc_args |
ज़रूरी नहीं, JSON कलेक्शन को स्ट्रिंग के तौर पर |
वैरिएबल स्ट्रिंग की वैल्यू, ज़्यादा जानकारी के लिए, फ़ॉर्मैट और स्टाइल देखें. |
title_loc_key |
ज़रूरी नहीं, स्ट्रिंग |
ऐप्लिकेशन के स्ट्रिंग संसाधनों में मौजूद टाइटल स्ट्रिंग की कुंजी, जिसका इस्तेमाल करके टाइटल टेक्स्ट को उपयोगकर्ता के मौजूदा स्थानीय भाषा में बदला जा सकता है. ज़्यादा जानकारी के लिए, स्ट्रिंग संसाधन देखें. |
title_loc_args |
ज़रूरी नहीं, JSON कलेक्शन को स्ट्रिंग के तौर पर |
ज़्यादा जानकारी के लिए, फ़ॉर्मैट और स्टाइल देखें. |
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
title |
ज़रूरी नहीं, स्ट्रिंग |
सूचना का टाइटल. |
body |
ज़रूरी नहीं, स्ट्रिंग |
सूचना के मुख्य हिस्से का टेक्स्ट. |
icon |
ज़रूरी नहीं, स्ट्रिंग |
सूचना के आइकॉन के लिए इस्तेमाल किया जाने वाला यूआरएल. |
click_action |
ज़रूरी नहीं, स्ट्रिंग |
सूचना पर उपयोगकर्ता के क्लिक से जुड़ी कार्रवाई. सभी यूआरएल वैल्यू के लिए, एचटीटीपीएस होना ज़रूरी है. |
डाउनस्ट्रीम XMPP संदेश जवाब की व्याख्या करें
नीचे दी गई टेबल में, डाउनस्ट्रीम XMPP मैसेज के जवाब में दिखने वाले फ़ील्ड की सूची दी गई है.
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
from |
ज़रूरी स्ट्रिंग | इस पैरामीटर से पता चलता है कि यह जवाब किसने भेजा है. यह वैल्यू, क्लाइंट ऐप्लिकेशन का रजिस्ट्रेशन टोकन होता है. |
message_id |
ज़रूरी है, स्ट्रिंग | यह पैरामीटर किसी XMPP कनेक्शन में किसी मैसेज की खास तौर पर पहचान करता है. यह वैल्यू एक स्ट्रिंग होती है, जो उससे जुड़े मैसेज की खास पहचान करती है. |
message_type |
ज़रूरी है, स्ट्रिंग | यह पैरामीटर, FCM से ऐप्लिकेशन सर्वर को भेजे गए अगर वैल्यू |
error |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर डाउनस्ट्रीम मैसेज से जुड़ी गड़बड़ी के बारे में बताता है. यह तब सेट होता है, जब message_type nack हो. ज़्यादा जानकारी के लिए टेबल 4 देखें. |
error_description |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर, गड़बड़ी के बारे में जानकारी देता है. यह तब सेट होता है, जब message_type nack हो. |
डाउनस्ट्रीम मैसेज से जुड़ी गड़बड़ी के रिस्पॉन्स कोड
नीचे दी गई टेबल में, डाउनस्ट्रीम मैसेज के लिए गड़बड़ी के रिस्पॉन्स कोड की सूची दी गई है.
गड़बड़ी | XMPP कोड | सुझाई गई कार्रवाई |
---|---|---|
रजिस्ट्रेशन टोकन मौजूद नहीं है | INVALID_JSON |
देखें कि अनुरोध में रजिस्ट्रेशन टोकन शामिल है या नहीं. यह टोकन, सादे टेक्स्ट मैसेज में registration_id में या JSON में to या registration_ids फ़ील्ड में मौजूद होता है. |
अमान्य एपीएन रजिस्ट्रेशन | INVALID_JSON |
iOS रजिस्ट्रेशन के लिए, देखें कि क्लाइंट के रजिस्ट्रेशन अनुरोध में एक मान्य APNs टोकन और ऐप्लिकेशन आईडी हो. |
रजिस्ट्रेशन टोकन अमान्य है | BAD_REGISTRATION |
उस रजिस्ट्रेशन टोकन के फ़ॉर्मैट की जांच करें जिसे आपने सर्वर को पास किया है. पक्का करें कि यह FCM के साथ रजिस्टर करने पर, क्लाइंट ऐप्लिकेशन को मिलने वाले रजिस्ट्रेशन टोकन से मैच करता हो. स्ट्रिंग को छोटा न करें या उसमें अतिरिक्त वर्ण न जोड़ें. |
अपंजीकृत डिवाइस | DEVICE_UNREGISTERED |
कई मामलों में, मौजूदा रजिस्ट्रेशन टोकन अमान्य हो सकता है. इनमें ये शामिल हैं:
|
ईमेल भेजने वाले का नाम मेल न खाना | SENDER_ID_MISMATCH |
रजिस्ट्रेशन टोकन, ईमेल भेजने वाले लोगों के किसी ग्रुप से जुड़ा होता है. जब कोई क्लाइंट ऐप्लिकेशन FCM के लिए रजिस्टर करता है, तो उसे यह बताना होगा कि किन लोगों को मैसेज भेजने की अनुमति है. क्लाइंट ऐप्लिकेशन पर मैसेज भेजते समय, आपको उनमें से किसी एक आईडी का इस्तेमाल करना चाहिए. किसी दूसरे आईडी पर स्विच करने पर, मौजूदा रजिस्ट्रेशन टोकन काम नहीं करेंगे. |
अमान्य JSON | INVALID_JSON |
देख लें कि JSON मैसेज का फ़ॉर्मैट सही है और उसमें मान्य फ़ील्ड मौजूद हैं. (उदाहरण के लिए, पक्का करें कि सही डेटा टाइप पास किया गया हो). |
मैसेज का साइज़ बहुत बड़ा है | INVALID_JSON |
देखें कि किसी मैसेज में शामिल पेलोड डेटा का कुल साइज़, FCM की सीमाओं से ज़्यादा न हो: ज़्यादातर मैसेज के लिए 4096 बाइट या विषयों के लिए मैसेज के मामले में 2048 बाइट. इसमें, की और वैल्यू, दोनों शामिल हैं. |
डेटा कुंजी अमान्य है | INVALID_JSON |
देखें कि पेलोड डेटा में कोई ऐसी कुंजी (जैसे, from ,
gcm या google से शुरू होने वाली कोई वैल्यू) शामिल न हो जिसका इस्तेमाल FCM अंदरूनी तौर पर करता है. ध्यान दें कि कुछ शब्दों (जैसे, collapse_key ) का इस्तेमाल FCM भी करता है. हालांकि, इन्हें पेलोड में इस्तेमाल करने की अनुमति है. ऐसे में, पेलोड की वैल्यू को FCM की वैल्यू से बदल दिया जाता है. |
रहने का समय अमान्य है | INVALID_JSON |
पक्का करें कि time_to_live में इस्तेमाल की गई वैल्यू, सेकंड में कुल समय को दिखाने वाला पूर्णांक हो. यह समय 0 से 2,419,200 (4 हफ़्ते) के बीच होना चाहिए. |
गलत ACK मैसेज | BAD_ACK |
फिर से कोशिश करने से पहले, देख लें कि ack मैसेज का फ़ॉर्मैट सही है या नहीं. ज़्यादा जानकारी के लिए, टेबल 6 देखें. |
समय खत्म हो गया (टाइम आउट) | SERVICE_UNAVAILABLE |
सर्वर, अनुरोध को समय पर प्रोसेस नहीं कर सका. उसी अनुरोध को फिर से करने की कोशिश करें, लेकिन आपको ये काम ज़रूर करने होंगे:
ध्यान दें: मैसेज भेजने वाले ऐसे लोगों को ब्लैकलिस्ट किए जाने का खतरा होता है जिनकी वजह से समस्याएं होती हैं. |
सर्वर में गड़बड़ी | INTERNAL_SERVER_
|
आपके अनुरोध को प्रोसेस करते समय सर्वर में कोई गड़बड़ी हुई. आप "समय खत्म" (ऊपर पंक्ति देखें) में बताई गई ज़रूरी शर्तों के हिसाब से उसी अनुरोध को फिर से करने की कोशिश कर सकते हैं. |
डिवाइस पर मैसेज की दर पार हो गई | DEVICE_MESSAGE_RATE |
किसी खास डिवाइस पर मैसेज भेजने की दर बहुत ज़्यादा है. इस डिवाइस पर भेजे जाने वाले मैसेज की संख्या कम करें और इस डिवाइस पर तुरंत मैसेज भेजने की कोशिश न करें. |
Topics पर मैसेज भेजने की दर तय सीमा से ज़्यादा हो गई है | TOPICS_MESSAGE_RATE |
किसी खास विषय के लिए, सदस्यों को भेजे जाने वाले मैसेज की दर बहुत ज़्यादा है. इस विषय के लिए भेजे गए मैसेज की संख्या कम करें और तुरंत भेजने की कोशिश न करें. |
कनेक्शन खत्म करना | CONNECTION_DRAINING |
कनेक्शन खराब होने की वजह से, मैसेज प्रोसेस नहीं किया जा सका. ऐसा इसलिए होता है, क्योंकि लोड बैलेंस करने के लिए FCM को समय-समय पर कनेक्शन बंद करना पड़ता है. मैसेज को किसी दूसरे XMPP कनेक्शन से भेजने की कोशिश करें. |
APNs के अमान्य क्रेडेंशियल | INVALID_APNS_CREDENTIAL |
iOS डिवाइस को टारगेट किया गया मैसेज नहीं भेजा जा सका, क्योंकि ज़रूरी APNs पुष्टि करने वाली कुंजी अपलोड नहीं की गई थी या उसकी समयसीमा खत्म हो गई है. देखें कि आपके डेवलपमेंट और प्रोडक्शन क्रेडेंशियल मान्य हैं या नहीं. |
पुष्टि नहीं हो सकी | AUTHENTICATION_FAILED |
बाहरी पुश सेवाओं से पुष्टि नहीं की जा सकी. देखें कि क्या आपने सही वेब पुश सर्टिफ़िकेट का इस्तेमाल किया है. |
अपस्ट्रीम मैसेज का सिंटैक्स
अपस्ट्रीम मैसेज वह मैसेज होता है जिसे क्लाइंट ऐप्लिकेशन, ऐप्लिकेशन सर्वर को भेजता है. फ़िलहाल, सिर्फ़ XMPP में अपस्ट्रीम मैसेजिंग की सुविधा काम करती है. क्लाइंट ऐप्लिकेशन से मैसेज भेजने के बारे में ज़्यादा जानकारी के लिए, अपने प्लैटफ़ॉर्म का दस्तावेज़ देखें.
अपस्ट्रीम XMPP मैसेज को समझना
नीचे दी गई टेबल में XMPP पद में उन फ़ील्ड के बारे में बताया गया है जिन्हें क्लाइंट ऐप्लिकेशन से अपस्ट्रीम मैसेज के अनुरोधों के जवाब में FCM ने जनरेट किया है.
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
from |
ज़रूरी है, स्ट्रिंग | इस पैरामीटर से पता चलता है कि मैसेज किसने भेजा है. यह वैल्यू, क्लाइंट ऐप्लिकेशन का रजिस्ट्रेशन टोकन होता है. |
category |
ज़रूरी है, स्ट्रिंग | इस पैरामीटर से, मैसेज भेजने वाले क्लाइंट ऐप्लिकेशन के ऐप्लिकेशन पैकेज का नाम पता चलता है. |
message_id |
ज़रूरी है, स्ट्रिंग | यह पैरामीटर, मैसेज का यूनीक आईडी बताता है. |
data |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर, मैसेज के पेलोड के की-वैल्यू पेयर की जानकारी देता है. |
ACK मैसेज भेजना
नीचे दी गई टेबल में, ऐप्लिकेशन सर्वर को मिलने वाले अपस्ट्रीम मैसेज के जवाब में, FCM को भेजे जाने वाले ACK रिस्पॉन्स के बारे में बताया गया है.
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
to |
ज़रूरी है, स्ट्रिंग | इस पैरामीटर से पता चलता है कि किस व्यक्ति को जवाब भेजा गया है. वैल्यू, उस क्लाइंट ऐप्लिकेशन का रजिस्ट्रेशन टोकन होना चाहिए जिससे अपस्ट्रीम मैसेज भेजा गया था. |
message_id |
ज़रूरी है, स्ट्रिंग | इस पैरामीटर से पता चलता है कि जवाब किस मैसेज के लिए है. यह वैल्यू, उससे जुड़े अपस्ट्रीम मैसेज की message_id वैल्यू होनी चाहिए. |
message_type |
ज़रूरी है, स्ट्रिंग | यह पैरामीटर, ऐप्लिकेशन सर्वर से सीसीएस को भेजे गए ack मैसेज के बारे में बताता है.
अपस्ट्रीम मैसेज के लिए, इसे हमेशा ack पर सेट किया जाना चाहिए. |
FCM सर्वर के मैसेज (XMPP)
यह FCM से ऐप्लिकेशन सर्वर पर भेजा गया मैसेज है. यहां मुख्य तौर पर उन मैसेज के बारे में बताया गया है जिन्हें FCM ऐप्लिकेशन सर्वर को भेजता है:
- कंट्रोल: सीएसएस से जनरेट किए गए ये मैसेज बताते हैं कि ऐप्लिकेशन सर्वर को कार्रवाई करनी होगी.
नीचे दी गई टेबल में, उन मैसेज में शामिल फ़ील्ड के बारे में बताया गया है जो CCS किसी ऐप्लिकेशन सर्वर को भेजे जाते हैं.
पैरामीटर | इस्तेमाल | ब्यौरा |
---|---|---|
कॉमन फ़ील्ड | ||
message_type |
ज़रूरी स्ट्रिंग | इस पैरामीटर से पता चलता है कि मैसेज किस तरह का है: कंट्रोल. अगर यह |
control_type |
ज़रूरी नहीं, स्ट्रिंग | यह पैरामीटर, FCM से भेजे गए कंट्रोल मैसेज के टाइप की जानकारी देता है. फ़िलहाल, सिर्फ़ |