ترکر نصب
ویرایش
نکته
: از این کتابخانه تا آخر سال ۹۸ پشتیبانی میشود (فقط به صورت Bug Fix)؛ بنابراین برای استفاده کتابخانه چابک در فریمورک React Native لطفا به مستندات کتابخانه (React Native (bridge ما مراجعه کنید.
ترکر چابک کلیک و نصب کمپینها را شمارش میکند. همینطور با توجه به قابلیت رصد رویدادها میتوانید مدلهای بازاریابی CPI و CPA را برای تبلیغات خود اجرا کنید. مزیت دیگر ترکر چابک حذف و جلوگیری تقلب در کمپینهای تبلیغاتی است.
نگران راهاندازی هم نباشید این صفحه به طور کامل مراحل پیادهسازی و استفاده از ترکر را قدم به قدم مرور میکند.
نکته:
در صورتی که از قبل SDK چابک را نصب کردهاید، از رصد رویدادها شروع کنید.
۱. پیادهسازی (SDK Integration)
برای ایجاد حساب کاربری کافیست در وبسایت چابک وارد صفحه شروع کنید شوید و حساب شخصی خود را بسازید. پس از ایجاد حساب و ثبت اپلیکیشن خود، با مراجعه به بخش تنظیمات پنل پارامترهای اتصال به چابک که در مرحله مقداردهی مورد نیاز است، در دسترس خواهد بود.
۱.۱. مراحل پیادهسازی
برای راهاندازی SDK چابک ۳ مرحله زیر را به ترتیب انجام دهید:
ب- مقداردهی اولیه (Initialize)
الف- نصب کتابخانه
در این مرحله شما باید دو پکیج chabokpush
و react-native-device-info
(دریافت اطلاعات دستگاه) را نصب نمایید. همینطور با توجه به این که چابک به طور پیشفرض پوشنوتیفیکیشن نمایش نمیدهد، برای همین در صورتی که میخواهید از این امکان استفاده کنید باید حتما پکیج react-native-push-notification
را هم نصب کنید.
برای نصب از طریق npm
:
# install chabok library
npm install chabokpush-rn --save
react-native link chabokpush-rn
# receive user device info
npm install react-native-device-info --save
react-native link react-native-device-info
# configure push notification
npm install react-native-push-notification --save
react-native link react-native-push-notification
یا yarn
:
# install chabok library
yarn add chabokpush-rn
react-native link chabokpush-rn
# receive user device info
yarn add react-native-device-info
react-native link react-native-device-info
# configure push notification
yarn add react-native-push-notification
react-native link react-native-push-notification
نکته:
ترکر چابک برای شمارش حذفها از قابلیت پوشنوتیفیکیشن استفاده میکند. برای همین کتابخانهreact-native-push-notification
را باید مانند بالا نصب کنید. همینطور دقت داشته باشید که در ریکت، چابک به طور پیشفرض توکن پوش نمیگیرد، بنابراین برای استفاده از پوشنوتیفیکیشن باید تنظیمات آن را در صفحه پوشنوتیفیکیشن برای اندروید و آیاواس مطالعه نمایید و روی پروژه خود پیادهسازی کنید.
ب- مقداردهی اولیه (Initialize)
برای ارتباط با سرور چابک، لازم است یک نمونه از کلاس chabokpush
بسازید و آن را مقداردهی کنید.
برای مقداردهی اولیه میبایست از طریق متد chabok
اطلاعات حساب چابک و تنظیمات اولیه را وارد نمایید.
نکته
: تمامی متدهایی که در این بخش بیان میشود باید تنها یک بار فراخوانی شود.
برای دریافت یا ارسال پیام از/به سرور چابک، لازم است یک نمونه از کلاس chabokpush
بسازید و آن را مقداردهی نمایید. فراخوانی این متد فقط یکبار کافی است. به قطعه کد زیر دقت کنید:
import React from 'react';
import chabokpush from 'chabokpush-rn';
export default class App extends React.Component {
componentDidMount() {
const authConfig = {
//true connects to Sandbox environment
//false connects to Production environment
devMode: true,
appId: 'APP_ID', //based on your environment
apiKey: 'API_KEY', //based on your environment
username: 'SDK_USERNAME', //based on your environment
password: 'SDK_PASSWORD' //based on your environment
};
const options = {
silent: false,
realtime: true, //Enable ChabokPush realtime
};
this.chabok = new chabokpush(authConfig, options);
}
}
در authConfig
به جای پارامترهای APP_ID
, API_KEY(SDK_KEY)
, SDK_USERNAME
, SDK_PASSWORD
مقادیر مربوط به حساب چابک خود را وارد نمایید. نحوه ایجاد حساب در بخش پیشنیازها توضیح داده شده است. در صورت داشتن حساب چابک هم میتوانید این مقادیر را از پنل بخش تنظیمات قسمت دسترسی و توکنها بردارید.
مقدار devMode
تعیین میکند که اپلیکیشن شما به محیط آزمایشی (Sandbox) و یا عملیاتی (Production) چابک متصل شود. این موضوع بستگی به این دارد که حساب کاربری شما روی کدام محیط تعریف شده باشد.
مقدار true
به محیط آزمایشی و مقدارfalse
به محیط عملیاتی متصل میشود. در نظر داشته باشید، هر محیط به کلیدهای دسترسی (appId
, apiKey
, username
و password
) خودش در متد init
نیاز دارد. بنابراین در صورت تغییر مقدار devMode
کلیدهای دسترسی آن هم باید تغییر داده شود.
نکته
: برای درخواست حساب محیط عملیاتی، در بخش تنظیمات پنل، وارد بخش درخواست حساب عملیاتی شوید و درخواست خود را ثبت نمایید تا پس از تایید و ساخت حساب عملیاتی شما، اطلاعات جدید حسابتان (appId
,apiKey
,username
وpassword
) تعیین گردد.
تنظیمات اولیه
توضیحات | پیشفرض | نوع | پارامتر |
---|---|---|---|
Object |
[options] | ||
فعال/غیرفعال سازی ارتباط آنی | true |
Boolean |
[options.realtime] |
دریافت مخفی پیام | true |
Boolean |
[options.silent] |
ج- ثبت کاربر (Register Users)
یکی از مزیتهای چابک امکان معرفی هر کاربر با یک شناسه منحصر به فرد است. این قابلیت به شما امکان میدهد دستگاههای کاربر را مدیریت کنید و سوابق جمعآوری شده را همانند یک سیستم مدیریت مشتریان (CRM) در اختیار داشته باشید.
componentDidMount() {
...
this.chabok.getUserId()
.then(userId => {
if (userId) {
this.chabok.register(userId);
} else {
//If user is not registered verify the user and
//call this.chabok.register"USER_ID") method at login page
//If you have guest users
// should be called here (If you want to track installs on user's first app launch (just like Adjust))
this.chabok.registerAsGuest();
}
})
...
}
متد registerAsGuest
کاربر را به عنوان کاربر مهمان ثبت میکند. این متد به طور خودکار یک تگ مهمان (CHABOK_GUEST) به کاربر اختصاص میدهد.
نکته:
دقت کنید که متدregisterAsGuest
را به درستی استفاده کرده باشید. برای این کار پس از نصب کاربر به پنل > کاربران بروید و از اضافه شدن کارت آن کاربر مانند زیر مطمئن شوید:
کاربر مهمان با شناسه دلخواه
شما میتوانید به کاربران مهمان خود هم شناسه بدهید.
نمونه:
this.chabok.registerAsGuest(GUEST_USER_ID);
متد register
علاوه بر ثبت کاربر، عمل اتصال به سرور چابک را انجام میدهد، بنابراین باید فقط یک بار در طول اجرای اپلیکیشن (در کلاس application) فراخوانی شود: (برای اطلاعات بیشتر میتوانید بخش ثبت کاربر را مطالعه کنید.)
نکته:
دقت کنید که متدregisterAsGuest
را تنها استفاده نکنید و مانند بالا عمل کنید. در صورت فراخوانی این متد به تنهایی کاربر با هر بازدید به عنوان یک مهمان جدید محاسبه خواهد شد.
ترکرها به طور معمول نصب را اولین بازدید حساب میکنند (مانند سرویس ادجاست)، اما مزیت ترکر چابک در شمارش نصب این است که شما میتوانید علاوه بر مدل ادجاست نصب را پس از ورود کاربر و احراز هویت او در اپلیکیشنتان تعریف کنید. با این کار شما یک اقدام دیگری برای جلوگیری از تقلب در شمارش نصب انجام میدهید، به این دلیل که امضاهای کاربر، قبل و بعد از ثبت او (register) مطابقت داده میشوند و در صورت تایید به عنوان یک نصب سالم در نظر گرفته میشوند.
به عنوان مثال اگر اپلیکیشن شما دارای صفحه ورود و ثبتنام میباشد، متد register
را در صفحه ورود یا ثبتنام پس از احراز هویت کاربر و همچنین، پس از هر بار اجرای (در کلاس Application
متد onCreate
) اپلیکیشن فراخوانی کنید تا کاربر به سرور چابک متصل شود.
this.chabok.register('USER_ID').then(({deviceId}) => {
console.log('Regsitered ', deviceId)
}).catch(error => {
console.log('Fail to register user ', error)
})
نکته
: مقدارUSER_ID
میتواند بین ۳ تا ۳۲ کاراکتر باشد. زبان فاسی، کاراکترهای#,+,*,\,/
و فاصله هم در آن مجاز نیستند.
ورودی Advertising ID
در متدهای ثبت کاربر یا ثبت کاربر مهمان، شما میتوانید پارامتر Advertising ID را به آنها اضافه کنید. اضافه کردن این پارامتر به شما امکان میدهد شبکههای تبلیغاتی که از این کلید استفاده میکنند (مانند تبلیغات بنر و جستجوی کافه بازار، گوگل اد وردز) را اندازهگیری کنید و نصبهای آن را شمارش کنید.
- متد ثبت کاربر:
this.chabok.register(USER_ID, Ad_Id);
- متد ثبت کاربر مهمان:
this.chabok.registerAsGuest(GUEST_USER_ID, Ad_Id);
۲.۱. رصد رویدادها (Tracking Events)
رویدادها در واقع همان تعامل کاربر با اپلیکیشنتان است. از این رو آنها را رفتار کاربر مینامیم. شما میتوانید رفتار کاربر را در اپلیکیشن خود به طور لحظهای رصد کنید. این امر به شما امکان میدهد تا CPA های پیشرفته برای کمپینهایتان تعریف کنید و نصبهایتان با تحقق اهدافی که برای کاربران تعیین کردهاید شمرده شوند.
به عنوان مثال میخواهید رفتار افزودن به سبد خرید از فروشگاه اینترنتی خودتان را رصد کنید. برای ثبت این رفتار کد زیر را با الگوی بالا وارد مینماییم.
نمونه:
const data = {
"value": 35000
}
this.chabok.track('add-to-card', data)
نکته:
در متدtrack
در صورتی که بهvalue
مقدار عددی بدهید، آن رفتار در سگمنت با پیشوند آخرین و مجموع اضافه میشود. اما در صورتی که مقدار غیر عددی (string) بدهید، آن رفتار فقط با پیشوند آخرین به سگمنت اضافه میشود.
برای اطلاعات بیشتر مربوط به رصد رویدادها اینجا را مطالعه کنید.
۳.۱. تست راهاندازی
اگر عملیات ثبت کاربر به درستی انجام شده باشد، اطلاعات کاربر در پنل چابک قسمت کاربران قابل مشاهده خواهد بود.
البته محیط آزمایشی فقط برای تست و آشنایی با امکانات است و دارای محدودیت سقف کاربر میباشد. بنابراین برای اپلیکیشنهای تجاری و اپاستور توصیه میکنیم از حساب عملیاتی که این سقف را ندارد، استفاده کنید.
۴.۱. انتشار اپلیکیشن در استورها
به طور کلی چابک دارای دو نوع حساب رایگان (محیط آزمایشی) و عملیاتی است. در صورتی که روی حساب رایگان هستید میتوانید روی همان حساب نسخه جدید را منتشر کنید.
دادههای شما از حساب رایگان به عملیاتی به هیج وجه منتقل نمیشوند و برای انتقال باید آپدیت فوری از اپلیکیشن خود بدهید و تمام کاربران را به نسخه جدید بیاورید. برای همین در صورتی هم که حساب عملیاتی دارید باید حتما روی محیط عملیاتی نسخه جدید اپلیکیشن خود را در استورها منتشر کنید.
۲. ترک نصبها (Tracking Installs)
پس از اینکه راهاندازی SDK چابک را در اپلیکیشنتان انجام دادید میتوانید برای کمپینهای نصب خود ترکر فعال کنید.
۱.۲. ایجاد لینک ترکر
برای ایجاد لینک ترکر فقط کافیست وارد صفحه ترکر پنل شوید و ترکر جدید بسازید. همینطور شما میتوانید به لینک ترکر خود پارامتر اضافه کنید.
برای اطلاعات بیشتر درباره ایجاد ترکر جدید در پنل و مشاهده نمونهای از آن میتوانید به مستندات پنل مراجعه کنید.
نمونه لینک ترکر چابک:
حساب رایگان:
https://sand.chabok.io/[email protected]
حساب عملیاتی:
https://a.chabok.io/[email protected]
۲.۲. انتشار لینک ترکر
پس از ایجاد یک ترکر جدید و گرفتن لینک آن کافی است آن را در کمپینهای نصب خود قرار دهید. با این کار ترکر شما فعالیت خود را آغاز میکند و از این پس هر کلیک و نصب به صورت لحظهای در پنل به نمایش گذاشته خواهد شد.
۳. ترک کمپینهای نصب از استورها
شما میتوانید نصبهای خود را از استورهای مختلف ترک کنید.
نکته:
دقت داشته باشید که برای ترک کمپینهای نصب باید حتما نسخه SDK چابک شما ۱.۴.۰ به بالا باشد.
استورهای غیر از گوگل پلی (Third-Party App Stores)
این کار را چابک از دو طریق استفاده از Referrer و آیدی ترکر انجام میدهد.
نکته:
این روش را میتوانید برای ترک نصب از گوگل پلی استور هم استفاده کنید. فقط زمان کلیک و زمان شروع دانلود را در اختیار شما قرار نمیدهد.
روش Referrer
کتابخانه react-native-device-info
به طور پیشفرض Referrer را دریافت میکند. بنابراین میتوانید استورهایی که از Referrer پشتیبانی میکنند را از این طریق ترک کنید.
از طریق Referrer شما اطلاعات کلیدی ترکر خود مانند منبع نصب، آیدی ترکر و سطح ترکر را ارسال میکنید.
روش آیدی ترکر (Pre-Install Campaigns)
برای استورهای غیر از گوگل پلی که Referrer را پشتیبانی نمیکنند (مانند بازار، سیب اپ و …)، شما همچنان میتوانید منبع نصب را در کمپین خود بفهمید. برای انجام این کار باید در ابتدا ترکر خود را در پنل ایجاد کنید و آیدی ترکر را در کد apk یا ipa خود قرار دهید.
this.chabok.setDefaultTracker("YOUR_TRACKER_ID");
نکته:
دقت داشته باشید کهTRACKER_ID
شناسه ۶ کاراکتری است که در لینک ترکر شما وجود دارد. به عنوان مثال در لینکhttps://sand.chabok.io/[email protected]
آیدی ترکر[email protected]
میباشد. این آیدی را میتوانید از پنل>ترکر>جزئیات ترکر مانند تصویر زیر کپی کنید:
۴. ترک جستجوی ارگانیک گوگل
گوگل به کاربران امکان میدهد تا با جستجوی اپلیکیشن در موتور جستجوی خود و کلیک روی آیکون آن به گوگل پلی بروند و آنجا به طور مستقیم نصب کنند.
شما میتوانید کلید واژهای که کاربر در گوگل جستجو کرده است را داشته باشید. چابک این کلید واژه را در سطح campaign
ترکر ایجاد میکند.
علاوه بر آن، چابک پارامتر utm_medium
را در سطح adgroup
ایجاد میکند. این پارامتر همان معیار شمارش است.
نکته:
دقت داشته باشید که برای استفاده از این قابلیت باید حتما referrer
را پیادهسازی کرده باشید.
۵. کالبکهای ترکر (Callbacks)
در صورتی هم که میخواهید دادههای ترکر را در سیستمهای دیگر از جمله سرورهای خود دریافت کنید میتوانید از کالبک استفاده کنید. این کار را میتوانید از پنل هنگام ایجاد ترکر جدید انجام دهید. به این ترتیب لینکی که میخواهید زمان رخ دادن رویداد (کلیک یا نصب) فرخوانی شود را وارد میکنید.
همچنین شما میتوانید در کالبک خود از پارامترهایی برای اطلاعات بیشتر از مبدا رویداد کسب کنید. برای مشاهده این پارامترها و نمونه لینک کالبک میتوانید به مستندات پنل مراجعه کنید.
۶. مکانیزم ضد تقلب (Fraud Prevention)
SDK چابک به گونهای پیادهسازی شده است که امکان تقلب و نصب غیر واقعی در روشهای مبتنی بر نصب و رفتار (CPA و CPI) را به طور کامل از بین میبرد. علاوه بر آن، به هیج وجه فراخوانی و رصد رویدادهای چابک قابل دستکاری نیستند.
مواردی که چابک برای حذف تقلب انجام میدهد عبارتند از:
- IP Filtering:
آیپی کاربر را در زمان کلیک و نصب تطبیق میدهد، جلوی نصبهای متعدد با یک آیپی را میگیرد و همچنین آیپیهای ناشناخته را رد میکند.
- User Verification:
با توجه به ساختار کاربر محور بودن سیستم چابک، تمام اطلاعات کاربر در کلیک و نصب را مقایسه میکند تا واقعی بودن کاربر جذب شده مشخص شود.
- SDK Signature:
روی SDK امضای خاصی را میگذارد تا هنگام کلیک دریافت شود و پس از نصب با اپلیکیشن شما تطبیق داده شود. همچنین یکی از راههای مقابله با SDK Spoofing است. SDK Spoofing یکی از راههای تقلب است که نصبها را روی دستگاههای واقعی شبیهسازی میکند و آن را جزو نصبهای کمپین محاسبه مینماید. این کار معمولا از اپلیکیشنهای دیگر روی دستگاه صورت میگیرد و نصبهای بیشمار غیر واقعی را وارد کمپین شما میکند.
- Server to Server Verification:
اطلاعات کاربر را هنگام کلیک جمعآوری میکند و با اطلاعاتی که سرور شما در هنگام نصب دریافت میکند اعتبارسنجی مینماید؛ در صورت عدم تطابق، نصب را رد میکند.
- TTI:
زمان قابل قبول بین کلیک و نصب است. چابک به طور خودکار فاصله زمانی بسیار کوتاه را رد میکند و همینطور در صورتی که از محدودهای که شما تعیین کردهاید بیشتر شود (محدوده اتریبیوشن)، نصب شمرده نخواهد شد.
- Two-Phase Authentication:
احراز هویت برای تشخیص واقعی بودن کاربر در هنگام نصب است. در چابک این کار از طریق ارسال پیام کوتاه انجام میشود.
۷. آشنایی با برخی مفاهیم ترکر
-
اتریبیوشن: نصبهایی که از طریق کمپینهای تبلیغاتی شمرده میشوند.
-
بازدید: هر بار که اپلیکیشن باز شود یک بازدید محاسبه میشود.
-
ترکر: ابزار شمارش و رصد کمپینهای تبلیغاتی را ترکر مینامند.
-
رد شده: نصبها و کلیکهایی که غیر واقعی تشخیص داده میشوند و در شمارش محاسبه نمیشوند.
-
رویداد: هرگونه تعامل کاربر با اپلیکیشن، یک رویداد در نظر گرفته میشود.
-
نصب: اولین بازدید هر کاربر نصب به حساب میآید.