Tài nguyên liveChatMessage
đại diện cho một tin nhắn trò chuyện trong một cuộc trò chuyện trực tiếp trên YouTube. Tài nguyên này có thể chứa thông tin chi tiết về một số loại tin nhắn, bao gồm cả một tin nhắn văn bản mới đăng hoặc sự kiện tài trợ của người hâm mộ.
Tính năng trò chuyện trực tiếp được bật theo mặc định cho các buổi phát sóng trực tiếp và hoạt động khi sự kiện trực tiếp đang diễn ra. (Sau khi sự kiện kết thúc, sự kiện đó sẽ không trò chuyện trực tiếp được nữa.)
Phương thức
API hỗ trợ các phương thức sau cho tài nguyên liveChatMessages
:
Biểu diễn tài nguyên
Cấu trúc JSON sau đây cho thấy định dạng của tài nguyên 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 } }
Thuộc tính
Bảng sau đây xác định các thuộc tính xuất hiện trong tài nguyên này:
Thuộc tính | |
---|---|
kind |
string Xác định loại tài nguyên API. Giá trị sẽ là youtube#liveChatMessage . |
etag |
etag Etag của tài nguyên này. |
id |
string Mã nhận dạng mà YouTube gán để nhận dạng riêng thông điệp đó. |
snippet |
object Đối tượng snippet chứa thông tin chi tiết cốt lõi về tin nhắn trò chuyện. |
snippet.type |
string Loại thông báo. Thuộc tính này luôn tồn tại và giá trị của thuộc tính xác định những trường xuất hiện trong tài nguyên. Các giá trị hợp lệ cho thuộc tính này là:
|
snippet.liveChatId |
string Mã xác định duy nhất cuộc trò chuyện trực tiếp có liên kết với tin nhắn. Mã cuộc trò chuyện trực tiếp liên kết với một chương trình phát sóng sẽ được trả về trong thuộc tính snippet.liveChatId của tài nguyên liveBroadcast . |
snippet.authorChannelId |
string Mã nhận dạng của người dùng đã tạo thông báo. Trường này chỉ được điền cho các loại thông báo sau:
|
snippet.publishedAt |
datetime Ngày và giờ xuất bản thông báo lần đầu. Giá trị được chỉ định theo định dạng ISO 8601 ( YYYY-MM-DDThh:mm:ss.sZ ). |
snippet.hasDisplayContent |
boolean Cho biết liệu thông báo có nội dung hiển thị mà nên hiển thị với người dùng hay không. |
snippet.displayMessage |
string Chứa một chuỗi mà người dùng nhìn thấy. Trường này sẽ không xuất hiện nếu loại thông báo là chatEndedEvent hoặc tombstone . |
snippet.fanFundingEventDetails |
object Lưu ý: Ngừng sử dụng đối tượng này và các thuộc tính con của đối tượng này. Kể từ ngày 28 tháng 2 năm 2017, tài nguyên của liveChatMessage sẽ không còn trả về thông tin chi tiết về các sự kiện Tài trợ của người hâm mộ nữa.Đối tượng này có thông tin chi tiết về sự kiện tài trợ. Thông báo này chỉ hiển thị nếu loại thông báo là fanFundingEvent . |
snippet.fanFundingEventDetails.amountMicros |
unsigned long Lưu ý: Tài sản này không còn được dùng nữa. Số tiền của quỹ. |
snippet.fanFundingEventDetails.currency |
string Lưu ý: Tài sản này không còn được dùng nữa. Đơn vị tiền tệ của quỹ. |
snippet.fanFundingEventDetails.amountDisplayString |
string Lưu ý: Thuộc tính này không còn được dùng nữa. Một chuỗi được kết xuất cho biết số tiền và đơn vị tiền tệ trong quỹ. |
snippet.fanFundingEventDetails.userComment |
string Lưu ý: Tài sản này không còn được dùng nữa. Bình luận do người dùng thêm vào sự kiện tài trợ của người hâm mộ này. |
snippet.textMessageDetails |
object Đối tượng này chứa thông tin chi tiết về tin nhắn văn bản. Thông báo này chỉ hiển thị nếu loại thông báo là textMessageEvent . |
snippet.textMessageDetails.messageText |
string Thông báo của người dùng. |
snippet.messageDeletedDetails |
object Đối tượng này chứa thông tin chi tiết về một tin nhắn mà người kiểm duyệt cuộc trò chuyện hoặc chủ sở hữu kênh của sự kiện phát sóng trực tiếp đã xoá. Thông báo này chỉ hiển thị nếu loại thông báo là messageDeletedEvent . |
snippet.messageDeletedDetails.deletedMessageId |
string Mã xác định duy nhất thông báo bị xoá. Giá trị này giống với giá trị thuộc tính id của tin nhắn văn bản gốc. Ví dụ: nếu textMessageEvent có giá trị thuộc tính id là 123 và tin nhắn đó sau đó bị xoá, thì giá trị snippet.messageDeletedDetails.deletedMessageId sẽ là 123 cho tin nhắn đó.Nếu bạn lưu tin nhắn trò chuyện vào bộ nhớ đệm sau khi truy xuất, hãy sử dụng giá trị của thuộc tính này để xác định tin nhắn sẽ không xuất hiện nữa. |
snippet.userBannedDetails |
object Đối tượng này chứa thông tin chi tiết về một người dùng đã bị cấm tham gia cuộc trò chuyện. Tệp này cũng chứa thông tin chi tiết về lệnh cấm. Người dùng có thể bị cấm tham gia cuộc trò chuyện vĩnh viễn hoặc tạm thời. |
snippet.userBannedDetails.bannedUserDetails |
object Đối tượng này chứa thông tin về người dùng bị cấm. |
snippet.userBannedDetails.bannedUserDetails.channelId |
string Mã nhận dạng kênh YouTube của người dùng bị cấm. |
snippet.userBannedDetails.bannedUserDetails.channelUrl |
string URL kênh YouTube của người dùng bị cấm. |
snippet.userBannedDetails.bannedUserDetails.displayName |
string Tên hiển thị kênh YouTube của người dùng bị cấm. |
snippet.userBannedDetails.bannedUserDetails.profileImageUrl |
string Hình đại diện kênh YouTube của người dùng bị cấm. |
snippet.userBannedDetails.banType |
string Loại lệnh cấm. Các giá trị hợp lệ cho thuộc tính này là:
|
snippet.userBannedDetails.banDurationSeconds |
unsigned long Thời hạn của lệnh cấm. Thuộc tính này chỉ xuất hiện nếu giá trị thuộc tính snippet.userBannedDetails.banType là temporary . |
snippet.memberMilestoneChatDetails |
object Đối tượng này chứa thông tin chi tiết về sự kiện Cột mốc làm hội viên. Thông báo này chỉ hiển thị nếu loại thông báo là memberMilestoneChatEvent . |
snippet.memberMilestoneChatDetails.userComment |
string Bình luận mà hội viên đã thêm vào Tin nhắn ghi nhận cột mốc làm hội viên này. Trường này trống đối với các thư không có nhận xét của thành viên. |
snippet.memberMilestoneChatDetails.memberMonth |
unsigned integer Tổng số tháng (đã làm tròn) mà người xem làm hội viên đã nhận được Tin nhắn ghi nhận cột mốc làm hội viên này. Đây là số tháng được hiển thị cho người dùng YouTube. |
snippet.memberMilestoneChatDetails.memberLevelName |
string Tên của Cấp độ mà người xem là hội viên. Tên Cấp được xác định theo kênh YouTube cung cấp chương trình Hội viên. Trong một số trường hợp, trường này không được điền. |
snippet.newSponsorDetails |
object Đối tượng này chứa thông tin chi tiết về sự kiện Thông báo thành viên mới. Bạn chỉ thiết lập được nếu loại đối tượng này là newSponsorEvent . Xin lưu ý rằng "thành viên" là thuật ngữ mới để chỉ "tài trợ".
|
snippet.newSponsorDetails.memberLevelName |
string Tên của Cấp độ mà người xem là hội viên. Tên Cấp được xác định theo kênh YouTube cung cấp chương trình Hội viên. Trong một số trường hợp, trường này không được điền. |
snippet.newSponsorDetails.isUpgrade |
bool Cho biết có phải người xem vừa nâng cấp từ một Cấp thấp hơn hay không. Đối với những người xem chưa phải là hội viên tại thời điểm mua, giá trị của trường này là false .
|
snippet.superChatDetails |
object Đối tượng này chứa thông tin chi tiết về một sự kiện Super Chat. Thông báo này chỉ hiển thị nếu loại thông báo là superChatEvent . |
snippet.superChatDetails.amountMicros |
unsigned long Số tiền mua, tính bằng một phần triệu đơn vị tiền tệ của giao dịch mua. Ví dụ: nếu số tiền mua là 1 đô la, thì giá trị thuộc tính snippet.amountMicros là 1000000 . |
snippet.superChatDetails.currency |
string Đơn vị tiền tệ của giao dịch mua hàng. Giá trị là mã đơn vị tiền tệ ISO 4217. |
snippet.superChatDetails.amountDisplayString |
string Một chuỗi, chẳng hạn như $1.00 , chứa số tiền mua và đơn vị tiền tệ. Chuỗi này được dùng để hiển thị cho người dùng. |
snippet.superChatDetails.userComment |
string Bình luận do người dùng thêm vào sự kiện Super Chat này. |
snippet.superChatDetails.tier |
unsigned integer Bậc của tin nhắn có tính phí. Xin lưu ý rằng trong tài nguyên superChatEvent , thuộc tính snippet.messageType chứa giá trị này.Cấp bậc dựa trên số tiền đã chi tiêu để mua thông báo. Thẻ này cũng sẽ xác định màu dùng để làm nổi bật tin nhắn trong giao diện người dùng của cuộc trò chuyện trực tiếp, thời lượng tin nhắn tối đa và khoảng thời gian ghim tin nhắn. Các bậc tin nhắn Super Chat được ghi lại trong Trung tâm trợ giúp của YouTube. (Xem phần có thể mở rộng về thông tin chi tiết về giao dịch mua Super Chat.) Trong danh sách đó, cấp có mức mua thấp nhất là cấp 1, cấp thấp nhất tiếp theo là cấp 2, v.v. |
snippet.superStickerDetails |
object Đối tượng này chứa thông tin chi tiết về sự kiện Super Stickers. Thông báo này chỉ hiển thị nếu loại thông báo là superStickerEvent . |
snippet.superStickerDetails.superStickerMetadata |
object Thông tin chi tiết về Hình dán đặc biệt. |
snippet.superStickerDetails.superStickerMetadata.stickerId |
string Mã nhận dạng duy nhất xác định hình dán. Xin lưu ý rằng hình ảnh này chỉ xuất hiện trong tin nhắn Super Stickers khi người dùng xem cửa sổ trò chuyện trên YouTube. Tuy nhiên, URL hình ảnh không có sẵn thông qua API. Chỉ để tham khảo, bạn có thể tìm thấy mã hình dán liên quan đến Super Stickers nào trong tệp CSV này. |
snippet.superStickerDetails.superStickerMetadata.altText |
string Chuỗi văn bản mô tả hình dán. Trường snippet.superStickerDetails.superStickerMetadata.language xác định ngôn ngữ của văn bản. Khi gọi phương thức liveChatMessages.list , hãy đặt giá trị tham số hl thành ngôn ngữ mong muốn cho văn bản. |
snippet.superStickerDetails.superStickerMetadata.language |
string Ngôn ngữ của giá trị thuộc tính snippet.superStickerDetails.superStickerMetadata.altText . |
snippet.superStickerDetails.amountMicros |
unsigned long Số tiền mua, tính bằng một phần triệu đơn vị tiền tệ của giao dịch mua. Ví dụ: nếu số tiền mua là 1 đô la, thì giá trị thuộc tính snippet.amountMicros là 1000000 . |
snippet.superStickerDetails.currency |
string Đơn vị tiền tệ của giao dịch mua hàng. Giá trị là mã đơn vị tiền tệ ISO 4217. |
snippet.superStickerDetails.amountDisplayString |
string Một chuỗi, chẳng hạn như $1.00 , chứa số tiền mua và đơn vị tiền tệ. Chuỗi này được dùng để hiển thị cho người dùng. |
snippet.superStickerDetails.tier |
unsigned integer Bậc của tin nhắn có tính phí. Xin lưu ý rằng trong tài nguyên superChatEvent , thuộc tính snippet.messageType chứa giá trị này.Cấp bậc dựa trên số tiền đã chi tiêu để mua thông báo. Thẻ này cũng quyết định màu dùng để làm nổi bật tin nhắn trong giao diện người dùng của cuộc trò chuyện trực tiếp, thời lượng tối đa của tin nhắn và khoảng thời gian ghim tin nhắn. Các bậc Super Chat (cũng bao gồm cả Super Stickers) được nêu trong Trung tâm trợ giúp của YouTube. (Xem phần có thể mở rộng về thông tin chi tiết về giao dịch mua Super Chat.) Trong danh sách đó, cấp có mức mua thấp nhất là cấp 1, cấp thấp nhất tiếp theo là cấp 2, v.v. |
snippet.membershipGiftingDetails |
object Đối tượng này chứa thông tin chi tiết về sự kiện Tặng gói hội viên. Thuộc tính này chỉ hiển thị nếu message type là membershipGiftingEvent . |
snippet.membershipGiftingDetails.giftMembershipsCount |
integer Số lượng quà tặng gói hội viên mà người dùng đã mua. |
snippet.membershipGiftingDetails.giftMembershipsLevelName |
string Tên của Cấp độ quà tặng gói hội viên mà người dùng đã mua. Tên cấp độ được xác định theo kênh YouTube cung cấp chương trình Hội viên. Trong một số trường hợp, trường này không được điền. |
snippet.giftMembershipReceivedDetails |
object Đối tượng này chứa thông tin chi tiết về sự kiện Nhận quà tặng gói hội viên. Thuộc tính này chỉ hiển thị nếu message type là giftMembershipReceivedEvent . |
snippet.giftMembershipReceivedDetails.memberLevelName |
string Tên của Cấp độ mà người xem là hội viên. Mã này khớp với snippet.membershipGiftingDetails.giftMembershipsLevelName của thông báo tặng gói hội viên có liên quan. Tên cấp độ được xác định theo kênh YouTube cung cấp chương trình Hội viên. Trong một số trường hợp, trường này không được điền. |
snippet.giftMembershipReceivedDetails.gifterChannelId |
string Mã nhận dạng của người dùng đã thực hiện giao dịch mua quà tặng gói hội viên. Mã này khớp với snippet.authorChannelId của thông báo tặng gói hội viên có liên quan. |
snippet.giftMembershipReceivedDetails.associatedMembershipGiftingMessageId |
string Mã của thông báo tặng gói hội viên có liên quan đến quà tặng gói hội viên này. Mã này sẽ luôn tham chiếu đến một thông báo có type là membershipGiftingEvent . |
authorDetails |
object Đối tượng authorDetails chứa thông tin chi tiết bổ sung về người dùng đã đăng tin nhắn này. |
authorDetails.channelId |
string Mã nhận dạng kênh YouTube của tác giả. |
authorDetails.channelUrl |
string URL kênh YouTube của tác giả. |
authorDetails.displayName |
string Tên hiển thị kênh YouTube của tác giả. |
authorDetails.profileImageUrl |
string URL hình đại diện trên kênh YouTube của tác giả. |
authorDetails.isVerified |
boolean Giá trị này cho biết danh tính của tác giả đã được YouTube xác minh hay chưa. |
authorDetails.isChatOwner |
boolean Giá trị này cho biết tác giả có phải là chủ sở hữu của cuộc trò chuyện trực tiếp hay không. |
authorDetails.isChatSponsor |
boolean Giá trị này cho biết tác giả có phải là nhà tài trợ của cuộc trò chuyện trực tiếp hay không. |
authorDetails.isChatModerator |
boolean Giá trị này cho biết tác giả có phải là người kiểm duyệt của cuộc trò chuyện trực tiếp hay không. |