অনুরোধ প্রসেস করুন
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
Google আপনার অ্যাপ্লিকেশনে বিডের অনুরোধ পাঠালে রিয়েল-টাইম বিডিং ইন্টার্যাকশন শুরু হয়। বিড অনুরোধ প্রসেস করার জন্য আপনার অ্যাপ্লিকেশনের কোড কীভাবে লিখবেন তা এই নির্দেশিকায় ব্যাখ্যা করা হয়েছে।
পার্স করার অনুরোধ
Google, OpenRTB JSON বা Protobuf
ফর্ম্যাটে সিরিয়ালাইজ করা বিডের অনুরোধ পাঠায়, যা HTTP POST অনুরোধের পেলোড হিসেবে অ্যাটাচ করা থাকে। আপনার এন্ডপয়েন্ট-এর
কনফিগারেশনের উপর নির্ভর করে
ফর্ম্যাট পাওয়া যায়। উদাহরণের জন্য
বিডের অনুরোধের উদাহরণ দেখুন।
সিরিয়ালাইজ করা BidRequest পেতে আপনাকে এই অনুরোধ পার্স করতে হবে। আপনি Protobuf ফর্ম্যাট ব্যবহার করলে, আপনাকে অবশ্যই
রেফারেন্স ডেটা পৃষ্ঠা থেকে openrtb.proto এবং openrtb-adx.proto
ডাউনলোড করতে হবে এবং BidRequest
মেসেজ পার্স করার জন্য ব্যবহার করা যেতে পারে এমন লাইব্রেরি জেনারেট করতে
সেগুলি ব্যবহার করতে হবে। যেমন, নিম্নলিখিত C++ কোডটি একটি স্ট্রিংয়ে দেওয়া POST
পে-লোড সহ একটি অনুরোধ পার্স করে:
BidRequest পাওয়ার পরে, আপনি এটিকে একটি
অবজেক্ট হিসেবে ব্যবহার করতে পারবেন, আপনার প্রয়োজনীয় ফিল্ড এক্সট্র্যাক্ট ও ইন্টারপ্রেট করতে পারবেন। যেমন, C++-এ OpenRTB `BidRequest`-এ ডিল
ইটারেট করার পদ্ধতিটি নিম্নলিখিত
মতো হতে পারে:
প্রকাশকের বিজ্ঞাপন ইনভেনটরিকে আপনার
এক বা একাধিক
প্রিটার্গেটিং কনফিগারেশন টার্গেট করলে আপনি বিড অনুরোধ পান। BidRequest.imp.ext.billing_id
যেকোনও উপযুক্ত ক্রেতার বিলিং আইডি এবং প্রাসঙ্গিক
প্রিটার্গেটিং কনফিগারেশন দিয়ে পূরণ করা হবে। এছাড়াও, ডিল
ইনভেনটরির জন্য, আপনি BidRequest.imp.pmp.deal.ext.billing_id ব্যবহার করে প্রাসঙ্গিক ক্রেতাদের সাথে যুক্ত বিলিং আইডি খুঁজে পেতে পারেন। বিড করার সময়, বিড অনুরোধে অন্তর্ভুক্ত ক্রেতাদের শুধুমাত্র বিলিং আইডি উল্লেখ করা যেতে পারে।
বিড করার অনুরোধে একাধিক বিলিং আইডি অন্তর্ভুক্ত থাকলে, আপনি যে ক্রেতার বিড অ্যাট্রিবিউট করতে চান,
BidResponse.seatbid.bid.ext.billing_id ফিল্ডে তার বিলিং আইডি উল্লেখ করতে হবে।
imp {
ext {
// The billing IDs of all of your matching pretargeting configs and eligible child seats are
// stored in a flat list here.
billing_id: 123
billing_id: 456
billing_id: 789
}
pmp {
// All eligible deals are stored in a single flat list.
deal {
id: 1000
ext {
// The specific billing IDs eligible to bid on this deal are indicated here.
billing_id: 789
}
...
}
deal {
id: 2000
ext {
billing_id: 123
billing_id: 456
}
...
}
}
...
}
...
ব্লক করা বিভাগ নির্ধারণ করা
আপনি বিড প্লেস করলে, অন্তর্ভুক্ত ক্রিয়েটিভে প্রকাশকের ব্লক করা
শনাক্ত করা বিভাগ থাকা চলবে না। অন্যথায়, নিলাম থেকে বিড ফিল্টার করা হয়।
আপনি ইম্প্রেশনের জন্য ব্লক করা বিভাগগুলি
BidRequest.bcat ফিল্ড পর্যালোচনা করে খুঁজে পেতে পারেন, যা আপনার অ্যাকাউন্টের জন্য কনফিগার করা
ট্যাক্সোনমি
থেকে বিভাগ দিয়ে পূরণ করা হয়।
কনফিগার করা বিজ্ঞাপন বিভাগের ট্যাক্সোনমির উপর ভিত্তি করে ব্লক করা বিভাগগুলি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:
IAB কন্টেন্ট ট্যাক্সোনমি ১.০
// Bid request{// Indicates the blocked categories using IAB Content 1.0 Taxonomy."bcat":["IAB9-9",// Cigars"IAB8-18"// Wine]"imp":{...}}
Google বিজ্ঞাপন বিভাগের ট্যাক্সোনমি
// Bid request{// Indicates the blocked categories using Google Ad Category Taxonomy."bcat":["10138",// Cigar and tobacco collecting"10080",// Tobacco"11649",// Wine"10674",// Wine collecting"13008"// Wine clubs]"imp":{...}}
প্রাসঙ্গিক বিভাগ নির্ধারণ করা
বিড অনুরোধে প্রাসঙ্গিক বিভাগ ফিল্ড অন্তর্ভুক্ত থাকতে পারে যা ওয়েবসাইট বা অ্যাপের বিবরণ দেয় যেখানে
ইম্প্রেশন হয়। এইসব ফিল্ডে বিজ্ঞাপন ক্যাটেগরি ট্যাক্সোনমিও ব্যবহার করা হয়, তবে ক্রিয়েটিভের উপর বিধিনিষেধের পরিবর্তে
ইম্প্রেশনের প্রসঙ্গ তুলে ধরা হয়। এইসব ফিল্ডে BidRequest.bcat ফিল্ডের মতো একই ট্যাক্সোনমি
ব্যবহার নাও করা হতে পারে। Google বা প্রকাশক এই প্রাসঙ্গিক বিভাগ
প্রদান করতে পারে। প্রাসঙ্গিক বিভাগ ব্যবহার করলে আপনার ইম্প্রেশন মূল্যায়ন,
প্রাসঙ্গিক টার্গেটিং ও ব্র্যান্ড নিরাপত্তা উন্নত হতে পারে।
Google-এর শনাক্ত করা প্রাসঙ্গিক বিভাগ
Google, সাইট, অ্যাপ বা পৃষ্ঠার জন্য শনাক্ত করা IAB কন্টেন্ট বিভাগগুলি দিয়ে নিম্নলিখিত ফিল্ড পূরণ করে:
ফিল্ড
বিবরণ
BidRequest.site.cat
সাইটের বিবরণ সহ কন্টেন্ট বিভাগের আইডির অ্যারে।
BidRequest.site.pagecat
কন্টেন্ট ক্যাটেগরি আইডির একটি অ্যারে যা বর্তমান পৃষ্ঠা বা সাইটের ভিউ বর্ণনা করে।
BidRequest.app.cat
অ্যাপের বিবরণ সহ কন্টেন্ট বিভাগের আইডি-র অ্যারে।
BidRequest.app.pagecat
অ্যাপের বর্তমান পৃষ্ঠা বা ভিউ বর্ণনা করে এমন কন্টেন্ট বিভাগ আইডি-র একটি অ্যারে।
আপনি BidRequest.site.cattax বা BidRequest.app.cattax ফিল্ডে প্রদত্ত বিড অনুরোধের জন্য এইসব ফিল্ডে ব্যবহৃত সঠিক ট্যাক্সোনমি খুঁজে পেতে পারেন। প্রকাশকের পছন্দ বা রেগুলেশন সংক্রান্ত উদ্বেগের কারণে প্রাসঙ্গিক
বিভাগের ফিল্ড সবসময় পূরণ করা নাও হতে পারে।
আরও তথ্যের জন্য, Google Ad Manager-এ OpenRTB প্রাসঙ্গিক
বিভাগ দেখুন।
প্রকাশকের দেওয়া সিগন্যাল
Google-এর শনাক্ত করা প্রাসঙ্গিক বিভাগ ছাড়াও, বিডের অনুরোধে প্রকাশকের প্রদান করা সিগন্যালও থাকতে পারে, যা ইম্প্রেশনের প্রসঙ্গও বর্ণনা করে। Google-এর শনাক্ত করা প্রাসঙ্গিক বিভাগের মতো নয়, এই সিগন্যালগুলি শুধুমাত্র প্রকাশকের
দ্বারা প্রদান করা হলেই পপুলেট করা হয়। এইসব সিগন্যাল BidRequest.site.content এবং
BidRequest.app.content অবজেক্টে পাঠানো হয়, যেমন content.data.segment এবং
content.genre। content.data.segment
এন্ট্রির জন্য ব্যবহৃত ট্যাক্সোনমি content.data.ext.segtax-এ রিপোর্ট করা হয়। আরও তথ্যের জন্য, রিয়েল-টাইম বিডিংয়ের (RTB) জন্য
প্রকাশকের দেওয়া সিগন্যাল (PPS) দেখুন।
ডিকশনারি ফাইল
বিড অনুরোধে ডিকশনারি ফাইলে সংজ্ঞায়িত শনাক্তকারী ব্যবহার করা হয়, যা
রেফারেন্স ডেটা
পৃষ্ঠায় উপলভ্য।
বিডার URL ম্যাক্রো
ঐচ্ছিকভাবে, BidRequest থেকে কিছু তথ্য
ম্যাক্রো ব্যবহার করে বিডিং এন্ডপয়েন্ট URL-এ যোগ করা যেতে পারে। আপনি যদি এক বা একাধিক ম্যাক্রো সহ কোনও এন্ডপয়েন্ট
URL কনফিগার করেন, তাহলে বিড অনুরোধে সেই তথ্য
উপস্থিত থাকলে সেগুলি এক্সপ্যান্ড করা হবে। এটি উপযোগী হতে পারে, যেমন, আপনি যদি BidRequest-এ থাকা তথ্যের ভিত্তিতে লোড ব্যালেন্সিং করতে চান।
নতুন ম্যাক্রোর জন্য সহায়তা পেতে আপনার অ্যাকাউন্ট ম্যানেজারের সাথে যোগাযোগ করুন।
ম্যাক্রো
বিবরণ
%%GOOGLE_USER_ID%%
BidRequest.user.id-এ পাওয়া Google ব্যবহারকারীর আইডি দিয়ে পরিবর্তন করা হয়েছে। যেমন, বিডার URL
http://google.bidder.com/path?gid=%%GOOGLE_USER_ID%%-এর পরিবর্তে
অনুরোধের সময়
http://google.bidder.com/path?gid=dGhpyBhbiBleGFtGxl-এর মতো কিছু
দেখানো হবে।
Google ব্যবহারকারীর আইডি অজানা হলে, খালি স্ট্রিং দিয়ে তা প্রতিস্থাপন করা হয়, যার
ফলাফল অনেকটা এইরকম হয়
http://google.bidder.com/path?gid=
%%HAS_MOBILE%%
1 দিয়ে পরিবর্তন করা হয়েছে যাতে বোঝা যায় যে বিডের অনুরোধ মোবাইল ডিভাইস থেকে এসেছে, অন্যথায় 0। এটি BidRequest.device.devicetype-এর মানের উপর ভিত্তি করে তৈরি, যেখানে মোবাইল ডিভাইসকে HIGHEND_PHONE (4) বা Tablet (5) দ্বারা চিহ্নিত করা হয়।
%%HAS_VIDEO%%
1 দিয়ে পরিবর্তন করা হয়েছে যাতে বোঝা যায় যে বিড অনুরোধে ভিডিও ইনভেনটরি আছে, অথবা 0 অন্য কিছু। বিড করার অনুরোধে
BidRequest.imp.video পূরণ করা আছে কিনা তার উপর ভিত্তি করে এটি করা হয়।
%%IS_CTV%%
1 দিয়ে পরিবর্তন করা হয়েছে, যা থেকে বোঝা যায় যে বিডের অনুরোধটি একটি
CTV ডিভাইস থেকে এসেছে, অথবা অন্যথায় 0। এটি BidRequest.device.devicetype-এর ভ্যালুর উপর ভিত্তি করে
নির্ধারণ করা হয়। Protobuf-এর জন্য, CTV ডিভাইস হল
CONNECTED_TV, CONNECTED_DEVICE, বা
SET_TOP_BOX, যা JSON-এর জন্য পূর্ণসংখ্যা মান 3,
6, বা 7-এর সাথে সম্পর্কিত।
%%HOSTED_MATCH_DATA%%
BidRequest.user.buyeruid-এর উপর ভিত্তি করে একটি ভ্যালু দিয়ে পরিবর্তন করা হয়েছে।
%%MOBILE_IS_APP%%
1 দিয়ে পরিবর্তন করা হয়েছে যাতে বোঝা যায় যে বিডের অনুরোধ মোবাইল অ্যাপ ইনভেনটরির জন্য
অথবা অন্যথায় 0। এটি নির্ভর করে যে
BidRequest.app পূরণ করা হয়েছে কিনা।
ট্রানজ্যাকশন URL থেকে মোবাইল অ্যাপ আইডি খুঁজে বের করা
মোবাইল অ্যাপ্লিকেশন ট্রানজ্যাকশন এই ধরনের URL রিপোর্ট করবে:
mbappgewtimrzgyytanjyg4888888.com
বোল্ডে থাকা স্ট্রিংয়ের অংশ ডিকোড করতে base-32 ডিকোডার ব্যবহার করুন
(gewtimrzgyytanjyg4888888)।
আপনি অনলাইন
ডিকোডার ব্যবহার করতে পারেন, তবে আপনাকে অক্ষরগুলি বড় হাতের করতে হবে এবং শেষে থাকা
8-এর পরিবর্তে = ভ্যালু ব্যবহার করতে হবে।
তাই এই ভ্যালু ডিকোড করা হচ্ছে:
GEWTIMRZGYYTANJYG4======
এইসব জায়গার ফলাফল:
1-429610587
স্ট্রিং 429610587 হল iOS অ্যাপ
iFunny-এর অ্যাপ আইডি।
এখানে আরেকটি উদাহরণ দেওয়া হল। অভিযোগ করা URL হল:
mbappgewtgmjug4ytmmrtgm888888.com
এই ভ্যালু ডিকোড করা:
GEWTGMJUG4YTMMRTGM======
ফলাফল:
1-314716233
314716233 হল iOS অ্যাপ
TextNow-এর অ্যাপ আইডি।
ট্রানজ্যাকশন URL থেকে মোবাইল অ্যাপের নাম খুঁজে পাওয়া
অ্যাপের নাম পাওয়ার একটি উদাহরণ এখানে দেওয়া হল। অভিযোগ জানানো URL হল:
ওপেন বিডিংয়ে অংশগ্রহণকারী এক্সচেঞ্জ ও নেটওয়ার্ক বিডারদের পাঠানো বিডের অনুরোধ, স্ট্যান্ডার্ড রিয়েল-টাইম বিডিংয়ে অংশগ্রহণকারী অনুমোদিত ক্রেতাদের পাঠানো অনুরোধের মতোই। ওপেন বিডিং গ্রাহকরা অল্প সংখ্যক অতিরিক্ত ফিল্ড পাবেন এবং
আগে থেকে থাকা কিছু ফিল্ডের বিকল্প ব্যবহার থাকতে পারে। এর মধ্যে
এগুলি অন্তর্ভুক্ত:
OpenRTB
বিবরণ
BidRequest.imp.ext.dfp_ad_unit_code
এতে প্রকাশকের Ad Manager নেটওয়ার্ক কোড থাকে এবং তারপরে বিজ্ঞাপন ইউনিটের
হায়ারার্কি থাকে, যা ফরওয়ার্ড স্ল্যাশ দিয়ে আলাদা করা থাকে।
উদাহরণস্বরূপ, এটি এই ধরনের ফর্ম্যাটিং সহ দেখানো হবে:
/1234/cruises/mars.
BidRequest.user.data.segment
প্রকাশক এক্সচেঞ্জ বিডারকে একই কী-ভ্যালু পেয়ার একাধিকবার পাঠিয়েছে।
আপনি নির্ধারণ করতে পারবেন যে ভ্যালুগুলি হল প্রকাশকের পাঠানো কী-ভ্যালু পেয়ার,
যখন BidRequest.user.data.name-কে
“Publisher Passed”-এ সেট করা হয়।
অনুমোদিত ভেন্ডর ঘোষণা করা
রিসার্চ, রিমার্কেটিং ও বিজ্ঞাপন পরিবেশনের মতো পরিষেবা প্রদানকারী প্রযুক্তি ভেন্ডররা
ক্রেতা ও বিক্রেতার মধ্যে ইন্টার্যাকশনের ক্ষেত্রে ভূমিকা পালন করতে পারে। শুধুমাত্র
সেইসব ভেন্ডরকে অনুমতি দেওয়া হয় যাদের Google, অনুমোদিত ক্রেতা
ইন্টার্যাকশনে অংশগ্রহণের জন্য যাচাই করেছে।
BidRequest বুঝতে এবং আপনার
BidResponse তৈরি করতে, আপনাকে টেকনোলজি ভেন্ডর ঘোষণা করার দুটি ভিন্ন
সম্ভাবনা সম্পর্কে সচেতন হতে হবে:
অন্যান্য ভেন্ডররা শুধুমাত্র তখনই অংশগ্রহণ করতে পারবেন যদি তাদের নাম
BidRequest:
BidRequest-এ, BidRequest.imp.ext.allowed_vendor_type ফিল্ডে উল্লেখ করা থাকে
কোন কোন ভেন্ডরকে বিক্রেতা অনুমতি দিয়েছেন। যেসব ভেন্ডরকে
allowed_vendor_type পাঠানো হবে, সেগুলি
vendors.txt
ডিকশনারি ফাইলে তালিকাভুক্ত করা আছে।
বিড অনুরোধের উদাহরণ
নিচে দেওয়া উদাহরণগুলি Protobuf এবং
JSON অনুরোধের মানুষের-পাঠযোগ্য নমুনাকে উপস্থাপন করে।
বিড অনুরোধকে বাইনারি ফর্মে পরিবর্তন করতে, যেমন আপনি আসল অনুরোধে POST পেলোড থেকে পাবেন, আপনি নিম্নলিখিত কাজ করতে পারেন (C++-এ)। তবে মনে রাখবেন, এটি OpenRTB JSON-এর ক্ষেত্রে প্রযোজ্য নয়।
অনুমোদিত ক্রেতাদের পাশাপাশি ওপেন বিডিং ব্যবহার করা এক্সচেঞ্জ ও নেটওয়ার্কের জন্য রিয়েল-টাইম ফিডব্যাক উপলভ্য।
রিয়েল-টাইম ফিডব্যাক BidRequest.ext.bid_feedback-এর উপর ভিত্তি করে
তৈরি হয়, যা আপনি আগে এক বা একাধিক বিড করার ফলে পাওয়া ফলাফলের উপর নির্ভর করে। এটি
বিডটি নিলামে জিতেছে কিনা বা নিলামে জেতার জন্য ন্যূনতম কত বিড করতে হবে, তার মতো
বিবরণ খুঁজে পেতে ব্যবহার করা যেতে পারে। রিয়েল-টাইম
ফিডব্যাক চালু করতে আপনার অ্যাকাউন্ট ম্যানেজারের সাথে যোগাযোগ করুন।
বিড রেসপন্স ফিডব্যাকে পাঠানো ডিফল্ট ফিল্ড ছাড়াও, আপনি
BidResponse.seatbid.bid.ext.event_notification_token ফিল্ড ব্যবহার করে বিড রেসপন্সে কাস্টম ডেটাও
পাঠাতে পারেন। event_notification_token হল ইচ্ছামত ডেটা যা শুধু
বিডারই জানেন এবং এটি ডিবাগিংয়ের ক্ষেত্রে সাহায্য করতে পারে, যেমন: নতুন টার্গেটিং আইডি বা
বিডিং আইডি যা নতুন কৌশলকে তুলে ধরে অথবা ক্রিয়েটিভের সাথে যুক্ত মেটাডেটা যা
শুধু বিডারই জানেন। বিস্তারিত জানতে, OpenRTB এক্সটেনশন প্রোটোকল বাফার ফাইল দেখুন।
অনুমোদিত ক্রেতা কোনও বিডারকে বিড করার অনুরোধ পাঠালে, বিডার BidResponse-এর মাধ্যমে
উত্তর দেয়। বিডারের রিয়েল-টাইম ফিডব্যাক চালু করা থাকলে,
পরবর্তী বিড অনুরোধে, অনুমোদিত ক্রেতা BidFeedback মেসেজে
উত্তর সম্পর্কে ফিডব্যাক পাঠায়:
messageBidFeedback{//TheuniqueidfromBidRequest.id.optionalstringrequest_id=1;//Thestatuscodeforthead.Seecreative-status-codes.txtinthe//technicaldocumentationforalistofids.optionalint32creative_status_code=2;//Deprecated.ThisfieldisnotpopulatedandwillberemovedafterMarch,//2025.Ifthebidwontheauction,thisisthepricepaidinyouraccount//currency.Ifthebidparticipatedintheauctionbutwasout-bid,this//istheCPMthatshouldhavebeenexceededinordertowin.Thisisnot//setifthebidwasfilteredpriortotheauction,ifthepublisheror//winningbidderhasoptedoutofpricefeedbackorifyouraccounthas//optedoutofsharingwinningpriceswithotherbidders.Forfirst-price//auctions,minimum_bid_to_winispopulatedinsteadofthisfield.optionaldoubleprice=3[deprecated=true];//Theminimumbidvaluenecessarytohavewontheauction,inyouraccount//currency.Ifyourbidwontheauction,thisisthesecondhighestbid//thatwasnotfiltered(includingthefloorprice).Ifyourbiddidn't win//theauction,thisisthewinningcandidate's bid. This field will only be//populatedifyourbidparticipatedinafirst-priceauction,andwillnot//bepopulatedifyourbidwasfilteredpriortotheauction.optionaldoubleminimum_bid_to_win=6;//Billableeventratemultiplierthatwasappliedtothisbidduring//ranking.Theadjustmentreflectsthelikelihoodthatyourbidwould//generateabillableevent(namely,theadrenderssuccessfully)ifitwon//theauction,relativetotheprobabilitythatotherbidsgeneratea//billableeventiftheywontheauction.Thisadjustmentcanbelargeror//smallerthan1.Thisaffectsthefinalrankingintheauctiononly;in//particular,thismultiplierdoesnotaffectthepaymentorwhetherthe//bidclearsanyfloorprice.optionalfloatbillable_event_rate_bid_adjustment=13[default=1];//WhenapublisherusesanRTBauctionandwaterfall-basedSDKmediationon//thesamequery,thewinnerofthereal-timeauctionmustalsocompetein//amediationwaterfall(whichisorderedbyprice)towintheimpression.//Ifthebidparticipatedintheauctionandtherewasnowaterfall,the//valueofthisfieldis0.Ifthebidparticipatedintheauctionand//therewasawaterfall,thevalueofthisfieldisapricerepresentinga//samplebidfromtheeligiblemediationnetworksthatwerehigherthanthe//auctionwinner,weightedbyexpectedfillrate.Thisfieldcanbeused//inconjunctionwithminimum_bid_to_wintotrainbiddingmodels.TheCPM//isinyouraccountcurrency.optionaldoublesampled_mediation_cpm_ahead_of_auction_winner=8;messageEventNotificationToken{//Thecontentsofthetoken.optionalstringpayload=1;}//Thetokenincludedinthecorrespondingbid.optionalEventNotificationTokenevent_notification_token=4;//ThecreativeIDincludedinthecorrespondingbid.optionalstringbuyer_creative_id=5;}
এই মেসেজ থেকে, আপনাকে প্রথমে যে ফিল্ডটি চেক করতে হবে সেটি হল
bid_feedback.creative_status_code; আপনি কোডের অর্থ
creative-status-codes.txt-এ খুঁজে পেতে পারেন। মনে রাখবেন, আপনি বিড জিতলে, দাম সংক্রান্ত মতামত
দেওয়া থেকে অপ্ট-আউট করতে পারবেন। আরও তথ্যের জন্য, কীভাবে
অপ্ট-আউট করবেন তা দেখুন।
রিয়েল-টাইম ফিডব্যাকে বিড অনুরোধ আইডি এবং নিম্নলিখিতগুলির মধ্যে একটি
অন্তর্ভুক্ত থাকে:
নিলামের ফলাফল
রিয়েল-টাইম ফিডব্যাক
ক্রেতা বিড জমা দেননি।
কিছুই না।
নিলামে পৌঁছানোর আগে ক্রেতা এমন একটি বিড জমা দিয়েছেন যা ফিল্টার করে দেওয়া হয়েছে।
ফার্স্ট-প্রাইস নিলামে বিড প্লেস করার পরে, নিলাম থেকে বিডটি
ফিল্টার করা না হলে, আপনি minimum_bid_to_win এবং
sampled_mediation_cpm_ahead_of_auction_winner ফিল্ড সহ রিয়েল-টাইম
ফিডব্যাক পাবেন। ইম্প্রেশন জেতার জন্য আপনার বিড কতটা বেশি বা কম হতে পারত সেই সম্পর্কে আপনার বিডিং লজিককে জানাতে এইসব সিগন্যাল ব্যবহার করা যেতে পারে।
minimum_bid_to_win: রিয়েল-টাইম বিডিং নিলামে জেতার জন্য
ন্যূনতম যে বিড করা যেত। আপনি নিলাম জিতলে, এটি হবে
সবচেয়ে কম বিড যা আপনি জেতার পরেও দিতে পারতেন। আপনি নিলামে হেরে গেলে, এটিই হবে জয়ী বিড।
sampled_mediation_cpm_ahead_of_auction_winner: মধ্যস্থতা চেনে
অন্য নেটওয়ার্ক থাকলে,
এই ফিল্ডের ভ্যালু হল এমন একটি দাম যা উপযুক্ত মধ্যস্থতা নেটওয়ার্কের মধ্যে একটি থেকে স্যাম্পেল বিডকে দেখায়,
যা নিলাম বিজয়ীর থেকে বেশি ছিল, প্রত্যাশিত পূরণ রেট দ্বারা
ওয়েটেড। মধ্যস্থতা চেনের কোনও নেটওয়ার্ক পূরণ করবে বলে আশা করা না হলে অথবা প্রকাশক SDK
মধ্যস্থতা ব্যবহার না করলে, এটি ০ হিসেবে সেট করা হবে।
এটি কীভাবে কাজ করে
minimum_bid_to_win এবং
sampled_mediation_cpm_ahead_of_auction_winner-এর সম্ভাব্য মান নির্ধারণ করার জন্য ব্যবহৃত গণনা বর্ণনা করতে, প্রথমে আমাদের নিম্নলিখিত বিষয়গুলি
সংজ্ঞায়িত করতে হবে:
নিম্নলিখিত তালিকাটি মধ্যস্থতা চেনে CPM-এর বড় থেকে ছোট ক্রম অনুসারে সাজানো:
\[C_1, C_2, …, C_n\]
মিডিয়েশন চেনে CPM-এর জন্য সংশ্লিষ্ট ফিল রেট নিচে দেখানো হয়েছে:
\[f_1, f_2, …, f_n\]
প্রদত্ত ফিল রেটের উপর ভিত্তি করে, নিম্নলিখিত ফাংশনটি প্রত্যাশিত CPM এবং মিডিয়েশন চেইন এলিমেন্ট \(i\)থেকে এর সম্ভাবনা নির্ধারণ করতে ব্যবহৃত হয়:
\(X_i = \{C_i\) সম্ভাব্যতা সহ \(f_i\); \(0\) সম্ভাব্যতা সহ \(1 - f_i\}\)
চূড়ান্ত বিজয়ী মিডিয়েশন চেন হবে:
\[\{C_1, C_2, …, C_K, W\}\]
বিজেতা বিড \(W\) কোথায় আছে এবং \(C_K > W >= C_{K+1}\)
রিজার্ভ প্রাইস বা সর্বনিম্ন মূল্যকে \(F\)হিসেবে দেখানো হয়।
রানার-আপ বিডকে \(R\)হিসেবে দেখানো হয়েছে।
নিলামে বিজয়ীর জন্য গণনা
ফিল্ড
হিসেব
minimum_bid_to_win
\(max\{F, R, X_{K+1}, …, X_n\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(\{C_i\) সম্ভাবনা সহ \(\prod_{j=1}^{i-1}(1-f_j) \cdot f_i \div \prod_{j=1}^{K}(1-f_j)\}\)
\(1 <= i <= K\)-এর জন্য।
নিলামে হেরে যাওয়া ব্যক্তির জন্য গণনা
ফিল্ড
হিসেব
minimum_bid_to_win
\(max\{F, W\}\)
sampled_mediation_cpm_ahead_ of_auction_winner
\(max\{X_1, …, X_K\}\)
সহজ মধ্যস্থতা চেনের উদাহরণ
ধরে নিন, কোনও প্রকাশক নিম্নলিখিত পদ্ধতি অনুসরণ করে রিয়েল-টাইম বিডিং এবং SDK মধ্যস্থতা চেইন, দুটিই ব্যবহার করেন:
SDK মধ্যস্থতা চেন
প্রত্যাশিত CPM
ফিল রেট
নেটওয়ার্ক ১
\(C_1 = $3.00\)
\(f_1 = 5\%\)
নেটওয়ার্ক ২
\(C_2 = $2.00\)
\(f_2 = 45\%\)
নেটওয়ার্ক ৩
\(C_3 = $0.50\)
\(f_3 = 80\%\)
Network 4
\(C_4 = $0.10\)
\(f_4 = 85\%\)
RTB নিলামের ফলাফল হিসেবে নিম্নলিখিত বিষয়গুলি ধরে নিন:
RTB নিলাম
CPM
নিলামের বিজয়ী (W)
$১.০০
নিলামে রানার-আপ (R)
$০.০৫
রিজার্ভ মূল্য / ফ্লোর (F)
$০
নিলামে জেতা বিড
নিচে একটি উদাহরণ দেওয়া হল যেখানে দেখানো হয়েছে যে কীভাবে
minimum_bid_to_win এবং
sampled_mediation_cpm_ahead_of_auction_winner-এর ভ্যালু এবং সম্ভাবনা
জয়ী বিডের জন্য গণনা করা হয়।
যেসব
বিড জেতা যায়নি, সেগুলির জন্য
minimum_bid_to_win ও
sampled_mediation_cpm_ahead_of_auction_winner-এর ভ্যালু ও সম্ভাব্যতা কীভাবে গণনা করা হয়, তার একটি উদাহরণ নিচে দেওয়া হল।
minimum_bid_to_win
সম্ভাব্যতা
\(max(F, W) = $1.00\)
\(100\%\)
sampled_mediation_cpm_ ahead_of_auction_winner
সম্ভাব্যতা
\(C_1 = $3.00\)
\(f_1 = 5\%\)
\(C_2 = $2.00\)
\((1-f_1) \cdot f_2 =~ 42.8\%\)
\(0\)
\((1-f_1) \cdot (1-f_2) =~ 52.2\%\)
বিড ফ্ল্যাটেনিং
বিড ফ্ল্যাটেনিং হল একটি জটিল
BidRequest বিড অনুরোধকে একাধিক বিড অনুরোধে প্রসেস করা যা আপনার
অ্যাপ্লিকেশনে পাঠানো হয়। বিড অনুরোধ ফ্ল্যাটেন করা হলে, আপনি বলতে পারবেন যে কোন বিড অনুরোধ
আসল অনুরোধের অংশ ছিল কারণ BidRequest.ext.google_query_id ফিল্ডে
সেগুলির অভিন্ন ভ্যালু থাকবে।
বিড ফ্ল্যাটেনিং ডিফল্ট হিসেবে চালু করা থাকে, তবে আপনি এটি বন্ধ করতে চাইলে আপনার অ্যাকাউন্ট
ম্যানেজারের সাথে যোগাযোগ করতে পারেন।
বিজ্ঞাপনের ফর্ম্যাট
কিছু বিজ্ঞাপনের সুযোগে একাধিক ফর্ম্যাট ব্যবহার করা যেতে পারে। বিড ফ্ল্যাটেনিংয়ের মাধ্যমে, প্রতিটি
ফর্ম্যাট আলাদা বিড অনুরোধে পাঠানো হয় যেখানে উপযুক্ত বিলিং আইডির মতো অ্যাট্রিবিউট
অনুরোধে নির্দিষ্ট করা ফর্ম্যাটের সাথে প্রাসঙ্গিক।
নিচে উল্লেখ করা ফর্ম্যাট সহ বিডের অনুরোধগুলিকে আলাদা আলাদা বিডের অনুরোধে
ফ্ল্যাটেন করা হবে:
ব্যানার
ভিডিও
অডিও
নেটিভ
বিজ্ঞাপন ফর্ম্যাট ফ্ল্যাটেনিংয়ের উদাহরণ
নিচে একটি উদাহরণ দেওয়া হল যেখানে বিজ্ঞাপন
ফর্ম্যাট ফ্ল্যাটেনিং ছাড়া একটি সরলীকৃত OpenRTB JSON বিড অনুরোধ দেখানো হয়েছে, এটি ফ্ল্যাটেন করা অনুরোধের সমতুল্য সেটের সাথে তুলনা করা হয়েছে:
কোনও নির্দিষ্ট বিডারের জন্য বিজ্ঞাপনের সুযোগ ওপেন অকশন ছাড়াও বিভিন্ন ধরনের ডিলের ক্ষেত্রে প্রযোজ্য হতে পারে। ডিলের জন্য বিড ফ্ল্যাটেনিংয়ের মাধ্যমে, ওপেন অকশনের জন্য একটি বিড
অনুরোধ পাঠানো হবে এবং প্রতিটি ধরনের নির্দিষ্ট দামের ডিলের জন্য
একটি করে পাঠানো হবে। বাস্তবে, বিজ্ঞাপন সংক্রান্ত বিধিনিষেধ নিলাম ও নির্দিষ্ট মূল্য
ডিলের ধরনের মধ্যে আলাদা হতে পারে, যেমন, কোনও প্রদত্ত ভিডিও বিজ্ঞাপন দেখানোর সুযোগ যা
ওপেন নিলাম ও নির্দিষ্ট মূল্য ডিল, দু'টির ক্ষেত্রেই উপলভ্য, বিডার প্রতিটি ক্ষেত্রে আলাদা আলাদা
বিড অনুরোধ পাবে যেখানে বিজ্ঞাপনের সর্বাধিক সময়সীমা ও স্কিপ করা যায় এমন বিজ্ঞাপন
দেখানোর অনুমতি আছে কিনা, এই ধরনের বিধিনিষেধ আলাদা হতে পারে। এর ফলে, বিজ্ঞাপনের সুযোগে ফ্ল্যাটেনিং প্রয়োগ করা হলে, আপনি ওপেন
নিলাম ও বাঁধা দামের ডিলের জন্য বিজ্ঞাপনের সীমাবদ্ধতা আরও সহজে বুঝতে পারবেন।
স্কিপ করা যায় কিনা এবং ভিডিওর সময়সীমা
এড়িয়ে যাওয়া যায় এবং এড়িয়ে যাওয়া যায় না এমন বিজ্ঞাপনের ক্ষেত্রে ভিডিওর সর্বাধিক সময়সীমা
উল্লেখ করার জন্য OpenRTB স্পেসিফিকেশনে আলাদা ফিল্ড নেই। Google-এর প্রয়োগ
এগুলির মধ্যে পার্থক্য করতে বিড ফ্ল্যাটেনিং ব্যবহার করে, এর জন্য আগে থেকে থাকা
BidRequest.video.maxduration এবং
BidRequest.video.skip ফিল্ড ব্যবহার করা হয়।
এড়িয়ে যাওয়া যায় না এমন বিজ্ঞাপনের সর্বাধিক সময়সীমা 15 এবং এড়িয়ে যাওয়া যায় এমন বিজ্ঞাপনের সর্বাধিক
সময়সীমা 60 হলে, ভিডিও ইনভেনটরি কীভাবে ফ্ল্যাটেন করা হয় তার একটি উদাহরণ নিচে দেওয়া হল।
উদাহরণ
max_ad_duration
skip (সঠিক অথবা ভুল)
ফ্ল্যাটেনিং ছাড়া আসল অনুরোধ
15
true
ফ্ল্যাট করা অনুরোধ #১: স্কিপ করা যাবে না
15
false
ফ্ল্যাটেন করা অনুরোধ #২: এড়িয়ে যাওয়া যাবে
60
true
এড়িয়ে যাওয়া যায় এমন ভিডিওর সময়সীমার বিড অনুরোধ ফ্ল্যাটেনিং শুধুমাত্র তখনই করা হবে যখন
এই শর্তগুলি পূরণ করা হবে:
অনুরোধে ভিডিওর অনুমতি দেওয়া হয়েছে।
স্কিপ করা যায় ও যায় না, দুটি ধরনের ভিডিওই অনুমোদিত এবং দুটি ভিডিওর সর্বাধিক সময়সীমা
আলাদা আলাদা হয়।
এই অনুরোধটি প্রাইভেট অকশন বা ওপেন অকশনের জন্য উপযুক্ত।
আপনার টেকনিক্যাল অ্যাকাউন্ট ম্যানেজারের সাথে যোগাযোগ করে আপনি এই ধরনের ফ্ল্যাটেনিং থেকে অপ্ট-আউট করতে পারবেন। বন্ধ করা থাকলে এবং প্রকাশকের অনুমতি অনুযায়ী এড়িয়ে যাওয়া যায় ও
এড়িয়ে যাওয়া যায় না এমন ভিডিও বিজ্ঞাপনের সর্বাধিক সময়সীমা আলাদা আলাদা হলে, এড়িয়ে যাওয়ার সুবিধা অনুযায়ী
skiptrue হিসেবে সেট করা হবে এবং
maxduration এড়িয়ে যাওয়া যায় ও এড়িয়ে যাওয়া যায় না এমন বিজ্ঞাপনের মধ্যে
যেটির সময়সীমা কম সেটি হিসেবে সেট করা হবে।
ভিডিও পড
একাধিক বিজ্ঞাপনের সুযোগ সহ ভিডিও পডের জন্য বিডের অনুরোধ ফ্ল্যাটেন করা হয়,
যাতে প্রতিটি বিডের অনুরোধ সেই পড থেকে একটি স্বতন্ত্র বিজ্ঞাপনের সুযোগের জন্য হয়।
এটি আপনাকে নির্দিষ্ট পডের জন্য একাধিক বিজ্ঞাপনের সুযোগে বিড করতে দেয়।
পরিমাপ খুলুন
Open Measurement আপনাকে থার্ড-পার্টি ভেন্ডর নির্দিষ্ট করতে দেয়, যা মোবাইল অ্যাপ
এনভায়রনমেন্টে পরিবেশিত বিজ্ঞাপনের জন্য
স্বতন্ত্র পরিমাপ ও যাচাইকরণ পরিষেবা প্রদান করে।
বিড অনুরোধে কোনও প্রকাশক ওপেন মেজারমেন্ট সমর্থন করে কিনা তা আপনি নির্ধারণ করতে পারেন। এর জন্য আপনাকে চেক করতে হবে যে বিজ্ঞাপনের সুযোগে OmsdkType:
OMSDK 1.0 অ্যাট্রিবিউট বাদ দেওয়া হয়েছে কিনা। এই অ্যাট্রিবিউট প্রকাশক-বাদ দিতে পারে এমন ক্রিয়েটিভ অ্যাট্রিবিউট-এ পাওয়া যায়। এটি ফর্ম্যাটের উপর নির্ভর করে ব্যানার
বা ভিডিও-এর জন্য battr
অ্যাট্রিবিউটের অধীনে
পাওয়া যাবে।
ওপেন মেজারমেন্ট সিগন্যাল সহ বিড অনুরোধ কীভাবে ব্যাখ্যা করতে হয় সেই সম্পর্কে আরও তথ্যের জন্য, ওপেন মেজারমেন্ট
SDK সহায়তা কেন্দ্র নিবন্ধ দেখুন।
বিডিংয়ের অনুরোধের নমুনা
নিম্নলিখিত বিভাগে বিভিন্ন ধরনের বিজ্ঞাপনের জন্য বিড অনুরোধের নমুনা দেখানো হয়েছে।
[null,null,["2026-10-15 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],["Bid requests are HTTP POSTs using OpenRTB Protobuf, replacing the deprecated Google RTB protocol. Parsing involves `ParseFromString()` to access fields in the `BidRequest` object. Billing IDs, found in `BidRequest.imp.ext.billing_id` and `BidRequest.imp.pmp.deal.ext.billing_id`, must be specified in `BidResponse.seatbid.bid.ext.billing_id`. Key information comes from dictionary files. Bid URL macros dynamically insert `BidRequest` data. Complex bid requests can be broken into simpler, flattened requests per format or deal, such as skippable/non-skippable video ads, or video pods. Bidders get real-time feedback. The provided sample requests are used to help the process.\n"]]