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
ה-e של המשאב הזה.
id string
המזהה שהמערכת של YouTube מקצה כדי לזהות את ההודעה באופן ייחודי.
snippet object
האובייקט snippet מכיל את הפרטים העיקריים על ההודעה בצ'אט.
snippet.type string
סוג ההודעה. המאפיין הזה תמיד קיים, והערך שלו קובע אילו שדות יהיו במשאב.

הערכים החוקיים לנכס הזה הם:
  • chatEndedEvent – הצ'אט הסתיים ואי אפשר להוסיף עוד הודעות אחרי ההודעה הזו. זה יקרה באופן טבעי זמן קצר אחרי שהשידור יסתיים. הודעות מהסוג הזה לא נשלחות בצ'אטים בשידור חי בשידור ברירת המחדל של הערוץ.
  • messageDeletedEvent – ההודעה נמחקה על ידי מנהל התגובות. השדה author מכיל את פרטי המנהל. לאירוע הזה אין תוכן תצוגה.
  • sponsorOnlyModeEndedEvent – הצ'אט כבר לא זמין לנותני חסות בלבד. כלומר, משתמשים שאינם נותני חסות יכולים עכשיו לשלוח הודעות. לאירוע הזה אין תוכן תצוגה.
  • sponsorOnlyModeStartedEvent – הצ'אט עבר למצב של נותני חסות בלבד. המשמעות היא שרק נותני חסות יכולים לשלוח הודעות. לאירוע הזה אין תוכן לתצוגה.
  • newSponsorEvent – משתמש חדש העניק חסות לערוץ שהצ'אט בשידור חי נמצא בבעלותו. השדות של author כוללים את הפרטים של נותן החסות החדש.
  • memberMilestoneChatEvent – משתמש שלח צ'אט לחברי מועדון שהגיעו לציון דרך.
  • superChatEvent – משתמש רכש הודעת Super Chat.
  • 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 מכיל את הערך הזה.

הרמה מבוססת על סכום הכסף שהוצאת כדי לרכוש את ההודעה. ההגדרה גם קובעת את הצבע שישמש להדגשת ההודעה בממשק המשתמש של הצ'אט בשידור חי, את משך ההודעה המקסימלי ואת משך הזמן שבו ההודעה מוצמדת.

מידע על רמות הסופר צ'אט זמין במרכז העזרה של YouTube. (ניתן לעיין בקטע הניתן להרחבה של פרטי הרכישות ב-Super Chat). ברשימה הזו, הרמה עם סכום הרכישה הנמוך ביותר היא רמה 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 הזה אפשר למצוא אילו מזהי סטיקרים קשורים לכל מדבקה.
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. (ניתן לעיין בקטע הניתן להרחבה של פרטי הרכישות ב-Super Chat). ברשימה הזו, הרמה עם סכום הרכישה הנמוך ביותר היא רמה 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
הסטטוס של אירוע הסקר בשידור חי. הערכים החוקיים לנכס הזה הם:
  • unknown
  • active
  • closed
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
הערך הזה מציין אם המחבר הוא מנהל של הצ'אט בשידור חי.