LiveChatMessages

משאב liveChatMessage מייצג הודעת צ'אט בצ'אט בשידור חי ב-YouTube. המשאב יכול להכיל פרטים על כמה סוגי הודעות, כולל הודעת טקסט שפורסמה לאחרונה או אירוע של מימון על ידי מעריצים.

תכונת הצ'אט בשידור חי מופעלת כברירת מחדל בשידורים חיים וזמינה כל עוד האירוע בשידור חי פעיל. (לאחר סיום האירוע, הצ'אט בשידור חי לא יהיה זמין יותר לאירוע הזה).

שיטות

ה-API תומך בשיטות הבאות למשאבי liveChatMessages:

list
הצגת ההודעות בצ'אט בשידור חי בצ'אט ספציפי. כדאי לנסות עכשיו.
הוספה
הוספת הודעה לצ'אט בשידור חי. כדאי לנסות עכשיו.
מחיקה
מחיקה של הודעת צ'אט. בקשת ה-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
    },
    "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
זהו הסוג של משאב ה-API. הערך יהיה youtube#liveChatMessage.
etag etag
ה-Etag של המשאב הזה.
id string
המזהה שמערכת YouTube מקצה כדי לזהות את ההודעה באופן ייחודי.
snippet object
האובייקט snippet מכיל את הפרטים העיקריים על ההודעה בצ'אט.
snippet.type string
סוג ההודעה. המאפיין הזה תמיד קיים, והערך שלו קובע אילו שדות יהיו במשאב.

הערכים החוקיים לנכס הזה הם:
  • chatEndedEvent – הצ'אט הסתיים ואי אפשר להוסיף עוד הודעות אחרי ההודעה הזו. זה יקרה באופן טבעי זמן קצר אחרי סיום השידור. חשוב לדעת שסוג ההודעה הזה לא נשלח כרגע לצ'אטים בשידור חי בשידור ברירת המחדל של הערוץ.
  • messageDeletedEvent – הודעה נמחקה על ידי מנהל התגובות. השדה author מכיל את פרטי המנהל. לאירוע הזה אין תוכן לתצוגה.
  • sponsorOnlyModeEndedEvent – הצ'אט כבר לא זמין לנותני חסות בלבד. כלומר, משתמשים שאינם נותני חסות יכולים עכשיו לשלוח הודעות. לאירוע הזה אין תוכן לתצוגה.
  • sponsorOnlyModeStartedEvent – הצ'אט עבר למצב של נותני חסות בלבד. המשמעות היא שרק נותני חסות יכולים לשלוח הודעות. לאירוע הזה אין תוכן לתצוגה.
  • newSponsorEvent – משתמש חדש נתן חסות לערוץ שהצ'אט בשידור חי נמצא בבעלותו. השדות author כוללים את הפרטים של נותן החסות החדש.
  • memberMilestoneChatEvent – משתמש שלח הודעת צ'אט של חברי מועדון שהגיעו לציון דרך.
  • superChatEvent – משתמש רכש הודעת סופר צ'אט.
  • superStickerEvent – משתמש רכש Super Sticker.
  • textMessageEvent – משתמש שלח הודעת טקסט.
  • tombstone – מצבה מציינת הודעה שהייתה קיימת בעבר עם המזהה ושעת הפרסום האלה, אבל היא נמחקה מאז. הוא לא נשלח כשמוחקים הודעה, אלא מוצג כדי לציין את המיקום שבו ההודעה הייתה לפני המחיקה. רק השדות snippet.liveChatId, snippet.type ו-snippet.publishedAt נמצאים בסוג ההודעה הזה.
  • userBannedEvent – מנהל התגובות חסם את המשתמש. השדה author מכיל את פרטי המנהל.
  • membershipGiftingEvent – משתמש רכש חברות במועדון עבור צופים אחרים.
  • giftMembershipReceivedEvent – משתמש קיבל חברות במועדון במתנה.
snippet.liveChatId string
המזהה שמזהה באופן ייחודי את הצ'אט בשידור חי שאליו ההודעה משויכת. מזהה הצ'אט בשידור חי שמשויך לשידור מוחזר בנכס snippet.liveChatId של המשאב liveBroadcast.
snippet.authorChannelId string
המזהה של המשתמש שחיבר את ההודעה. השדה הזה מתמלא רק בהודעות מהסוגים הבאים:
  • אם סוג ההודעה הוא textMessageEvent, ערך המאפיין מזהה את המשתמש שכתב את ההודעה.
  • אם סוג ההודעה הוא fanFundingEvent, ערך המאפיין מציין את המשתמש שמימן את השידור.
  • אם סוג ההודעה הוא messageDeletedEvent, ערך הנכס מזהה את מנהל התגובות שמחק את ההודעה.
  • אם סוג ההודעה הוא newSponsorEvent, ערך הנכס מזהה את המשתמש שרק הפך לתת חסות.
  • אם סוג ההודעה הוא memberMilestoneChatEvent, ערך הנכס מזהה את החבר ששלח את ההודעה.
  • אם סוג ההודעה הוא userBannedEvent, ערך המאפיין מזהה את מנהל התגובות שחסם את המשתמש.
  • אם סוג ההודעה הוא membershipGiftingEvent, ערך הנכס מציין את המשתמש שביצע את הרכישה של חברות במועדון במתנה.
  • אם סוג ההודעה הוא giftMembershipReceivedEvent, ערך המאפיין מציין את המשתמש שקיבל את החברות במועדון במתנה.
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
האובייקט הזה מכיל פרטים על המשתמש שנחסם מהצ'אט. הוא כולל גם פרטים לגבי החסימה עצמה. ניתן לחסום משתמשים מצ'אט באופן זמני או לצמיתות.
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. (ניתן לעיין בקטע הניתן להרחבה של פרטי הרכישות בסופר צ'אט). ברשימה הזו, הרמה עם סכום הרכישה הנמוך ביותר היא רמה 1, הסכום הבא הנמוך ביותר הוא רמה 2 וכן הלאה.
snippet.superStickerDetails object
האובייקט הזה מכיל פרטים על אירוע Super Sticker. היא מוצגת רק אם סוג ההודעה הוא superStickerEvent.
snippet.superStickerDetails.superStickerMetadata object
פרטים על ה-Super Sticker.
snippet.superStickerDetails.superStickerMetadata.stickerId string
מזהה ייחודי שמזהה את תמונת הסטיקר. חשוב לזכור שהתמונה מוצגת רק כחלק מהודעת ה-Super Sticker כשמשתמשים צופים בחלון הצ'אט ב-YouTube. עם זאת, כתובת ה-URL של התמונה לא זמינה דרך ממשק ה-API. לידיעתך, בקובץ ה-CSV הזה אפשר למצוא אילו מזהי סטיקרים קשורים לכל אחד מסוגי ה-Super Stickers.
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, שכוללות גם Super Stickers, מתועדות במרכז העזרה של YouTube. (ניתן לעיין בקטע הניתן להרחבה של פרטי הרכישות בסופר צ'אט). ברשימה הזו, הרמה עם סכום הרכישה הנמוך ביותר היא רמה 1, הסכום הבא הנמוך ביותר הוא רמה 2 וכן הלאה.
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
הערך הזה מציין אם המחבר הוא מנהל התגובות בצ'אט בשידור חי.