یکپارچهسازی Reward و Interstitial
الزامات
- داشتن Telegram mini app
- دانستن محل نمایش تبلیغ، اگر نمیدانید، به نمونههای یکپارچهسازی تبلیغ مراجعه کنید
- داشتن
blockId، اگر ندارید، به بخش دریافت blockId مراجعه کنید
نصب
دو گزینه برای یکپارچهسازی AdsGram SDK دارید.
درج اسکریپت
اسکریپت sad.min.js را در تگ <head> با استفاده از کد زیر قرار دهید:
<script src="https://sad.adsgram.ai/js/sad.min.js"></script>نصب از طریق npm برای React و Vue.
اطلاعات بیشتر درباره یکپارچهسازی از بستهها را در مستندات React و Vue ببینید.
npm install @adsgram/reactnpm install @adsgram/vueمقداردهی اولیه AdsGram SDK
const AdController = window.Adsgram.init({ blockId: "your-block-id" });مهم
مقداردهی اولیه فقط برای قالبهای Rewarded و Interstitial لازم است. برای قالب Task نیازی به مقداردهی اولیه نیست.
برای نمونههای یکپارچهسازی قالب Task به یکپارچهسازی Task مراجعه کنید.
اطلاعات بیشتر درباره تابع init را میتوانید در بخش API Reference پیدا کنید.
your-block-id — از حساب خود در https://partner.adsgram.ai دریافت میکنید
دستورالعمل دقیق نحوه دریافت blockId را میتوانید در بخش دریافت blockId پیدا کنید
نمایش بنر
- قالب Rewarded، به این معنی که باید به کاربر پاداش بدهید وقتی تبلیغ را تا انتها مشاهده کرد.
اطلاعات بیشتر درباره الزامات نمایش تبلیغ. - قالب Interstitial، به این معنی که کاربر میتواند تبلیغ را قبل از انتها ببندد.
اطلاعات بیشتر درباره الزامات نمایش تبلیغ.
اطلاعات
در زیر نمونههای کد برای قالب Rewarded آمده است. این نمونهها برای قالب Interstitial نیز معتبر هستند. تنها تفاوت این است که promise مربوط به AdController.show() هم برای تبلیغاتی که تا انتها مشاهده شدهاند و هم برای تبلیغاتی که بسته شدهاند، resolve میشود. مثال ساده را میتوانید اینجا پیدا کنید.
در بیشتر موارد، کد زیر درون click handler استفاده میشود.
برای نمونههای کد با vanilla js، React، Unity به بخش Code examples مراجعه کنید.
AdController.show().then((result) => {
// user watch ad till the end or close it in interstitial format
// your code to reward user for rewarded format
}).catch((result) => {
// user get error during playing ad
// do nothing or whatever you want
})AdController.show().then((result: ShowPromiseResult) => {
// user watch ad till the end or close it in interstitial format
// your code to reward user for rewarded format
}).catch((result: ShowPromiseResult) => {
// user get error during playing ad or skip ad
// do nothing or whatever you want
})result دارای انواع زیر است:
interface ShowPromiseResult {
done: boolean; // true if user watch till the end or close it in interstitial format, otherwise false
description: string; // event description
state: 'load' | 'render' | 'playing' | 'destroy'; // banner state
error: boolean; // true if event was emitted due to error, otherwise false
}اطلاعات
showPromise در صورتی resolve میشود که کاربر تبلیغ را تا انتها مشاهده کند یا در قالب interstitial آن را ببندد، در غیر این صورت rejected میشود.
نکته
اگر نیاز دارید پس از پایان پخش تبلیغ، رد شدن آن یا بروز خطا، عمل اضافی اضافه کنید، promise را با finally زنجیر کنید.
تبریک، شما اولین تبلیغ خود را با استفاده از AdsGram نمایش دادید!
اطلاعات بیشتر
- نمونههای یکپارچهسازی کد برای React، Unity، vanilla js
- اگر در یکپارچهسازی مشکلی دارید، بخش Troubleshooting را بررسی کنید
- ارجاع پیشرفته API مربوط به AdController را در بخش API Reference پیدا خواهید کرد
- اگر از Typescript استفاده میکنید، بخش Typescript را بررسی کنید