liveChatMessage משאב מייצג הודעה בצ'אט בשידור חי ב-YouTube. יכול להיות שהמשאב יכיל פרטים על כמה סוגים של הודעות, כולל הודעת טקסט שפורסמה לאחרונה או אירוע מימון על ידי מעריצים.
התכונה 'צ'אט בשידור חי' מופעלת כברירת מחדל בשידורים חיים, והיא זמינה בזמן שהאירוע בשידור חי פעיל. (אחרי שהאירוע מסתיים, הצ'אט בשידור חי לא זמין יותר לאירוע הזה).
Methods
ה-API תומך בשיטות הבאות למשאבי liveChatMessages:
- list
- מציג רשימה של הודעות בצ'אט בשידור חי בצ'אט ספציפי. כדאי לנסות עכשיו.
- streamList
- הפעלת חיבור לשידור בשרת כדי לקבל הודעות בצ'אט בשידור חי בצ'אט ספציפי עם זמן אחזור קצר. כדאי לנסות עכשיו.
- הוספה
- הוספת הודעה או סקר לצ'אט בשידור חי. כדאי לנסות עכשיו.
- transition
- מעבר בין מצבים של הודעה פעילה. כדאי לנסות עכשיו.
- מחיקה
- מחיקה של הודעה בצ'אט. הבקשה ל-API צריכה להיות מאושרת על ידי הבעלים של הערוץ או על ידי מנהל תגובות בצ'אט בשידור חי. כדאי לנסות עכשיו.
ייצוג משאבים
מבנה ה-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
},
"pollDetails": {
"metadata": {
"options": {
"optionText": string,
"tally": string,
},
"questionText": string,
"status": enum
},
},
"membershipGiftingDetails": {
"giftMembershipsCount": integer,
"giftMembershipsLevelName": string
},
"giftMembershipReceivedDetails": {
"memberLevelName": string,
"gifterChannelId": string,
"associatedMembershipGiftingMessageId": string
},
"giftEventDetails": {
"giftMetadata": {
"jewelsAmount": integer,
"giftName": string,
"giftUrl": string,
"giftDuration": object,
"seconds": integer,
"nanos": integer,
"hasVisualEffect": boolean,
"comboCount": integer,
"altText": string,
"language": string
},
},
},
"authorDetails": {
"channelId": string,
"channelUrl": string,
"displayName": string,
"profileImageUrl": string,
"isVerified": boolean,
"isChatOwner": boolean,
"isChatSponsor": boolean,
"isChatModerator": boolean
},
}מאפיינים
בטבלה הבאה מוגדרים המאפיינים שמופיעים במשאב הזה:
| מאפיינים | |
|---|---|
kind |
stringמזהה את סוג משאב ה-API. הערך יהיה youtube#liveChatMessage. |
etag |
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 יש ערך מאפיין id של 123, וההודעה הזו נמחקת בהמשך, הערך של snippet.messageDeletedDetails.deletedMessageId יהיה 123 עבור ההודעה הזו.אם שומרים במטמון הודעות צ'אט אחרי שאחזרתם אותן, צריך להשתמש בערך של המאפיין הזה כדי לזהות את ההודעה שכבר לא צריכה להיות מוצגת. |
snippet.userBannedDetails |
objectהאובייקט הזה מכיל פרטים על משתמש שנחסם מ-Chat. הוא מכיל גם פרטים על ההשעיה עצמה. אפשר להרחיק משתמשים מצ'אט באופן קבוע או זמני. |
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האובייקט הזה מכיל פרטים על האירוע New Member Announcement (הודעה על הצטרפות חבר חדש). השדה הזה מוגדר רק אם הסוג הוא newSponsorEvent. המונח 'חבר' הוא המונח המקביל ל'ספונסר'.
|
snippet.newSponsorDetails.memberLevelName |
stringהשם של הרמה שבה הצופה הוא חבר. השמות של הרמות מוגדרים על ידי ערוץ YouTube שמציע את החברות במועדון. במקרים מסוימים, השדה הזה לא מתמלא. |
snippet.newSponsorDetails.isUpgrade |
boolמציין אם הצופה שדרג הרגע מרמה נמוכה יותר. לצופים שלא היו חברים במועדון בזמן הרכישה, ערך השדה הוא false.
|
snippet.superChatDetails |
objectהאובייקט הזה מכיל פרטים על אירוע של סופר צ'אט. הוא מופיע רק אם סוג ההודעה הוא 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התגובה שהמשתמש הוסיף לאירוע הסופר צ'אט הזה. |
snippet.superChatDetails.tier |
unsigned integerהרמה של ההודעה בתשלום. שימו לב שבמשאב superChatEvent, המאפיין snippet.messageType מכיל את הערך הזה.הסיווג מבוסס על סכום הכסף שהוצא על רכישת ההודעה. היא גם קובעת את הצבע שבו ההודעה תודגש בממשק המשתמש של הצ'אט בשידור חי, את האורך המקסימלי של ההודעה ואת משך הזמן שבו ההודעה תהיה מוצמדת לטיקר. המידע על רמות הסופר צ'אט מופיע במרכז העזרה של YouTube. (אפשר לעיין בקטע שניתן להרחבה בנושא פרטי רכישה של סופר צ'אט). ברשימה הזו, רמת המחיר עם סכום הרכישה הנמוך ביותר היא רמה 1, רמת המחיר עם סכום הרכישה הנמוך הבא היא רמה 2 וכן הלאה. |
snippet.superStickerDetails |
objectהאובייקט הזה מכיל פרטים על אירוע של Super Sticker. הוא מופיע רק אם סוג ההודעה הוא superStickerEvent. |
snippet.superStickerDetails.superStickerMetadata |
objectפרטים על ה-Super Sticker. |
snippet.superStickerDetails.superStickerMetadata.stickerId |
stringמזהה ייחודי של תמונת הסטיקר. חשוב לשים לב שהתמונה מוצגת רק כחלק מההודעה עם הסופר סטיקר כשהמשתמשים צופים בחלון הצ'אט ב-YouTube. עם זאת, כתובת ה-URL של התמונה לא זמינה באמצעות ה-API. לעיון בלבד, בקובץ ה-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 מכיל את הערך הזה.הסיווג מבוסס על סכום הכסף שהוצא על רכישת ההודעה. השכבה גם קובעת את הצבע שבו ההודעה תודגש בממשק המשתמש של הצ'אט בשידור חי, את האורך המקסימלי של ההודעה ואת משך הזמן שבו ההודעה תוצמד לטיקר. שכבות הסופר צ'אט, שכוללות גם סופר סטיקרים, מתועדות במרכז העזרה של YouTube. (אפשר לעיין בקטע שניתן להרחבה בנושא פרטי רכישה של סופר צ'אט). ברשימה הזו, רמת המחיר עם סכום הרכישה הנמוך ביותר היא רמה 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.tally |
stringהתוצאות של האפשרות בסקר בשידור חי. הסיכום מוצג רק אם בקשת ה-API אושרה על ידי בעלי הערוץ. |
snippet.pollDetails.metadata.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. |
snippet.giftEventDetails |
objectהאובייקט הזה מכיל פרטים על אירוע מתנה. הוא מופיע רק אם הערך של message type הוא giftEvent. |
snippet.giftEventDetails.giftMetadata |
objectפרטים על אירוע הענקת המתנה. |
snippet.giftEventDetails.giftMetadata.jewelsAmount |
integerכמות האבנים היקרות שמומשו עבור המתנה. |
snippet.giftEventDetails.giftMetadata.giftName |
stringשם המתנה. |
snippet.giftEventDetails.giftMetadata.giftUrl |
stringכתובת ה-URL של נכס המתנה. |
snippet.giftEventDetails.giftMetadata.giftDuration |
objectמשך הזמן שבו תוצג כתובת ה-URL של המתנה. |
snippet.giftEventDetails.giftMetadata.giftDuration.seconds |
integerמספר השניות שבהן תוצג כתובת ה-URL של המתנה. |
snippet.giftEventDetails.giftMetadata.giftDuration.nanos |
integerמספר הננו-שניות שבהן כתובת ה-URL של המתנה תוצג. |
snippet.giftEventDetails.giftMetadata.hasVisualEffect |
booleanהאם המתנה כוללת אפקט חזותי. |
snippet.giftEventDetails.giftMetadata.comboCount |
integerמספר המתנות שנשלחו ברצף; 0 אם לא מדובר בשליחת מתנות ברצף. |
snippet.giftEventDetails.giftMetadata.altText |
stringמחרוזת טקסט שמתארת את המתנה. |
snippet.giftEventDetails.giftMetadata.language |
stringהשפה של ערך המאפיין altText. |
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הערך הזה מציין אם המחבר הוא מנחה של הצ'אט בשידור חי. |