Hogyan olvassunk egy TCF hozzájárulási stringet: Terepi útmutató fejlesztőknek
Mi is valójában a TC string
Az IAB Transparency & Consent Framework egyetlen kompakt tokent állít elő — a TC stringet — amely minden hirdetési kéréssel utazik, és pontosan megmondja a beszállítóknak, hogy a felhasználó mihez járult hozzá és mihez nem. Base64-URL kódolású és bit szinten csomagolt, így halandzsának tűnik (CPxy...AAA), de pontos, auditálható rekordot kódol.
A szegmensek
Egy teljes TC string több pontokkal elválasztott szegmensből áll. Az első a core string; a többi opcionális:
- Core — CMP ID, CMP verzió, a hozzájárulási időbélyegek, a szabályzat verziója, és ami döntő, a cél-hozzájárulások és beszállítói hozzájárulások bitmezői.
- Közzétett beszállítók — mely beszállítókat mutatták be a felhasználónak.
- Publisher TC — kifejezetten Önre, a kiadóra vonatkozó hozzájárulások.
A bitmezők a lényege: az N bit 1-re állítása az N célhoz vagy N beszállítóhoz való hozzájárulást jelenti. Az 1. cél “információ tárolása/elérése egy eszközön”, a 3. és 4. cél a személyre szabott hirdetéseket fedi le, és így tovább.
Egy dekódolása a gyakorlatban
Ritkán dekódol bitenként kézzel. Használja az IAB által biztosított könyvtárakat vagy egy nyilvános dekódert:
- Bontsa a
.mentén, és Base64-URL-dekódolja a core szegmenst. - Olvassa be a rögzített szélességű fejlécmezőket (version, created, lastUpdated, cmpId, cmpVersion).
- Járja végig a cél- és beszállítói bitmezőket, hogy pontosan lássa, melyeket adták meg.
JavaScriptben a __tcfapi('getTCData', 2, cb) hívás a már elemzett objektumot adja vissza — a tcData.purpose.consents és tcData.vendor.consents id → boolean leképezések. Ez az Ön alapigazsága futásidőben.
A bevételt megölő hibák
Amikor a személyre szabott kereslet csendben eltűnik, általában a TC string az oka:
- Hiányzó string — a hirdetési kérés nem hordoz
gdprApplies/TC stringet, így a megfelelő SSP-k nem-személyre szabottra esnek vissza. - Beszállító nem járult hozzá — a kereslet-partnere beszállítói ID bitje 0, így nem tud személyre szabással licitálni.
- Lejárt vagy elavult string — egy régi időbélyeg miatt a lefelé eső platformok nem bíznak benne.
- Rossz CMP ID — egy nem regisztrált vagy teszt CMP ID érvényteleníti az egész stringet.
Egy hibakeresési munkafolyamat
Reprodukálja a felhasználó hozzájárulását, ragadja meg az élő TC stringet a __tcfapi-ból vagy a hirdetési kérésből, futtassa át egy validátoron, és hasonlítsa össze a dekódolt célokat/beszállítókat azzal, amit a partnerei megkövetelnek. Tízből kilenc esetben a hiányosság egyetlen beszállítói bit vagy egy hiányzó 1. cél.
Hol illeszkedik a FlexyConsent
A FlexyConsent specifikációnak megfelelő TC stringeket generál regisztrált CMP ID-val, frissen tartja őket, hibakereséshez elérhetővé teszi a dekódolt állapotot, és jelenti, hogy mely célokat és beszállítókat adnak meg ténylegesen a forgalmában — így láthatja, nem találgathatja, hol szivárog a hozzájárulás (és a bevétel).
Legfontosabb tanulságok
- A TC string minden hozzájárulási választás bit-csomagolt, auditálható rekordja.
- A cél- és beszállítói bitmezők döntik el, hogy a partnerek tudnak-e személyre szabott hirdetést kiszolgálni.
- A bevételcsökkenések többsége egy hiányzó stringre, egy hozzá nem járuló beszállítóra vagy egy elavult/érvénytelen CMP ID-ra vezethető vissza.
- Dekódolja az élő stringet a
__tcfapi-val, és hibakereséskor validálja a partner követelményeivel szemben.