Zasób liveChatMessage
reprezentuje wiadomość na czacie na żywo w YouTube. Zasób może zawierać szczegółowe informacje na temat kilku rodzajów wiadomości, w tym nowo opublikowanych SMS-ów lub wydarzeń związanych z finansowaniem przez fanów.
Czat na żywo jest domyślnie włączony w przypadku transmisji na żywo i jest dostępny, gdy wydarzenie jest aktywne. Po zakończeniu wydarzenia czat na żywo nie będzie już dostępny.
Metody
Interfejs API obsługuje następujące metody w przypadku zasobów liveChatMessages
:
- list
- Wyświetla listę wiadomości z konkretnego czatu na żywo. Wypróbuj teraz
- wstaw
- Dodaje wiadomość lub ankietę do czatu na żywo. Wypróbuj teraz
- przejście
- Przenosi stan opublikowanej wiadomości. Wypróbuj teraz
- usuń
- Usuwa wiadomość czatu. Żądanie do interfejsu API musi zostać zatwierdzone przez właściciela kanału lub moderatora czatu na żywo. Wypróbuj teraz
Reprezentowanie zasobu
Poniższa struktura JSON przedstawia format zasobu 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, "questionText": string, }, "status": enum }, }, "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 }, }
Właściwości
Tabela poniżej zawiera właściwości widoczne w tym zasobie:
Właściwości | |
---|---|
kind |
string Określa typ zasobu interfejsu API. Wartość wyniesie youtube#liveChatMessage . |
etag |
etag Etag tego zasobu. |
id |
string Przypisywany przez YouTube identyfikator umożliwiający jednoznaczną identyfikację wiadomości. |
snippet |
object Obiekt snippet zawiera podstawowe informacje na temat wiadomości na czacie. |
snippet.type |
string Typ wiadomości. Ta właściwość jest zawsze obecna, a jej wartość określa, które pola występują w zasobie. Prawidłowe wartości tej właściwości to:
|
snippet.liveChatId |
string Identyfikator jednoznacznie identyfikujący czat na żywo, z którym powiązana jest wiadomość. Identyfikator czatu na żywo powiązany z transmisją jest zwracany we właściwości snippet.liveChatId zasobu liveBroadcast . |
snippet.authorChannelId |
string Identyfikator użytkownika, który jest autorem wiadomości. To pole jest wypełniane tylko w przypadku tych typów wiadomości:
|
snippet.publishedAt |
datetime Data i godzina pierwotnego opublikowania wiadomości. Wartość jest podana w formacie ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet.hasDisplayContent |
boolean Wskazuje, czy wiadomość zawiera wyświetlaną treść, która powinna być wyświetlana użytkownikom. |
snippet.displayMessage |
string Zawiera ciąg znaków wyświetlany użytkownikom. To pole nie występuje, jeśli typ wiadomości to chatEndedEvent lub tombstone . |
snippet.fanFundingEventDetails |
object Uwaga: ten obiekt i jego właściwości podrzędne zostały wycofane. Od 28 lutego 2017 roku zasoby liveChatMessage nie będą już zwracać informacji o wydarzeniach finansowania przez fanów.Ten obiekt zawiera informacje na temat finansowania. Jest obecny tylko wtedy, gdy typ wiadomości to fanFundingEvent . |
snippet.fanFundingEventDetails.amountMicros |
unsigned long Uwaga: ta usługa została wycofana. Kwota funduszu. |
snippet.fanFundingEventDetails.currency |
string Uwaga: ta usługa została wycofana. Waluta, w której przetworzono fundusz. |
snippet.fanFundingEventDetails.amountDisplayString |
string Uwaga: ta usługa została wycofana. Wyrenderowany ciąg znaków, który wyświetla użytkownikowi kwotę i walutę funduszy. |
snippet.fanFundingEventDetails.userComment |
string Uwaga: ta usługa została wycofana. Komentarz dodany przez użytkownika do tego wydarzenia związanego z finansowaniem przez fanów. |
snippet.textMessageDetails |
object Ten obiekt zawiera szczegółowe informacje o wiadomości tekstowej. Jest obecny tylko wtedy, gdy typ wiadomości to textMessageEvent . |
snippet.textMessageDetails.messageText |
string Wiadomość użytkownika. |
snippet.messageDeletedDetails |
object Ten obiekt zawiera szczegółowe informacje na temat wiadomości usuniętej przez moderatora czatu lub właściciela kanału transmisji na żywo. Jest obecny tylko wtedy, gdy typ wiadomości to messageDeletedEvent . |
snippet.messageDeletedDetails.deletedMessageId |
string Identyfikator, który jednoznacznie identyfikuje usuniętą wiadomość. Wartość jest taka sama jak wartość właściwości id oryginalnego SMS-a. Jeśli na przykład obiekt textMessageEvent ma wartość właściwości id równą 123 , a wiadomość zostanie później usunięta, to w przypadku tej wiadomości wartość snippet.messageDeletedDetails.deletedMessageId będzie mieć wartość 123 .Jeśli po pobraniu wiadomości czatu zostaną zapisane w pamięci podręcznej, użyj wartości tej właściwości, aby zidentyfikować wiadomość, która nie powinna już być wyświetlana. |
snippet.userBannedDetails |
object Ten obiekt zawiera szczegółowe informacje o użytkowniku, który został zablokowany na czacie. Znajdziesz w nim też informacje o tym blokadzie. Użytkownicy mogą zostać zablokowani na stałe lub tymczasowo. |
snippet.userBannedDetails.bannedUserDetails |
object Ten obiekt zawiera informacje o zablokowanym użytkowniku. |
snippet.userBannedDetails.bannedUserDetails.channelId |
string Identyfikator kanału YouTube zablokowanego użytkownika. |
snippet.userBannedDetails.bannedUserDetails.channelUrl |
string Adres URL kanału YouTube zablokowanego użytkownika. |
snippet.userBannedDetails.bannedUserDetails.displayName |
string Wyświetlana nazwa kanału YouTube zablokowanego użytkownika. |
snippet.userBannedDetails.bannedUserDetails.profileImageUrl |
string Awatar kanału zablokowanego użytkownika w YouTube. |
snippet.userBannedDetails.banType |
string Rodzaj blokady. Prawidłowe wartości tej właściwości to:
|
snippet.userBannedDetails.banDurationSeconds |
unsigned long Czas trwania blokady. Ta właściwość występuje tylko wtedy, gdy wartość właściwości snippet.userBannedDetails.banType wynosi temporary . |
snippet.memberMilestoneChatDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu Próg użytkownika. Jest obecny tylko wtedy, gdy typ wiadomości to memberMilestoneChatEvent . |
snippet.memberMilestoneChatDetails.userComment |
string Komentarz dodany przez wspierającego do tej wiadomości na czacie dla wspierających osiągających kolejny próg. To pole jest puste w przypadku wiadomości bez komentarza od członka grupy. |
snippet.memberMilestoneChatDetails.memberMonth |
unsigned integer Łączna liczba miesięcy, przez które widz był wspierającym, który przyznał mu ten czat dotyczący progu dla wspierających. Jest to tyle samo miesięcy, ile jest wyświetlane użytkownikom YouTube. |
snippet.memberMilestoneChatDetails.memberLevelName |
string Nazwa poziomu, na którym widz jest członkiem. Nazwy poziomów są określane przez kanał YouTube, który oferuje wspieranie. Czasami to pole jest puste. |
snippet.newSponsorDetails |
object Ten obiekt zawiera szczegółowe informacje na temat zdarzenia ogłoszenia nowego członka. Ta wartość jest ustawiona tylko wtedy, gdy typ to newSponsorEvent . „Członek” jest określeniem „sponsor”.
|
snippet.newSponsorDetails.memberLevelName |
string Nazwa poziomu, na którym widz jest członkiem. Nazwy poziomów są określane przez kanał YouTube, który oferuje wspieranie. Czasami to pole jest puste. |
snippet.newSponsorDetails.isUpgrade |
bool Wskazuje, czy użytkownik właśnie zmienił niższy poziom. W przypadku widzów, którzy nie byli wspierającymi w momencie zakupu, wartość pola wynosi false .
|
snippet.superChatDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu Superczatu. Jest obecny tylko wtedy, gdy typ wiadomości to superChatEvent . |
snippet.superChatDetails.amountMicros |
unsigned long Kwota do zapłaty w milionowych częściach jednostki walutowej. Jeśli na przykład kwota zakupu to 1 zł, wartość właściwości snippet.amountMicros wynosi 1000000 . |
snippet.superChatDetails.currency |
string Waluta, w której dokonano zakupu. Wartością jest kod waluty zgodny z normą ISO 4217. |
snippet.superChatDetails.amountDisplayString |
string Ciąg znaków, np. $1.00 , który zawiera kwotę do zapłaty i walutę. Ten ciąg znaków jest wyświetlany użytkownikowi. |
snippet.superChatDetails.userComment |
string Komentarz dodany przez użytkownika do tego wydarzenia superczatu. |
snippet.superChatDetails.tier |
unsigned integer Poziom płatnej wiadomości. Pamiętaj, że w zasobie superChatEvent właściwość snippet.messageType zawiera tę wartość.Poziom jest obliczany na podstawie kwoty wydanej na zakup wiadomości. Określa też kolor użyty do wyróżnienia wiadomości w interfejsie czatu na żywo, maksymalną długość wiadomości oraz czas, przez jaki wiadomość jest przypięta na pasku aktywności. Poziomy Superczatu są opisane w Centrum pomocy YouTube. (więcej informacji znajdziesz w rozwijanej sekcji dotyczącej szczegółów zakupu Superczatu). Na tej liście poziom z najniższą kwotą zakupu to poziom 1, kolejna najniższa kwota to poziom 2 itd. |
snippet.superStickerDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu Super Sticker. Jest obecny tylko wtedy, gdy typ wiadomości to superStickerEvent . |
snippet.superStickerDetails.superStickerMetadata |
object Szczegóły dotyczące supernaklejki. |
snippet.superStickerDetails.superStickerMetadata.stickerId |
string Unikalny identyfikator identyfikujący obraz naklejki. Pamiętaj, że ten obraz wyświetla się jako część wiadomości z supernaklejką tylko wtedy, gdy użytkownik wyświetla okno czatu w YouTube. Adres URL obrazu nie jest jednak dostępny za pomocą interfejsu API. Identyfikatory supernaklejek znajdziesz w tym pliku CSV tylko w celach informacyjnych. |
snippet.superStickerDetails.superStickerMetadata.altText |
string Ciąg tekstowy opisujący naklejkę. Pole snippet.superStickerDetails.superStickerMetadata.language określa język tekstu. Wywołując metodę liveChatMessages.list , ustaw wartość parametru hl na wybrany język tekstu. |
snippet.superStickerDetails.superStickerMetadata.language |
string Język wartości właściwości snippet.superStickerDetails.superStickerMetadata.altText . |
snippet.superStickerDetails.amountMicros |
unsigned long Kwota do zapłaty w milionowych częściach jednostki walutowej. Jeśli na przykład kwota zakupu to 1 zł, wartość właściwości snippet.amountMicros wynosi 1000000 . |
snippet.superStickerDetails.currency |
string Waluta, w której dokonano zakupu. Wartością jest kod waluty zgodny z normą ISO 4217. |
snippet.superStickerDetails.amountDisplayString |
string Ciąg znaków, np. $1.00 , który zawiera kwotę do zapłaty i walutę. Ten ciąg znaków jest wyświetlany użytkownikowi. |
snippet.superStickerDetails.tier |
unsigned integer Poziom płatnej wiadomości. Pamiętaj, że w zasobie superChatEvent właściwość snippet.messageType zawiera tę wartość.Poziom jest obliczany na podstawie kwoty wydanej na zakup wiadomości. Określa też kolor użyty do wyróżnienia wiadomości w interfejsie czatu na żywo, maksymalną długość wiadomości oraz czas, przez jaki wiadomość jest przypięta na pasku aktywności. Poziomy Superczatu, które również dotyczą supernaklejek, zostały opisane w Centrum pomocy YouTube. (więcej informacji znajdziesz w rozwijanej sekcji dotyczącej szczegółów zakupu Superczatu). Na tej liście poziom z najniższą kwotą zakupu to poziom 1, kolejna najniższa kwota to poziom 2 itd. |
snippet.pollDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu ankiety. Jest obecny tylko wtedy, gdy typ wiadomości to pollEvent . |
snippet.pollDetails.metadata |
object Szczegóły dotyczące wydarzenia z ankietą. |
snippet.pollDetails.metadata.options |
object Opcje w ankiecie na żywo. |
snippet.pollDetails.metadata.options.optionText |
string Tekst opcji ankiety na żywo. |
snippet.pollDetails.metadata.options.questionText |
string Treść pytania w ankiecie na żywo. |
snippet.pollDetails.metadata.status |
enum Stan wydarzenia z ankietą na żywo. Prawidłowe wartości tej właściwości to:
|
snippet.membershipGiftingDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu „Podaruj subskrypcję wspieranego kanału”. Wartość występuje tylko wtedy, gdy message type ma wartość membershipGiftingEvent . |
snippet.membershipGiftingDetails.giftMembershipsCount |
integer Liczba prezentów zakupionych przez użytkownika. |
snippet.membershipGiftingDetails.giftMembershipsLevelName |
string Nazwa poziomu wspierania zakupionego przez użytkownika w prezencie. Nazwy poziomów są definiowane przez kanał YouTube, który oferuje wspieranie. Czasami to pole jest puste. |
snippet.giftMembershipReceivedDetails |
object Ten obiekt zawiera szczegółowe informacje o zdarzeniu otrzymania wspierania kanału w prezencie. Wartość występuje tylko wtedy, gdy message type ma wartość giftMembershipReceivedEvent . |
snippet.giftMembershipReceivedDetails.memberLevelName |
string Nazwa poziomu, na którym widz jest członkiem. Ta wiadomość jest zgodna z snippet.membershipGiftingDetails.giftMembershipsLevelName powiązanej wiadomości typu „Podaruj subskrypcję wspieranego kanału”. Nazwy poziomów są definiowane przez kanał YouTube, który oferuje wspieranie. Czasami to pole jest puste. |
snippet.giftMembershipReceivedDetails.gifterChannelId |
string Identyfikator użytkownika, który dokonał zakupu w prezencie wspierania. Ta wiadomość jest zgodna z snippet.authorChannelId powiązanej wiadomości typu „Podaruj subskrypcję wspieranego kanału”. |
snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId |
string Identyfikator wiadomości w prezencie dla wspierających, która jest powiązana z tym wspieraniem kanału w prezencie. Ten identyfikator zawsze będzie odnosić się do wiadomości, której atrybut type to membershipGiftingEvent . |
authorDetails |
object Obiekt authorDetails zawiera dodatkowe informacje na temat użytkownika, który opublikował tę wiadomość. |
authorDetails.channelId |
string Identyfikator kanału YouTube autora. |
authorDetails.channelUrl |
string Adres URL kanału YouTube autora. |
authorDetails.displayName |
string Wyświetlana nazwa kanału YouTube autora. |
authorDetails.profileImageUrl |
string Adres URL awatara kanału autora w YouTube. |
authorDetails.isVerified |
boolean Ta wartość wskazuje, czy tożsamość autora została zweryfikowana przez YouTube. |
authorDetails.isChatOwner |
boolean Ta wartość wskazuje, czy autor jest właścicielem czatu na żywo. |
authorDetails.isChatSponsor |
boolean Ta wartość wskazuje, czy autor jest sponsorem czatu na żywo. |
authorDetails.isChatModerator |
boolean Ta wartość wskazuje, czy autor jest moderatorem czatu na żywo. |