قبل از ایجاد یک کمپین Demand Gen، مهم است که تمام داراییهایی را که قصد دارید در کمپین استفاده کنید، وارد کنید. همیشه میتوانید بعداً برگردید و داراییها را اضافه کنید، اما برای شروع به مجموعهای از داراییها نیاز دارید.
هنگام برنامهریزی کمپین خود، مشخصات دارایی Demand Gen و راهنمای بهترین شیوهها را بررسی کنید.
تصاویر و ویدیوها انواع اصلی داراییها هستند و این راهنما نحوه آپلود هر یک از آنها را نشان میدهد. این اصول را میتوان به انواع دیگر داراییها نیز تعمیم داد. مهم نیست چه نوع داراییای ایجاد میکنید، AssetOperation برای ایجاد آن استفاده کنید.
میتوان با استفاده از AdsApp و بدون استفاده از mutate، داراییها را ایجاد کرد، اما برای حفظ یکپارچگی، این راهنما این کار را مانند بقیه عملیات انجام میدهد. توجه داشته باشید که اگر از قبل داراییهای موجود را در دسترس دارید، میتوانید و باید از آنها دوباره استفاده کنید. بنابراین، اگرچه لازم است که داراییهایی برای ایجاد یک کمپین Demand Gen داشته باشید، ممکن است ایجاد آنها به عنوان بخشی از فرآیند ایجاد کمپین کاملاً الزامی نباشد.
داراییهای تصویر
فایلهای تصویری با فرمت کدگذاری پایه ۶۴ آپلود میشوند. از آنجایی که نمیتوانید تصاویر را مستقیماً در اسکریپتهای گوگل ادز آپلود کنید، برای دریافت دادههای تصویر و کدگذاری آن برای آپلود، دو رویکرد مختلف دارید.
برای دریافت یک تصویر از گوگل درایو، ابتدا به شناسه آن نیاز دارید که بهترین راه برای شناسایی منحصر به فرد تصویر است. یک راه برای دریافت شناسه، کپی کردن لینک قابل اشتراکگذاری از رابط کاربری گوگل درایو و استخراج شناسه است. همچنین میتوانید مجموعهای از فایلها را به صورت برنامهنویسی دریافت کرده و فایلهایی را که میخواهید آپلود کنید، انتخاب کنید. این کد نحوه آپلود یک تصویر واحد با شناسه شناخته شده را نشان میدهد:
const file = DriveApp.getFileById(fileId);
const imageAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"name": "Marketing Logo",
"type": "IMAGE",
"imageAsset": {
"data": Utilities.base64Encode(file.getBlob().getBytes())
}
}
}
}
از طرف دیگر، میتوانید با استفاده از UrlFetchApp ، تصویری را که در یک وب سرور میزبانی میشود، از طریق URL آن دریافت کنید:
const file = UrlFetchApp.fetch(imageUrl);
سپس میتوانید تابع getBlob روی این فایل درست مانند یک فایل Drive فراخوانی کنید، بنابراین ساختار عملیات مشابه مراحل مربوط به یک فایل Google Drive است.
داراییهای ویدیویی
فایلهای ویدیویی از طریق ویدیوهای یوتیوب مدیریت میشوند. اگر فایلهای ویدیویی را به عنوان بخشی از فرآیند ایجاد کمپین آپلود میکنید، از یک شناسه موقت استفاده کنید. در غیر این صورت، نام منبع برگردانده شده را یادداشت کنید تا در عملیات بعدی، زمانی که نیاز به ارجاع به فایل برای افزودن آن به یک گروه فایل دارید، از آن استفاده کنید.
const videoAsset = {
"assetOperation": {
"create": {
"resourceName": `customers/${customerId}/assets/${getNextTempId()}`,
"name": "Marketing video",
"type": "YOUTUBE_VIDEO",
"youtube_video_asset": {
"youtube_video_title": "Demand Gen video",
"youtube_video_id": "123456789"
}
}
}
}
operations.push(videoAsset);