এই নির্দেশিকাটি বিজ্ঞাপন পড সেগমেন্ট পদ্ধতি ব্যবহার করে বিজ্ঞাপন বা স্লেট বিভাগগুলির অনুরোধ করার জন্য আপনার ম্যানিফেস্ট ম্যানিপুলেটরকে কনফিগার করা কভার করে৷
একটি স্ট্রিমিং প্রোটোকল নির্বাচন করুন:
পূর্বশর্ত
আপনি চালিয়ে যাওয়ার আগে, আপনাকে পড সার্ভিং রিডাইরেক্ট ডায়নামিক অ্যাড ইনসার্শন (DAI) টাইপ এবং এনকোডিং প্রোফাইলের জন্য একটি লাইভস্ট্রিম ইভেন্ট সেট আপ করতে হবে। একটি লাইভস্ট্রিম ইভেন্ট সেট আপ করতে, নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটি বেছে নিন:
- অ্যাড ম্যানেজার UI: DAI-এর জন্য একটি লাইভস্ট্রিম সেট আপ করুন ।
- Ad Manager API:
LiveStreamEventService.createLiveStreamEvents
পদ্ধতিতে কল করতে একটি ক্লায়েন্ট লাইব্রেরি ব্যবহার করুন।LiveStreamEvent.dynamicAdInsertionType
প্যারামিটারPOD_SERVING_REDIRECT
এ সেট করুন।
আপনি লাইভস্ট্রিম ইভেন্ট সেট আপ করার পরে, DaiEncodingProfileService.getDaiEncodingProfilesByStatement
পদ্ধতিতে কল করে Ad Manager UI বা API থেকে ইভেন্টের এনকোডিং প্রোফাইলগুলি পুনরুদ্ধার করুন৷
বিষয়বস্তু স্ট্রীম পুনরুদ্ধার করুন
যখন একজন ব্যবহারকারী একটি লাইভস্ট্রিম ইভেন্ট নির্বাচন করেন, তখন ক্লায়েন্ট অ্যাপ Google অ্যাড ম্যানেজারকে একটি স্ট্রিম অনুরোধ করে। স্ট্রিম প্রতিক্রিয়াতে, অ্যাপটি স্ট্রীম ম্যানিফেস্ট অনুরোধে অন্তর্ভুক্ত করার জন্য Google DAI সেশন আইডি এবং মেটাডেটা বের করে।
নিম্নলিখিত উদাহরণটি একটি ম্যানিফেস্ট ম্যানিপুলেটরকে একটি Google DAI সেশন আইডি পাস করে:
https://MANIFEST_MANIPULATOR_URL/manifest.m3u8?DAI_stream_ID=SESSION_ID&network_code=NETWORK_CODE&DAI_custom_asset_key=CUSTOM_ASSET_KEY
ভিডিও সামগ্রী প্লেব্যাক অনুরোধ প্রক্রিয়া করার সময়, বিজ্ঞাপন সেলাইয়ের জন্য প্রস্তুত করার অনুরোধ থেকে Google DAI সেশন আইডি এবং CUSTOM_ASSET_KEY সংরক্ষণ করুন৷
বিজ্ঞাপন বিরতি বিভাগগুলি সনাক্ত করুন এবং বিরতিগুলি সন্নিবেশ করুন৷
আপনি প্রতিটি বৈকল্পিক ম্যানিফেস্ট প্রক্রিয়া করার সময়, আপনার স্ট্রীমে EXT-X-CUE-IN
এবং EXT-X-CUE-OUT
ট্যাগগুলি সনাক্ত করুন, একটি বিজ্ঞাপন বিরতির শুরু এবং শেষ নির্দেশ করে৷
ক্লায়েন্ট ভিডিও প্লেয়ারের বিষয়বস্তু এবং বিজ্ঞাপনের মধ্যে স্যুইচ করার জন্য EXT-X-CUE-IN
এবং EXT-X-CUE-OUT
ট্যাগগুলিকে EXT-X-DISCONTINUITY
উপাদানগুলির সাথে প্রতিস্থাপন করুন৷
নিম্নলিখিত উদাহরণ ম্যানিফেস্ট EXT-X-CUE-IN
এবং EXT-X-CUE-OUT
ট্যাগগুলিকে প্রতিস্থাপন করে:
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.000,
contentorigin.com/1.ts
#EXTINF:5.000,
contentorigin.com/2.ts
#EXT-X-CUE-OUT:15.000
#EXTINF:5.000,
contentorigin.com/3.ts
#EXTINF:5.000,
contentorigin.com/4.ts
#EXTINF:5.000,
contentorigin.com/5.ts
#EXT-X-CUE-IN
#EXTINF:5.000,
contentorigin.com/6.ts
#EXTINF:5.000,
contentorigin.com/7.mp4
#EXTINF:5.000,
contentorigin.com/8.mp4
নিম্নলিখিত উদাহরণ একটি প্রতিস্থাপিত ম্যানিফেস্ট দেখায়:
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.000,
contentorigin.com/1.ts
#EXTINF:5.000,
contentorigin.com/2.ts
#EXTINF:5.000,
#EXT-X-DISCONTINUITY
{... Insert ad segments here ...}
#EXT-X-DISCONTINUITY
#EXTINF:5.000,
contentorigin.com/6.mp4
#EXTINF:5.000,
contentorigin.com/7.mp4
#EXTINF:5.000,
contentorigin.com/8.mp4
Google DAI বিজ্ঞাপন বিভাগ এনক্রিপ্ট করা হয় না। আপনার বিষয়বস্তু এনক্রিপ্ট করা থাকলে, প্রতিটি বিজ্ঞাপন বিরতির প্রথম বিজ্ঞাপন অংশের আগে EXT-X-KEY:METHOD=NONE
উপাদান সন্নিবেশ করে এনক্রিপশন সরান। বিজ্ঞাপন বিরতির শেষে, একটি উপযুক্ত EXT-X-KEY
সন্নিবেশ করে এনক্রিপশন আবার যোগ করুন।
আসন্ন বিজ্ঞাপন বিরতির শুরুর সময়, সময়কাল এবং সূচির উপর নজর রাখুন।
একটি হ্যাশ-ভিত্তিক বার্তা প্রমাণীকরণ কোড (HMAC) টোকেন তৈরি করুন
সেগমেন্ট রিডাইরেক্ট পড সার্ভিং ব্যবহার করে করা প্রতিটি সেগমেন্টের অনুরোধে অবশ্যই প্রমাণীকরণের জন্য একটি HMAC- স্বাক্ষরিত টোকেন অন্তর্ভুক্ত করতে হবে।
প্রতি বিজ্ঞাপন বিরতিতে একবার এই টোকেনটি গণনা করুন এবং সমস্ত স্ট্রিম সেশন জুড়ে টোকেন ভাগ করুন৷
টোকেন প্যারামিটার সংগ্রহ করুন
টোকেন বডি পূরণ করতে, বর্তমান বিজ্ঞাপন বিরতি থেকে নিম্নলিখিতগুলি সংগ্রহ করুন:
টোকেন প্যারামিটার | ||
---|---|---|
custom_asset_key | প্রয়োজন | Google Ad Manager থেকে কাস্টম লাইভস্ট্রিম সম্পদ কী। |
cust_params | ঐচ্ছিক | কাস্টম টার্গেটিং পরামিতি। cust_params দেখুন। |
exp | প্রয়োজন | সেকেন্ডে বর্তমান টোকেনের মেয়াদ শেষ হওয়ার টাইমস্ট্যাম্প। |
network_code | প্রয়োজন | Ad Manager 360 নেটওয়ার্ক কোড। |
pod_id | প্রয়োজন | বিজ্ঞাপন বিরতির জন্য শনাক্তকারী. 1 থেকে শুরু হওয়া একটি পূর্ণসংখ্যা। প্রতিটি বিজ্ঞাপন বিরতির জন্য, এই শনাক্তকারী এক দ্বারা বৃদ্ধি পায়।বর্তমান ইভেন্টে একই বিজ্ঞাপন বিরতি দেখার সমস্ত ব্যবহারকারীদের মধ্যে এই মান অবশ্যই একই হতে হবে। |
pd | প্রয়োজন, সময়কাল-কম বিজ্ঞাপন বিরতি সক্ষম ইভেন্ট ছাড়া। | বিজ্ঞাপন বিরতির মিলিসেকেন্ডে সময়কাল। ad_pod_duration হিসাবে উল্লেখ করা হয়েছে। | scte35 | ঐচ্ছিক | Base64-এনকোডেড SCTE-35 সংকেত। Google DAI সবসময় সিগন্যালটি তৈরি করা বিজ্ঞাপন বিরতিতে কপি করে, এমনকি সিগন্যালটি ভুল হলেও। যদি ভুল হয়, আপনি প্রতিক্রিয়াতে X-Ad-Manager-Dai-Warning HTTP শিরোনামে একটি বার্তা পাবেন এবং সংকেতটি এখনও একটি বিজ্ঞাপন বিরতি তৈরি করতে থাকে। কিভাবে DAI SCTE-35 সিগন্যাল ব্যবহার করে তার বিস্তারিত জানার জন্য, সমর্থিত বিজ্ঞাপন মার্কার দেখুন। |
টোকেন স্ট্রিং তৈরি করুন
একটি টোকেন স্ট্রিং তৈরি করতে, প্রতিটি প্যারামিটারকে বর্ণানুক্রমিক ক্রমে তালিকাভুক্ত করুন, NAME = VALUE
বিন্যাসে, প্রতিটি নাম-মানের জোড়া একটি ~
টিল্ড অক্ষর দ্বারা পৃথক করুন৷
অব্যবহৃত ঐচ্ছিক পরামিতিগুলির জন্য, মান হিসাবে একটি খালি স্ট্রিং ব্যবহার করুন, অথবা সম্পূর্ণরূপে প্যারামিটারটি সরান৷
নিম্নলিখিত উদাহরণ একটি টোকেন স্ট্রিং ফর্ম্যাট করে:
custom_asset_key=CUSTOM_ASSET_STRING~exp=EXPIRATION~network_code=NETWORK_CODE~pd=POD_DURATION~pod_id=AD_POD_INDEX~scte35=SCTE35_MESSAGE
HMAC স্বাক্ষর তৈরি করুন
HMAC স্বাক্ষর হল HEX বিন্যাসে টোকেন স্ট্রিংয়ের একটি SHA-256 হ্যাশ। গোপন কী হল HMAC প্রমাণীকরণ কী Google Ad Manager-এ আপনার লাইভস্ট্রিম ইভেন্টের সাথে যুক্ত।
সাইন টোকেন স্ট্রিং
আপনি HMAC স্বাক্ষর তৈরি করার পরে, নিম্নলিখিত বিন্যাসে টোকেন স্ট্রিংটিতে স্বাক্ষর যুক্ত করুন:
~hmac=HMAC_SIGNATURE
টোকেন স্ট্রিং এনকোড করুন
ইউআরএল প্যারামিটার হিসেবে টোকেন পাস করতে, নিরাপত্তার জন্য ইউআরএল এনকোড করুন।
নিম্নলিখিত উদাহরণটি একটি স্বাক্ষরিত এবং এনকোড করা HMAC টোকেন তৈরি করে যেখানে অব্যবহৃত ঐচ্ছিক পরামিতিগুলি খালি স্ট্রিং হয়:
custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~cust_params=~exp=1489680000~network_code=6062~pd=180000~pod_id=5~scte35=
Secret key:
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
HMAC signature:
86d7e5f8c96fe4c83141d764df376ae14a0e2066f2e6b2ccfb9e1e2d3c869a88
Signed token:
custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~cust_params=~exp=1489680000~network_code=6062~pd=180000~pod_id=5~scte35=~hmac=86d7e5f8c96fe4c83141d764df376ae14a0e2066f2e6b2ccfb9e1e2d3c869a88
URL-encoded signed token:
custom_asset_key%3DiYdOkYZdQ1KFULXSN0Gi7g~cust_params%3D~exp%3D1489680000~network_code%3D6062~pd%3D180000~pod_id%3D5~scte35%3D~hmac%3D86d7e5f8c96fe4c83141d764df376ae14a0e2066f2e6b2ccfb9e1e2d3c869a88
নিম্নলিখিত উদাহরণটি অব্যবহৃত ঐচ্ছিক পরামিতি ছাড়া একটি স্বাক্ষরিত এবং এনকোড করা HMAC টোকেন তৈরি করে:
custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g3~exp=1489680000~network_code=6062~pd=180000~pod_id=5
Secret key:
A7490591290583E4B93189DEE7E287C299FC686872ABC7ADC9F9F536443505F
HMAC signature:
6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9
Signed token:
custom_asset_key=iYdOkYZdQ1KFULXSN0Gi7g~exp=1489680000~network_code=6062~pd=180000~pod_id=5~hmac=6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9
URL-encoded signed token:
custom_asset_key%3DiYdOkYZdQ1KFULXSN0Gi7g~exp%3D1489680000~network_code%3D6062~pd%3D180000~pod_id%3D5~hmac%3D6a8c44c72e4718ff63ad2284edf2a8b9e319600b430349d31195c99b505858c9
বিজ্ঞাপন সেগমেন্ট URL গুলি তৈরি করুন৷
EXT-X-DISCONTINUITY
ট্যাগের মধ্যে প্রতিটি বিষয়বস্তুর সেগমেন্টকে বিজ্ঞাপন পড সেগমেন্ট পদ্ধতির দিকে নির্দেশ করে এমন একটি URL দিয়ে প্রতিস্থাপন করুন।
নিম্নলিখিত উদাহরণটি একটি বিজ্ঞাপন পড সেগমেন্টকে একত্রিত করে। নোট করুন যে বিজ্ঞাপন বিভাগগুলি একটি শূন্য-ভিত্তিক সূচক ব্যবহার করে:
https://dai.google.com/linear/pods/v1/seg/network/NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/0.ts?sd=AD_SEGMENT_DURATION&pd=AD_BREAK_DURATION&stream_id=SESSION_ID&auth-token=HMAC
নিম্নলিখিত উদাহরণটি ম্যানিফেস্টে বিজ্ঞাপন পড বিভাগগুলি সন্নিবেশিত করে:
#EXTM3U
#EXT-X-VERSION:6
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:5.00,
contentorigin.com/1.ts
#EXTINF:5.00,
contentorigin.com/2.ts
#EXT-X-DISCONTINUITY
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/0.ts?sd=5000&so=0&pd=15000&stream_id=SESSION_ID
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/1.ts?sd=5000&so=5000&pd=15000&stream_id=SESSION_ID
#EXTINF:5.00,
https://dai.google.com/linear/pods/v1/seg/network/
NETWORK_CODE/custom_asset/CUSTOM_ASSET_KEY/ad_break_id/AD_BREAK_ID/profile/ENCODING_PROFILE/2.ts?sd=5000&so=10000&pd=15000&stream_id=SESSION_ID
#EXT-X-DISCONTINUITY
#EXTINF:5.00,
contentorigin.com/6.mp4
#EXTINF:5.00,
contentorigin.com/7.mp4
#EXTINF:5.00,
contentorigin.com/8.mp4
ঐচ্ছিক: একটি বিজ্ঞাপন বিরতির সময় নির্ধারণ করুন
আপনার ফিল রেট বাড়াতে, বিজ্ঞাপন পডের সময়কাল, কাস্টম টার্গেটিং প্যারামিটার এবং SCTE-35 সিগন্যাল ডেটা সহ একটি আর্লি অ্যাড ব্রেক নোটিফিকেশন (EABN) পাঠান। আরও বিশদ বিবরণের জন্য, প্রথম দিকে বিজ্ঞাপন বিরতির বিজ্ঞপ্তি পাঠান দেখুন।