Skip to content

یکپارچه‌سازی Task

الزامات

۱. ایجاد blockId

blockId را با Block type Task ایجاد کنید. دستورالعمل دقیق نحوه دریافت blockId را می‌توانید در بخش دریافت blockId پیدا کنید.

هشدار

ایجاد بیش از یک Block type Task برای عملکرد صحیح مجاز نیست.

Create Task block

۲. نصب

دو گزینه برای یکپارچه‌سازی AdsGram SDK دارید.

درج اسکریپت

اسکریپت sad.min.js را در تگ <head> با استفاده از کد زیر قرار دهید:

html
<script src="https://sad.adsgram.ai/js/sad.min.js"></script>

نصب از طریق npm برای React و Vue.

اطلاعات بیشتر درباره یکپارچه‌سازی task از بسته‌ها را در مستندات React و Vue ببینید.

bash
npm install @adsgram/react
bash
npm install @adsgram/vue

۳. استفاده از کامپوننت وب <adsgram-task>

برای یکپارچه‌سازی task، از کامپوننت وب <adsgram-task> استفاده کنید.

html
<adsgram-task
   data-block-id='your-block-id'
   data-debug="true"
   data-debug-console="false"
   class="task"
></adsgram-task>

می‌توانید از این کامپوننت وب در html، react، vue و سایر فریم‌ورک‌ها مانند یک عنصر HTML بومی استفاده کنید.

your-block-id — از حساب خود در https://partner.adsgram.ai دریافت می‌کنید
دستورالعمل دقیق نحوه دریافت blockId را می‌توانید در بخش دریافت blockId پیدا کنید

هشدار

'your-block-id' در تبلیغات task باید در قالب 'task-xxx' باشد که xxx اعداد هستند.

<adsgram-task> می‌تواند ویژگی‌های زیر را بپذیرد:

  • data-block-id — block id شما از https://partner.adsgram.ai
  • data-debug — برای دریافت task تست از سرور روی true تنظیم کنید.
  • data-debug-console — پیش‌فرض true است. فقط در صورتی کار می‌کند که پارامتر data-debug روی true باشد.
    اگر true باشد — لاگ‌های دقیق با پیشوند ADSGRAM DEBUG LOG در کنسول مرورگر نمایش داده می‌شوند. اگر false باشد — لاگ‌ها حتی در حالت debug نیز در کنسول نمایش داده نمی‌شوند.
  • class یا className — نام کلاس را برای استایل‌دهی task تنظیم کنید.

۴. سفارشی‌سازی task تا با طراحی اپلیکیشن شما مطابقت داشته باشد

برای این منظور می‌توانید از slot element ها و متغیرهای css استفاده کنید.

استفاده از Slots

کامپوننت وب از سه slot پشتیبانی می‌کند که می‌توان آن‌ها را با استفاده از کلاس‌ها به هر شکلی استایل‌دهی کرد:

  • reward — پاداش تکمیل task را نمایش می‌دهد.
  • button — دکمه تکمیل task.
  • claim — پس از تکمیل task به جای دکمه نمایش داده می‌شود.
  • done — پس از دریافت پاداش به جای دکمه نمایش داده می‌شود.

Task slots

Task slots

Task slots

پارامترهای CSS برای سفارشی‌سازی

کامپوننت از استایل‌دهی از طریق متغیرهای CSS پشتیبانی می‌کند:

css
--adsgram-task-font-size: /* Font size of the title */
--adsgram-task-icon-size: /* Icon size */
--adsgram-task-icon-title-gap: /* Gap between the icon and the title */
--adsgram-task-icon-border-radius: /* Border radius of the icon */
--adsgram-task-button-width: /* Width of the button for completing the task */

مثال استفاده: Css variables

۵. عضویت در رویدادها

<adsgram-task> دارای رویدادهای سفارشی است، می‌توانید با استفاده از addEventListener مشابه عناصر HTML پایه در این رویدادها عضو شوید.

انواع رویدادها:

رویدادزمانی رخ می‌دهد
rewardوقتی کاربر task را تکمیل می‌کند
onErrorوقتی کاربر در حین بارگذاری یا نمایش task با خطا مواجه می‌شود
onBannerNotFoundوقتی taskای برای نمایش وجود ندارد
onTooLongSessionوقتی جلسه خیلی طولانی است، کاربر باید اپلیکیشن را مجدداً راه‌اندازی کند تا تبلیغ دریافت کند

اطلاعات بیشتر

  • برای درک بهتر نحوه پیاده‌سازی در اپلیکیشن خود، نمونه‌های کد را ببینید.
  • اگر در یکپارچه‌سازی مشکلی دارید، بخش Troubleshooting را بررسی کنید
  • اگر از Typescript استفاده می‌کنید، بخش Typescript را بررسی کنید