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

ইন্টিগ্রেশন সক্রিয় হয়ে গেলে:
- Firebase BigQuery-তে আপনার মালিকানাধীন একটি ডেটাসেট তৈরি করে, কিন্তু Firebase-এর সেটিতে পড়ার অ্যাক্সেস থাকে।
- ফায়ারবেস পর্যায়ক্রমে ডেটা গ্রহণ করে, যার ফলে আপনার আপডেট করা সেগমেন্টগুলো টার্গেটিংয়ের জন্য Firebase কনসোলে উপলব্ধ হয়।
- ফায়ারবেসের এই ডেটাতে শুধুমাত্র পড়ার অ্যাক্সেস আছে। ফায়ারবেস তার অভ্যন্তরীণ স্টোরেজে এই ডেটার একটি অনুলিপি রাখে।
- BigQuery ডেটা সেট থেকে যে ডেটা মুছে ফেলা হয়, তা Firebase ডেটা স্টোরেজ থেকেও মুছে যায়।
BigQuery ইম্পোর্ট সক্ষম করুন
- Firebase কনসোলে BigQuery ইন্টিগ্রেশন পেজে যান।
- আপনি যদি আগে BigQuery ইন্টিগ্রেশন সেট আপ না করে থাকেন, তাহলে BigQuery সক্রিয় করতে স্ক্রিনে দেওয়া নির্দেশাবলী অনুসরণ করুন।
ফায়ারবেস কনসোল"> - ইমপোর্টেড সেগমেন্ট টগলটি সক্রিয় করুন।

যখন আপনি BigQuery থেকে সেগমেন্ট ইম্পোর্ট করা সক্ষম করেন:
- Firebase স্বয়ংক্রিয়ভাবে
firebase_imported_segmentsনামে একটি নতুন BigQuery ডেটাসেট তৈরি করে। এই ডেটাসেটটিতেSegmentMembershipsএবংSegmentMetadataনামে খালি টেবিল থাকে। - 'firebase_imported_segments' ডেটাসেটটি
@gcp-sa-firebasesegmentation.iam.gserviceaccount.comডোমেনযুক্ত একটি Firebase পরিষেবা অ্যাকাউন্টের সাথেও শেয়ার করা হবে। - ফায়ারবেস এই ডেটাসেট থেকে ডেটা পড়ার জন্য প্রতি ১২ ঘণ্টায় অন্তত একবার একটি কাজ চালায় এবং ১২ ঘণ্টার চেয়েও ঘন ঘন ডেটা ইম্পোর্ট করতে পারে।
BigQuery-তে ডেটা ইম্পোর্ট করুন
SegmentMemberships এবং SegmentMetadata টেবিলগুলো পূরণ করার জন্য আপনি BigQuery-তে আপনার ডেটা লোড করতে যেকোনো সমর্থিত পদ্ধতি ব্যবহার করতে পারেন। ডেটা অবশ্যই নিচে বর্ণিত স্কিমা অনুসরণ করবে:
সেগমেন্ট সদস্যপদ
[
{
"name": "instance_id",
"type": "STRING"
},
{
"name": "segment_labels",
"type": "STRING",
"mode": "REPEATED"
},
{
"name": "update_time",
"type": "TIMESTAMP"
}
]
instance_id : একটি নির্দিষ্ট অ্যাপ ইনস্টলের জন্য ফায়ারবেস ইনস্টলেশন আইডি । আপনি একটি সেগমেন্টে অন্তর্ভুক্ত করতে চান এমন প্রতিটি অ্যাপ ইনস্টলের জন্য ইনস্টলেশন আইডি সংগ্রহ করতে হবে এবং সেই মানগুলি ব্যবহার করে এই ফিল্ডটি পূরণ করতে হবে।
segment_labels : যে সেগমেন্টগুলোতে ডিভাইসগুলো ( "instance_id" ) অন্তর্ভুক্ত। এগুলো সহজবোধ্য হওয়ার প্রয়োজন নেই এবং BigQuery-এর স্টোরেজ ব্যবহার কমাতে সংক্ষিপ্ত হতে পারে। এখানে ব্যবহৃত প্রতিটি "segment_labels" জন্য SegmentMetadata টেবিলে একটি সংশ্লিষ্ট এন্ট্রি থাকতে হবে। লক্ষ্য করুন, এটি বহুবচন, যেখানে SegmentMetadata টেবিলে "segment_label" থাকে।
update_time : বর্তমানে Firebase এটি ব্যবহার করে না, কিন্তু BigQuery থেকে পুরোনো ও অব্যবহৃত সেগমেন্ট মেম্বারশিপগুলো মুছে ফেলার জন্য এটি ব্যবহার করা যেতে পারে।
সেগমেন্টমেটাডেটা
[
{
"name": "segment_label",
"type": "STRING"
},
{
"name": "display_name",
"type": "STRING"
}
]
segment_label : একটি নির্দিষ্ট সেগমেন্টকে শনাক্ত করে। SegmentMemberships টেবিলে তালিকাভুক্ত প্রতিটি সেগমেন্টের জন্য এই টেবিলে একটি এন্ট্রি অবশ্যই থাকতে হবে। উল্লেখ্য যে এটি একবচন, যেখানে SegmentMemberships টেবিলে "segment_labels" রয়েছে।
display_name : সেগমেন্টের জন্য একটি সহজে পঠনযোগ্য ও ইউজার ইন্টারফেস-বান্ধব নাম। Firebase কনসোলে আপনার সেগমেন্টকে চিহ্নিত করতে এটি ব্যবহৃত হয়।
BigQuery-এর জন্য বিলিং সেট আপ করুন
যদি আপনি খুব কম ইনস্টলেশন আছে এমন কোনো অ্যাপের জন্য নতুন ফিচারটি পরীক্ষা করে দেখতে চান, তাহলে আপনার শুধু BigQuery স্যান্ডবক্সটি সেট আপ করার প্রয়োজন হতে পারে।
তবে, যদি আপনি এটি অনেক ব্যবহারকারী সহ একটি প্রোডাকশন অ্যাপের জন্য ব্যবহার করেন, তাহলে স্টোরেজের খরচ এবং BigQuery-তে ডেটা লোড করার পদ্ধতির খরচ মেটানোর জন্য আপনাকে অবশ্যই BigQuery ব্যবহারের বিলিং সেট আপ করতে হবে। Firebase দ্বারা শুরু করা কোনো রিড অপারেশনের জন্য আপনাকে চার্জ করা হবে না।
ইন্টিগ্রেশন নিষ্ক্রিয় করুন
এই ইন্টিগ্রেশনটি নিষ্ক্রিয় করতে, Firebase কনসোলে BigQuery ইন্টিগ্রেশন পৃষ্ঠায় যান এবং কাস্টম সেগমেন্ট টগলটি নিষ্ক্রিয় করুন।
আমদানিকৃত সেগমেন্ট ব্যবহার করুন
ডেটা ইনজেস্ট হয়ে গেলে, তা Firebase কনসোলে রিমোট কনফিগ বা ইন-অ্যাপ মেসেজিং-এর মতো সার্ভিস ব্যবহার করে টার্গেট করার জন্য উপলব্ধ হবে। এটি প্রপার্টি বা Google Analytics অডিয়েন্স ব্যবহার করে টার্গেট করার মতোই কাজ করে।

আপনি "আমদানি করা সেগমেন্ট" কে লক্ষ্যযোগ্য অ্যাট্রিবিউটগুলোর একটি হিসেবে ব্যবহার করতে পারেন এবং আপনার আমদানি করা সেগমেন্টগুলো নির্বাচনের জন্য উপলব্ধ হবে। এতে প্রতিটি সেগমেন্টের অন্তর্গত অ্যাপ ইনস্ট্যান্সের সংখ্যার একটি আনুমানিক হিসাবও অন্তর্ভুক্ত থাকে।
সম্পূর্ণ টার্গেটিং মানদণ্ডের সাথে মিলে যায় এমন দৃষ্টান্তের সংখ্যার একটি আনুমানিক হিসাবও উপলব্ধ আছে। আপনি টার্গেটিং মানদণ্ডে কোনো পরিবর্তন করলে এটি আপডেট করা হয়।
ব্যবহারের ক্ষেত্র
নির্দিষ্ট ব্যবহারকারীর অভিজ্ঞতা তৈরি করতে ইম্পোর্টেড সেগমেন্ট ব্যবহার করার বিভিন্ন উপায় রয়েছে। এই বিভাগে এমন কিছু সাধারণ পরিস্থিতি তুলে ধরা হয়েছে যেখানে আপনি এই বৈশিষ্ট্যটি ব্যবহার করতে চাইতে পারেন।
ব্যবহারকারীদের একটি গোষ্ঠীকে বিজ্ঞপ্তি পাঠান
ধরুন আপনার এমন একটি অ্যাপ আছে যেখানে শপিং কার্টের মাধ্যমে অ্যাপের ভেতরেই কেনাকাটা করা যায়। আপনার অ্যাপে ব্যবহারকারীর আচরণের সাথে সম্পর্কিত বিভিন্ন মেট্রিক সংগ্রহ করার জন্য আপনি নিজস্বভাবে তৈরি বা থার্ড-পার্টি অ্যানালিটিক্স সলিউশনও (যেগুলো Google Analytics দ্বারা চালিত নয়) ব্যবহার করতে পারেন। এই মেট্রিকগুলো ব্যবহার করে, আপনি এমন একদল ব্যবহারকারীকে শনাক্ত করতে পারবেন যারা কার্টে আইটেম যোগ করেছেন, কিন্তু চেকআউট সম্পন্ন করেননি।
এখন ধরুন, আপনি এই ব্যবহারকারীদের মনে করিয়ে দিতে Firebase Cloud Messaging ব্যবহার করে একটি নোটিফিকেশন পাঠাতে চান যে তাদের কার্টে আইটেম রয়েছে। আপনি "incomplete-checkout" নামে একটি সেগমেন্ট তৈরি করে তাতে এই ব্যবহারকারীদের তাদের Firebase ইনস্টলেশন আইডি দ্বারা শনাক্ত করে অন্তর্ভুক্ত করতে পারেন এবং ফায়ারবেসের সাথে শেয়ার করার জন্য এটি বিগকোয়েরিতে আপলোড করতে পারেন।
Firebase এই ডেটা গ্রহণ করার পর, তা নোটিফিকেশন কম্পোজারে উপলব্ধ হয়, যেখানে আপনি "incomplete-checkout" টার্গেট করে একটি নতুন নোটিফিকেশন ক্যাম্পেইন তৈরি করতে পারেন, যা ব্যবহারকারীদের চেকআউট সম্পন্ন করার জন্য একটি বার্তা পাঠাবে।
ব্যবহারকারীদের একটি উপগোষ্ঠীর জন্য একটি অ্যাপ কনফিগার করুন
ধরুন, আপনার একটি অভ্যন্তরীণ অ্যানালিটিক্স সলিউশন রয়েছে যা থেকে জানা যায় যে কিছু ব্যবহারকারী অ্যাপটি ব্যবহার করতে সমস্যায় পড়ছেন। সেই ব্যবহারকারীদের সাহায্য করার জন্য, আপনি অ্যাপটির আচরণ এমনভাবে কনফিগার করতে চান যাতে একটি সংক্ষিপ্ত টিউটোরিয়াল ভিডিও অন্তর্ভুক্ত থাকে।
আপনি আপনার অ্যাপে Remote Config অন্তর্ভুক্ত করতে পারেন এবং শর্তসাপেক্ষে টিউটোরিয়াল ভিডিও দেখানোর জন্য 'needs_help'-এর মতো নামের একটি প্যারামিটার ব্যবহার করতে পারেন।
আপনার অ্যানালিটিক্স ডেটা ব্যবহার করে, 'troubled-users' নামে একটি সেগমেন্ট তৈরি করুন এবং Firebase ইনস্টলেশন আইডি দ্বারা চিহ্নিত উপযুক্ত ব্যবহারকারীদের অন্তর্ভুক্ত করুন। তারপর Firebase-এর সাথে শেয়ার করার জন্য এই সেগমেন্ট এবং এর সদস্যদের BigQuery-তে আপলোড করুন।
ফায়ারবেস এই ডেটা গ্রহণ করার পর, এটি Remote Config কনসোলে একটি টার্গেটযোগ্য সেগমেন্ট হিসেবে উপলব্ধ হয়। এরপর আপনি 'troubled-users' কে টার্গেট করে একটি কন্ডিশন তৈরি করতে পারেন এবং এই কন্ডিশনের জন্য 'needs_help' প্যারামিটারটি 'true' এবং ডিফল্টভাবে 'false' সেট করতে পারেন। এই কনফিগটি পাবলিশ করা হলে, অ্যাপটি শুধুমাত্র 'troubled-users' সেগমেন্টের ব্যবহারকারীদের টিউটোরিয়াল ভিডিওটি দেখায়।
বিভিন্ন ডিভাইসে ব্যবহারকারীর যাত্রাপথ অনুসরণ করুন
ধরুন, আপনি Firebase এবং Google Analytics ব্যবহার করে একটি রেস্তোরাঁ-রিভিউ অ্যাপ তৈরি করেছেন। সংগৃহীত মেট্রিক্স ব্যবহার করে আপনি দেখতে পান যে, ব্যবহারকারীরা প্রায়শই মোবাইল ডিভাইস এবং ট্যাবলেট উভয় থেকেই অ্যাপটি ব্যবহার করেন। আপনি আরও জানতে পারেন যে, আপনার ব্যবহারকারীরা ট্যাবলেটে রিভিউ লিখতে বেশি পছন্দ করেন, যদিও তারা যেকোনো ডিভাইস থেকেই রিভিউ পড়তে পারেন।
কিছু ব্যবহারকারী তাদের ফোনে রিভিউ লেখা শুরু করে এবং সম্ভবত ছোট আকারের কারণে মাঝপথে ছেড়ে দেয়। আপনি এই ধরনের ব্যবহারকারীদের ট্যাবলেটে একটি নোটিফিকেশন পাঠানোর সিদ্ধান্ত নেন, যাতে তারা তাদের রিভিউ শেষ করতে উৎসাহিত হয়।
এটি করার জন্য, আপনি সাইন-ইন করা ব্যবহারকারীদের জন্য Google Analytics ব্যবহার করে ইউজারআইডি (UserId) হিসেবে অভ্যন্তরীণভাবে তৈরি একটি রিভিউয়ারআইডি (reviewerId) সেট করতে পারেন এবং বাতিল করা রিভিউ শনাক্ত করতে একটি ইভেন্ট ট্রিগার করতে পারেন। এরপর আপনি আপনার অ্যাপের Google Analytics ডেটা বিগকোয়েরি (BigQuery)-তে এক্সপোর্ট করতে পারবেন।
BigQuery-তে এই ডেটা বিশ্লেষণ করে, আপনি সেইসব ব্যবহারকারীদের ট্যাবলেটের Firebase ইনস্টলেশন আইডি শনাক্ত করতে পারবেন, যারা তাদের ফোনে রিভিউ লেখা শেষ করেননি। আপনি এই গ্রুপটির নাম "tablets-of-users-who-cancelled-on-phone" রাখতে পারেন এবং Firebase-এর সাথে সদস্যদের তালিকা শেয়ার করার জন্য সেগমেন্টটি BigQuery-তে আপলোড করতে পারেন।
ফায়ারবেস এই ডেটা গ্রহণ করার পর, এটি নোটিফিকেশন কম্পোজারে একটি টার্গেটযোগ্য সেগমেন্ট হিসেবে উপলব্ধ হয়। এরপর আপনি "ফোনে বাতিল করা ব্যবহারকারীদের ট্যাবলেট" টার্গেট করে একটি নতুন নোটিফিকেশন ক্যাম্পেইন তৈরি করতে পারেন, যা এই ব্যবহারকারীদের তাদের ট্যাবলেটে রিভিউটি সম্পূর্ণ করার জন্য একটি বার্তা পাঠাবে।