আপনি রিমোট কনফিগারেশন দিয়ে কি করতে পারেন?

অ্যাপ ডেভেলপাররা তাদের নিজস্ব প্রয়োজন অনুসারে Remote Config নানাভাবে ব্যবহার করেন এবং আমরা তা উৎসাহিত করি। Remote Config দিয়ে কী কী করা যায় সে সম্পর্কে ধারণা দিতে, এই পৃষ্ঠায় মোবাইল ডেভেলপারদের জন্য ব্যাপকভাবে প্রযোজ্য কিছু ব্যবহারের ক্ষেত্র বর্ণনা করা হয়েছে।

শতাংশ রোলআউট পদ্ধতির মাধ্যমে নতুন ফিচার চালু করুন।

আপনি Remote Config ব্যবহার করে শতাংশভিত্তিক রোলআউটের মাধ্যমে আপনার ব্যবহারকারীদের ধীরে ধীরে নতুন কার্যকারিতার সাথে পরিচিত করাতে পারেন। এই ক্ষেত্রে, ধরা যাক আপনার একটি নতুন সার্চ ফাংশন আছে যা new_search_feature_flag নামের একটি Remote Config প্যারামিটার ব্যবহার করে চালু ও বন্ধ করা হয়, এবং আপনি আপনার ইনস্টল করা ব্যবহারকারীর ১০% এর কাছে এটি রোলআউট করার মাধ্যমে শুরু করতে চান।

এটি করতে, আপনার new_search_feature_flag প্যারামিটারটি সম্পাদনা করুন, একটি নতুন শর্ত যোগ করুন এবং 'User in random percentage' নির্বাচন করুন। স্লাইডারটি ব্যবহার করে ০ থেকে ১০-এর মধ্যে র‍্যান্ডম পার্সেন্টেজটি সেট করুন।

একটি বিদ্যমান প্যারামিটারে পার্সেন্টেজ রোলআউট সম্পাদন করার জন্য ফায়ারবেস কনসোল GUI-এর ধাপগুলো অনুসরণ করার চিত্র।
শতাংশ ফিচার রোলআউটের জন্য প্যারামিটার যোগ করা

এখন, যখন Remote Config থেকে new_search_feature_flag এর মান নেওয়া হয়, তখন দৈবচয়নের মাধ্যমে নির্বাচিত ১০% ব্যবহারকারী true মানটি পায়, এবং বাকি ৯০% false মানটি পায়।

যখন আপনি ১০% ব্যবহারকারীর ক্ষেত্রে ফিচারটির স্থিতিশীলতা নিয়ে সন্তুষ্ট হবেন, তখন ফিচারটির উপর সম্পূর্ণ আস্থা তৈরি হলে আপনি এটিকে ৩০%, ৫০% এবং অবশেষে ১০০%-এ উন্নীত করতে পারেন।

আপনার অ্যাপের জন্য প্ল্যাটফর্ম ও অঞ্চল-ভিত্তিক প্রচারমূলক ব্যানার নির্ধারণ করুন।

ধরুন, আপনার একটি ই-কমার্স সেল আসছে এবং আপনি আপনার অ্যাপে একটি প্রচারমূলক স্প্ল্যাশ পেজ চালু করতে চান। আরও ধরুন, আপনি এই স্প্ল্যাশ পেজটিকে আপনার ব্যবহারকারীর ডিভাইসে সেট করা লোকেল অনুযায়ী কাস্টমাইজ করতে চান। এক্ষেত্রে আপনি promo_splash_graphic নামের একটি প্যারামিটার নির্ধারণ করে তার ভ্যালু হিসেবে স্ট্যাটিক ইউআরএল (যা ফায়ারবেস স্টোরেজ বা অন্য কোথাও হোস্ট করা) সেট করতে পারেন এবং তারপর আপনার অ্যাপে সেগুলোকে ডাইনামিকভাবে রেফারেন্স করতে পারেন।

এরপর আপনি আপনার প্রচারমূলক বিপণন অভিযানের জন্য সবচেয়ে গুরুত্বপূর্ণ অঞ্চলগুলোর জন্য অ্যান্ড্রয়েড এবং অ্যাপল-এ ভিন্ন ভিন্ন মান নির্ধারণ করতে পারেন। যদি আপনাকে একটি নির্দিষ্ট সময়ে প্রোমোশন চালু করতে হয়, তাহলে আপনি Remote Config -এর টাইম কন্ডিশন ব্যবহার করতে পারেন। এছাড়া, টেমপ্লেটটি প্রকাশিত হওয়ার পরপরই যেন পরিবর্তনগুলো কার্যকর হয়, তা নিশ্চিত করতে আপনি রিয়েল-টাইম Remote Config ব্যবহার করতে পারেন এবং এরপর আপনার অ্যাপের মধ্যে প্রয়োজন অনুযায়ী সেগুলো সক্রিয় করতে পারেন।

প্ল্যাটফর্ম এবং লোকেল-নির্দিষ্ট প্রচারমূলক ব্যানার সংজ্ঞায়িত করার জন্য ফায়ারবেস কনসোল GUI ধাপগুলির মধ্য দিয়ে চলমান অ্যানিমেটেড চিত্র।
স্থানীয় প্রচারমূলক ব্যানারের জন্য প্যারামিটার যোগ করা

এছাড়াও আপনি Remote Config ব্যাকএন্ড এপিআই ব্যবহার করে প্রোগ্রাম্যাটিকভাবে প্যারামিটারের মান আপডেট করতে পারেন এবং তারপর একটি ক্রন জব থেকে সেই কার্যকারিতাটি চালু করতে পারেন।

প্রথমবার অ্যাপ ব্যবহারের উপর ভিত্তি করে আপনার ব্যবহারকারীদের জন্য বিশেষ অভিজ্ঞতা প্রদান করুন।

ব্যবহারকারীরা প্রথমবার আপনার অ্যাপটি খোলার তারিখ ও সময়ের উপর ভিত্তি করে তাদের জন্য কাস্টম অভিজ্ঞতা প্রদান করতে আপনি Remote Config ব্যবহার করতে পারেন, যার মধ্যে নিম্নলিখিত ব্যবহারের ক্ষেত্রগুলো অন্তর্ভুক্ত:

  • ব্যবহারকারীরা আপনার অ্যাপে যোগ দেওয়ার সাথে সাথে বিভিন্ন অনবোর্ডিং ফ্লো প্রদান করুন।
  • একটি নির্দিষ্ট তারিখের পর নতুন ব্যবহারকারীদের কাছে ফিচার ফ্ল্যাগ বা টগলের আড়ালে লুকানো প্রণোদনা বা ফিচারগুলো প্রকাশ করুন।
  • একটি নির্দিষ্ট সময়কালে যোগদানকারী ব্যবহারকারীদের জন্য বিশেষ অভিজ্ঞতা প্রদান করুন।

ধরুন, আপনি নতুন ব্যবহারকারীদের প্রাথমিক সম্পৃক্ততা ও ধরে রাখার জন্য একটি ইন-গেম উপহার দিতে চান এবং পুরোনো ব্যবহারকারীদের একটি দলকে ভিন্ন পুরস্কার দিতে চান। আপনি extra_coin_splash নামে একটি প্যারামিটার তৈরি করতে পারেন, যা একটি পপ-আপ নিয়ন্ত্রণ করবে। এই পপ-আপটি একটি কাস্টমাইজযোগ্য বার্তা, বোনাস কয়েনের সংখ্যা এবং ব্যবহারকারী অফারটি গ্রহণ না করলে সর্বোচ্চ কতবার এটি পুনরায় দেখানো হবে, তা সহ বিনামূল্যে ইন-গেম কারেন্সি অফার করবে। আপনি প্যারামিটারের ডিফল্ট হিসেবে অ্যাপের ডিফল্ট মান ব্যবহার করতে পারেন এবং তারপর দুটি শর্ত তৈরি করতে পারেন।

প্রথমে, আপনার extra_coins_splash Remote Config প্যারামিটারে একটি কন্ডিশনাল ভ্যালু যোগ করুন যা একটি নির্দিষ্ট অ্যান্ড্রয়েড বা আইওএস অ্যাপকে টার্গেট করে, 'ফার্স্ট ওপেন' ভবিষ্যতের কোনো তারিখ ও সময়ে সেট করুন, এবং তারপর প্যারামিটার ভ্যালুটি সেট করুন:

{"banner_text": "Welcome! Enjoy some extra coins!", "bonus_coins": 15, "max_display_retries": 2}

এরপরে, বিদ্যমান কোনো ব্যবহারকারী গোষ্ঠীর জন্য একটি শর্ত যোগ করুন যাদের আপনি পুরস্কৃত করতে চান, উদাহরণস্বরূপ, সেই সমস্ত ব্যবহারকারী যারা জুলাই মাসে যোগদান করেছেন এবং অক্টোবর মাসেও আপনার গেমটি ব্যবহার করছেন। এটি করার জন্য, extra_coins_splash প্যারামিটারে আরেকটি Conditional ভ্যালু যোগ করুন, যেখানে First open-এর মান July 1 থেকে August 1-এর মধ্যে সেট করা থাকবে, এবং প্যারামিটারের ভ্যালুটি সেট করুন:

{"banner_text": "Thanks for being a loyal user!", "bonus_coins": 30, "max_display_retries": 2}:

আপনার চূড়ান্ত extra_coins_splash প্যারামিটারটি দেখতে নিম্নলিখিতের মতো হবে:

Remote Config parameter with conditional
values

এই প্যারামিটার সহ আপনার কনফিগারেশন প্রকাশ করার পর, উভয় শ্রেণীর ব্যবহারকারীই তাদের পরবর্তী ফেচ-এর সময় আপনার কনফিগার করা অতিরিক্ত কয়েন প্যারামিটারের মানগুলো পাবে।

পরবর্তী পদক্ষেপ হিসেবে, আপনার প্যারামিটার ও টার্গেটিং শর্তাবলী ব্যবহার করে ভিন্ন ভিন্ন ব্যানার বার্তা এবং বোনাস কয়েনের পরিমাণ দিয়ে একটি A/B Testing পরীক্ষা অথবা পার্সোনালাইজেশন করে দেখুন।

সীমিত সংখ্যক পরীক্ষকের উপর নতুন কার্যকারিতা পরীক্ষা করুন

সাধারণত একটি সীমিত সংখ্যক পরীক্ষক দলের মধ্যে নতুন কার্যকারিতা পরীক্ষা করার জন্য, আপনি গুগল প্লে-এর আলফা চ্যানেল অথবা অ্যাপল অ্যাপের জন্য টেস্ট ফ্লাইট ব্যবহার করে থাকেন। যখন আপনি আপনার নিয়মিত উন্নয়ন চক্রের সাথে একই গতিতে নতুন কার্যকারিতা পরীক্ষা করতে চান, তখন এই সরঞ্জামগুলি খুবই উপযোগী।

তবে, কখনও কখনও আপনার এমন একটি ফিচার থাকতে পারে যা আপনি আরও দ্রুত পরীক্ষা করতে চান এবং আপনার নিয়মিত ডেভেলপমেন্ট সাইকেলে পরবর্তী রিলিজের সময় নির্বিশেষে সহজেই চালু বা বন্ধ করতে চান। এই ধরনের ক্ষেত্রে, Remote Config একটি খুব সহায়ক টুল হতে পারে।

ধরুন, আপনি আপনার কোম্পানির কর্মীদের মধ্যে নতুন গ্রাফিক্স পরীক্ষা করতে চান। Remote Config ব্যবহার করে কীভাবে তা করা যেতে পারে?

যখন ব্যবহারকারীরা আপনার অ্যাপে লগ ইন করেন, তখন তাদের ইমেল আইডি যাচাই করুন এবং is_mydomain_employee=true ইউজার প্রপার্টিটি সেট আপ করুন, যা শুধুমাত্র তখনই প্রযোজ্য হবে যখন ইমেলটি আপনার ডোমেইনের হবে। এরপর, এমন একটি কন্ডিশন তৈরি করুন যা ওই ইউজার প্রপার্টিটিকে ট্র্যাক করবে। আপনি Remote Config এ এই ইউজার প্রপার্টিটিকে টার্গেট করে শুধুমাত্র এই ব্যবহারকারীদের জন্য নতুন কার্যকারিতাটি চালু করতে পারেন।

একটি সীমিত সংখ্যক পরীক্ষক দলের উপর নতুন কার্যকারিতা পরীক্ষা করার জন্য ফায়ারবেস কনসোল GUI-এর ধাপগুলোর মধ্য দিয়ে একটি অ্যানিমেটেড ছবি চলমান দেখানো হচ্ছে।
একটি অবস্থা সহ পরীক্ষার গোষ্ঠীগুলিকে লক্ষ্য করা

আপনার অ্যাপ বা গেমে জটিল সত্তাগুলো কনফিগার করতে JSON ব্যবহার করুন।

আপনার অ্যাপের জটিলতা বাড়ার সাথে সাথে, সেটিতে কনফিগারেশন সরবরাহ করার জন্য আরও উন্নত পদ্ধতির প্রয়োজন হয়। উদাহরণস্বরূপ, আপনি যদি একটি নতুন লগইন সিস্টেম কনফিগার করতে চান, তবে আপনি নিয়ন্ত্রণ করতে চান এমন প্রতিটি ডাইনামিক ভ্যালুর জন্য একটি করে Remote Config প্যারামিটার তৈরি করতে পারেন। তবে, এইভাবে আপনার লগইন সিস্টেম কনফিগার করা ক্লান্তিকর এবং এটি বোঝা ও রক্ষণাবেক্ষণ করা খুব কঠিন।

এই ধরনের লগইন সিস্টেমের জন্য কনফিগারেশন প্রদানের একটি উন্নততর উপায় হলো JSON ব্যবহার করা এবং সেই সমস্ত প্যারামিটারকে একটি একক প্যারামিটারে একত্রিত করা। এটি সময়ের সাথে সাথে login প্যারামিটার সম্পাদনা এবং রক্ষণাবেক্ষণে অনেক বেশি সুবিধা দেয়।

Firebase কনসোলে একটি JSON ভ্যালিডেটর এবং প্রিটি-প্রিন্টার রয়েছে, যা আপনি Remote Config প্যারামিটার সম্পাদনা করার সময় ব্যবহার করতে পারেন। কনসোলে কাজ করার সময়, এডিটরটি খোলার জন্য {} আইকনে ক্লিক করুন।

JSON ব্যবহার করে জটিল এনটিটি কনফিগার করার জন্য Firebase কনসোল GUI-এর ধাপগুলো একটি অ্যানিমেটেড ছবির মাধ্যমে দেখানো হচ্ছে।
প্যারামিটারগুলিকে গ্রুপ করতে JSON এডিটর ব্যবহার করা

Remote Config আপডেট প্রকাশিত হলে স্ল্যাক / ইমেল বার্তা পাঠান

আপনি যদি এমন একটি বড় দলের অংশ হন যা Remote Config ব্যবহার করে, তবে আপনার দলে কে এবং কখন Remote Config পাবলিশ করছে তার হিসাব রাখা প্রায়শই কঠিন হয়ে পড়ে।

সহযোগিতামূলক কর্মপ্রবাহ সহজ করার জন্য, আপনি আপনার পছন্দের মাধ্যমে (স্ল্যাক বা ইমেল) প্রায় রিয়েল টাইমে সতর্কবার্তা পেতে পারেন। Cloud Functions for Firebase এ থাকা Remote Config REST API এবং একটি Remote Config ব্যাকগ্রাউন্ড ট্রিগার ব্যবহার করে, আপনার Remote Config টেমপ্লেট পরিবর্তিত হলেই আপনি একটি নোটিফিকেশন পাঠাতে পারেন।

eBay সম্প্রতি একটি স্ল্যাক চ্যানেলে পূর্ববর্তী ও নতুন Remote Config টেমপ্লেটের পার্থক্য (diff) প্রকাশ করার জন্য Cloud FunctionsRemote Config ব্যবহারের বাস্তবায়নটি ওপেন সোর্স করেছে