liveBroadcast اکنون حاوی ویژگیای است که وضعیت «ساختهشده برای کودکان» آن پخش زنده را شناسایی میکند. «شرایط خدمات» و «خطمشی توسعهدهندگان» «خدمات YouTube API» نیز در تاریخ ۱۰ ژانویه ۲۰۲۰ بهروزرسانی شدند. برای اطلاعات بیشتر،
تاریخچه بازبینی خدمات API جاریسازی زنده YouTube و
شرایط خدمات خدمات API YouTube را ببینید.
همهفرستی ایجاد میکند.
موارد استفاده رایج
درخواست
درخواست HTTP
POST 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، و status. |
|
| پارامترهای اختیاری | ||
onBehalfOfContentOwner |
stringاین پارامتر فقط در درخواستهای مجاز قابلاستفاده است. توجه: این پارامتر منحصراً برای شرکای محتوای YouTube درنظر گرفته شده است. پارامتر onBehalfOfContentOwner نشان میدهد که اطلاعات کاربری مجوز درخواست، کاربر CMS YouTube را شناسایی میکند که از طرف مالک محتوای مشخصشده در مقدار پارامتر عمل میکند. این پارامتر برای شرکای محتوای YouTube که مالک و مدیر بسیاری از کانالهای مختلف YouTube هستند درنظر گرفته شده است. این ویژگی به مالکان محتوا اجازه میدهد یکبار اصالتسنجی کنند و به همه دادههای ویدیو و کانال خود دسترسی پیدا کنند، بدون اینکه نیاز باشد برای هر کانال بهطور جداگانه اعتبارنامههای اصالتسنجی ارائه دهند. حساب CMS که کاربر با آن اصالتسنجی میکند باید به مالک محتوای YouTube مشخصشده پیوند داده شده باشد. |
|
onBehalfOfContentOwnerChannel |
stringاین پارامتر فقط در درخواستهای مجاز قابلاستفاده است. از این پارامتر فقط میتوان در درخواست مجاز بهدرستی استفاده کرد. توجه: این پارامتر منحصراً برای شرکای محتوای YouTube درنظر گرفته شده است. پارامتر onBehalfOfContentOwnerChannel شناسه کانال YouTube را برای کانالی که ویدیو به آن اضافه میشود مشخص میکند. وقتی درخواست مقداری را برای پارامتر onBehalfOfContentOwner مشخص میکند، این پارامتر الزامی است و فقط میتواند همراه با آن پارامتر استفاده شود. علاوهبراین، درخواست باید بااستفاده از حساب CMS که به مالک محتوایی که پارامتر onBehalfOfContentOwner مشخص میکند پیوند داده شده است، مجاز شود. درنهایت، کانالی که مقدار پارامتر onBehalfOfContentOwnerChannel مشخص میکند باید به مالک محتوایی که پارامتر onBehalfOfContentOwner مشخص میکند پیوند داده شود.این پارامتر برای شرکای محتوای YouTube درنظر گرفته شده است که مالک کانالهای YouTube مختلفی هستند و آنها را مدیریت میکنند. این پارامتر به مالکان محتوا اجازه میدهد یکبار اصالتسنجی کنند و ازطرف کانال مشخصشده در مقدار پارامتر اقداماتی را انجام دهند، بدون اینکه نیاز باشد برای هر کانال جداگانه اعتبارنامههای اصالتسنجی ارائه دهند. |
|
متن درخواست
یک منبع liveBroadcast در بدنه درخواست ارائه دهید. برای آن منبع:
-
باید مقداری برای این ویژگیها مشخص کنید:
snippet.titlesnippet.scheduledStartTimestatus.privacyStatus
-
میتوانید برای این مشخصات مقدار تنظیم کنید:
snippet.titlesnippet.descriptionsnippet.categoryIdsnippet.scheduledStartTimesnippet.scheduledEndTimestatus.privacyStatusstatus.selfDeclaredMadeForKidscontentDetails.monitorStream.enableMonitorStreamcontentDetails.monitorStream.broadcastStreamDelayMscontentDetails.enableAutoStartcontentDetails.enableAutoStopcontentDetails.enableClosedCaptionscontentDetails.enableDvrcontentDetails.enableEmbedcontentDetails.recordFromStartcontentDetails.availabilityConfig
توجه: جدول ویژگی هر مقدار پیشفرضی را که برای ویژگیهای فهرستشده تنظیم شده است مستند میکند. در هریک از موارد زیر، مقادیر پیشفرض اختصاص داده خواهد شد:
- مقادیر آن داراییها را مشخص نمیکنید.
- مقدار پارامتر
partدر درخواست شما بخشی را که حاوی آن ویژگیها است مشخص نمیکند.
پاسخ
درصورت موفقیت، این روش یک منبع پخش زنده را در بدنه پاسخ برمیگرداند.
خطاها
جدول زیر پیامهای خطایی را که ممکن است «میانای برنامهسازی کاربردی» در پاسخ به فراخوانی این روش برگرداند مشخص میکند. برای جزئیات بیشتر، به مستندات پیام خطا مراجعه کنید.
| نوع خطا | جزئیات خطا | شرح |
|---|---|---|
insufficientPermissions |
insufficientLivePermissions |
درخواست برای ایجاد پخش زنده مجاز نیست. |
insufficientPermissions |
livePermissionBlocked |
کاربری که درخواست را مجاز کرده است درحالحاضر نمیتواند ویدیو زنده در YouTube جاریسازی کند. جزئیاتی که توضیح میدهد چرا کاربر نمیتواند ویدیو زنده جاریسازی کند ممکن است در تنظیمات کانال کاربر در https://www.youtube.com/features دردسترس باشد. |
insufficientPermissions |
liveStreamingNotEnabled |
کاربری که درخواست را مجاز کرده است، برای جاریسازی ویدیو زنده در YouTube فعال نیست. کاربر میتواند اطلاعات بیشتر را در https://www.youtube.com/features پیدا کند. |
invalidValue (400) |
invalidAutoStart |
منبع liveBroadcast
حاوی مقدار نامعتبری برای ویژگی contentDetails.enableAutoStart بود.
همه همهفرستیها از این تنظیم پشتیبانی نمیکنند. |
invalidValue (400) |
invalidAutoStop |
منبع liveBroadcast
مقدار نامعتبری برای دارایی contentDetails.enableAutoStop دارد. نمیتوانید تنظیم enableAutoStop را برای همهفرستی ماندگار تغییر دهید. |
invalidValue (400) |
invalidDescription |
منبع liveBroadcast مقدار معتبری برای ویژگی snippet.description مشخص نکرده است. مقدار دارایی میتواند حداکثر ۵۰۰۰ نویسه داشته باشد. |
invalidValue (400) |
invalidEmbedSetting |
منبع liveBroadcast حاوی مقدار نامعتبری برای ویژگی contentDetails.enable_embed بود. نمیتوانید این همهفرستی را جاسازی کنید. |
invalidValue (400) |
invalidLatencyPreferenceOptions |
منبع liveBroadcast
حاوی مقدار نامعتبری برای ویژگی contentDetails.latencyPreference بود.
همه تنظیمات با این اولویت تأخیر پشتیبانی نمیشوند.
|
invalidValue (400) |
invalidPrivacyStatus |
منبع liveBroadcast حاوی مقدار نامعتبری برای ویژگی status.privacy_status بود. |
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 مشخص نکرده است. طول مقدار ویژگی باید بین ۱ تا ۱۰۰ نویسه باشد. |
limitExceeded |
userBroadcastsExceedLimit |
کاربر تعداد زیادی پخش زنده یا زمانبندیشده ایجاد کرده است و باید برخیاز آنها را متوقف یا حذف کند. |
rateLimitExceeded |
userRequestsExceedRateLimit |
کاربر در بازه زمانی مشخصی درخواستهای زیادی ارسال کرده است. |
required (400) |
privacyStatusRequired |
منبع liveBroadcast باید وضعیت حریم خصوصی را مشخص کند. مقادیر معتبر privacyStatus را ببینید. |
required (400) |
scheduledEndTimeRequired |
منبع liveBroadcast باید ویژگی snippet.scheduledEndTime را مشخص کند. |
required (400) |
scheduledStartTimeRequired |
منبع liveBroadcast باید ویژگی snippet.scheduledStartTime را مشخص کند. |
required (400) |
titleRequired |
منبع liveBroadcast باید ویژگی snippet.title را مشخص کند. |
امتحان کنید!
برای فراخوانی این API و دیدن درخواست و پاسخ API، از APIs Explorer استفاده کنید.