Firebase Remote Config
অ্যাপ আপডেট প্রকাশ না করেই আপনার ওয়েব ক্লায়েন্ট বা সার্ভারের আচরণ ও চেহারা পরিবর্তন করুন।
ফায়ারবেস Remote Config একটি ক্লাউড পরিষেবা যা ব্যবহারকারীদের অ্যাপ আপডেট ডাউনলোড করার প্রয়োজন ছাড়াই আপনার ক্লায়েন্ট অ্যাপ বা সার্ভারের আচরণ এবং চেহারা পরিবর্তন করতে দেয়। Remote Config ব্যবহার করার সময়, আপনি অ্যাপের মধ্যে ডিফল্ট মান তৈরি করেন যা আপনার অ্যাপ্লিকেশনের আচরণ এবং চেহারা নিয়ন্ত্রণ করে। তারপর, আপনি পরবর্তীতে Firebase কনসোল বা Remote Config ব্যাকএন্ড এপিআই ব্যবহার করে সমস্ত Remote Config এপিআই ব্যবহারকারীদের জন্য বা আপনার ব্যবহারকারী গোষ্ঠীর নির্দিষ্ট অংশের জন্য অ্যাপের ভেতরের ডিফল্ট মানগুলোকে ওভাররাইড করতে পারেন। আপনার অ্যাপ বা সার্ভার ইমপ্লিমেন্টেশন নিয়ন্ত্রণ করে কখন আপডেটগুলো প্রয়োগ করা হবে, এবং এটি পারফরম্যান্সের উপর নগণ্য প্রভাব ফেলে ঘন ঘন আপডেটের জন্য পরীক্ষা করতে ও সেগুলো প্রয়োগ করতে পারে।শুরু করতে প্রস্তুত? আপনার প্ল্যাটফর্ম বেছে নিন:
মূল সক্ষমতা
| আপনার অ্যাপের ব্যবহারকারীদের কাছে দ্রুত পরিবর্তনগুলো প্রকাশ করুন। | আপনি দূর থেকে প্যারামিটারের মান পরিবর্তন করে আপনার অ্যাপের ডিফল্ট আচরণ এবং চেহারায় পরিবর্তন আনতে পারেন। উদাহরণস্বরূপ, কোনো অ্যাপ আপডেট প্রকাশ করার প্রয়োজন ছাড়াই, আপনি একটি সিজনাল প্রোমোশন সমর্থন করার জন্য আপনার অ্যাপের লেআউট বা কালার থিম পরিবর্তন করতে একটি Remote Config প্যারামিটারকে ফিচার ফ্ল্যাগ হিসেবে ব্যবহার করতে পারেন। |
| আপনার ব্যবহারকারী গোষ্ঠীর বিভিন্ন অংশের জন্য অ্যাপটি কাস্টমাইজ করুন। | আপনি অ্যাপ ভার্সন, ভাষা, Google Analytics অডিয়েন্স এবং ইম্পোর্টেড সেগমেন্টের মাধ্যমে আপনার ব্যবহারকারী গোষ্ঠীর বিভিন্ন অংশের জন্য অ্যাপের ইউজার এক্সপেরিয়েন্সে ভিন্নতা আনতে Remote Config ব্যবহার করতে পারেন। এছাড়াও, আপনার অ্যাপের জন্য কনফিগার করা কাস্টম প্যারামিটারগুলোর সাথে মেলানোর জন্য আপনি Remote Config কাস্টম সিগন্যাল কন্ডিশন ব্যবহার করতে পারেন। |
| স্বতন্ত্র ব্যবহারকারীদের জন্য আপনার অ্যাপকে স্বয়ংক্রিয়ভাবে ও ক্রমাগতভাবে কাস্টমাইজ করতে এবং কৌশলগত লক্ষ্য পূরণের জন্য অপ্টিমাইজ করতে Remote Config পার্সোনালাইজেশন ব্যবহার করুন। | Remote Config পার্সোনালাইজেশন ব্যবহার করে মেশিন লার্নিংয়ের সাহায্যে ব্যবহারকারীর সম্পৃক্ততা, বিজ্ঞাপনে ক্লিক এবং রাজস্বের মতো লক্ষ্যগুলো—অথবা Google Analytics দিয়ে পরিমাপ করা যায় এমন যেকোনো কাস্টম ইভেন্ট—অপ্টিমাইজ করার জন্য ব্যক্তিগত ব্যবহারকারীর অভিজ্ঞতাকে ক্রমাগতভাবে সাজিয়ে তুলুন। |
| আপনার ব্যবহারকারী গোষ্ঠীর নির্দিষ্ট অংশের কাছে পর্যায়ক্রমে নতুন ফিচারগুলো চালু করুন এবং স্বয়ংক্রিয়ভাবে প্রস্তুতকৃত একটি নিয়ন্ত্রণ গোষ্ঠীর সাথে সেগুলোর তুলনা করুন। | প্যারামিটার ভ্যালুগুলোকে ফিচার ফ্ল্যাগ হিসেবে ব্যবহার করে নির্দিষ্ট আপডেট রিলিজ করতে Remote Config রোলআউট ব্যবহার করুন, যা আপনার ব্যবহারকারীদের কাছে ধীরে ধীরে নতুন কার্যকারিতা পৌঁছে দেবে। আপনার রোলআউট ভ্যালু গ্রহণকারী গ্রুপ এবং একটি সম-আকারের কন্ট্রোল গ্রুপের মধ্যে Crashlytics এবং Google Analytics ফলাফল তুলনা করে রিলিজের স্থিতিশীলতা এবং সাফল্য নির্ধারণ করুন। |
| আপনার অ্যাপ উন্নত করতে এ/বি টেস্ট চালান। | আপনার সম্পূর্ণ ব্যবহারকারী গোষ্ঠীর কাছে কোনো উন্নতি চালু করার আগে, সেই উন্নতিগুলো যাচাই করার জন্য আপনি গুগল অ্যানালিটিক্স-এর সাহায্যে A/B Testing এবং Google Analytics পার্সেন্টেজ টার্গেটিং ব্যবহার করে আপনার ব্যবহারকারী গোষ্ঠীর বিভিন্ন অংশের মধ্যে এ/বি টেস্ট করতে পারেন। |
এটা কীভাবে কাজ করে?
Remote Config একটি ক্লায়েন্ট লাইব্রেরি অন্তর্ভুক্ত রয়েছে যা প্যারামিটারের মান সংগ্রহ করা এবং সেগুলোকে ক্যাশ করার মতো গুরুত্বপূর্ণ কাজগুলো সামলায়। একই সাথে, এটি আপনাকে নতুন মানগুলো কখন সক্রিয় হবে তার উপর নিয়ন্ত্রণ দেয়, যাতে সেগুলো আপনার অ্যাপের ব্যবহারকারীর অভিজ্ঞতাকে প্রভাবিত করতে পারে। এর মাধ্যমে আপনি যেকোনো পরিবর্তনের সময় নিয়ন্ত্রণ করে আপনার অ্যাপের অভিজ্ঞতাকে সুরক্ষিত রাখতে পারেন।
আমরা আপনার ফেচ লজিকে রিয়েল-টাইম Remote Config কার্যকারিতা যোগ করার পরামর্শ দিই, যাতে সর্বশেষ Remote Config প্যারামিটার মানগুলো প্রকাশিত হওয়ার সাথে সাথেই স্বয়ংক্রিয়ভাবে ফেচ করা যায়।
Remote Config ক্লায়েন্ট লাইব্রেরির get মেথডগুলো প্যারামিটার ভ্যালুগুলোর জন্য একটি একক অ্যাক্সেস পয়েন্ট প্রদান করে। আপনার অ্যাপ ইন-অ্যাপ ডিফল্ট ভ্যালুগুলো পাওয়ার জন্য যে লজিক ব্যবহার করে, সেই একই লজিক ব্যবহার করে Remote Config থেকে ভ্যালুগুলো ফেচ করে। ফলে, আপনি খুব বেশি কোড না লিখেই আপনার অ্যাপে Remote Config সুবিধাগুলো যোগ করতে পারেন।
অ্যাপের ডিফল্ট মান ওভাররাইড করতে, আপনি Firebase কনসোল অথবা Remote Config ব্যাকএন্ড API ব্যবহার করে আপনার অ্যাপে ব্যবহৃত প্যারামিটারগুলোর মতোই একই নামের প্যারামিটার তৈরি করতে পারেন। প্রতিটি প্যারামিটারের জন্য, আপনি অ্যাপের ডিফল্ট মান ওভাররাইড করতে Remote Config এ একটি ডিফল্ট মান সেট করতে পারেন, এবং নির্দিষ্ট শর্ত পূরণকারী অ্যাপ ইনস্ট্যান্সগুলোর জন্য অ্যাপের ডিফল্ট মান ওভাররাইড করতে শর্তসাপেক্ষ মানও তৈরি করতে পারেন।
Remote Config ফায়ারবেস অ্যাডমিন নোড.জেএস, পাইথন, গো এবং জাভা এসডিকে-তে একটি সার্ভার ক্লায়েন্ট লাইব্রেরিও প্রদান করে। আপনার সার্ভার ইমপ্লিমেন্টেশনগুলো Remote Config দ্বারা সংরক্ষিত সার্ভার-নির্দিষ্ট টেমপ্লেট থেকে ভ্যালু ফেচ করতে এটি ব্যবহার করতে পারে। সার্ভার পরিবেশে Remote Config ব্যবহার সম্পর্কে আরও জানুন।
প্যারামিটার, কন্ডিশন এবং Remote Config কীভাবে কন্ডিশনাল ভ্যালুগুলোর মধ্যকার দ্বন্দ্ব সমাধান করে সে সম্পর্কে আরও জানতে, Remote Config প্যারামিটারস অ্যান্ড কন্ডিশনস দেখুন।
বাস্তবায়ন পথ
| Remote Config মাধ্যমে আপনার অ্যাপকে নিয়ন্ত্রণ করুন। | Remote Config ব্যবহার করে আপনার অ্যাপের আচরণ ও চেহারার কোন দিকগুলো পরিবর্তন করতে চান তা নির্ধারণ করুন এবং সেগুলোকে আপনার অ্যাপে ব্যবহৃত প্যারামিটারগুলোতে রূপান্তর করুন। | |
| ডিফল্ট প্যারামিটার মান সেট করুন | setDefaults() ব্যবহার করে Remote Config প্যারামিটারগুলোর জন্য অ্যাপের ভেতরের ডিফল্ট মান সেট করুন এবং, ঐচ্ছিকভাবে, আপনার Remote Config টেমপ্লেটের ডিফল্টগুলো ডাউনলোড করুন । | |
| প্যারামিটারের মানগুলি ফেচ, অ্যাক্টিভেট এবং গেট করার জন্য লজিক যোগ করুন। | আপনার অ্যাপ নিরাপদে ও দক্ষতার সাথে পর্যায়ক্রমে Remote Config ব্যাকএন্ড থেকে প্যারামিটারের মান সংগ্রহ করতে এবং সেই সংগৃহীত মানগুলো সক্রিয় করতে পারে। রিয়েল-টাইম Remote Config আপনার অ্যাপগুলোকে পোলিং-এর প্রয়োজন ছাড়াই, নতুন কোনো Remote Config সংস্করণ প্রকাশিত হওয়ার সাথে সাথেই আপডেট হওয়া মানগুলো সংগ্রহ করার সুযোগ দেয়। ভ্যালু আনার সেরা সময় কোনটি, বা আদৌ কোনো সার্ভার-সাইড ভ্যালু আছে কিনা, তা নিয়ে চিন্তা না করেই আপনি আপনার অ্যাপটি লিখতে পারেন। আপনার অ্যাপে সংজ্ঞায়িত কোনো লোকাল ভেরিয়েবলের মান পড়ার মতোই, আপনার অ্যাপ একটি প্যারামিটারের মান পেতে | |
| (প্রয়োজন অনুযায়ী) Remote Config এ ডিফল্ট এবং শর্তাধীন প্যারামিটার মান আপডেট করুন। | আপনি অ্যাপের ডিফল্ট মানগুলোকে ওভাররাইড করতে Firebase কনসোল অথবা Remote Config ব্যাকএন্ড API-তে মান নির্ধারণ করতে পারেন। আপনি আপনার অ্যাপ চালু করার আগে বা পরেও এটি করতে পারেন, কারণ একই | |
| (প্রয়োজন অনুযায়ী) আপনার অ্যাপে ডিফল্ট প্যারামিটার মান আপডেট করুন। | যখনই আপনি আপনার অ্যাপ আপডেট করবেন, তখন এর ডিফল্ট প্যারামিটার ভ্যালুগুলো Remote Config ব্যাকএন্ডের সাথে সিঙ্ক্রোনাইজ করা উচিত। REST API এবং Firebase কনসোল ব্যবহার করে আপনার অ্যাপ আপডেট করার জন্য আপনি XML, প্রপার্টি লিস্ট (plist), বা JSON ফরম্যাটে ডিফল্ট ভ্যালুগুলোর একটি ফাইল দ্রুত ডাউনলোড করতে পারেন। আরও তথ্যের জন্য, Remote Config টেমপ্লেট ডিফল্ট ডাউনলোড করুন ’ দেখুন। | |
| ব্যবহারকারীর অভিজ্ঞতা কাস্টমাইজ করতে এবং আপনার লক্ষ্য অর্জনের জন্য সেরা প্যারামিটার মান নির্ধারণ করতে A/B Testing এবং Remote Config পার্সোনালাইজেশন ব্যবহার করুন। | আপনার অ্যাপে Remote Config প্রয়োগ করার পর, আপনি A/B Testing এবং Remote Config পার্সোনালাইজেশনের মতো উন্নত বৈশিষ্ট্যগুলির সাহায্যে আপনার অ্যাপ নিয়ে পরীক্ষা-নিরীক্ষা করতে, এর পরিধি বাড়াতে এবং আপডেট করতে পারবেন। |
নীতিমালা এবং সীমা
নিম্নলিখিত নীতিমালাগুলো লক্ষ্য করুন:
- যেসব অ্যাপ আপডেটের জন্য ব্যবহারকারীর অনুমোদনের প্রয়োজন, সেগুলোর জন্য Remote Config ব্যবহার করবেন না। এর ফলে আপনার অ্যাপটি অবিশ্বস্ত হিসেবে বিবেচিত হতে পারে।
- Remote Config প্যারামিটার কী বা প্যারামিটার ভ্যালুতে গোপনীয় ডেটা সংরক্ষণ করবেন না। Remote Config ডেটা স্থানান্তরের সময় এনক্রিপ্ট করা থাকে, কিন্তু ব্যবহারকারীরা তাদের অ্যাপ ইনস্ট্যান্সের জন্য উপলব্ধ যেকোনো ডিফল্ট বা ফেচ করা Remote Config প্যারামিটার অ্যাক্সেস করতে পারেন।
- Remote Config ব্যবহার করে আপনার অ্যাপের টার্গেট প্ল্যাটফর্মের শর্তাবলী এড়িয়ে যাওয়ার চেষ্টা করবেন না।
Remote Config প্যারামিটার এবং শর্তাবলী নির্দিষ্ট কিছু সীমাবদ্ধতার অধীন। আরও জানতে, প্যারামিটার এবং শর্তাবলীর সীমাবদ্ধতা দেখুন।
নিম্নলিখিত সীমাগুলো লক্ষ্য করুন:
একটি Firebase প্রজেক্টে প্রতি টেমপ্লেট টাইপের (ক্লায়েন্ট বা সার্ভার) জন্য ৩০০০টি Remote Config প্যারামিটার থাকতে পারে, যেগুলোর দৈর্ঘ্য এবং বিষয়বস্তুর সীমাবদ্ধতা ‘প্যারামিটার এবং শর্তাবলীর সীমাবদ্ধতা’ অংশে বিস্তারিতভাবে উল্লেখ করা আছে।
ফায়ারবেস আপনার Remote Config টেমপ্লেটগুলোর প্রতিটি টেমপ্লেট টাইপের (ক্লায়েন্ট বা সার্ভার) জন্য আজীবন সর্বোচ্চ ৩০০টি ভার্সন সংরক্ষণ করে। এই ৩০০ ভার্সনের আজীবন সীমার মধ্যে মুছে ফেলা টেমপ্লেটগুলোর সংরক্ষিত ভার্সন নম্বরও অন্তর্ভুক্ত থাকে। বিস্তারিত জানতে টেমপ্লেট এবং ভার্সনিং দেখুন।
আপনি সম্মিলিতভাবে সর্বোচ্চ ২৪টি চলমান এ/বি এক্সপেরিমেন্ট এবং Remote Config রোলআউট রাখতে পারবেন।
অন্য ধরনের ডেটা সংরক্ষণ করতে চাইছেন?
- Cloud Firestore হলো ফায়ারবেস এবং Google Cloud তৈরি মোবাইল, ওয়েব এবং সার্ভার ডেভেলপমেন্টের জন্য একটি নমনীয় ও পরিবর্ধনযোগ্য ডেটাবেস।
- Firebase Realtime Database গেমের অবস্থা বা চ্যাট বার্তার মতো JSON অ্যাপ্লিকেশন ডেটা সংরক্ষণ করে এবং সমস্ত সংযুক্ত ডিভাইসে তাৎক্ষণিকভাবে পরিবর্তনগুলি সিঙ্ক্রোনাইজ করে। ডেটাবেস বিকল্পগুলির মধ্যে পার্থক্য সম্পর্কে আরও জানতে, "একটি ডেটাবেস বেছে নিন: Cloud Firestore বা Realtime Database দেখুন।
- Firebase Hosting আপনার ওয়েবসাইটের জন্য HTML, CSS, এবং JavaScript সহ গ্লোবাল অ্যাসেটগুলোর পাশাপাশি গ্রাফিক্স, ফন্ট এবং আইকনের মতো ডেভেলপারদের দেওয়া অন্যান্য অ্যাসেটও হোস্ট করে।
- Cloud Storage ছবি, ভিডিও, এবং অডিওর মতো ফাইলের পাশাপাশি ব্যবহারকারীর তৈরি অন্যান্য কন্টেন্টও সংরক্ষণ করে।
পরবর্তী পদক্ষেপ
- সাধারণ ব্যবহারের উদাহরণগুলো পর্যালোচনা করে দেখুন Remote Config দিয়ে আপনি কী কী করতে পারেন।
- আপনার ডিজাইন শুরু করুন। Remote Config প্যারামিটার ও শর্তাবলী এবং লোডিং স্ট্র্যাটেজির মতো মূল ধারণা ও কৌশলগুলো পর্যালোচনা করুন।
- আপনার অ্যাপের সাথে Remote Config ইন্টিগ্রেট করা শুরু করুন। অ্যান্ড্রয়েড , আইওএস+ , এবং ওয়েব- এর জন্য সেটআপ গাইডগুলো দেখুন।
- প্রোগ্রামের সাহায্যে কীভাবে Remote Config প্যারামিটারের মান পড়তে ও পরিবর্তন করতে হয়, তা শিখুন।
- এ/বি টেস্টিং ব্যবহার করে কীভাবে Remote Config এক্সপেরিমেন্ট তৈরি করতে হয় তা শিখুন।
- আপনার লক্ষ্য অর্জনের জন্য কীভাবে Remote Config পার্সোনালাইজেশন ব্যবহার করে স্বতন্ত্র ব্যবহারকারীর অভিজ্ঞতা স্বয়ংক্রিয়ভাবে অপ্টিমাইজ করা যায়, তা শিখুন।
- আপনার ব্যবহারকারীদের কাছে পর্যায়ক্রমে এবং পুনরাবৃত্তিমূলকভাবে নতুন ফিচার প্রকাশ করতে এবং পাশাপাশি Crashlytics ও Google Analytics ফলাফলের মাধ্যমে এর সাফল্য ও স্থিতিশীলতা যাচাই করতে কীভাবে Remote Config রোলআউট ব্যবহার করতে হয়, তা শিখুন।
- সার্ভার পরিবেশে Remote Config কীভাবে ব্যবহার করতে হয় তা শিখুন।