כיצד לקרוא מחרוזת הסכמה של TCF: מדריך שטח למפתחים
מהי בעצם ה-TC string
ה-IAB Transparency & Consent Framework מייצר אסימון קומפקטי יחיד — ה-TC string — שנוסע עם כל בקשת פרסום ומספר לספקים בדיוק עם מה משתמש הסכים ועם מה לא. הוא מקודד ב-Base64-URL וארוז ברמת הסיביות, כך שהוא נראה כמו ג׳יבריש (CPxy...AAA) אך מקודד רשומה מדויקת וניתנת לביקורת.
המקטעים
TC string מלא הוא מספר מקטעים מופרדים בנקודות. הראשון הוא ה-core string; האחרים הם אופציונליים:
- Core — CMP ID, גרסת CMP, חותמות הזמן של ההסכמה, גרסת המדיניות, והכי חשוב שדות הביטים של הסכמות מטרה והסכמות ספק.
- ספקים שנחשפו — אילו ספקים הוצגו למשתמש.
- Publisher TC — הסכמות הספציפיות לך, המפרסם.
שדות הביטים הם הלב של העניין: סיבית N שמוגדרת ל-1 משמעה הסכמה למטרה N או לספק N. מטרה 1 היא “אחסון/גישה למידע במכשיר,” מטרות 3 ו-4 מכסות פרסומות מותאמות אישית, וכן הלאה.
פענוח אחת בפועל
נדיר שתפענח ביטים ביד. השתמש בספריות שמספק IAB או במפענח ציבורי:
- פצל לפי
.ופענח ב-Base64-URL את מקטע ה-core. - קרא את שדות הכותרת ברוחב קבוע (גרסה, created, lastUpdated, cmpId, cmpVersion).
- עבור על שדות הביטים של מטרה וספק כדי לראות בדיוק אילו ניתנו.
ב-JavaScript הקריאה __tcfapi('getTCData', 2, cb) מחזירה את האובייקט שכבר נותח — tcData.purpose.consents ו-tcData.vendor.consents הם מפות של id → בוליאני. זוהי אמת היסוד שלך בזמן ריצה.
השגיאות שהורגות הכנסות
כשביקוש מותאם אישית נעלם בשקט, ה-TC string הוא בדרך כלל הסיבה:
- מחרוזת חסרה — בקשת הפרסום אינה נושאת
gdprApplies/TC string, כך ש-SSP תואמים יורדים ללא-מותאם אישית. - ספק ללא הסכמה — סיבית מזהה הספק של שותף הביקוש שלך היא 0, כך שהם אינם יכולים להגיש הצעות עם התאמה אישית.
- מחרוזת שפגה או מיושנת — חותמת זמן ישנה גורמת לפלטפורמות במורד הזרם לא לבטוח בה.
- CMP ID שגוי — CMP ID לא רשום או של בדיקה מבטל את כל המחרוזת.
תהליך עבודה לאיתור תקלות
שחזר את ההסכמה של המשתמש, תפוס את ה-TC string החי מ-__tcfapi או מבקשת הפרסום, העבר אותו דרך מאמת, והשווה את המטרות/ספקים המפוענחים למה שהשותפים שלך דורשים. תשע מתוך עשר פעמים הפער הוא סיבית ספק יחידה או מטרה 1 חסרה.
היכן FlexyConsent משתלב
FlexyConsent יוצר מחרוזות TC עם מזהה ה-CMP המוסמך שלו 317 ומספק אותן דרך __tcfapi, כך שתוכלו לפענח את המחרוזת הנוכחית; הדוחות שלו מציגים החלטות לפי מקור ואזור.
נקודות מפתח
- ה-TC string הוא רשומה ארוזת-ביטים, ניתנת לביקורת, של כל בחירת הסכמה.
- שדות הביטים של מטרה וספק מחליטים אם שותפים יכולים להגיש פרסומות מותאמות אישית.
- רוב ירידות ההכנסות נובעות ממחרוזת חסרה, ספק ללא הסכמה, או CMP ID מיושן/לא תקף.
- פענח את המחרוזת החיה עם
__tcfapiואמת אותה מול דרישות השותפים בעת איתור תקלות.