LiveBroadcasts: update

پخش را به روز می کند. به عنوان مثال، می توانید تنظیمات پخش تعریف شده در شیء contentDetails منبع liveBroadcast را تغییر دهید.

موارد استفاده رایج

درخواست

درخواست HTTP

PUT https://www.googleapis.com/youtube/v3/liveBroadcasts

مجوز

این درخواست به مجوز حداقل با یکی از حوزه های زیر نیاز دارد ( در مورد احراز هویت و مجوز بیشتر بخوانید ).

محدوده
https://www.googleapis.com/auth/youtube
https://www.googleapis.com/auth/youtube.force-ssl

مولفه های

جدول زیر پارامترهایی را که این کوئری پشتیبانی می کند فهرست می کند. تمام پارامترهای لیست شده پارامترهای پرس و جو هستند.

مولفه های
پارامترهای مورد نیاز
part string
پارامتر part در این عملیات دو هدف را دنبال می کند. ویژگی هایی را که عملیات نوشتن تنظیم می کند و همچنین ویژگی هایی را که پاسخ API شامل می شود شناسایی می کند.

ویژگی های part که می توانید در مقدار پارامتر قرار دهید عبارتند از id , snippet , contentDetails , monetizationDetails و status .

توجه داشته باشید که این روش مقادیر موجود را برای همه ویژگی‌های قابل تغییر که در هر قسمتی که مقدار پارامتر مشخص می‌کند وجود دارد لغو می‌کند. به عنوان مثال، وضعیت حریم خصوصی یک پخش در قسمت status تعریف شده است. به این ترتیب، اگر درخواست شما در حال به‌روزرسانی یک پخش خصوصی یا فهرست نشده باشد و مقدار پارامتر part درخواست شامل بخش status باشد، تنظیمات حریم خصوصی پخش به هر مقداری که بدنه درخواست مشخص می‌کند به‌روزرسانی می‌شود. اگر بدنه درخواست مقداری را مشخص نکند، تنظیمات حریم خصوصی موجود حذف می‌شود و پخش به تنظیمات حریم خصوصی پیش‌فرض برمی‌گردد.
پارامترهای اختیاری
onBehalfOfContentOwner string
این پارامتر فقط در یک درخواست مجاز به درستی قابل استفاده است. توجه: این پارامتر منحصراً برای شرکای محتوای YouTube در نظر گرفته شده است.

پارامتر onBehalfOfContentOwner نشان می دهد که اعتبارنامه مجوز درخواست، کاربر YouTube CMS را شناسایی می کند که از طرف مالک محتوا مشخص شده در مقدار پارامتر عمل می کند. این پارامتر برای شرکای محتوای YouTube در نظر گرفته شده است که کانال‌های مختلف YouTube را مالک و مدیریت می‌کنند. این به صاحبان محتوا امکان می‌دهد یک بار احراز هویت کنند و به تمام داده‌های ویدیویی و کانال خود دسترسی داشته باشند، بدون اینکه نیازی به ارائه اعتبارنامه احراز هویت برای هر کانال جداگانه داشته باشند. حساب CMS که کاربر با آن احراز هویت می‌کند باید به مالک محتوای YouTube مشخص شده مرتبط باشد.
onBehalfOfContentOwnerChannel string
این پارامتر فقط در یک درخواست مجاز به درستی قابل استفاده است. این پارامتر فقط در یک درخواست مجاز به درستی قابل استفاده است. توجه: این پارامتر منحصراً برای شرکای محتوای YouTube در نظر گرفته شده است.

پارامتر onBehalfOfContentOwnerChannel شناسه کانال YouTube کانالی را که ویدیویی به آن اضافه می شود مشخص می کند. این پارامتر زمانی مورد نیاز است که یک درخواست مقداری را برای پارامتر onBehalfOfContentOwner مشخص می کند و فقط می تواند در ارتباط با آن پارامتر استفاده شود. علاوه بر این، درخواست باید با استفاده از یک حساب CMS که به مالک محتوایی که پارامتر onBehalfOfContentOwner مشخص می‌کند مرتبط است، مجاز باشد. در نهایت، کانالی که مقدار پارامتر onBehalfOfContentOwnerChannel مشخص می کند باید به مالک محتوایی که پارامتر onBehalfOfContentOwner مشخص می کند پیوند داده شود.

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

درخواست بدن

یک منبع پخش زنده در بدنه درخواست ارائه دهید. برای آن منبع:

  • شما باید یک مقدار برای این ویژگی ها مشخص کنید:

    • id
    • snippet.scheduledStartTime
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs

  • شما می توانید مقادیری را برای این ویژگی ها تنظیم کنید:

    • snippet.title
    • snippet.description
    • snippet.scheduledStartTime
    • snippet.scheduledEndTime
    • status.privacyStatus
    • contentDetails.monitorStream.enableMonitorStream
    • contentDetails.monitorStream.broadcastStreamDelayMs
    • contentDetails.enableAutoStart
    • contentDetails.enableAutoStop
    • contentDetails.enableClosedCaptions
    • contentDetails.enableDvr
    • contentDetails.enableEmbed
    • contentDetails.recordFromStart
    • monetizationDetails.cuepointSchedule.pauseAdsUntil

    اگر درخواست به‌روزرسانی ارسال می‌کنید و درخواست شما مقداری را برای خاصیتی که قبلاً دارای مقدار است مشخص نمی‌کند، مقدار موجود ویژگی حذف می‌شود.

واکنش

در صورت موفقیت آمیز بودن، این روش یک منبع پخش زنده را در بدنه پاسخ برمی گرداند.

خطاها

جدول زیر پیام های خطایی را مشخص می کند که API می تواند در پاسخ به تماس با این روش بازگرداند. لطفاً برای جزئیات بیشتر به مستندات پیام خطا مراجعه کنید.

نوع خطا جزئیات خطا شرح
forbidden (403) closedCaptionsTypeModificationNotAllowed مقدار contentDetails.closedCaptionsType فقط زمانی قابل تغییر است که پخش در وضعیت created یا ready باشد.
forbidden (403) enabledModificationNotAllowed فیلد enabled فقط خواندنی است.
forbidden (403) scheduleStrategyModificationNotAllowed قسمت scheduleStrategy فقط خواندنی است.
forbidden (403) repeatIntervalSecsModificationNotAllowed فیلد repeatIntervalSecs فقط خواندنی است.
forbidden (403) pauseAdsUntilModificationNotAllowed فیلد pauseAdsUntil قابل تغییر نیست. این خطا ممکن است به دلایل زیر رخ دهد:
  • فیلد monetizationDetails.cuepointSchedule.enabled روی true تنظیم نشده است. این فیلد فقط از طریق YouTube Studio قابل تنظیم است.
  • پخش زنده نیست
forbidden (403) enableAutoStartModificationNotAllowed مقدار contentDetails.enableAutoStart فقط زمانی قابل تغییر است که جریان غیرفعال باشد و پخش در وضعیت created یا ready باشد.
forbidden (403) enableClosedCaptionsModificationNotAllowed مقدار contentDetails.enableClosedCaptions فقط زمانی قابل تغییر است که وضعیت پخش created یا ready .
forbidden (403) enableDvrModificationNotAllowed contentDetails. enableDvr مقدار contentDetails. enableDvr را می توان تنها زمانی تغییر داد که وضعیت پخش created یا ready .
forbidden (403) enableMonitorStreamModificationNotAllowed contentDetails. monitorStream.enableMonitorStream مقدار contentDetails. monitorStream.enableMonitorStream فقط زمانی قابل تغییر است که وضعیت پخش created یا ready .
forbidden (403) recordFromStartModificationNotAllowed contentDetails. recordFromStart مقدار contentDetails. recordFromStart فقط زمانی قابل تغییر است که وضعیت پخش created یا ready .
insufficientPermissions insufficientLivePermissions درخواست مجاز به به روز رسانی پخش زنده مشخص شده نیست. برای اطلاعات بیشتر، به اجرای احراز هویت OAuth2 مراجعه کنید.
insufficientPermissions liveStreamingNotEnabled کاربری که درخواست را مجاز کرده است، قادر به پخش جریانی ویدیوی زنده در YouTube نیست. کاربر می تواند اطلاعات بیشتر را در https://www.youtube.com/features بیابد.
invalidValue (400) invalidAutoStart منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی contentDetails.enableAutoStart است. نمی توانید تنظیمات enableAutoStart را برای پخش دائمی تغییر دهید.
invalidValue (400) invalidAutoStop منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی contentDetails.enableAutoStop است. شما نمی توانید تنظیمات enableAutoStop را برای پخش مداوم تغییر دهید.
invalidValue (400) invalidDescription منبع liveBroadcast مقدار معتبری برای ویژگی snippet.description مشخص نکرده است. snippet.description می تواند حداکثر 5000 کاراکتر داشته باشد.
invalidValue (400) invalidEmbedSetting منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی contentDetails.enable_embed است. شما نمی توانید این پخش را جاسازی کنید.
invalidValue (400) invalidEnableClosedCaptions در منبع liveBroadcast ، مقدار ویژگی contentDetails.enableClosedCaptions با مقدار تنظیم contentDetails.closedCaptionType ناسازگار است. منبع را طوری تغییر دهید که فقط یکی از دو ویژگی را داشته باشد و سپس درخواست را مجددا ارسال کنید.
invalidValue (400) invalidLatencyPreferenceOptions منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی contentDetails.latencyPreference است. همه تنظیمات با این اولویت تأخیر پشتیبانی نمی‌شوند.
invalidValue (400) invalidPauseAdsUntil منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی monetizationDetails.cuepointSchedule.pauseAdsUntil است. این خطا ممکن است به دلایل زیر رخ دهد:
  • مقدار monetizationDetails.cuepointSchedule.pauseAdsUntil در قالب ISO 8601 (YYYY-MM-DDTh:mm:ss.sZ) مشخص نشده است.
  • مقدار monetizationDetails.cuepointSchedule.pauseAdsUntil در آینده نیست.
  • مقدار monetizationDetails.cuepointSchedule.pauseAdsUntil بیش از 10 دقیقه از زمان فعلی فاصله دارد.
invalidValue (400) invalidPrivacyStatus منبع پخش زنده وضعیت حریم خصوصی معتبری را مشخص نکرده است. مقادیر معتبر privacyStatus را ببینید.
invalidValue (400) invalidProjection منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی contentDetails.projection است. نمایش پخش مداوم را نمی توان روی 360 تنظیم کرد.
invalidValue (400) invalidScheduledEndTime منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی snippet.scheduledEndTime است. زمان پایان برنامه ریزی شده باید از زمان شروع برنامه ریزی شده پیروی کند.
invalidValue (400) invalidScheduledStartTime منبع liveBroadcast حاوی یک مقدار نامعتبر برای ویژگی snippet.scheduledStartTime است. زمان شروع برنامه ریزی شده باید در آینده باشد.
invalidValue (400) invalidTitle منبع liveBroadcast مقدار معتبری برای ویژگی snippet.title مشخص نکرده است. snippet.title باید بین 1 تا 100 کاراکتر باشد.
notFound (404) liveBroadcastNotFound ویژگی id مشخص شده در منبع پخش زنده، پخش را شناسایی نکرد.
required (400) broadcastStreamDelayMsRequired منبع پخش زنده contentDetails. monitorStream.broadcastStreamDelayMs ویژگی contentDetails. monitorStream.broadcastStreamDelayMs .
required (400) enableMonitorStreamRequired منبع پخش زنده contentDetails. monitorStream.enableMonitorStream ویژگی contentDetails. monitorStream.enableMonitorStream .
required (400) idRequired منبع liveBroadcast باید یک مقدار برای ویژگی id داشته باشد و مشخص کند.
required (400) scheduledEndTimeRequired منبع liveBroadcast ویژگی snippet.scheduledEndTime را مشخص نکرده است.
required (400) scheduledStartTimeRequired منبع liveBroadcast ویژگی snippet.scheduledStartTime را مشخص نکرده است.

آن را امتحان کنید!

از APIs Explorer برای فراخوانی این API و مشاهده درخواست و پاسخ API استفاده کنید.