ویژگیهای اضافی
Callback اتریبیوشن
میتوانید یک listener ثبت کنید تا از تغییرات اتریبیوشن ردیاب مطلع شوید. به دلیل منابع مختلفی که برای اتریبیوشن در نظر گرفته میشوند، این اطلاعات نمیتوانند بهصورت همزمان ارائه شوند. سادهترین روش ایجاد یک listener ناشناس است که هر بار که مقدار اتریبیوشن کاربر تغییر کند فراخوانی میشود:
با instance AdTraceConfig، قبل از راهاندازی SDK، listener ناشناس را اضافه کنید:
var adtraceConfig = new AdTraceConfig(appToken, environment);
adtraceConfig.setAttributionCallbackListener(function(attribution) {
// چاپ همه ویژگیهای اتریبیوشن.
console.log("Attribution changed!");
console.log(attribution.trackerToken);
console.log(attribution.trackerName);
console.log(attribution.network);
console.log(attribution.campaign);
console.log(attribution.adgroup);
console.log(attribution.creative);
console.log(attribution.clickLabel);
console.log(attribution.adid);
console.log(attribution.costType);
console.log(attribution.costAmount);
console.log(attribution.costCurrency);
});
AdTrace.create(adtraceConfig);
در تابع listener به پارامترهای attribution دسترسی دارید. خلاصهای از ویژگیهای آن:
trackerTokenتوکن ردیاب اتریبیوشن جاری.trackerNameنام ردیاب اتریبیوشن جاری.networkسطحبندی شبکه اتریبیوشن جاری.campaignسطحبندی کمپین اتریبیوشن جاری.adgroupسطحبندی گروه تبلیغاتی اتریبیوشن جاری.creativeسطحبندی creative اتریبیوشن جاری.clickLabelبرچسب کلیک اتریبیوشن جاری.adidشناسه دستگاه Adtrace.costTypeنوع هزینه.costAmountمقدار هزینه.costCurrencyارز هزینه.
اتریبیوشن کاربر
این Callback مانند بخش Callback اتریبیوشن، هر بار که اتریبیوشن تغییر کند اطلاعاتی ارائه میدهد. اگر میخواهید در هر زمان دیگری به وضعیت اتریبیوشن جاری کاربر دسترسی داشته باشید، میتوانید متد getAttribution را روی instance AdTrace فراخوانی کرده و Callback را بهعنوان پارامتر ارسال کنید:
AdTrace.getAttribution((attribution) => {
console.log("Tracker token = " + attribution.trackerToken);
console.log("Tracker name = " + attribution.trackerName);
console.log("Network = " + attribution.network);
console.log("Campaign = " + attribution.campaign);
console.log("Adgroup = " + attribution.adgroup);
console.log("Creative = " + attribution.creative);
console.log("Click label = " + attribution.clickLabel);
console.log("Adid = " + attribution.adid);
});
اطلاعات وضعیت اتریبیوشن جاری کاربر تنها پس از ردیابی نصب اپلیکیشن توسط backend Adtrace و فعالسازی Callback اتریبیوشن در دسترس است. از آن لحظه به بعد، Adtrace SDK اطلاعات اتریبیوشن کاربر را دارد. پس، امکان دسترسی به مقدار اتریبیوشن کاربر قبل از راهاندازی SDK و فعالسازی Callback اتریبیوشن وجود ندارد.
پارامترهای Session
برخی پارامترها برای ارسال در هر Event و Session از Adtrace SDK ذخیره میشوند. پس از اضافه کردن هر یک از این پارامترها، نیازی نیست هر بار آنها را اضافه کنید زیرا بهصورت محلی ذخیره میشوند. اگر همان پارامتر را دوبار اضافه کنید، تأثیری نخواهد داشت.
این پارامترهای Session میتوانند قبل از راهاندازی Adtrace SDK فراخوانی شوند تا اطمینان حاصل شود که حتی در install هم ارسال میشوند. اگر نیاز دارید آنها را با install ارسال کنید اما مقادیر مورد نیاز را فقط پس از راهاندازی میتوانید دریافت کنید، میتوانید اولین راهاندازی را به تأخیر بیندازید.
پارامترهای Callback برای Session
پارامترهای Callback Session رابطی مشابه پارامترهای Callback Event دارند. به جای اضافه کردن کلید و مقدار به یک Event، از طریق فراخوانی متد addSessionCallbackParameter روی instance AdTrace اضافه میشوند:
AdTrace.addSessionCallbackParameter("foo", "bar");
پارامترهای Callback Session با پارامترهای Callback اضافهشده به یک Event ادغام میشوند. پارامترهای Callback اضافهشده به یک Event بر پارامترهای Callback Session اولویت دارند.
هر دو پارامتر در این متد باید رشته باشند. اگر یکی از پارامترهای ارسالشده رشته نباشد، جفت کلید-مقدار به لیست پارامترها اضافه نمیشود.
میتوان یک پارامتر Callback Session خاص را با ارسال کلید مورد نظر به متد removeSessionCallbackParameter روی instance AdTrace حذف کرد:
AdTrace.removeSessionCallbackParameter("foo");
اگر میخواهید همه کلیدها و مقادیرشان را از پارامترهای Callback Session حذف کنید، میتوانید آن را با متد resetSessionCallbackParameters روی instance AdTrace ریست کنید:
AdTrace.resetSessionCallbackParameters();
پارامترهای partner برای Session
مانند پارامترهای Callback Session، پارامترهای partner Session هم وجود دارند که در هر Event یا Session از Adtrace SDK ارسال میشوند.
اینها به شرکای شبکه برای یکپارچهسازیهایی که در پنل Adtrace فعال شدهاند ارسال خواهند شد.
پارامترهای partner Session رابطی مشابه پارامترهای partner Event دارند. از طریق فراخوانی متد addSessionPartnerParameter روی instance AdTrace اضافه میشوند:
AdTrace.addSessionPartnerParameter("foo", "bar");
پارامترهای partner Session با پارامترهای partner اضافهشده به یک Event ادغام میشوند. پارامترهای partner اضافهشده به یک Event بر پارامترهای partner Session اولویت دارند.
هر دو پارامتر در این متد باید رشته باشند. اگر یکی از پارامترهای ارسالشده رشته نباشد، جفت کلید-مقدار به لیست پارامترها اضافه نمیشود.
میتوان یک پارامتر partner Session خاص را با متد removeSessionPartnerParameter روی instance AdTrace حذف کرد:
AdTrace.removeSessionPartnerParameter("foo");
اگر میخواهید همه کلیدها و مقادیر را از پارامترهای partner Session حذف کنید، آن را با متد resetSessionPartnerParameters روی instance AdTrace ریست کنید:
AdTrace.resetSessionPartnerParameters();
Callback های Session و Event
میتوانید یک Callback ثبت کنید تا از Event ها و/یا Session های موفق و ناموفق مطلع شوید.
تابع Callback برای ردیابی موفق Event ها:
var adtraceConfig = new AdTraceConfig(appToken, environment);
adtraceConfig.setEventTrackingSucceededCallbackListener(function(eventSuccess) {
// چاپ همه ویژگیهای موفقیت Event.
console.log("Event tracking succeeded!");
console.log(eventSuccess.message);
console.log(eventSuccess.timestamp);
console.log(eventSuccess.eventToken);
console.log(eventSuccess.callbackId);
console.log(eventSuccess.adid);
console.log(eventSuccess.jsonResponse);
});
AdTrace.create(adtraceConfig);
تابع Callback برای ردیابی ناموفق Event ها:
var adtraceConfig = new AdTraceConfig(appToken, environment);
adtraceConfig.setEventTrackingFailedCallbackListener(function(eventFailure) {
// چاپ همه ویژگیهای شکست Event.
console.log("Event tracking failed!");
console.log(eventFailure.message);
console.log(eventFailure.timestamp);
console.log(eventFailure.eventToken);
console.log(eventFailure.callbackId);
console.log(eventFailure.adid);
console.log(eventFailure.willRetry);
console.log(eventFailure.jsonResponse);
});
AdTrace.create(adtraceConfig);