IAB GPP string-ის გამართვა ბრაუზერის კონსოლში: ნაბიჯ-ნაბიჯ სახელმძღვანელო
რატომ არის GPP პრობლემების შემჩნევა რთული
როცა აშშ-ის ვიზიტორი უარს ამბობს თავისი მონაცემების გაყიდვაზე ან გაზიარებაზე, ეს არჩევანი გვერდზე არსებულ ყველა სარეკლამო პარტნიორამდე უნდა მივიდეს. IAB Global Privacy Platform-ის (GPP) შემთხვევაში ის მოგზაურობს კომპაქტური string-ისა და სექციის ID-ების სიის სახით. თუ რომელიმე მათგანი არასწორია — აკლია, მოძველებულია ან არასწორ სექციას შეიცავს — ხილულად არაფერი ფუჭდება. რეკლამები კვლავ იტვირთება, ბანერი კვლავ კარგად გამოიყურება და პრობლემა მხოლოდ მოგვიანებით ჩნდება იმით, რომ პარტნიორები opt-out-ებს უგულებელყოფენ ან თქვენს ინვენტარზე ნაკლებს სთავაზობენ.
კარგი ამბავი ისაა, რომ თითქმის ყველაფრის შემოწმება ბრაუზერის კონსოლიდან შეიძლება. ეს სახელმძღვანელო გადის შემოწმებებს იმ თანმიმდევრობით, როგორც ცოცხალ გვერდზე ჩავატარებდით.
ნაბიჯი 1: დარწმუნდით, რომ API არსებობს და მზადაა
GPP-თან თავსებადი CMP გვთავაზობს გლობალურ __gpp ფუნქციას. გახსენით DevTools თქვენს გვერდზე და გაუშვით ping ბრძანება:
__gpp('ping', function (data) { console.log(data); });
დაბრუნებული ობიექტი ერთი შეხედვით ბევრს გვეუბნება:
- gppVersion — მიმდინარე იმპლემენტაციებში უნდა იყოს 1.1.
- cmpStatus — ჩაიტვირთა თუ არა CMP ან შეცდომას გადააწყდა.
- cmpDisplayStatus — ბანერი ხილულია, დამალულია თუ გამორთულია ამ ვიზიტორისთვის.
- signalStatus — “ready”, როცა CMP თანხმობის მდგომარეობას დაადგენს, “not ready”, სანამ ჯერ კიდევ წყვეტს.
- supportedAPIs — სექციები, რომელთა წარმოქმნაც CMP-ს შეუძლია.
- applicableSections — სექციის ID-ები, რომლებიც ახლა ამ ვიზიტორზე ვრცელდება.
- gppString — თავად კოდირებული string.
თუ __gpp არის undefined, CMP stub აკლია ან ძალიან გვიან იტვირთება. Stub უნდა არსებობდეს ყველა სარეკლამო სკრიპტამდე, რომელიც მას ელოდება, წინააღმდეგ შემთხვევაში ეს სკრიპტები CMP-ს ვერ დაინახავენ და ან დაელოდებიან, ან სიგნალის გარეშე გააგრძელებენ.
ნაბიჯი 2: შეამოწმეთ მოქმედი სექცია
GPP-ში თითოეულ კონფიდენციალურობის ჩარჩოს აქვს რიცხვითი სექციის ID. გამომცემლები ყველაზე ხშირად ხვდებიან 2-ს (EU TCF v2), 5-ს (კანადური TCF), 7-ს (US National, “usnat”) და 8-დან შემდეგ ცალკეული შტატების სექციებს, როგორიცაა კალიფორნია, ვირჯინია, კოლორადო, იუტა და კონექტიკუტი. აშშ-ის შტატის ვიზიტორმა applicableSections-ში ჩვეულებრივ უნდა დაინახოს ეროვნული ან შესაბამისი შტატის სექცია და არა ევროკავშირის სექცია.
გატესტეთ რამდენიმე ლოკაციიდან. გავრცელებული შეცდომაა CMP, რომელიც ბანერისთვის გეოგრაფიას სწორად ადგენს, მაგრამ string-ში მაინც ნაგულისხმევ სექციას წერს, ან პირიქით. VPN-ის ან თქვენი CMP-ის გადახედვის ხელსაწყოების გამოყენებით შეადარეთ, რას აჩვენებს ბანერი იმას, რასაც applicableSections აბრუნებს.
ნაბიჯი 3: წაიკითხეთ სექციის მონაცემები
string-ის ხელით დეკოდირების ნაცვლად სთხოვეთ CMP-ს დამუშავებული სექცია:
__gpp('getSection', function (data, success) { console.log(data, success); }, 'usnat');
US National სექციაში opt-out ველები მარტივ კონვენციას იყენებს: 0 ნიშნავს არ ვრცელდება, 1 ნიშნავს, რომ მომხმარებელმა opt-out გააკეთა, 2 კი ნიშნავს, რომ მომხმარებელმა opt-out არ გააკეთა. ჯერ ამ ველებზე გაამახვილეთ ყურადღება:
- SaleOptOut და SharingOptOut
- TargetedAdvertisingOptOut
- შესაბამისი notice ველები, რომლებიც აფიქსირებს, მიეცა თუ არა ვიზიტორს შეტყობინება თითოეულ პრაქტიკაზე
ახლა გააკეთეთ opt-out გვერდზე — დააწკაპუნეთ თქვენს “Do Not Sell or Share” ბმულზე ან გადართეთ პარამეტრი პრეფერენციების ცენტრში — და ხელახლა გაუშვით getSection. opt-out ველები უნდა შეიცვალოს 2-დან 1-ზე. თუ არ შეიცვალა, UI და სიგნალი სინქრონში არ არის.
ნაბიჯი 4: გატესტეთ Global Privacy Control-ის გზა
რამდენიმე შტატის კანონი ბიზნესებისგან მოითხოვს, Global Privacy Control სიგნალი opt-out-ად მიიჩნიონ. ჩართეთ GPC ბრაუზერში ან გაფართოებაში, რომელიც მას უჭერს მხარს, დარწმუნდით, რომ navigator.globalPrivacyControl კონსოლში true-ს აბრუნებს, შემდეგ კი ჩატვირთეთ გვერდი ახალ სესიაში. შესაბამის opt-out ველებში უკვე 1 უნდა ეწეროს ისე, რომ ვიზიტორს ბანერისთვის არ შეხებია. ზოგიერთი სექცია ასევე შეიცავს ველს, რომელიც მიუთითებს, რომ არჩევანი GPC სიგნალიდან მოვიდა.
ნაბიჯი 5: დააკვირდით event-ებს და არა მხოლოდ სნეპშოტებს
სარეკლამო სკრიპტებმა string გვერდის ჩატვირთვისას ერთხელ არ უნდა წაიკითხონ და არ დაივიწყონ. დაარეგისტრირეთ listener, რომ ნახოთ, რას ხედავენ პარტნიორები:
__gpp('addEventListener', function (evt) { console.log(evt.eventName, evt.pingData); });
უნდა დააკვირდეთ ისეთ event-ებს, როგორიცაა listenerRegistered, signalStatus და sectionChange. როცა ვიზიტორი არჩევანს ცვლის, უნდა მოჰყვეს sectionChange event განახლებული string-ით. თუ თქვენი header bidding wrapper ან ad server-ის ინტეგრაცია string-ს მხოლოდ მანამ კითხულობს, სანამ signalStatus “ready” გახდება, მან შეიძლება ცარიელი ან მოძველებული მნიშვნელობა გაგზავნოს.
ნაბიჯი 6: გაჰყევით string-ს სარეკლამო მოთხოვნებში
და ბოლოს, გახსენით Network ჩანართი და გაფილტრეთ თქვენი სარეკლამო მოთხოვნები. ბევრი სარეკლამო endpoint იღებს gpp და gpp_sid პარამეტრებს (string და მოქმედი სექციების ID-ები). შეამოწმეთ, რომ:
- ორივე პარამეტრი არსებობს აშშ-ის ვიზიტორების მოთხოვნებზე;
- string ემთხვევა იმას, რაც ping-მა დააბრუნა მოთხოვნის მომენტში;
- opt-out-ის შემდეგ შემდგომი მოთხოვნები ახალ string-ს ატარებს და არა ქეშირებულს.
თუ იყენებთ Prebid.js-ს, დარწმუნდით, რომ მისი თანხმობის მართვის მოდული GPP-სთვისაა კონფიგურირებული და შეამოწმეთ როგორც wrapper-იდან გამავალი bid მოთხოვნები, ისე ad server-ის საბოლოო გამოძახება.
გავრცელებული გაუმართაობის შაბლონები
- Stub სარეკლამო ტეგების შემდეგ იტვირთება — პარტნიორები CMP-ს საერთოდ ვერ ხედავენ.
- არასწორი სექცია რეგიონისთვის — ევროკავშირის სექცია აშშ-ის ტრაფიკისთვის, ან სექცია საერთოდ არ არის.
- UI და სიგნალი სინქრონში არ არის — გადამრთველი იცვლება, string — არა.
- GPC უგულებელყოფილია — ბრაუზერის სიგნალი არასოდეს ხდება opt-out.
- მოძველებული string-ები მოთხოვნებში — wrapper ინახავს პირველ მნიშვნელობას, რომელიც ნახა.
მთავარი დასკვნები
- დაიწყეთ ping-ით: ვერსია, სტატუსი, მოქმედი სექციები და string ისტორიის უმეტეს ნაწილს გეუბნებათ.
- opt-out ველების წასაკითხად გამოიყენეთ getSection; 1 ნიშნავს opt-out-ს, 2 — opt-out არ გაკეთებულა.
- opt-out ბმული და GPC ცალ-ცალკე გატესტეთ და დარწმუნდით, რომ ორივე სიგნალს ცვლის.
- მოუსმინეთ event-ებს და დაელოდეთ “ready” სიგნალს, სანამ სარეკლამო მოთხოვნები string-ს წაიკითხავენ.
- გადაამოწმეთ gpp და gpp_sid რეალურ ქსელურ მოთხოვნებში, opt-out-მდე და მის შემდეგ.