شناسهی جایگاه
شناسهای که پنل ناشر یکتانت برای هر جایگاه نشان میدهد، همان شناسهای نیست که در positions[].id درخواست فرستاده میشود. شناسهی درخواست از جمع شناسهی پنل با یک عدد ثابت به دست میآید که به نوع جایگاه بستگی دارد:
| نوع جایگاه | عدد ثابت | شناسهی درخواست |
|---|---|---|
| همسان (native) | 4294967296 (232) | شناسهی پنل + 4294967296 |
| بنری (banner) | 8589934592 (233) | شناسهی پنل + 8589934592 |
مثلاً جایگاه همسانی که در پنل شناسهی 6224 دارد، در درخواست با شناسهی 4294973520 فرستاده میشود. اگر همان عدد 6224 یک جایگاه بنری بود، شناسهی درخواست 8589940816 میشد.
محاسبهگر
نوع جایگاه
نمونهی پیادهسازی
const NATIVE_ID_OFFSET = 4294967296; // 2^32
const BANNER_ID_OFFSET = 8589934592; // 2^33
// panelPositionId: شناسهای که در پنل ناشر نمایش داده میشود
function servedPositionId(panelPositionId, isBanner) {
return panelPositionId + (isBanner ? BANNER_ID_OFFSET : NATIVE_ID_OFFSET);
}
servedPositionId(6224, false); // 4294973520
نوع عددی
شناسهی درخواست از 232 بزرگتر است و در int32 جا نمیشود. در زبانهایی مثل Java، Kotlin، Swift و Go آن را long / Int64 نگه دارید. در JavaScript عدد معمولی (Number) کافی است.
نکتهها
- شناسهی درخواست را یک بار حساب کنید و در تنظیمات اپ یا سایت خود نگه دارید؛ لازم نیست در هر درخواست دوباره حساب شود.
- آفست را فقط یک بار اضافه کنید. شناسهی پنل همیشه از 232 کوچکتر است، پس عددی بزرگتر از آن احتمالاً خودش شناسهی نهایی است.
- در پاسخ هم
positions[].idهمان شناسهی درخواست است؛ برای پیدا کردن جایگاه در پاسخ، آن را با همان عددی که فرستادهاید مقایسه کنید. - اگر نوع جایگاه را اشتباه انتخاب کنید، شناسهی درخواست به جایگاه شما اشاره نمیکند. اگر از نوع جایگاه مطمئن نیستید، از تیم ناشرین یکتانت بپرسید.