يمثّل المرجع liveChatMessage
رسالة محادثة ضمن محادثة مباشرة على YouTube. يمكن أن يتضمّن المرجع تفاصيل حول أنواع متعدّدة من الرسائل، بما في ذلك رسالة نصية منشورة حديثًا أو حدث تمويل من المعجبين.
تكون ميزة المحادثة المباشرة مفعَّلة تلقائيًا لأحداث البث المباشر وتتوفّر عندما يكون الحدث المباشر نشطًا. (بعد انتهاء الحدث، لن تبقى المحادثة المباشرة متوفّرة لذلك الحدث).
الطُرق
تتيح واجهة برمجة التطبيقات استخدام الطرق التالية لموارد liveChatMessages
:
- list
- عرض رسائل المحادثة المباشرة الخاصة بمحادثة محدّدة التجربة الآن
- إدراج
- لإضافة رسالة إلى محادثة مباشرة. التجربة الآن
- حذف
- حذف رسالة محادثة يجب أن يكون طلب البيانات من واجهة برمجة التطبيقات معتمَدًا من مالك القناة أو المشرف على المحادثة المباشرة. التجربة الآن
تمثيل الموارد
تعرض بنية JSON التالية تنسيق مورد liveChatMessages
:
{ "kind": "youtube#liveChatMessage", "etag": etag, "id": string, "snippet": { "type": string, "liveChatId": string, "authorChannelId": string, "publishedAt": datetime, "hasDisplayContent": boolean, "displayMessage": string, "fanFundingEventDetails": { "amountMicros": unsigned long, "currency": string, "amountDisplayString": string, "userComment": string }, "textMessageDetails": { "messageText": string }, "messageDeletedDetails": { "deletedMessageId": string }, "userBannedDetails": { "bannedUserDetails": { "channelId": string, "channelUrl": string, "displayName": string, "profileImageUrl": string }, "banType": string, "banDurationSeconds": unsigned long }, "memberMilestoneChatDetails": { "userComment": string, "memberMonth": unsigned integer, "memberLevelName": string }, "newSponsorDetails": { "memberLevelName": string, "isUpgrade": bool }, "superChatDetails": { "amountMicros": unsigned long, "currency": string, "amountDisplayString": string, "userComment": string, "tier": unsigned integer }, "superStickerDetails": { "superStickerMetadata": { "stickerId": string, "altText": string, "language": string }, "amountMicros": unsigned long, "currency": string, "amountDisplayString": string, "tier": unsigned integer }, "membershipGiftingDetails": { "giftMembershipsCount": integer, "giftMembershipsLevelName": string }, "giftMembershipReceivedDetails": { "memberLevelName": string, "gifterChannelId": string, "associatedMembershipGiftingMessageId": string }, }, "authorDetails": { "channelId": string, "channelUrl": string, "displayName": string, "profileImageUrl": string, "isVerified": boolean, "isChatOwner": boolean, "isChatSponsor": boolean, "isChatModerator": boolean }, }
أماكن إقامة
يحدد الجدول التالي الخصائص التي تظهر في هذا المورد:
أماكن إقامة | |
---|---|
kind |
string يحدّد نوع مورد واجهة برمجة التطبيقات. ستكون القيمة youtube#liveChatMessage . |
etag |
etag علامة هذا المرجع. |
id |
string المعرّف الذي يعيّنه YouTube لتحديد الرسالة بشكل فريد. |
snippet |
object يحتوي العنصر snippet على تفاصيل أساسية حول رسالة المحادثة. |
snippet.type |
string نوع الرسالة هذه السمة متوفّرة دائمًا، وتحدّد قيمتها الحقول المتوفّرة في المورد. في ما يلي القيم الصالحة لهذه السمة:
|
snippet.liveChatId |
string المعرّف الذي يعرّف بشكل فريد المحادثة المباشرة المرتبطة بالرسالة يتم عرض معرّف المحادثة المباشرة المرتبط بالبث في السمة snippet.liveChatId لمورد liveBroadcast . |
snippet.authorChannelId |
string رقم تعريف المستخدم الذي ألّف الرسالة يتم ملء هذا الحقل لأنواع الرسائل التالية فقط:
|
snippet.publishedAt |
datetime تاريخ ووقت نشر الرسالة من البداية. ويتم تحديد القيمة بتنسيق ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet.hasDisplayContent |
boolean يشير إلى ما إذا كانت الرسالة تتضمن محتوى يجب عرضه للمستخدمين أم لا. |
snippet.displayMessage |
string يحتوي على سلسلة يتم عرضها للمستخدمين. لا يتوفّر هذا الحقل إذا كان نوع الرسالة chatEndedEvent أو tombstone . |
snippet.fanFundingEventDetails |
object ملاحظة: تم إيقاف هذا العنصر وخصائصه الفرعية نهائيًا. ابتداءً من 28 شباط (فبراير) 2017، لن تعرض موارد liveChatMessage تفاصيل حول أحداث التمويل من المعجبين.يحتوي هذا العنصر على تفاصيل حول حدث التمويل. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو fanFundingEvent . |
snippet.fanFundingEventDetails.amountMicros |
unsigned long ملاحظة: تم إيقاف هذا الموقع نهائيًا. مبلغ الصندوق المالي. |
snippet.fanFundingEventDetails.currency |
string ملاحظة: تم إيقاف هذا الموقع نهائيًا. العملة التي تم إنشاء الصندوق بها. |
snippet.fanFundingEventDetails.amountDisplayString |
string ملاحظة: تم إيقاف هذه السمة نهائيًا. سلسلة معروضة تعرض مبلغ الصندوق والعملة للمستخدم. |
snippet.fanFundingEventDetails.userComment |
string ملاحظة: تم إيقاف هذا الموقع نهائيًا. التعليق الذي أضافه المستخدم إلى حدث "التمويل من المعجبين" هذا. |
snippet.textMessageDetails |
object يحتوي هذا العنصر على تفاصيل عن الرسالة النصية. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو textMessageEvent . |
snippet.textMessageDetails.messageText |
string رسالة المستخدِم |
snippet.messageDeletedDetails |
object يتضمّن هذا العنصر تفاصيل حول رسالة حذفها المشرف على المحادثة أو مالك قناة البث المباشر. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو messageDeletedEvent . |
snippet.messageDeletedDetails.deletedMessageId |
string المعرّف الذي يعرّف الرسالة المحذوفة بشكل فريد. القيمة هي نفسها قيمة السمة id للرسالة النصية الأصلية. على سبيل المثال، إذا كانت قيمة السمة textMessageEvent هي 123 ، تم حذف هذه الرسالة لاحقًا، ستصبح قيمة snippet.messageDeletedDetails.deletedMessageId هي 123 لتلك الرسالة.إذا احتفظت برسائل المحادثة في ذاكرة التخزين المؤقت بعد استردادها، استخدِم قيمة هذه السمة لتحديد الرسالة التي يجب ألا يتم عرضها بعد ذلك. id |
snippet.userBannedDetails |
object يحتوي هذا العنصر على تفاصيل حول مستخدم تم حظره من المحادثة. وتحتوي أيضًا على تفاصيل عن الحظر نفسه. يمكن حظر المستخدمين من المحادثة نهائيًا أو مؤقتًا. |
snippet.userBannedDetails.bannedUserDetails |
object يحتوي هذا العنصر على معلومات حول المستخدم المحظور. |
snippet.userBannedDetails.bannedUserDetails.channelId |
string معرّف قناة المستخدم المحظور على YouTube |
snippet.userBannedDetails.bannedUserDetails.channelUrl |
string عنوان URL لقناة المستخدم المحظور على YouTube |
snippet.userBannedDetails.bannedUserDetails.displayName |
string الاسم المعروض لقناة المستخدم المحظور على YouTube |
snippet.userBannedDetails.bannedUserDetails.profileImageUrl |
string الصورة الرمزية لقناة المستخدم المحظور على YouTube |
snippet.userBannedDetails.banType |
string نوع الحظر. القيم الصالحة لهذه السمة هي:
|
snippet.userBannedDetails.banDurationSeconds |
unsigned long مدة الحظر. لا تتوفّر هذه السمة إلا إذا كانت قيمة السمة snippet.userBannedDetails.banType هي temporary . |
snippet.memberMilestoneChatDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث معلم رئيسي خاص بالأعضاء. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو memberMilestoneChatEvent . |
snippet.memberMilestoneChatDetails.userComment |
string التعليق الذي أضافه العضو إلى رسالة المحادثة المميّزة هذه الخاصة بالأعضاء هذا الحقل فارغ للرسائل التي ليس لها تعليق من العضو. |
snippet.memberMilestoneChatDetails.memberMonth |
unsigned integer إجمالي عدد الأشهر التي أصبح فيها المشاهد عضوًا في القناة (مع نسبة تقريبه) وهذا هو عدد الأشهر نفسه المعروض لمستخدمي YouTube. |
snippet.memberMilestoneChatDetails.memberLevelName |
string اسم المستوى الذي يصبح فيه المُشاهد مشتركًا. تحدّد قناة YouTube التي تقدّم ميزة "الاشتراك الداعم" أسماء المستويات. في بعض الحالات، لا يكون هذا الحقل فارغًا. |
snippet.newSponsorDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث إعلان عضو جديد. ولا يتم ضبط هذا الإعداد إلا إذا كان النوع newSponsorEvent . يشير المصطلح "عضو" إلى "الراعي".
|
snippet.newSponsorDetails.memberLevelName |
string اسم المستوى الذي يصبح فيه المُشاهد مشتركًا. تحدّد قناة YouTube التي تقدّم ميزة "الاشتراك الداعم" أسماء المستويات. في بعض الحالات، لا يتم ملء هذا الحقل. |
snippet.newSponsorDetails.isUpgrade |
bool يشير إلى ما إذا كان المُشاهد قد أجرى الترقية للتو من مستوى أدنى. بالنسبة إلى المشاهدين غير الأعضاء في وقت الشراء، تبلغ قيمة الحقل false .
|
snippet.superChatDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث Super Chat. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو superChatEvent . |
snippet.superChatDetails.amountMicros |
unsigned long مبلغ الشراء بالمايكرو من عملة الشراء على سبيل المثال، إذا كان مبلغ الشراء هو دولار أمريكي واحد، تكون قيمة السمة snippet.amountMicros هي 1000000 . |
snippet.superChatDetails.currency |
string العملة التي تم إجراء عملية الشراء بها. وتكون القيمة رمز عملة وفقًا لمعيار ISO 4217. |
snippet.superChatDetails.amountDisplayString |
string سلسلة، مثل $1.00 ، تحتوي على مبلغ الشراء والعملة. والغرض من هذه السلسلة هو عرضها للمستخدم. |
snippet.superChatDetails.userComment |
string التعليق الذي أضافه المستخدم إلى حدث Super Chat هذا |
snippet.superChatDetails.tier |
unsigned integer فئة الرسالة المدفوعة. يُرجى العلم أنّه في مورد superChatEvent ، تحتوي السمة snippet.messageType على هذه القيمة.تستند الفئة إلى المبلغ الذي تم إنفاقه لشراء الرسالة. وتحدّد أيضًا اللون المستخدَم لتمييز الرسالة في واجهة مستخدم المحادثة المباشرة، والحد الأقصى لطول الرسالة، ومدة تثبيت شريط الرسائل. يتم توثيق فئات Super Chat في مركز مساعدة YouTube. (يمكنك الاطّلاع على القسم القابل للتوسيع حول تفاصيل شراء رسائل Super Chat). في هذه القائمة، الفئة 1 التي تتضمّن أقل مبلغ شراء هي الفئة 1، وأدنى مبلغ تالٍ هو الفئة 2، وهكذا. |
snippet.superStickerDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث Super Stickers. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو superStickerEvent . |
snippet.superStickerDetails.superStickerMetadata |
object تفاصيل حول Super Sticker |
snippet.superStickerDetails.superStickerMetadata.stickerId |
string معرّف فريد يحدّد صورة الملصق يُرجى العِلم أنّ الصورة تظهر فقط كجزء من رسالة Super Stickers عندما يرى المستخدمون نافذة المحادثة على YouTube. يُرجى العِلم أنّ عنوان URL للصورة غير متاح باستخدام واجهة برمجة التطبيقات. كمرجع فقط، يمكنك معرفة أرقام تعريف الملصقات ذات الصلة بميزة Super Stickers في ملف CSV هذا. |
snippet.superStickerDetails.superStickerMetadata.altText |
string سلسلة نصية تصف الملصق. ويحدّد الحقل snippet.superStickerDetails.superStickerMetadata.language لغة النص. عند استدعاء الطريقة liveChatMessages.list ، اضبط قيمة المعلَمة hl على اللغة المختارة للنص. |
snippet.superStickerDetails.superStickerMetadata.language |
string لغة قيمة السمة snippet.superStickerDetails.superStickerMetadata.altText . |
snippet.superStickerDetails.amountMicros |
unsigned long مبلغ الشراء بالمايكرو من عملة الشراء على سبيل المثال، إذا كان مبلغ الشراء هو دولار أمريكي واحد، تكون قيمة السمة snippet.amountMicros هي 1000000 . |
snippet.superStickerDetails.currency |
string العملة التي تم إجراء عملية الشراء بها. وتكون القيمة رمز عملة وفقًا لمعيار ISO 4217. |
snippet.superStickerDetails.amountDisplayString |
string سلسلة، مثل $1.00 ، تحتوي على مبلغ الشراء والعملة. والغرض من هذه السلسلة هو عرضها للمستخدم. |
snippet.superStickerDetails.tier |
unsigned integer فئة الرسالة المدفوعة. يُرجى العلم أنّه في مورد superChatEvent ، تحتوي السمة snippet.messageType على هذه القيمة.تستند الفئة إلى المبلغ الذي تم إنفاقه لشراء الرسالة. وتحدّد أيضًا اللون المستخدَم لتمييز الرسالة في واجهة المستخدم الخاصة بالمحادثة المباشرة، والحد الأقصى لطول الرسالة، ومدة تثبيت شريط الرسائل. يتم توثيق فئات Super Chat التي تشمل أيضًا "الملصقات العجيبة" في مركز مساعدة YouTube. (يمكنك الاطّلاع على القسم القابل للتوسيع حول تفاصيل شراء رسائل Super Chat). في هذه القائمة، الفئة 1 التي تتضمّن أقل مبلغ شراء هي الفئة 1، وأدنى مبلغ تالٍ هو الفئة 2، وهكذا. |
snippet.pollDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث استطلاع. ولا تتوفّر هذه الميزة إلا إذا كان نوع الرسالة هو pollEvent . |
snippet.pollDetails.metadata |
object تفاصيل عن حدث الاستطلاع |
snippet.pollDetails.metadata.options |
object الخيارات في الاستطلاع المباشر. |
snippet.pollDetails.metadata.options.optionText |
string نص خيار الاستطلاع المباشر. |
snippet.pollDetails.metadata.options.questionText |
string نص سؤال الاستطلاع المباشر. |
snippet.pollDetails.metadata.status |
enum حالة حدث الاستطلاع المباشر في ما يلي القيم الصالحة لهذه السمة:
|
snippet.membershipGiftingDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث "إهداء اشتراك داعم". ولا تتوفّر هذه السمة إلا إذا كانت قيمة message type هي membershipGiftingEvent . |
snippet.membershipGiftingDetails.giftMembershipsCount |
integer عدد العضويات المقدَّمة كهدية التي اشتراها المستخدم. |
snippet.membershipGiftingDetails.giftMembershipsLevelName |
string اسم مستوى العضويات المقدَّمة كهدية التي اشتراها المستخدم. تحدّد قناة YouTube التي تقدّم ميزة "الاشتراك الداعم" أسماء المستويات. في بعض الحالات، لا يتم ملء هذا الحقل. |
snippet.giftMembershipReceivedDetails |
object يحتوي هذا العنصر على تفاصيل حول حدث تم تلقّي عضوية مقدَّمة كهدية. ولا تتوفّر هذه السمة إلا إذا كانت قيمة message type هي giftMembershipReceivedEvent . |
snippet.giftMembershipReceivedDetails.memberLevelName |
string اسم المستوى الذي يصبح فيه المُشاهد مشتركًا. تتطابق هذه السمة مع السمة snippet.membershipGiftingDetails.giftMembershipsLevelName في الرسالة المرتبطة بإهداء عضوية. تحدّد قناة YouTube التي تقدّم ميزة "الاشتراك الداعم" أسماء المستويات. في بعض الحالات، لا يتم ملء هذا الحقل. |
snippet.giftMembershipReceivedDetails.gifterChannelId |
string رقم تعريف المستخدم الذي أجرى عملية شراء إهداء عضوية تتطابق هذه السمة مع السمة snippet.authorChannelId في الرسالة المرتبطة بإهداء عضوية. |
snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId |
string تمثّل هذه السمة رقم تعريف رسالة إهداء عضوية والمرتبطة بهذه العضوية المقدَّمة كهدية. وسيشير هذا المعرّف دائمًا إلى الرسالة التي تكون قيمة type الخاصة بها membershipGiftingEvent . |
authorDetails |
object يحتوي الكائن authorDetails على تفاصيل إضافية عن المستخدم الذي نشر هذه الرسالة. |
authorDetails.channelId |
string معرّف قناة المؤلف على YouTube |
authorDetails.channelUrl |
string تشير هذه السمة إلى عنوان URL لقناة المؤلف على YouTube. |
authorDetails.displayName |
string الاسم المعروض لقناة المؤلف على YouTube |
authorDetails.profileImageUrl |
string عنوان URL للصورة الرمزية لقناة المؤلف على YouTube |
authorDetails.isVerified |
boolean تشير هذه القيمة إلى ما إذا تحقّقت منصة YouTube من هوية المؤلف. |
authorDetails.isChatOwner |
boolean تحدّد هذه القيمة ما إذا كان مؤلف المحادثة المباشرة هو مالك المحادثة المباشرة. |
authorDetails.isChatSponsor |
boolean تشير هذه القيمة إلى ما إذا كان المؤلف جهة راعية للمحادثة المباشرة. |
authorDetails.isChatModerator |
boolean تشير هذه القيمة إلى ما إذا كان المؤلف مشرفًا على المحادثة المباشرة. |