LiveBroadcasts

این API اکنون از قابلیت علامت‌گذاری پخش‌های زنده شما به عنوان «ساخته شده برای کودکان» پشتیبانی می‌کند و منبع liveBroadcast اکنون حاوی ویژگی‌ای است که وضعیت «ساخته شده برای کودکان» آن پخش زنده را مشخص می‌کند. شرایط خدمات سرویس‌های YouTube API و سیاست‌های توسعه‌دهندگان نیز در 10 ژانویه 2020 به‌روزرسانی شدند. برای اطلاعات بیشتر، به تاریخچه‌های ویرایش سرویس YouTube Live Streaming API و شرایط خدمات YouTube API Services مراجعه کنید.

یک منبع liveBroadcast نشان‌دهنده رویدادی است که با استفاده از ویدیوی زنده در YouTube پخش خواهد شد.

روش‌ها

این API از روش‌های زیر برای منابع liveBroadcasts پشتیبانی می‌کند:

list
لیستی از پخش‌های یوتیوب که با پارامترهای درخواست API مطابقت دارند را برمی‌گرداند. همین حالا امتحان کنید .
insert
یک پخش ایجاد می‌کند. اکنون آن را امتحان کنید .
update
یک پخش را به‌روزرسانی می‌کند. برای مثال، می‌توانید تنظیمات پخش تعریف‌شده در شیء contentDetails از منبع liveBroadcast را تغییر دهید. اکنون آن را امتحان کنید .
delete
یک پخش را حذف می‌کند. اکنون آن را امتحان کنید .
bind
یک پخش یوتیوب را به یک جریان متصل می‌کند یا اتصال موجود بین یک پخش و یک جریان را حذف می‌کند. یک پخش فقط می‌تواند به یک جریان ویدیویی متصل شود، اگرچه یک جریان ویدیویی می‌تواند به بیش از یک پخش متصل شود. اکنون آن را امتحان کنید .
transition
وضعیت پخش زنده یوتیوب را تغییر می‌دهد و هرگونه فرآیند مرتبط با وضعیت جدید را آغاز می‌کند. برای مثال، وقتی وضعیت یک پخش را به testing تغییر می‌دهید، یوتیوب شروع به ارسال ویدیو به جریان مانیتور آن پخش می‌کند. قبل از فراخوانی این متد، باید تأیید کنید که مقدار ویژگی status.streamStatus برای جریانی که به پخش شما متصل است، active است. همین حالا آن را امتحان کنید .
cuepoint
یک نقطه شروع (cuepoint) را در پخش زنده وارد می‌کند. این نقطه شروع ممکن است باعث ایجاد یک وقفه تبلیغاتی شود.

نمایش منابع

ساختار JSON زیر قالب یک منبع liveBroadcasts را نشان می‌دهد:

{
  "kind": "youtube#liveBroadcast",
  "etag": etag,
  "id": string,
  "snippet": {
    "publishedAt": datetime,
    "channelId": string,
    "title": string,
    "description": string,
    "thumbnails": {
      (key): {
        "url": string,
        "width": unsigned integer,
        "height": unsigned integer
      }
    },
    "scheduledStartTime": datetime,
    "scheduledEndTime": datetime,
    "actualStartTime": datetime,
    "actualEndTime": datetime,
    "isDefaultBroadcast": boolean,
    "liveChatId": string
  },
  "status": {
    "lifeCycleStatus": string,
    "privacyStatus": string,
    "recordingStatus": string,
    "madeForKids": string,
    "selfDeclaredMadeForKids": string,
  },
  "contentDetails": {
    "boundStreamId": string,
    "boundStreamLastUpdateTimeMs": datetime,
    "monitorStream": {
      "enableMonitorStream": boolean,
      "broadcastStreamDelayMs": unsigned integer,
      "embedHtml": string
    },
    "enableEmbed": boolean,
    "enableDvr": boolean,
    "recordFromStart": boolean,
    "enableClosedCaptions": boolean,
    "closedCaptionsType": string,
    "projection": string,
    "enableLowLatency": boolean,
    "latencyPreference": boolean,
    "enableAutoStart": boolean,
    "enableAutoStop": boolean,
    "availabilityConfig": {
      "globalConfig": {
        "excludedRegionCodes": [
          string
        ],
        "interval": {
          "startTime": datetime,
          "endTime": datetime
        }
      },
      "regionsConfig": {
        "regionIntervals": [
          {
            "regionCode": string,
            "interval": {
              "startTime": datetime,
              "endTime": datetime
            }
          }
        ]
      }
    }
  },
  "statistics": {
    "totalChatCount": unsigned long
  },
  "monetizationDetails": {
    "adsMonetizationStatus": string,
    "eligibleForAdsMonetization": boolean,
    "cuepointSchedule": {
      "enabled": boolean,
      "pauseAdsUntil": datetime,
      "ytOptimizedCuepointConfig": string,
      "creatorCuepointConfig": {
        "scheduleStrategy": string,
        "repeatIntervalSecs": unsigned integer
      }
    }
  }
}

خواص

جدول زیر ویژگی‌هایی را که در این منبع ظاهر می‌شوند، تعریف می‌کند:

خواص
kind string
نوع منبع API را مشخص می‌کند. مقدار آن youtube#liveBroadcast خواهد بود.
etag etag
برچسب E این منبع.
id string
شناسه‌ای که یوتیوب برای شناسایی منحصر به فرد پخش اختصاص می‌دهد.
snippet object
شیء snippet شامل جزئیات اولیه در مورد رویداد، از جمله عنوان، توضیحات، زمان شروع و زمان پایان آن است.
snippet. publishedAt datetime
تاریخ و زمانی که پخش به برنامه پخش زنده یوتیوب اضافه شده است. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
snippet. channelId string
شناسه‌ای که یوتیوب برای شناسایی منحصر به فرد کانالی که پخش را منتشر می‌کند، استفاده می‌کند.
snippet. title string
عنوان پخش. توجه داشته باشید که پخش دقیقاً یک ویدیوی یوتیوب را نشان می‌دهد. می‌توانید این فیلد را با تغییر منبع پخش یا با تنظیم فیلد title منبع ویدیوی مربوطه تنظیم کنید.
snippet. description string
توضیحات پخش. همانند title ، می‌توانید این فیلد را با تغییر منبع پخش یا با تنظیم فیلد description منبع ویدیویی مربوطه تنظیم کنید.
snippet. thumbnails object
نقشه‌ای از تصاویر کوچک مرتبط با پخش. برای هر شیء تودرتو در این شیء، کلید، نام تصویر کوچک و مقدار، شیء‌ای است که حاوی اطلاعات دیگری در مورد تصویر کوچک است.
snippet.thumbnails. (key) object
مقادیر کلید معتبر عبارتند از:
  • default - تصویر کوچک پیش‌فرض. تصویر کوچک پیش‌فرض برای یک ویدیو - یا منبعی که به یک ویدیو اشاره دارد، مانند یک آیتم لیست پخش یا نتیجه جستجو - ۱۲۰ پیکسل عرض و ۹۰ پیکسل ارتفاع دارد. تصویر کوچک پیش‌فرض برای یک کانال ۸۸ پیکسل عرض و ۸۸ پیکسل ارتفاع دارد.
  • medium ​​- نسخه‌ای با وضوح بالاتر از تصویر کوچک. برای یک ویدیو (یا منبعی که به یک ویدیو اشاره دارد)، این تصویر ۳۲۰ پیکسل عرض و ۱۸۰ پیکسل ارتفاع دارد. برای یک کانال، این تصویر ۲۴۰ پیکسل عرض و ۲۴۰ پیکسل ارتفاع دارد.
  • high – یک نسخه با وضوح بالا از تصویر کوچک. برای یک ویدیو (یا منبعی که به یک ویدیو اشاره دارد)، این تصویر ۴۸۰ پیکسل عرض و ۳۶۰ پیکسل ارتفاع دارد. برای یک کانال، این تصویر ۸۰۰ پیکسل عرض و ۸۰۰ پیکسل ارتفاع دارد.
snippet.thumbnails.(key). url string
آدرس اینترنتی (URL) تصویر.
snippet.thumbnails.(key). width unsigned integer
عرض تصویر.
snippet.thumbnails.(key). height unsigned integer
ارتفاع تصویر.
snippet. scheduledStartTime datetime
تاریخ و زمانی که قرار است پخش شروع شود. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است. Creator Studio از قابلیت ایجاد پخش بدون زمان‌بندی شروع پشتیبانی می‌کند. در این حالت، پخش هر زمان که صاحب کانال شروع به پخش کند، شروع می‌شود. برای این پخش‌ها، مقدار datetime مربوط به زمان صفر یونیکس است و این مقدار را نمی‌توان با استفاده از API یا در Creator Studio تغییر داد.
snippet. scheduledEndTime datetime
تاریخ و زمانی که قرار است پخش پایان یابد. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است. اگر یک منبع liveBroadcast مقداری برای این ویژگی مشخص نکند، پخش به طور نامحدود ادامه خواهد یافت. به طور مشابه، اگر مقداری برای این ویژگی مشخص نکنید، یوتیوب با پخش طوری رفتار می‌کند که گویی به طور نامحدود ادامه خواهد یافت.
snippet. actualStartTime datetime
تاریخ و زمانی که پخش واقعاً شروع شده است. این اطلاعات فقط زمانی در دسترس است که وضعیت پخش live باشد. مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
snippet. actualEndTime datetime
تاریخ و زمانی که پخش واقعاً پایان یافته است. این اطلاعات فقط زمانی در دسترس است که وضعیت پخش complete باشد. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
snippet. isDefaultBroadcast boolean
این ویژگی در تاریخ ۱ سپتامبر ۲۰۲۰ یا بعد از آن منسوخ خواهد شد. در آن زمان، یوتیوب ایجاد جریان پیش‌فرض و پخش پیش‌فرض را هنگامی که یک کانال برای پخش زنده فعال می‌شود، متوقف خواهد کرد. برای جزئیات بیشتر به اطلاعیه منسوخ شدن مراجعه کنید.
این ویژگی نشان می‌دهد که آیا این پخش، پخش پیش‌فرض است یا خیر.

نحوه عملکرد پخش‌های پیش‌فرض

وقتی یک کانال یوتیوب برای پخش زنده فعال می‌شود، یوتیوب یک پخش پیش‌فرض و یک پخش پیش‌فرض برای کانال ایجاد می‌کند. پخش، نحوه ارسال ویدیوی زنده توسط صاحب کانال به یوتیوب را تعریف می‌کند و پخش، نحوه مشاهده پخش پیش‌فرض توسط بینندگان است. صاحب کانال می‌تواند از متدهای liveStreams.list و liveBroadcasts.list برای شناسایی این منابع استفاده کند.

وقتی یک کانال شروع به پخش ویدیو در پخش پیش‌فرض خود می‌کند، ویدیو در پخش پیش‌فرض کانال قابل مشاهده است. وقتی پخش پایان می‌یابد، یوتیوب پخش کامل را به یک ویدیوی یوتیوب تبدیل می‌کند و یک شناسه ویدیوی یوتیوب به ویدیو اختصاص می‌دهد.

پس از اتمام تبدیل، ویدیو در فهرست ویدیوهای آپلود شده کانال قرار می‌گیرد. ویدیو بلافاصله پس از پایان پخش در دسترس نیست و مدت زمان تأخیر به مدت زمان واقعی پخش بستگی دارد.
snippet. liveChatId string
شناسه‌ی مربوط به چت زنده‌ی یوتیوبِ پخش. با استفاده از این شناسه، می‌توانید از متدهای منبع liveChatMessage برای بازیابی، درج یا حذف پیام‌های چت استفاده کنید. همچنین می‌توانید مدیران چت را اضافه یا حذف کنید، کاربران را از شرکت در چت‌های زنده منع کنید یا ممنوعیت‌های موجود را حذف کنید.
status object
شیء status ) حاوی اطلاعاتی در مورد وضعیت رویداد است.
status. lifeCycleStatus string
وضعیت پخش. این وضعیت را می‌توان با استفاده از متد liveBroadcasts.transition در API به‌روزرسانی کرد.

مقادیر معتبر برای این ویژگی عبارتند از:
  • complete - پخش تمام شد.
  • created – پخش تنظیمات ناقصی دارد، بنابراین آماده انتقال به وضعیت live یا testing نیست، اما ایجاد شده و از سایر جهات معتبر است.
  • live - پخش فعال است.
  • liveStarting – پخش زنده در حال انتقال به وضعیت live است.
  • ready - تنظیمات پخش کامل شده و پخش می‌تواند به وضعیت live یا testing منتقل شود.
  • revoked - این پخش توسط یک اقدام مدیر حذف شد.
  • testStarting - پخش در حال انتقال به وضعیت testing است.
  • testing - پخش فقط برای شریک قابل مشاهده است.
status. privacyStatus string
وضعیت حریم خصوصی پخش. توجه داشته باشید که پخش دقیقاً یک ویدیوی یوتیوب را نشان می‌دهد، بنابراین تنظیمات حریم خصوصی مشابه تنظیمات پشتیبانی شده برای ویدیوها است. علاوه بر این، می‌توانید این فیلد را با تغییر منبع پخش یا با تنظیم فیلد privacyStatus منبع ویدیوی مربوطه تنظیم کنید.

مقادیر معتبر برای این ویژگی عبارتند از:
  • private
  • public
  • unlisted
status. recordingStatus string
وضعیت ضبط پخش.

مقادیر معتبر برای این ویژگی عبارتند از:
  • notRecording
  • recorded
  • recording
status. madeForKids boolean
این مقدار نشان می‌دهد که آیا پخش به عنوان فرزند-محور تعیین شده است یا خیر. مقدار این ویژگی فقط خواندنی است.
status. selfDeclaredMadeForKids boolean
در یک درخواست liveBroadcasts.insert ، این ویژگی به صاحب کانال اجازه می‌دهد تا پخش را به عنوان پخش فرزند تعیین کند. در یک درخواست liveBroadcasts.list ، مقدار ویژگی فقط در صورتی برگردانده می‌شود که صاحب کانال درخواست API را تأیید کرده باشد.
contentDetails object
شیء contentDetails حاوی اطلاعاتی در مورد محتوای ویدیوی رویداد است، مانند اینکه آیا محتوا می‌تواند در یک پخش‌کننده ویدیوی تعبیه‌شده نمایش داده شود یا اینکه بایگانی شده و بنابراین پس از پایان رویداد برای مشاهده در دسترس خواهد بود.
contentDetails. boundStreamId string
این مقدار به طور منحصر به فرد، live stream متصل به پخش را مشخص می‌کند.
contentDetails. boundStreamLastUpdateTimeMs datetime
تاریخ و زمانی که پخش زنده مورد اشاره boundStreamId آخرین بار به‌روزرسانی شده است.
contentDetails. monitorStream object
شیء monitorStream حاوی اطلاعاتی در مورد جریان مانیتور است که پخش‌کننده می‌تواند از آن برای بررسی محتوای رویداد قبل از نمایش عمومی جریان پخش استفاده کند.
contentDetails.monitorStream. enableMonitorStream boolean
این مقدار تعیین می‌کند که آیا پخش زنده‌ی مانیتور برای پخش فعال است یا خیر. اگر پخش زنده‌ی مانیتور فعال باشد، یوتیوب محتوای رویداد را در یک پخش زنده‌ی ویژه که فقط برای مصرف پخش‌کننده در نظر گرفته شده است، پخش خواهد کرد. پخش‌کننده می‌تواند از این پخش زنده برای بررسی محتوای رویداد و همچنین شناسایی زمان‌های بهینه برای درج نکات کلیدی استفاده کند.

اگر قصد دارید پخش خود را در مرحله testing قرار دهید یا اگر می‌خواهید رویداد خود را با تأخیر پخش کنید، باید این مقدار را روی true تنظیم کنید. علاوه بر این، اگر مقدار این ویژگی true باشد، قبل از اینکه بتوانید پخش خود را به حالت live منتقل کنید، باید آن را به حالت testing منتقل کنید. (اگر مقدار این ویژگی false باشد، پخش شما نمی‌تواند مرحله testing داشته باشد، بنابراین می‌توانید پخش را مستقیماً به حالت live منتقل کنید.)

وقتی update a broadcast ، اگر درخواست API شما شامل بخش contentDetails در مقدار پارامتر part باشد، این ویژگی باید تنظیم شود. با این حال، وقتی insert a broadcast ، این ویژگی اختیاری است و مقدار پیش‌فرض آن true است.

مهم: این ویژگی پس از اینکه پخش در حالت testing یا live باشد، قابل به‌روزرسانی نیست.
contentDetails.monitorStream. broadcastStreamDelayMs unsigned integer
اگر ویژگی enableMonitorStream را روی true تنظیم کرده باشید، این ویژگی مدت زمان تأخیر پخش زنده را تعیین می‌کند.

وقتی update a broadcast ، اگر درخواست API شما شامل بخش contentDetails در مقدار پارامتر part باشد، این ویژگی باید تنظیم شود. با این حال، وقتی insert a broadcast ، این ویژگی اختیاری است و مقدار پیش‌فرض آن 0 است. این مقدار نشان می‌دهد که broadcast تأخیر broadcast ندارد. توجه: این ویژگی را نمی‌توان زمانی که broadcast در حالت testing یا live است، به‌روزرسانی کرد.
contentDetails.monitorStream. embedHtml string
کد HTML که یک پخش‌کننده را در خود جای می‌دهد که جریان مانیتور را پخش می‌کند.
contentDetails. enableEmbed boolean
این تنظیم نشان می‌دهد که آیا ویدیوی پخش‌شده می‌تواند در یک پخش‌کننده‌ی تعبیه‌شده پخش شود یا خیر. اگر تصمیم بگیرید ویدیو را بایگانی کنید (با استفاده از ویژگی enableArchive )، این تنظیم برای ویدیوی بایگانی‌شده نیز اعمال می‌شود.

وقتی update a broadcast ، اگر درخواست API شما شامل بخش contentDetails در مقدار پارامتر part باشد، این ویژگی باید تنظیم شود. با این حال، وقتی insert a broadcast ، این ویژگی اختیاری است و مقدار پیش‌فرض آن true است.

نکته: این ویژگی پس از اینکه پخش در حالت testing یا live باشد، قابل به‌روزرسانی نیست.
contentDetails. enableDvr boolean
این تنظیم تعیین می‌کند که آیا بینندگان می‌توانند هنگام تماشای ویدیو به کنترل‌های DVR دسترسی داشته باشند یا خیر. کنترل‌های DVR بیننده را قادر می‌سازد تا با مکث، عقب بردن یا جلو بردن سریع محتوا، تجربه پخش ویدیو را کنترل کند. مقدار پیش‌فرض این ویژگی true است.

وقتی update a broadcast ، اگر درخواست API شما شامل بخش contentDetails در مقدار پارامتر part باشد، این ویژگی باید تنظیم شود. با این حال، وقتی insert a broadcast ، این ویژگی اختیاری است و مقدار پیش‌فرض آن true است.

مهم: اگر می‌خواهید پخش بلافاصله پس از پایان پخش در دسترس باشد، باید مقدار را روی true تنظیم کنید و همچنین مقدار ویژگی enableArchive را روی true تنظیم کنید. علاوه بر این، این ویژگی را نمی‌توان پس از پخش در حالت testing یا live به‌روزرسانی کرد.
contentDetails. recordFromStart boolean
این تنظیم نشان می‌دهد که آیا یوتیوب پس از تغییر وضعیت رویداد به پخش زنده، به طور خودکار شروع به ضبط پخش خواهد کرد یا خیر.

مقدار پیش‌فرض این ویژگی true است و فقط در صورتی می‌توان آن را false تنظیم کرد که کانال پخش مجاز به غیرفعال کردن ضبط برای پخش‌های زنده باشد.

اگر کانال شما مجوز غیرفعال کردن ضبط‌ها را نداشته باشد، و شما سعی کنید یک پخش را با تنظیم ویژگی recordFromStart روی false وارد کنید، API خطای Forbidden را برمی‌گرداند. علاوه بر این، اگر کانال شما این مجوز را نداشته باشد و شما سعی کنید یک پخش را به‌روزرسانی کنید تا ویژگی recordFromStart را روی false تنظیم کنید، API خطای modificationNotAllowed برمی‌گرداند.

وقتی update a broadcast ، اگر درخواست API شما شامل بخش contentDetails در مقدار پارامتر part باشد، این ویژگی باید تنظیم شود. با این حال، وقتی insert a broadcast ، این ویژگی اختیاری است و مقدار پیش‌فرض آن true است.

نکته مهم: اگر می‌خواهید پخش بلافاصله پس از پایان پخش در دسترس باشد، باید مقدار ویژگی enableDvr را نیز روی true تنظیم کنید. اگر مقدار این ویژگی را روی true تنظیم کنید اما ویژگی enableDvr را نیز روی true تنظیم نکنید، ممکن است حدود یک روز تأخیر وجود داشته باشد تا ویدیوی بایگانی شده برای پخش در دسترس قرار گیرد.

نکته: این ویژگی پس از اینکه پخش در حالت testing یا live باشد، قابل به‌روزرسانی نیست.
contentDetails. enableClosedCaptions boolean
این ویژگی از تاریخ ۱۷ دسامبر ۲۰۱۵ منسوخ شده است. به جای آن از ویژگی contentDetails.closedCaptionsType استفاده کنید.

این تنظیم نشان می‌دهد که آیا زیرنویس HTTP POST برای این پخش فعال است یا خیر. برای کلاینت‌های API که از قبل از این ویژگی استفاده می‌کنند:
  • تنظیم مقدار ویژگی به true معادل تنظیم ویژگی contentDetails.closedCaptionsType به closedCaptionsHttpPost است.
  • تنظیم مقدار ویژگی روی false معادل تنظیم ویژگی contentDetails.closedCaptionsType روی closedCaptionsDisabled است.
contentDetails. closedCaptionsType string
نکته: این ویژگی جایگزین ویژگی contentDetails.enableClosedCaptions می‌شود.

این ویژگی نشان می‌دهد که آیا زیرنویس برای پخش شما فعال است یا خیر، و اگر چنین است، چه نوع زیرنویسی ارائه می‌دهید:
  • closedCaptionsDisabled : زیرنویس‌های بسته برای پخش زنده غیرفعال هستند.
  • closedCaptionsHttpPost : شما زیرنویس‌ها را با استفاده از HTTP POST به یک URL ورودی مرتبط با پخش زنده خود ارسال خواهید کرد.
  • closedCaptionsEmbedded : زیرنویس‌ها با استفاده از فرمت‌های EIA-608 و/یا CEA-708 در جریان ویدیو کدگذاری می‌شوند.
contentDetails. projection string
قالب نمایش این پخش. مقدار پیش‌فرض این ویژگی rectangular است.

مقادیر معتبر برای این ویژگی عبارتند از:
  • 360
  • rectangular
contentDetails. enableLowLatency boolean
نشان می‌دهد که آیا این پخش باید برای پخش با تأخیر کم کدگذاری شود یا خیر. یک پخش با تأخیر کم می‌تواند مدت زمان لازم برای مشاهده ویدیو برای کاربرانی که پخش را تماشا می‌کنند، کاهش دهد، اگرچه می‌تواند بر وضوح تصویر برای بینندگان پخش نیز تأثیر بگذارد.
contentDetails. latencyPreference string
نشان می‌دهد که از کدام تنظیم تأخیر برای این پخش استفاده شود. این ویژگی می‌تواند به جای enableLowLatency که از ultraLow ​​پشتیبانی نمی‌کند، استفاده شود.

یک استریم با تأخیر کم می‌تواند مدت زمان لازم برای مشاهده ویدیو برای کاربرانی که در حال تماشای پخش هستند را کاهش دهد، اگرچه می‌تواند بر روان بودن پخش نیز تأثیر بگذارد.

یک استریم با تأخیر بسیار کم، زمان لازم برای مشاهده ویدیو برای بینندگان را بیشتر کاهش می‌دهد و تعامل با بینندگان را آسان‌تر می‌کند، اما تأخیر بسیار کم از زیرنویس یا وضوح تصویر بالاتر از 1080p پشتیبانی نمی‌کند.

مقادیر معتبر برای این ویژگی عبارتند از:
  • normal
  • low
  • ultraLow
contentDetails. enableAutoStart boolean
نشان می‌دهد که آیا این پخش باید هنگام شروع پخش ویدیو در live stream محدود، به طور خودکار شروع شود یا خیر.
contentDetails. enableAutoStop boolean
نشان می‌دهد که آیا این پخش باید حدود یک دقیقه پس از اینکه صاحب کانال پخش ویدیو را در جریان ویدیوی محدود شده متوقف کرد، به‌طور خودکار متوقف شود یا خیر.
contentDetails. availabilityConfig object
پیکربندی در دسترس بودن پخش. برای تنظیم در دسترس بودن منطقه خاص یا مسدود کردن مناطق خاص استفاده می‌شود. اختیاری است - اگر تنظیم نشود، اجباری نیست.
contentDetails.availabilityConfig. globalConfig object
پیکربندی دسترسی جهانی پخش. ویدیو در همه مناطق به جز مناطقی که در لیست excludedRegionCodes مشخص شده‌اند، در دسترس است.
contentDetails.availabilityConfig.globalConfig. excludedRegionCodes list (string)
فهرست مناطقی که پخش ویدیو در آنها مسدود شده است.
contentDetails.availabilityConfig.globalConfig. interval object
پنجره زمانی پیش‌فرض که در آن ویدیو برای همه مناطق غیر مسدود در دسترس است. توجه: این ویژگی برای پخش زنده‌های آینده یا فعال پشتیبانی نمی‌شود.
contentDetails.availabilityConfig.globalConfig.interval. startTime datetime
تاریخ و زمانی که ویدیو در دسترس قرار می‌گیرد. اگر مشخص نشده باشد، ویدیو از قبل در دسترس است. مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
contentDetails.availabilityConfig.globalConfig.interval. endTime datetime
تاریخ و زمانی که ویدیو دیگر در دسترس نیست. اگر مشخص نشود، ویدیو برای همیشه در دسترس است. زمان شروع و پایان مشخص شده نمی‌تواند بیش از پنج سال در آینده باشد. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
contentDetails.availabilityConfig. regionsConfig object
پیکربندی دسترسی منطقه‌ای پخش. ویدیو فقط در مناطق مشخص شده در دسترس است.
contentDetails.availabilityConfig.regionsConfig. regionIntervals list (object)
فهرستی از مناطق و پنجره‌های زمانی که ویدیو در آنها موجود است. اگر یک منطقه چندین بار مشخص شود، از اجتماع همه فواصل استفاده می‌شود.
contentDetails.availabilityConfig.regionsConfig.regionIntervals. regionCode string
منطقه‌ای که ویدیو در آن موجود است.
contentDetails.availabilityConfig.regionsConfig.regionIntervals. interval object
بازه زمانی که ویدیو برای منطقه مشخص شده در دسترس است. توجه: این ویژگی برای پخش زنده‌های آینده یا فعال پشتیبانی نمی‌شود.
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval. startTime datetime
تاریخ و زمانی که ویدیو در منطقه مشخص شده در دسترس قرار می‌گیرد. اگر مشخص نشده باشد، ویدیو از قبل در دسترس است. مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
contentDetails.availabilityConfig.regionsConfig.regionIntervals.interval. endTime datetime
تاریخ و زمانی که ویدیو در منطقه مشخص شده دیگر در دسترس نیست. اگر مشخص نشود، ویدیو برای همیشه در دسترس است. زمان شروع و پایان مشخص شده نمی‌تواند بیش از پنج سال در آینده باشد. مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است.
statistics object
شیء statistics شامل آمار مربوط به یک پخش زنده است. مقادیر این آمار می‌توانند در طول پخش تغییر کنند و فقط در حین پخش زنده قابل بازیابی هستند.
statistics. totalChatCount unsigned long
تعداد کل پیام‌های چت زنده مرتبط با پخش. این ویژگی و مقدار آن در صورتی وجود دارند که پخش برای کاربر قابل مشاهده باشد، ویژگی چت زنده فعال باشد و حداقل یک پیام داشته باشد. توجه داشته باشید که این ویژگی پس از پایان پخش، مقداری را مشخص نمی‌کند. بنابراین، این ویژگی تعداد پیام‌های چت برای یک ویدیوی بایگانی شده از یک پخش زنده تکمیل شده را شناسایی نمی‌کند.
monetizationDetails object
شیء monetizationDetails حاوی اطلاعاتی در مورد جزئیات کسب درآمد از استریم است، مانند اینکه آیا خودکارسازی تبلیغات فعال است یا اینکه درج تبلیغات در اواسط پخش به تأخیر افتاده است.

monetizationDetails. adsMonetizationStatus string
این ویژگی نشان می‌دهد که آیا تبلیغات میان‌پرده در پخش ویدیو فعال است یا خیر. مقادیر معتبر on و off هستند.
monetizationDetails. eligibleForAdsMonetization string
این ویژگی نشان می‌دهد که آیا یک پخش ویدیویی واجد شرایط تبلیغات میان‌پرده است یا خیر. یک پخش ممکن است به دلایل مختلفی واجد شرایط نباشد، مانند ادعای موجود یا کانالی که برای کسب درآمد راه‌اندازی نشده است.
monetizationDetails. cuepointSchedule object
شیء cuepointSchedule تنظیمات اتوماسیون تبلیغات را برای پخش مشخص می‌کند.
monetizationDetails.cuepointSchedule. enabled boolean
این مقدار تعیین می‌کند که آیا تبلیغات به طور خودکار در پخش قرار داده شوند یا خیر. اگر مقدار آن true باشد، یوتیوب به طور خودکار تبلیغات میان‌پرده را در پخش قرار می‌دهد. زمان‌بندی اجرای تبلیغات توسط مقدار سایر فیلدها در شیء monetizationDetails.cuepointSchedule تعیین می‌شود.
monetizationDetails.cuepointSchedule. pauseAdsUntil datetime
این مقدار مشخص می‌کند که یوتیوب نباید تبلیغات میان‌برنامه را تا تاریخ و زمان مشخص‌شده در پخش قرار دهد. این مقدار در قالب ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ) مشخص شده است. برای توقف تبلیغات، مقدار باید روی تاریخ و زمان آینده تنظیم شود. همچنین می‌توان مقدار فیلد را روی تاریخ و زمان گذشته یا یک مقدار خالی تنظیم کرد تا تبلیغات متوقف نشوند.
monetizationDetails.cuepointSchedule. ytOptimizedCuepointConfig string
این فیلد گزینه انتخاب شده برای نقاط نشانه‌گذاری خودکار تبلیغات را مشخص می‌کند. این فیلد می‌تواند یکی از سه حالت زیر را مشخص کند:
  • LOW : پتانسیل درآمد کمتر، تجربه بیننده با وقفه کمتر
  • MEDIUM : پتانسیل درآمد متوسط، تجربه بیننده متعادل
  • HIGH : پتانسیل درآمد بالاتر، تجربه بیننده با وقفه بیشتر
monetizationDetails.cuepointSchedule. creatorCuepointConfig object
شیء creatorCuepointConfig گزینه‌ی خودکارسازی تبلیغات را مشخص می‌کند که به سازنده اجازه می‌دهد نحوه‌ی نمایش تبلیغات میانی را انتخاب کند.
monetizationDetails.cuepointSchedule.creatorCuepointConfig. scheduleStrategy string
این مقدار، استراتژی‌ای را که یوتیوب باید برای زمان‌بندی نقاط نشانه‌گذاری دنبال کند، مشخص می‌کند. مقادیر معتبر عبارتند از:
  • CONCURRENT : نقاط نشانه‌گذاری برای همه بینندگان همزمان برنامه‌ریزی می‌شوند
  • NON_CONCURRENT : نقاط نشانه‌گذاری (Cuepoints) برای بینندگان مختلف در زمان‌های مختلف برنامه‌ریزی می‌شوند. این رویکرد امکان نمایش تبلیغات با نرخ افزایش‌یافته را فراهم می‌کند که به بینندگان اجازه می‌دهد در صورت واجد شرایط بودن، نقاط نشانه‌گذاری را دریافت کنند.
monetizationDetails.cuepointSchedule.creatorCuepointConfig. repeatIntervalSecs unsigned integer
این مقدار، فاصله زمانی بین درج خودکار آگهی در طول پخش را بر حسب ثانیه مشخص می‌کند. برای مثال، اگر مقدار 360 باشد، یوتیوب می‌تواند نشانه‌های تبلیغاتی میان‌پرده را در فواصل شش دقیقه‌ای درج کند.

توجه:
  • این مقدار، زمان بین شروع دو نقطه شروع متوالی را مشخص می‌کند. یعنی، فاصله از انتهای یک نقطه شروع تا شروع نقطه شروع بعدی اندازه‌گیری نمی‌شود.
  • برای سازگاری با تنظیمات یوتیوب استودیو، این مقدار از ۶ دقیقه تا ۳۰ دقیقه، مضربی از ۶ دقیقه است. هر عدد صحیحی در درخواست به‌روزرسانی در این محدوده، اگرچه معتبر باشد، به نزدیکترین مضرب ۶ دقیقه گرد می‌شود.