রিমোট কনফিগ টেমপ্লেট ও ভার্সন করা

Remote Config টেমপ্লেট হল JSON-ফর্ম্যাট করা প্যারামিটার এবং আপনার Firebase প্রোজেক্টের জন্য তৈরি করা শর্তের সেট। Remote Config কনফিগারেশনগুলিকে টেমপ্লেট-এ সাজায় যা তৈরি, আপডেট, ভার্সন করা এবং রোল ব্যাক করা যেতে পারে।

আপনার আর্কিটেকচারের উপর নির্ভর করে, আপনি ক্লায়েন্ট টেমপ্লেট, সার্ভার টেমপ্লেট বা উভয়ই তৈরি এবং ম্যানেজ করতে পারবেন:

  • ক্লায়েন্ট টেমপ্লেট: Apple, Android, Web, Flutter, Unity ও C++ প্ল্যাটফর্ম জুড়ে ক্লায়েন্ট অ্যাপ ইনস্ট্যান্সে কনফিগারেশন পরিবেশন করুন। ক্লায়েন্ট টেমপ্লেট Google Analytics দর্শক, অ্যাপ ভার্সন, প্ল্যাটফর্ম, ডিভাইসের ভাষা, দেশ, ব্যবহারকারীর পার্সেন্টাইল এবং কাস্টম সিগন্যালের উপর ভিত্তি করে শর্তাবলী সমর্থন করে।

  • সার্ভার টেমপ্লেট: Node.js, Python, Go এবং Java-এর জন্য Firebase Admin SDK ব্যবহার করে Cloud Run, Cloud Functions for Firebase বা কন্টেনারাইজড সার্ভারের মতো ব্যাকএন্ড এনভায়রনমেন্টে কনফিগারেশন পরিবেশন করুন। সার্ভার টেমপ্লেটগুলি সার্ভার কাস্টম সিগন্যাল এবং র্যান্ডম শতাংশ রোলআউট ব্যবহার করে প্রায় শূন্য লেটেন্সি সহ সার্ভার-সাইড প্যারামিটার মূল্যায়ন করে।

ক্লায়েন্ট ও সার্ভার টেমপ্লেট তুলনা করুন

আপনার Firebase প্রোজেক্টে ক্লায়েন্ট ও সার্ভার টেমপ্লেট আলাদাভাবে ম্যানেজ করা হয়। ক্লায়েন্ট ও সার্ভার টেমপ্লেটের মধ্যে পার্থক্য বুঝতে নিম্নলিখিত টেবিলটি ব্যবহার করুন:

বৈশিষ্ট্য ক্লায়েন্ট টেমপ্লেট সার্ভার টেমপ্লেট
টার্গেট এনভায়রনমেন্ট ক্লায়েন্ট অ্যাপ (Apple, Android, Web, Flutter, Unity, C++) সার্ভার এনভায়রনমেন্ট (Cloud Run, Cloud Functions for Firebase, GKE, ব্যাকএন্ড পরিষেবা)
কাজ করে এমন SDK Firebase ক্লায়েন্ট SDK Firebase Admin SDK (Node.js, Python, Go, Java)
ম্যানেজমেন্ট টুল Firebase কনসোল, Firebase CLI, REST API, Firebase Admin SDK Firebase কনসোল
কনসোল লোকেশন প্যারামিটার এবং শর্তাবলী প্যারামিটার এবং শর্তাবলী
টেমপ্লেট ডিফল্ট ডাউনলোড কাজ করে (Android-এর জন্য XML, iOS-এর জন্য PLIST, Web-এর জন্য JSON) প্রযোজ্য নয় (সার্ভার কোড বা ব্যাকএন্ডে ডিফল্ট ভ্যালু উল্লেখ করা আছে)
বিস্তারিত নির্দেশিকা ক্লায়েন্ট টেমপ্লেট ম্যানেজ করুন সার্ভার টেমপ্লেট ম্যানেজ করুন

টেমপ্লেটের লাইফসাইকেল ও ভার্সন সংক্রান্ত তথ্য

আপনি ক্লায়েন্ট টেমপ্লেট বা সার্ভার টেমপ্লেট, যেটির সাথেই কাজ করুন না কেন, Remote Config বিল্ট-ইন ভার্সন কন্ট্রোল ও লাইফসাইকেল ম্যানেজমেন্ট প্রদান করে:

ভার্সন তৈরি ও ট্র্যাক করা

আপনি যতবার প্যারামিটার বা শর্ত আপডেট করেন, ততবার Remote Config একটি নতুন ভার্সন করা Remote Config টেমপ্লেট তৈরি করে এবং আগের টেমপ্লেটটি একটি ভার্সন হিসেবে স্টোর করে যা আপনি প্রয়োজন অনুযায়ী ফিরিয়ে আনতে বা রোল ব্যাক করতে পারবেন। Remote Config-এর মাধ্যমে স্টোর করা প্রাথমিক ভ্যালু থেকে ভার্সন নম্বর ক্রমানুসারে বৃদ্ধি পায়।

সব টেমপ্লেটে একটি version ফিল্ড থাকে যাতে সেই নির্দিষ্ট ভার্সন সম্পর্কে মেটাডেটা থাকে, যেমন:

  • versionNumber: টেমপ্লেটের ক্রমিক ভার্সন নম্বর।
  • updateTime: টেমপ্লেটটি কখন প্রকাশ করা হয়েছিল তার টাইমস্ট্যাম্প।
  • updateUser: যে ব্যবহারকারী আপডেট করেছেন তার ইমেল বা পরিচয়।
  • updateOrigin: কীভাবে পরিবর্তন করা হয়েছে (যেমন, CONSOLE, REST_API, বা ADMIN_SDK_NODE)।
  • updateType: পরিবর্তনের ধরন (যেমন, INCREMENTAL_UPDATE বা FORCED_UPDATE)।

ভার্সনের সীমা ও রিটেনশন

প্রতিটি টেমপ্লেটের ধরনের জন্য লাইফটাইম স্টোর করা ভার্সনের মোট সীমা হল ৩০০ (৩০০টি ক্লায়েন্ট টেমপ্লেট এবং ৩০০টি সার্ভার টেমপ্লেট), যার মধ্যে মুছে ফেলা টেমপ্লেটের জন্য স্টোর করা ভার্সন নম্বর অন্তর্ভুক্ত রয়েছে। কোনও প্রোজেক্টের লাইফটাইমে আপনি যদি প্রতি টেমপ্লেট টাইপে ৩০০টির বেশি টেমপ্লেট ভার্সন প্রকাশ করেন, তাহলে সবচেয়ে পুরনো ভার্সনগুলি মুছে ফেলা হয় এবং সেই ধরনের সর্বাধিক ৩০০টি ভার্সন বজায় রাখা হয়।

রোলব্যাক

আপনি যেকোনও সময় কোনও টেমপ্লেটের সেভ করা যেকোনও ভার্সনে ফিরে যেতে পারবেন। আপনি রোল ব্যাক করলে, Remote Config একটি নতুন ভার্সন তৈরি করে যার কন্টেন্ট বেছে নেওয়া ঐতিহাসিক ভার্সনের সাথে মিলে যায়। যেমন, ভার্সন ১০ থেকে ভার্সন ৬-এ রোল ব্যাক করলে, ভার্সন ৬-এর কনফিগারেশন সহ ভার্সন ১১ তৈরি হয়।

ইমপোর্ট ও এক্সপোর্ট করুন

আপনি JSON ফাইল হিসেবে আপনার অ্যাক্টিভ টেমপ্লেট ডাউনলোড করতে এবং একই প্রোজেক্ট বা অন্য প্রোজেক্টে এটি প্রকাশ করতে পারবেন। এই ক্ষমতার মাধ্যমে আপনি এগুলি করতে পারবেন:

  • সোর্স কন্ট্রোলে (যেমন Git) টেমপ্লেটের সংজ্ঞা স্টোর করুন।
  • CI/CD পাইপলাইনে কনফিগারেশন ডিপ্লয়মেন্ট ইন্টিগ্রেট করুন।
  • বিভিন্ন পর্যায়ে কনফিগারেশন প্রোমোট করুন (যেমন, ডেভেলপমেন্ট বা স্টেজিং প্রোজেক্ট থেকে প্রোডাকশনে)।
  • প্রোজেক্টের মধ্যে কনফিগারেশন মাইগ্রেট করুন।

A/B Testing এক্সপেরিমেন্টে বিশেষভাবে ভ্যারিয়েন্ট হিসেবে তৈরি করা প্যারামিটার ও প্যারামিটারের মান এক্সপোর্ট করা টেমপ্লেটে অন্তর্ভুক্ত করা হয় না।

টেমপ্লেটের ডিফল্ট সেটিংস

ক্লায়েন্ট অ্যাপ্লিকেশনের জন্য, আপনি XML, PLIST বা JSON ফর্ম্যাটে প্যারামিটারের ডিফল্ট ভ্যালু সহ ফাইল ডাউনলোড করতে পারবেন, যাতে আপনার অ্যাপের সাথে বান্ডেল করা যায়। নির্দেশাবলীর জন্য, Remote Config টেমপ্লেট ডিফল্ট ডাউনলোড করুন দেখুন।

পরবর্তী ধাপ