Resource liveChatMessage
mewakili pesan chat di live chat YouTube. Resource dapat berisi detail tentang beberapa jenis pesan, termasuk pesan teks yang baru diposting atau acara pendanaan penggemar.
Fitur live chat diaktifkan secara default untuk siaran live dan tersedia saat acara live aktif. (Setelah acara berakhir, live chat tidak lagi tersedia untuk acara tersebut.)
Metode
API ini mendukung metode berikut untuk resource liveChatMessages
:
- list
- Mencantumkan pesan live chat untuk chat tertentu. Coba sekarang.
- streamList
- Mengaktifkan koneksi streaming server untuk menerima pesan live chat untuk chat tertentu dengan latensi rendah. Coba sekarang.
- insert
- Menambahkan pesan atau polling ke live chat. Coba sekarang.
- transition
- Mengubah status pesan live. Coba sekarang.
- hapus
- Menghapus pesan chat. Permintaan API harus diberi otorisasi oleh pemilik channel atau moderator live chat. Coba sekarang.
Representasi resource
Struktur JSON berikut menunjukkan format resource 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 }, }, "authorDetails": { "channelId": string, "channelUrl": string, "displayName": string, "profileImageUrl": string, "isVerified": boolean, "isChatOwner": boolean, "isChatSponsor": boolean, "isChatModerator": boolean }, }
Properti
Tabel berikut menentukan properti yang muncul di resource ini:
Properti | |
---|---|
kind |
string Mengidentifikasi jenis resource API. Nilainya adalah youtube#liveChatMessage . |
etag |
etag ETag resource ini. |
id |
string ID yang ditetapkan YouTube untuk mengidentifikasi pesan secara unik. |
snippet |
object Objek snippet berisi detail inti tentang pesan chat. |
snippet.type |
string Jenis pesan. Properti ini selalu ada, dan nilainya menentukan kolom mana yang ada dalam resource. Nilai yang valid untuk properti ini adalah:
|
snippet.liveChatId |
string ID yang secara unik mengidentifikasi live chat yang terkait dengan pesan. ID live chat yang terkait dengan siaran ditampilkan di properti snippet.liveChatId resource liveBroadcast . |
snippet.authorChannelId |
string ID pengguna yang menulis pesan. Kolom ini hanya diisi untuk jenis pesan berikut:
|
snippet.publishedAt |
datetime Tanggal dan waktu saat pesan pertama kali dipublikasikan. Nilai ditentukan dalam format ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet.hasDisplayContent |
boolean Menunjukkan apakah pesan memiliki konten tampilan yang harus ditampilkan kepada pengguna. |
snippet.displayMessage |
string Berisi string yang ditampilkan kepada pengguna. Kolom ini tidak ada jika jenis pesan adalah chatEndedEvent atau tombstone . |
snippet.fanFundingEventDetails |
object Catatan: Objek ini dan properti turunannya tidak digunakan lagi. Mulai 28 Februari 2017, resource liveChatMessage tidak akan lagi menampilkan detail untuk peristiwa Fan Funding.Objek ini berisi detail tentang peristiwa pendanaan. Opsi ini hanya ada jika jenis pesan adalah fanFundingEvent . |
snippet.fanFundingEventDetails.amountMicros |
unsigned long Catatan: Properti ini tidak digunakan lagi. Jumlah dana. |
snippet.fanFundingEventDetails.currency |
string Catatan: Properti ini tidak digunakan lagi. Mata uang yang digunakan untuk melakukan pendanaan. |
snippet.fanFundingEventDetails.amountDisplayString |
string Catatan: Properti ini sudah tidak digunakan lagi. String yang dirender yang menampilkan jumlah dana dan mata uang kepada pengguna. |
snippet.fanFundingEventDetails.userComment |
string Catatan: Properti ini tidak digunakan lagi. Komentar yang ditambahkan oleh pengguna ke acara fan funding ini. |
snippet.textMessageDetails |
object Objek ini berisi detail tentang pesan teks. Opsi ini hanya ada jika jenis pesan adalah textMessageEvent . |
snippet.textMessageDetails.messageText |
string Pesan pengguna. |
snippet.messageDeletedDetails |
object Objek ini berisi detail tentang pesan yang dihapus oleh moderator chat atau oleh pemilik channel siaran live. Opsi ini hanya ada jika jenis pesan adalah messageDeletedEvent . |
snippet.messageDeletedDetails.deletedMessageId |
string ID yang secara unik mengidentifikasi pesan yang dihapus. Nilainya sama dengan nilai properti id dari pesan teks asli. Misalnya, jika textMessageEvent memiliki nilai properti id 123 , dan pesan tersebut kemudian dihapus, nilai snippet.messageDeletedDetails.deletedMessageId akan menjadi 123 untuk pesan tersebut.Jika Anda meng-cache pesan chat setelah mengambilnya, gunakan nilai properti ini untuk mengidentifikasi pesan yang tidak boleh ditampilkan lagi. |
snippet.userBannedDetails |
object Objek ini berisi detail tentang pengguna yang telah diblokir dari chat. Pemberitahuan ini juga berisi detail tentang larangan itu sendiri. Pengguna dapat diblokir dari chat secara permanen atau sementara. |
snippet.userBannedDetails.bannedUserDetails |
object Objek ini berisi informasi tentang pengguna yang dilarang. |
snippet.userBannedDetails.bannedUserDetails.channelId |
string ID channel YouTube pengguna yang diblokir. |
snippet.userBannedDetails.bannedUserDetails.channelUrl |
string URL channel YouTube pengguna yang diblokir. |
snippet.userBannedDetails.bannedUserDetails.displayName |
string Nama tampilan channel YouTube pengguna yang diblokir. |
snippet.userBannedDetails.bannedUserDetails.profileImageUrl |
string Avatar channel YouTube pengguna yang diblokir. |
snippet.userBannedDetails.banType |
string Jenis larangan. Nilai yang valid untuk properti ini adalah:
|
snippet.userBannedDetails.banDurationSeconds |
unsigned long Durasi larangan. Properti ini hanya ada jika nilai properti snippet.userBannedDetails.banType adalah temporary . |
snippet.memberMilestoneChatDetails |
object Objek ini berisi detail tentang peristiwa Pencapaian Anggota. Opsi ini hanya ada jika jenis pesan adalah memberMilestoneChatEvent . |
snippet.memberMilestoneChatDetails.userComment |
string Komentar yang ditambahkan oleh pelanggan ke Chat Pencapaian Pelanggan ini. Kolom ini kosong untuk pesan tanpa komentar dari anggota. |
snippet.memberMilestoneChatDetails.memberMonth |
unsigned integer Total jumlah bulan (dibulatkan) pelanggan telah menjadi pelanggan yang memberinya Chat Pencapaian Pelanggan ini. Jumlah bulan ini sama dengan yang ditampilkan kepada pengguna YouTube. |
snippet.memberMilestoneChatDetails.memberLevelName |
string Nama Level tempat penonton menjadi anggota. Nama Level ditentukan oleh channel YouTube yang menawarkan Langganan. Dalam beberapa situasi, kolom ini tidak diisi. |
snippet.newSponsorDetails |
object Objek ini berisi detail tentang peristiwa Pengumuman Anggota Baru. Kolom ini hanya ditetapkan jika jenisnya adalah newSponsorEvent . "Anggota" adalah istilah untuk "sponsor".
|
snippet.newSponsorDetails.memberLevelName |
string Nama Level tempat penonton menjadi anggota. Nama Level ditentukan oleh channel YouTube yang menawarkan Langganan. Dalam beberapa situasi, kolom ini tidak diisi. |
snippet.newSponsorDetails.isUpgrade |
bool Menunjukkan apakah penonton baru saja mengupgrade dari Level yang lebih rendah. Untuk penonton yang bukan anggota pada saat pembelian, nilai kolomnya adalah false .
|
snippet.superChatDetails |
object Objek ini berisi detail tentang peristiwa Super Chat. Opsi ini hanya ada jika jenis pesan adalah superChatEvent . |
snippet.superChatDetails.amountMicros |
unsigned long Jumlah pembelian, dalam satuan mikro mata uang pembelian. Misalnya, jika jumlah pembelian adalah satu dolar, nilai properti snippet.amountMicros adalah 1000000 . |
snippet.superChatDetails.currency |
string Mata uang yang digunakan untuk melakukan pembelian. Nilainya adalah kode mata uang ISO 4217. |
snippet.superChatDetails.amountDisplayString |
string String, seperti $1.00 , yang berisi jumlah pembelian dan mata uang. String ini dimaksudkan untuk ditampilkan kepada pengguna. |
snippet.superChatDetails.userComment |
string Komentar yang ditambahkan oleh pengguna ke peristiwa Super Chat ini. |
snippet.superChatDetails.tier |
unsigned integer Tingkatan untuk pesan berbayar. Perhatikan bahwa di resource superChatEvent , properti snippet.messageType berisi nilai ini.Tingkatan didasarkan pada jumlah uang yang dibelanjakan untuk membeli pesan. Tingkatan ini juga menentukan warna yang digunakan untuk menandai pesan di UI live chat, panjang maksimum pesan, dan durasi pesan disematkan di ticker. Tingkatan Super Chat didokumentasikan di Pusat Bantuan YouTube. (Lihat bagian yang dapat diluaskan tentang detail pembelian Super Chat.) Dalam daftar tersebut, tingkat dengan jumlah pembelian terendah adalah tingkat 1, jumlah terendah berikutnya adalah tingkat 2, dan seterusnya. |
snippet.superStickerDetails |
object Objek ini berisi detail tentang peristiwa Super Sticker. Opsi ini hanya ada jika jenis pesan adalah superStickerEvent . |
snippet.superStickerDetails.superStickerMetadata |
object Detail tentang Super Stickers. |
snippet.superStickerDetails.superStickerMetadata.stickerId |
string ID unik yang mengidentifikasi gambar stiker. Perhatikan bahwa gambar hanya ditampilkan sebagai bagian dari pesan Stiker Super saat pengguna melihat jendela chat di YouTube. Namun, URL gambar tidak tersedia menggunakan API. Sebagai referensi saja, Anda dapat menemukan ID Stiker yang terkait dengan Super Stickers tertentu dalam file CSV ini. |
snippet.superStickerDetails.superStickerMetadata.altText |
string String teks yang mendeskripsikan stiker. Kolom snippet.superStickerDetails.superStickerMetadata.language mengidentifikasi bahasa teks. Saat memanggil metode liveChatMessages.list , tetapkan nilai parameter hl ke bahasa yang dipilih untuk teks. |
snippet.superStickerDetails.superStickerMetadata.language |
string Bahasa nilai properti snippet.superStickerDetails.superStickerMetadata.altText . |
snippet.superStickerDetails.amountMicros |
unsigned long Jumlah pembelian, dalam satuan mikro mata uang pembelian. Misalnya, jika jumlah pembelian adalah satu dolar, nilai properti snippet.amountMicros adalah 1000000 . |
snippet.superStickerDetails.currency |
string Mata uang yang digunakan untuk melakukan pembelian. Nilainya adalah kode mata uang ISO 4217. |
snippet.superStickerDetails.amountDisplayString |
string String, seperti $1.00 , yang berisi jumlah pembelian dan mata uang. String ini dimaksudkan untuk ditampilkan kepada pengguna. |
snippet.superStickerDetails.tier |
unsigned integer Tingkatan untuk pesan berbayar. Perhatikan bahwa di resource superChatEvent , properti snippet.messageType berisi nilai ini.Tingkatan didasarkan pada jumlah uang yang dibelanjakan untuk membeli pesan. Tingkatan ini juga menentukan warna yang digunakan untuk menandai pesan di UI live chat, panjang pesan maksimum, dan jangka waktu pesan disematkan di ticker. Tingkatan Super Chat, yang juga mencakup Super Stickers, didokumentasikan di Pusat Bantuan YouTube. (Lihat bagian yang dapat diluaskan tentang detail pembelian Super Chat.) Dalam daftar tersebut, tingkat dengan jumlah pembelian terendah adalah tingkat 1, jumlah terendah berikutnya adalah tingkat 2, dan seterusnya. |
snippet.pollDetails |
object Objek ini berisi detail tentang peristiwa polling. Opsi ini hanya ada jika jenis pesan adalah pollEvent . |
snippet.pollDetails.metadata |
object Detail tentang acara polling. |
snippet.pollDetails.metadata.options |
object Opsi dalam polling live. |
snippet.pollDetails.metadata.options.optionText |
string Teks opsi polling live. |
snippet.pollDetails.metadata.options.tally |
string Jumlah suara opsi polling live. Jumlah hanya ada jika permintaan API diizinkan oleh pemilik channel. |
snippet.pollDetails.metadata.questionText |
string Teks pertanyaan polling langsung. |
snippet.pollDetails.metadata.status |
enum Status acara polling live. Nilai yang valid untuk properti ini adalah:
|
snippet.membershipGiftingDetails |
object Objek ini berisi detail tentang acara Pemberian Hadiah Langganan. Hanya ada jika message type adalah membershipGiftingEvent . |
snippet.membershipGiftingDetails.giftMembershipsCount |
integer Jumlah langganan hadiah yang dibeli oleh pengguna. |
snippet.membershipGiftingDetails.giftMembershipsLevelName |
string Nama Level langganan hadiah yang dibeli oleh pengguna. Nama level ditentukan oleh channel YouTube yang menawarkan Langganan. Dalam beberapa situasi, kolom ini tidak diisi. |
snippet.giftMembershipReceivedDetails |
object Objek ini berisi detail tentang peristiwa Menerima Langganan Hadiah. Hanya ada jika message type adalah giftMembershipReceivedEvent . |
snippet.giftMembershipReceivedDetails.memberLevelName |
string Nama Level tempat penonton menjadi anggota. Hal ini cocok dengan snippet.membershipGiftingDetails.giftMembershipsLevelName pesan pemberian hadiah langganan terkait. Nama level ditentukan oleh channel YouTube yang menawarkan Langganan. Dalam beberapa situasi, kolom ini tidak diisi. |
snippet.giftMembershipReceivedDetails.gifterChannelId |
string ID pengguna yang melakukan pembelian hadiah langganan. Hal ini cocok dengan snippet.authorChannelId pesan pemberian hadiah langganan terkait. |
snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId |
string ID pesan pemberian hadiah langganan yang terkait dengan langganan hadiah ini. ID ini akan selalu merujuk pada pesan yang type -nya adalah membershipGiftingEvent . |
authorDetails |
object Objek authorDetails berisi detail tambahan tentang pengguna yang memposting pesan ini. |
authorDetails.channelId |
string ID channel YouTube penulis. |
authorDetails.channelUrl |
string URL channel YouTube penulis. |
authorDetails.displayName |
string Nama tampilan channel YouTube penulis. |
authorDetails.profileImageUrl |
string URL avatar channel YouTube penulis. |
authorDetails.isVerified |
boolean Nilai ini menunjukkan apakah identitas penulis telah diverifikasi oleh YouTube. |
authorDetails.isChatOwner |
boolean Nilai ini menunjukkan apakah penulis adalah pemilik chat langsung. |
authorDetails.isChatSponsor |
boolean Nilai ini menunjukkan apakah penulis adalah sponsor live chat. |
authorDetails.isChatModerator |
boolean Nilai ini menunjukkan apakah penulis adalah moderator chat langsung. |