সার্ভার রেফারেন্স

সার্ভার বাস্তবায়ন ঐচ্ছিক. আপনি যদি এই ক্রিয়াকলাপগুলি সম্পাদন করতে চান তবে ইনস্ট্যান্স আইডি পরিষেবাটি ব্যবহার করুন:

অ্যাপ দৃষ্টান্ত সম্পর্কে তথ্য পান

একটি অ্যাপ ইন্সট্যান্স সম্পর্কে তথ্য পেতে, এই এন্ডপয়েন্টে ইনস্ট্যান্স আইডি পরিষেবাতে কল করুন, দেখানো হিসাবে অ্যাপ ইনস্ট্যান্সের টোকেন প্রদান করুন:

 https://iid.googleapis.com/iid/info/IID_TOKEN

পরামিতি

  • Authorization: Bearer <access_token> । হেডারে এই প্যারামিটার সেট করুন। Authorization হেডারের মান হিসাবে একটি স্বল্পকালীন OAuth2 টোকেন যোগ করুন। এই টোকেন পাওয়ার বিষয়ে আরও তথ্যের জন্য, ম্যানুয়ালি প্রমাণপত্র সরবরাহ করুন দেখুন।
  • access_token_auth: true । হেডারে এই প্যারামিটার সেট করুন।
  • [ঐচ্ছিক] বুলিয়ান details : এই টোকেনের সাথে যুক্ত FCM বিষয় সাবস্ক্রিপশন তথ্য (যদি থাকে) পেতে এই ক্যোয়ারী প্যারামিটারটিকে true সেট করুন। নির্দিষ্ট করা না থাকলে, ডিফল্ট থেকে false

ফলাফল

সফল হলে কলটি HTTP স্ট্যাটাস 200 এবং একটি JSON অবজেক্ট সহ রিটার্ন করে:

  • application - টোকেনের সাথে যুক্ত প্যাকেজের নাম।
  • authorizedEntity - প্রজেক্টআইডি টোকেনে পাঠানোর জন্য অনুমোদিত।
  • applicationVersion - অ্যাপ্লিকেশনটির সংস্করণ।
  • platform - টোকেনটি যে ডিভাইসের প্ল্যাটফর্মের সাথে সম্পর্কিত তা নির্দেশ করতে ANDROID , IOS বা CHROME প্রদান করে৷

details পতাকা সেট করা থাকলে:

  • rel - টোকেনের সাথে সম্পর্কিত সম্পর্ক। উদাহরণস্বরূপ, বিষয় সদস্যতা একটি তালিকা.

GET অনুরোধের উদাহরণ

https://iid.googleapis.com/iid/info/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA
Content-Type:application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true

উদাহরণ ফলাফল

HTTP 200 OK
{
  "application":"com.iid.example",
  "authorizedEntity":"123456782354",
  "platform":"Android",
  "rel":{
    "topics":{
      "topicname1":{"addDate":"2015-07-30"},
      "topicname2":{"addDate":"2015-07-30"},
      "topicname3":{"addDate":"2015-07-30"},
      "topicname4":{"addDate":"2015-07-30"}
    }
  }
}

অ্যাপের উদাহরণের জন্য সম্পর্ক মানচিত্র তৈরি করুন

ইনস্ট্যান্স আইডি API আপনাকে অ্যাপের উদাহরণের জন্য সম্পর্ক মানচিত্র তৈরি করতে দেয়। উদাহরণস্বরূপ, আপনি একটি FCM বিষয়ের সাথে একটি নিবন্ধকরণ টোকেন ম্যাপ করতে পারেন, বিষয়টিতে অ্যাপ ইনস্ট্যান্স সাবস্ক্রাইব করে৷ এপিআই পৃথকভাবে এবং বাল্ক উভয় ক্ষেত্রেই এই ধরনের সম্পর্ক তৈরি করার পদ্ধতি প্রদান করে।

একটি অ্যাপ উদাহরণের জন্য একটি সম্পর্ক ম্যাপিং তৈরি করুন

একটি নিবন্ধন টোকেন এবং একটি সমর্থিত সম্পর্ক দেওয়া, আপনি একটি ম্যাপিং তৈরি করতে পারেন। উদাহরণস্বরূপ, আপনি এই এন্ডপয়েন্টে ইন্সট্যান্স আইডি পরিষেবাতে কল করে একটি FCM বিষয়ের একটি অ্যাপ ইন্সট্যান্স সাবস্ক্রাইব করতে পারেন, যেমন দেখানো হয়েছে অ্যাপ ইনস্ট্যান্সের টোকেন প্রদান করে:

 https://iid.googleapis.com/iid/v1/IID_TOKEN/rel/topics/TOPIC_NAME

পরামিতি

  • Authorization: Bearer <access_token> । হেডারে এই প্যারামিটার সেট করুন। Authorization হেডারের মান হিসাবে একটি স্বল্পকালীন OAuth2 টোকেন যোগ করুন। এই টোকেন পাওয়ার বিষয়ে আরও তথ্যের জন্য, ম্যানুয়ালি প্রমাণপত্র সরবরাহ করুন দেখুন।
  • access_token_auth: true । হেডারে এই প্যারামিটার সেট করুন।

ফলাফল

সফল হলে কলটি HTTP স্থিতি 200 ফেরত দেয়।

POST অনুরোধের উদাহরণ

https://iid.googleapis.com/iid/v1/nKctODamlM4:CKrh_PC8kIb7O...clJONHoA/rel/topics/movies
Content-Type:application/json
Content-Length: 0
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true

উদাহরণ ফলাফল

HTTP 200 OK
{}

একাধিক অ্যাপ দৃষ্টান্তের জন্য সম্পর্ক মানচিত্র পরিচালনা করুন

ইনস্ট্যান্স আইডি পরিষেবার ব্যাচ পদ্ধতিগুলি ব্যবহার করে, আপনি অ্যাপের উদাহরণগুলির ব্যাচ পরিচালনা করতে পারেন। উদাহরণস্বরূপ, আপনি একটি এফসিএম বিষয়ের সাথে অ্যাপের দৃষ্টান্তগুলি বাল্ক যোগ বা অপসারণ করতে পারেন। প্রতি API কলে 1000টি পর্যন্ত অ্যাপ ইন্সট্যান্স আপডেট করতে, JSON বডিতে অ্যাপ ইনস্ট্যান্স টোকেন প্রদান করে এই এন্ডপয়েন্টে ইন্সট্যান্স আইডি পরিষেবাতে কল করুন:

 https://iid.googleapis.com/iid/v1:batchAdd

 https://iid.googleapis.com/iid/v1:batchRemove

পরামিতি

  • Authorization: Bearer <access_token> । হেডারে এই প্যারামিটার সেট করুন। Authorization হেডারের মান হিসাবে একটি স্বল্পকালীন OAuth2 টোকেন যোগ করুন। এই টোকেন পাওয়ার বিষয়ে আরও তথ্যের জন্য, ম্যানুয়ালি প্রমাণপত্র সরবরাহ করুন দেখুন।
  • access_token_auth: true । হেডারে এই প্যারামিটার সেট করুন।
  • to : বিষয়ের নাম।
  • registration_tokens : আপনি যে অ্যাপগুলি যোগ করতে বা সরাতে চান তার জন্য IID টোকেনগুলির অ্যারে৷

ফলাফল

সফল হলে কলটি HTTP স্থিতি 200 ফেরত দেয়। খালি ফলাফল টোকেনের জন্য সফল সদস্যতা নির্দেশ করে। ব্যর্থ সাবস্ক্রিপশনের জন্য, ফলাফলে এই ত্রুটি কোডগুলির মধ্যে একটি রয়েছে:

  • NOT_FOUND — নিবন্ধন টোকেন মুছে ফেলা হয়েছে বা অ্যাপটি আনইনস্টল করা হয়েছে।
  • INVALID_ARGUMENT — প্রদত্ত নিবন্ধন টোকেন প্রেরকের আইডির জন্য বৈধ নয়।
  • অভ্যন্তরীণ — ব্যাকএন্ড সার্ভার অজানা কারণে ব্যর্থ হয়েছে৷ অনুরোধ পুনরায় চেষ্টা করুন.
  • TOO_MANY_TOPICS — অ্যাপের প্রতি উদাহরণের জন্য অতিরিক্ত সংখ্যক বিষয়।
  • RESOURCE_EXHAUSTED — অল্প সময়ের মধ্যে অনেক বেশি সাবস্ক্রিপশন বা আনসাবস্ক্রিপশনের অনুরোধ। সূচকীয় ব্যাকঅফ দিয়ে পুনরায় চেষ্টা করুন।

POST অনুরোধের উদাহরণ

https://iid.googleapis.com/iid/v1:batchAdd
Content-Type:application/json
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth: true
{
   "to": "/topics/movies",
   "registration_tokens": ["nKctODamlM4:CKrh_PC8kIb7O...", "1uoasi24:9jsjwuw...", "798aywu:cba420..."],
}

উদাহরণ ফলাফল

HTTP 200 OK
{
  "results":[
    {},
    {"error":"NOT_FOUND"},
    {},
  ]
}

APN টোকেনগুলির জন্য নিবন্ধন টোকেন তৈরি করুন৷

ইনস্ট্যান্স আইডি পরিষেবার batchImport পদ্ধতি ব্যবহার করে, আপনি বিদ্যমান iOS APN টোকেনগুলিকে ফায়ারবেস ক্লাউড মেসেজিং-এ বাল্ক আমদানি করতে পারেন, তাদের বৈধ রেজিস্ট্রেশন টোকেনে ম্যাপ করতে পারেন৷ JSON বডিতে APN টোকেনগুলির একটি তালিকা প্রদান করে এই শেষ পয়েন্টে ইনস্ট্যান্স আইডি পরিষেবাতে কল করুন:

 https://iid.googleapis.com/iid/v1:batchImport

রেসপন্স বডিতে ইন্সট্যান্স আইডি রেজিস্ট্রেশন টোকেনগুলির একটি অ্যারে রয়েছে যা সংশ্লিষ্ট APNs ডিভাইস টোকেনে FCM বার্তা পাঠানোর জন্য ব্যবহার করার জন্য প্রস্তুত।

পরামিতি

  • Authorization: Bearer <access_token> । হেডারে এই প্যারামিটার সেট করুন। Authorization হেডারের মান হিসাবে একটি স্বল্পকালীন OAuth2 টোকেন যোগ করুন। এই টোকেন পাওয়ার বিষয়ে আরও তথ্যের জন্য, ম্যানুয়ালি প্রমাণপত্র সরবরাহ করুন দেখুন।
  • access_token_auth: true । হেডারে এই প্যারামিটার সেট করুন।
  • application : অ্যাপের বান্ডেল আইডি।
  • sandbox : স্যান্ডবক্স পরিবেশ (সত্য) বা উৎপাদন (মিথ্যা) নির্দেশ করতে বুলিয়ান
  • apns_tokens : আপনি যে অ্যাপগুলি যোগ করতে বা সরাতে চান তার জন্য APNs টোকেনগুলির অ্যারে৷ প্রতি অনুরোধে সর্বোচ্চ 100টি টোকেন।

ফলাফল

সফল হলে কলটি HTTP স্ট্যাটাস 200 এবং একটি JSON ফলাফল বডি প্রদান করে। অনুরোধে প্রদত্ত প্রতিটি APN টোকেনের জন্য, ফলাফলের তালিকায় রয়েছে:

  • APN টোকেন।
  • স্ট্যাটাস। হয় ঠিক আছে, অথবা ব্যর্থতা বর্ণনাকারী একটি ত্রুটি বার্তা।
  • সফল ফলাফলের জন্য, রেজিস্ট্রেশন টোকেন যা FCM APNs টোকেনে ম্যাপ করে।

POST অনুরোধের উদাহরণ

https://iid.googleapis.com/iid/v1:batchImport
Authorization: Bearer ya29.ElqKBGN2Ri_Uz...HnS_uNreA
access_token_auth:true
{
  "application": "com.google.FCMTestApp",
  "sandbox":false,
  "apns_tokens":[
      "368dde283db539abc4a6419b1795b6131194703b816e4f624ffa12",
      "76b39c2b2ceaadee8400b8868c2f45325ab9831c1998ed70859d86"
   ]
}

উদাহরণ ফলাফল

HTTP 200 OK
{
 "results":[
       {
        "apns_token": "368dde283db539abc4a6419b1795b6131194703b816e4f624ffa12",
         "status": "OK",
         "registration_token":"nKctODamlM4:CKrh_PC8kIb7O...clJONHoA"
       },
       {
         "apns_token": "76b39c2b2ceaadee8400b8868c2f45325ab9831c1998ed70859d86",
         "status":"Internal Server Error"
        },
     ]
  }

ত্রুটি প্রতিক্রিয়া

ইনস্ট্যান্স আইডি সার্ভার এপিআই-তে কলগুলি নিম্নলিখিত HTTP ত্রুটি কোডগুলি ফেরত দেয়:

  • HTTP status 400 (Bad request) - অনুরোধের প্যারামিটার অনুপস্থিত বা অবৈধ। বিস্তারিত তথ্যের জন্য ত্রুটি বার্তা চেক করুন.
  • HTTP status 401 (Unauthorized) - অনুমোদনের শিরোনামটি অবৈধ৷
  • HTTP status 403 (Forbidden) - অনুমোদনের শিরোনামটি authorizedEntity সাথে মেলে না।
  • HTTP status 404 (Not found) - অবৈধ HTTP পাথ বা IID টোকেন পাওয়া যায়নি। বিস্তারিত তথ্যের জন্য ত্রুটি বার্তা চেক করুন.
  • HTTP status 503 (Service unavailable) - পরিষেবা অনুপলব্ধ৷ সূচকীয় ব্যাকঅফ সহ অনুরোধটি পুনরায় চেষ্টা করুন।