LiveChatMessages

liveChatMessage kaynağı, YouTube canlı sohbetindeki sohbet mesajlarını temsil eder. Kaynakta, yeni yayınlanan kısa mesajlar veya takipçi bağışları etkinliği gibi çeşitli mesaj türleriyle ilgili ayrıntılar yer alabilir.

Canlı sohbet özelliği, canlı yayınlar için varsayılan olarak etkindir ve canlı etkinlik devam ederken kullanılabilir. (Etkinlik sona erdikten sonra o etkinlik için canlı sohbet kullanılamaz.)

Yöntemler

API, liveChatMessages kaynakları için aşağıdaki yöntemleri destekler:

list
Belirli bir sohbete ait canlı sohbet mesajlarını listeler. Hemen deneyin.
ekle
Canlı sohbete mesaj ekler. Hemen deneyin.
sil
Bir sohbet mesajı silinir. API isteği, kanal sahibi veya canlı sohbet moderatörü tarafından yetkilendirilmelidir. Hemen deneyin.

Kaynak temsili

Aşağıdaki JSON yapısı, bir liveChatMessages kaynağının biçimini gösterir:

{
  "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
  }
}

Özellikler

Aşağıdaki tabloda bu kaynakta görünen özellikler tanımlanmaktadır:

Özellikler
kind string
API kaynağının türünü tanımlar. Değer youtube#liveChatMessage olacak.
etag etag
Bu kaynağın Etag'i.
id string
YouTube'un mesajı benzersiz şekilde tanımlamak için atadığı kimliktir.
snippet object
snippet nesnesi, sohbet mesajıyla ilgili temel ayrıntıları içerir.
snippet.type string
Mesajın türü. Bu özellik her zaman mevcuttur ve değeri, kaynakta hangi alanların olduğunu belirler.

Bu mülk için geçerli değerler şunlardır:
  • chatEndedEvent – Sohbet sona erdi ve bundan sonra başka mesaj eklenemez. Bu, doğal olarak yayın bittikten kısa bir süre sonra gerçekleşir. Bu tür mesajların şu anda kanalın varsayılan yayınındaki canlı sohbetler için gönderilmediğini unutmayın.
  • messageDeletedEvent – İleti moderatör tarafından silindi. author alanında moderatörün ayrıntıları bulunur. Bu etkinlik için görüntülenen içerik yok.
  • sponsorOnlyModeEndedEvent – Sohbet artık yalnızca sponsorlar modunda değil. Bu, sponsor olmayan kullanıcıların artık mesaj gönderebileceği anlamına geliyor. Bu etkinlik için görüntülenen içerik yok.
  • sponsorOnlyModeStartedEvent – Sohbet, yalnızca sponsorlar moduna girdiğinde, yalnızca sponsorların mesaj gönderebildiği anlamına gelir. Bu etkinliğin görünen içeriği yok.
  • newSponsorEvent: Canlı sohbetin sahibi olan kanala yeni bir kullanıcı sponsor olmuştur. author alanları yeni sponsorun ayrıntılarını içerir.
  • memberMilestoneChatEvent – Bir kullanıcı Üye Dönüm Noktası Mesajı gönderdi.
  • superChatEvent – Bir kullanıcı Süper Chat satın aldı.
  • superStickerEvent: Bir kullanıcı Süper Etiket satın aldı.
  • textMessageEvent – Kullanıcı bir kısa mesaj gönderdi.
  • tombstone: Mezar taşı, bir mesajın bu kimlik ve yayınlanma zamanıyla önceden var olduğunu ancak silindiğini gösterir. Bu adres, bir ileti silindikten sonra gönderilmez ancak silinmeden önce iletinin nerede olduğunu belirtmek için gösterilir. Bu mesaj türünde yalnızca snippet.liveChatId, snippet.type ve snippet.publishedAt alanları bulunur.
  • userBannedEvent – Kullanıcı moderatör tarafından engellendi. author alanında moderatörün ayrıntıları bulunur.
  • membershipGiftingEvent: Kullanıcı, başka izleyiciler için üyelik satın almıştır.
  • giftMembershipReceivedEvent: Bir kullanıcı hediye üyelik aldı.
snippet.liveChatId string
Mesajın ilişkilendirildiği canlı sohbeti benzersiz şekilde tanımlayan kimlik. Bir yayınla ilişkili canlı sohbet kimliği, liveBroadcast kaynağının snippet.liveChatId özelliğinde döndürülür.
snippet.authorChannelId string
İletiyi yazan kullanıcının kimliği. Bu alan yalnızca aşağıdaki mesaj türleri için doldurulur:
  • Mesaj türü textMessageEvent ise özellik değeri mesajı yazan kullanıcıyı tanımlar.
  • Mesaj türü fanFundingEvent ise özellik değeri yayını finanse eden kullanıcıyı tanımlar.
  • Mesaj türü messageDeletedEvent ise özellik değeri mesajı silen moderatörü tanımlar.
  • Mesaj türü newSponsorEvent ise özellik değeri yeni sponsor olan kullanıcıyı tanımlar.
  • Mesaj türü memberMilestoneChatEvent ise özellik değeri mesajı gönderen üyeyi tanımlar.
  • Mesaj türü userBannedEvent ise özellik değeri, kullanıcıyı yasaklayan moderatörü tanımlar.
  • Mesaj türü membershipGiftingEvent ise özellik değeri, hediye üyelik satın alma işlemini yapan kullanıcıyı tanımlar.
  • Mesaj türü giftMembershipReceivedEvent ise özellik değeri, hediye üyeliği alan kullanıcıyı tanımlar.
snippet.publishedAt datetime
Mesajın ilk yayınlandığı tarih ve saat. Değer ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) biçiminde belirtilir.
snippet.hasDisplayContent boolean
Mesajın kullanıcılara gösterilmesi gereken içerik olup olmadığını belirtir.
snippet.displayMessage string
Kullanıcılara gösterilen bir dize içerir. Mesaj türü chatEndedEvent veya tombstone ise bu alan gösterilmez.
snippet.fanFundingEventDetails object
Not: Bu nesne ve alt özellikleri kullanımdan kaldırıldı. liveChatMessage kaynakları, 28 Şubat 2017 tarihinden itibaren Hayran Bağışları etkinliklerinin ayrıntılarını döndürmeyecek.

Bu nesne, fon sağlama etkinliğiyle ilgili ayrıntıları içerir. Bu öğe, yalnızca mesaj türü fanFundingEvent ise mevcuttur.
snippet.fanFundingEventDetails.amountMicros unsigned long
Not: Bu mülk kullanımdan kaldırılmıştır.

Fon tutarı.
snippet.fanFundingEventDetails.currency string
Not: Bu mülk kullanımdan kaldırılmıştır.

Paranın oluşturulduğu para birimi.
snippet.fanFundingEventDetails.amountDisplayString string
Not: Bu mülk kullanımdan kaldırıldı.

Kullanıcıya fon tutarını ve para birimini gösteren oluşturulmuş bir dize.
snippet.fanFundingEventDetails.userComment string
Not: Bu mülk kullanımdan kaldırıldı.

Kullanıcının bu takipçi bağışı etkinliğine eklediği yorum.
snippet.textMessageDetails object
Bu nesne, kısa mesajla ilgili ayrıntıları içerir. Bu öğe, yalnızca mesaj türü textMessageEvent ise mevcuttur.
snippet.textMessageDetails.messageText string
Kullanıcının mesajı.
snippet.messageDeletedDetails object
Bu nesne, sohbet moderatörü veya canlı yayın kanalının sahibi tarafından silinen mesajla ilgili ayrıntıları içerir. Bu öğe, yalnızca mesaj türü messageDeletedEvent ise mevcuttur.
snippet.messageDeletedDetails.deletedMessageId string
Silinen mesajı benzersiz şekilde tanımlayan kimlik. Değer, orijinal kısa mesajın id özellik değeriyle aynıdır. Örneğin textMessageEvent, id özellik değerine 123 sahipse ve bu mesaj daha sonra silinirse söz konusu mesajın snippet.messageDeletedDetails.deletedMessageId değeri 123 olur.

Sohbet mesajlarını aldıktan sonra önbelleğe alırsanız artık görüntülenmemesi gereken mesajı tanımlamak için bu özelliğin değerini kullanın.
snippet.userBannedDetails object
Bu nesne, sohbetten yasaklanan bir kullanıcıyla ilgili ayrıntıları içerir. İçerikte, yasağın kendisiyle ilgili ayrıntılar da yer almaktadır. Kullanıcılar sohbet üzerinden kalıcı veya geçici olarak yasaklanabilir.
snippet.userBannedDetails.bannedUserDetails object
Bu nesne, yasaklanan kullanıcıyla ilgili bilgiler içeriyor.
snippet.userBannedDetails.bannedUserDetails.channelId string
Yasaklanan kullanıcının YouTube kanal kimliği.
snippet.userBannedDetails.bannedUserDetails.channelUrl string
Yasaklanan kullanıcının YouTube kanalının URL'si.
snippet.userBannedDetails.bannedUserDetails.displayName string
Yasaklanan kullanıcının YouTube kanalının görünen adı.
snippet.userBannedDetails.bannedUserDetails.profileImageUrl string
Yasaklanan kullanıcının YouTube kanalının avatarı.
snippet.userBannedDetails.banType string
Yasak türü. Bu mülk için geçerli değerler şunlardır:
  • kalıcı
  • geçici
snippet.userBannedDetails.banDurationSeconds unsigned long
Yasağın süresi. Bu özellik yalnızca snippet.userBannedDetails.banType özellik değeri temporary ise mevcuttur.
snippet.memberMilestoneChatDetails object
Bu nesnede bir Üye Dönüm Noktası etkinliği ile ilgili ayrıntılar yer alır. Bu öğe, yalnızca mesaj türü memberMilestoneChatEvent ise mevcuttur.
snippet.memberMilestoneChatDetails.userComment string
Üye tarafından bu Üye Dönüm Noktası Mesajı'na eklenen yorum. Üyenin yorumu olmayan mesajlar için bu alan boştur.
snippet.memberMilestoneChatDetails.memberMonth unsigned integer
İzleyicinin, kendisine bu Üye Dönüm Noktası Mesajı veren üye olduğu ayların toplam sayısıdır (yuvarlanır). Bu, YouTube kullanıcılarına gösterilen ay sayısıyla aynıdır.
snippet.memberMilestoneChatDetails.memberLevelName string
İzleyicinin üyesi olduğu Seviyenin adı. Seviye adları, Üyeliği sunan YouTube kanalı tarafından tanımlanır. Bazı durumlarda bu alan doldurulmaz.
snippet.newSponsorDetails object
Bu nesne, Yeni Üye Duyurusu etkinliğiyle ilgili ayrıntılar içerir. Bu etkinlik, yalnızca tür newSponsorEvent olduğunda ayarlanır. "Üye"nin "sponsor" ifadesinin yeni terimi olduğunu lütfen unutmayın.
snippet.newSponsorDetails.memberLevelName string
İzleyicinin üyesi olduğu Seviyenin adı. Seviye adları, Üyeliği sunan YouTube kanalı tarafından tanımlanır. Bazı durumlarda bu alan doldurulmaz.
snippet.newSponsorDetails.isUpgrade bool
İzleyicinin kısa süre önce daha alt bir seviyeden yükseltme yapıp yapmadığını belirtir. Satın alma işlemi sırasında üye olmayan izleyiciler için alanın değeri false şeklindedir.
snippet.superChatDetails object
Bu nesne, bir Super Chat etkinliğiyle ilgili ayrıntıları içerir. Bu öğe, yalnızca mesaj türü superChatEvent ise mevcuttur.
snippet.superChatDetails.amountMicros unsigned long
Satın alma para biriminin mikro cinsinden satın alma tutarı. Örneğin, satın alma tutarı 1 dolarsa snippet.amountMicros özelliğinin değeri 1000000 olur.
snippet.superChatDetails.currency string
Satın alma işleminin yapıldığı para birimi. Değer, ISO 4217 para birimi kodudur.
snippet.superChatDetails.amountDisplayString string
Satın alma tutarını ve para birimini içeren, $1.00 gibi bir dize. Dizenin kullanıcıya gösterilmesi amaçlanmıştır.
snippet.superChatDetails.userComment string
Kullanıcı tarafından bu Super Chat etkinliğine eklenen yorum.
snippet.superChatDetails.tier unsigned integer
Ücretli mesajın katmanı. Bir superChatEvent kaynağında, snippet.messageType özelliğinin bu değeri içerdiğini unutmayın.

Katman, mesajı satın almak için harcanan para miktarını temel alır. Ayrıca canlı sohbet kullanıcı arayüzünde mesajı vurgulamak için kullanılan rengi, maksimum mesaj uzunluğunu ve mesajın sohbet şeridine ne kadar süreyle sabitleneceğini de belirler.

Super Chat katmanları, YouTube Yardım Merkezi'nde açıklanmıştır. (Super Chat satın alma ayrıntılarıyla ilgili genişletilebilir bölüme bakın.) Bu listede, en düşük satın alma tutarına sahip katman 1. katman, sonraki en düşük tutar katman 2. katmandır.
snippet.superStickerDetails object
Bu nesne, bir Süper Etiket etkinliğiyle ilgili ayrıntılar içeriyor. Bu öğe, yalnızca mesaj türü superStickerEvent ise mevcuttur.
snippet.superStickerDetails.superStickerMetadata object
Süper Etiket ile ilgili ayrıntılar.
snippet.superStickerDetails.superStickerMetadata.stickerId string
Çıkartma resmini tanımlayan benzersiz kimlik. Resim, yalnızca kullanıcılar YouTube'daki sohbet penceresini görüntülediğinde Super Stickers mesajının bir parçası olarak gösterilir. Ancak resim URL'si API üzerinden kullanılamaz. Yalnızca referans olması için, bu CSV dosyasında hangi Süper Etiketler ile ilgili olan çıkartma kimliklerinin olduğunu bulabilirsiniz.
snippet.superStickerDetails.superStickerMetadata.altText string
Çıkartmayı açıklayan bir metin dizesi. snippet.superStickerDetails.superStickerMetadata.language alanı metnin dilini tanımlar. liveChatMessages.list yöntemini çağırırken hl parametre değerini metin için istediğiniz dile ayarlayın.
snippet.superStickerDetails.superStickerMetadata.language string
snippet.superStickerDetails.superStickerMetadata.altText özellik değerinin dilidir.
snippet.superStickerDetails.amountMicros unsigned long
Satın alma para biriminin mikro cinsinden satın alma tutarı. Örneğin, satın alma tutarı 1 dolarsa snippet.amountMicros özelliğinin değeri 1000000 olur.
snippet.superStickerDetails.currency string
Satın alma işleminin yapıldığı para birimi. Değer, ISO 4217 para birimi kodudur.
snippet.superStickerDetails.amountDisplayString string
Satın alma tutarını ve para birimini içeren, $1.00 gibi bir dize. Dizenin kullanıcıya gösterilmesi amaçlanmıştır.
snippet.superStickerDetails.tier unsigned integer
Ücretli mesajın katmanı. Bir superChatEvent kaynağında, snippet.messageType özelliğinin bu değeri içerdiğini unutmayın.

Katman, mesajı satın almak için harcanan para miktarını temel alır. Ayrıca, canlı sohbet kullanıcı arayüzünde mesajı vurgulamak için kullanılan rengi, maksimum mesaj uzunluğunu ve mesajın sohbet şeridine ne kadar süreyle sabitleneceğini de belirler.

Süper Etiketler'i de kapsayan Süper Chat katmanları YouTube Yardım Merkezi'nde açıklanmıştır. (Super Chat satın alma ayrıntılarıyla ilgili genişletilebilir bölüme bakın.) Bu listede, en düşük satın alma tutarına sahip katman 1. katman, sonraki en düşük tutar katman 2. katmandır.
snippet.membershipGiftingDetails object
Bu nesne, Hediye Üyelik etkinliğiyle ilgili ayrıntıları içerir. Yalnızca message type, membershipGiftingEvent ise mevcuttur.
snippet.membershipGiftingDetails.giftMembershipsCount integer
Kullanıcının satın aldığı hediye üyelik sayısı.
snippet.membershipGiftingDetails.giftMembershipsLevelName string
Kullanıcı tarafından satın alınan hediye üyeliklerin Seviye adı. Seviye adları, Üyeliği sunan YouTube kanalı tarafından tanımlanır. Bazı durumlarda bu alan doldurulmaz.
snippet.giftMembershipReceivedDetails object
Bu nesne, Hediye Üyelik Alındı etkinliğiyle ilgili ayrıntıları içerir. Yalnızca message type, giftMembershipReceivedEvent ise mevcuttur.
snippet.giftMembershipReceivedDetails.memberLevelName string
İzleyicinin üyesi olduğu Seviyenin adı. Bu, ilişkili hediye üyelik mesajındaki snippet.membershipGiftingDetails.giftMembershipsLevelName ile eşleşiyor. Seviye adları, Üyeliği sunan YouTube kanalı tarafından tanımlanır. Bazı durumlarda bu alan doldurulmaz.
snippet.giftMembershipReceivedDetails.gifterChannelId string
Hediye üyelik satın alma işlemini yapan kullanıcının kimliği. Bu, ilişkili hediye üyelik mesajındaki snippet.authorChannelId ile eşleşiyor.
snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId string
Bu hediye üyelikle ilgili hediye üyelik mesajının kimliği. Bu kimlik her zaman type değeri membershipGiftingEvent olan bir mesajı belirtir.
authorDetails object
authorDetails nesnesi, bu iletiyi yayınlayan kullanıcıyla ilgili ek ayrıntıları içerir.
authorDetails.channelId string
Yazarın YouTube kanal kimliği.
authorDetails.channelUrl string
Yazarın YouTube kanalının URL'si.
authorDetails.displayName string
Yazarın YouTube kanalının görünen adı.
authorDetails.profileImageUrl string
Yazarın YouTube kanalının avatar URL'si.
authorDetails.isVerified boolean
Bu değer, yazarın kimliğinin YouTube tarafından doğrulanıp doğrulanmadığını gösterir.
authorDetails.isChatOwner boolean
Bu değer, yazarın canlı sohbetin sahibi olup olmadığını gösterir.
authorDetails.isChatSponsor boolean
Bu değer, yazarın canlı sohbetin sponsoru olup olmadığını gösterir.
authorDetails.isChatModerator boolean
Bu değer, yazarın canlı sohbetin moderatörü olup olmadığını gösterir.