评论
优质
小牛编辑
142浏览
2023-12-01
获取评论页数
// 返回评论页数,类型为int
var commentPage = Mudu.Room.Comment.GetPage()
发送评论
Mudu.Room.Comment.Send(
// 要发送的评论文本,类型为string
'活动很赞很给力',
// 发送完成的回调函数,参数为response对象
function (response) {
response = JSON.parse(response)
if (response.status === 'y') {
console.log('发送成功')
}
if (response.status === 'n') {
console.log('发送失败,错误码为:' + response.flag)
}
}
)
- response对象说明
{
// 成功状态,类型为string,成功时为'y',失败时为'n'
status: 'y',
// 状态码码,类型为int,成功时为0,失败不为0
flag: 100,
// 信息,类型为string,成功时为'发送消息成功!',失败时为'发送消息失败!'
info: "发送消息成功!/失败!"
}
- flag状态码码对照表
flag | info | status |
---|---|---|
100 | 发送消息成功 | y |
101 | 管理员禁止了聊天 | n |
102 | 观众被禁言 | n |
103 | 发送失败 | n |
104 | 禁止匿名聊天 | n |
获取评论
Mudu.Room.Comment.Get(
// 要获取评论的页码,类型为int
2,
// 评论获取成功的回调函数,参数为response对象
function (response) {
response = JSON.parse(response)
if (response.status === 'y') {
console.log('获取评论成功,数据为:', response.data)
}
if (response.status === 'n'){
console.log('获取评论失败')
}
}
)
- response返回结果说明
{
// 状态
"status": 'y',
// 返回的数据
"data": {
// 还剩下多少页
page: 70,
// 获取到的评论
comments: [
{
"id": 3438056,
"visitor_id": "1493401897797743654_api",
"username": "小白白",
"message": "这个真不错",
"avatar": "https://www.xnip.cn/wp-content/uploads/2021/docimg28/43-oszpreoxoxi.jpg",
"dateline": 1493693178,
"pushed": 1,
"checked": 1,
"top": 0,
"msg_type": 10,
"is_admin": 0
},
......
]
},
}
- comments说明
名称 | 说明 | 类型 |
---|---|---|
id | 评论id | int |
visitor_id | 观众标志 | string |
username | 评论者的观众名 | string |
message | 评论的文本 | string |
avatar | 评论这个的头像 | string |
dateline | 评论的时间戳 | int |
pushed | 是否已经发送了弹幕,0未发送,1已发送 | int |
checked | 是否审核 ,0 已审核,1未审核 | int |
top | 是否置顶 ,0 不置顶,1置顶 | int |
msg_type | 消息来源类型, 10为普通文本消息...,详情见下表 | int |
is_admin | 是否为管理员发送, 1是, 0不是 | int |
- msg_type 和 message之间的映射关系
类型 | 标志位(msg_type) | 存储类型 | 示例(message) | 备注 |
---|---|---|---|---|
普通评论 | 10 | 字符串 | "真香" | 表情替换 |
发送普通红包 | 20 | 字符串json | '{"id":"nm4dk9jm", "type":1, "name":"恭喜发财!大吉大利!", }' | type 2:钉钉 |
发送口令红包 | 21 | 字符串json | '{"id":"nm4dk9jm", "type":1, "name":"恭喜发财!大吉大利!"}' | type 2:钉钉 |
发送竞答红包 | 22 | 字符串json | '{"id":"nm4dk9jm", "name":"参与竞答领取红包!"}' | |
发送竞答红包(自定义) | 23 | 字符串json | '{"id":"nm4dk9jm", "name":"参与竞答领取红包!"}' | |
抢口令红包评论 | 31 | 字符串 | "大吉大利,今晚吃鸡" | |
免费道具打赏 | 40 | 字符串json | '{"src":"https://xxx.com/a.jpg". "name":"免费道具", "number":1 }' | |
付费道具打赏 | 41 | 字符串json | '{"src":"https://xxx.com/c.jpg". "name":"付费道具", "number":88 }' | |
现金打赏 | 42 | 字符串json | '{"name":"赏赐", "amount":88.99 }' | |
图片评论 | 50 | 字符串 | "https://xxx.com/abc.jpg" |
Comment.New事件
Comment.New事件会在评论新增的时候被触发
Mudu.MsgBus.On(
// 事件名,值为Comment.New
'Comment.New',
// 事件处理函数,参数为新的评论,类型为object
function (newComment) {
newComment = JSON.parse(newComment)
console.log(newComment.username + '发送了一条新评论: ' + newComment.message)
}
)
- 事件处理函数参数newComment对象说明
名称 | 说明 | 类型 |
---|---|---|
id | 评论id | int |
visitor_id | 观众标志 | string |
username | 评论者的观众名 | string |
message | 评论的文本 | string |
avatar | 评论这个的头像 | string |
dateline | 评论的时间戳 | int |
pushed | 是否已经发送了弹幕,0未发送,1已发送 | int |
checked | 是否审核 ,1 已审核,0未审核 | int |
top | 是否置顶 ,0 不置顶,1置顶 | int |
msg_type | 消息来源类型, 10为普通文本消息...,详情见上表 | int |
is_admin | 是否为管理员发送, 1是, 0不是 | int |
Comment.Top事件
Comment.Top事件会在评论被置顶或者取消置顶的时候被触发
Mudu.MsgBus.On(
// 事件名,值为Comment.Top
'Comment.Top',
// 事件处理函数,参数为被置顶或取消置顶评论,类型为object
function (topComment) {
topComment = JSON.parse(topComment)
console.log(topComment.top == 1 ? '被置顶的评论为' : '被取消置顶的评论为', topComment)
}
)
Comment.Avaliable.Changed事件
Comment.Avaliable.Changed事件会在后台聊天设置 -> 允许观众聊天
切换时被触发。
Mudu.MsgBus.On(
// 事件名, 值为Comment.Avaliable.Changed
'Comment.Avaliable.Changed',
// 事件处理函数
function (res) {
res = JSON.parse(res)
var msg = res.open == 0 ? '聊天已关闭' : '聊天已开启'
console.log(msg)
}
)
res 参数说明:
属性 | 描述 | 类型 |
---|---|---|
open | 开启状态,1为开启,0为关闭 | number |
Visitor.Mute事件
Visitor.Mute事件会在某一个观众被禁言或者取消禁言的时候被触发
Mudu.MsgBus.On(
// 事件名,值为Visitor.Mute
'Visitor.Mute',
// 事件处理函数,参数为禁言或者解禁的观众,类型为object
function (user) {
user = JSON.parse(user)
var msg = user.mute == 1 ? '被禁言' : '被解除禁言'
console.log(user.user + msg + ', 该观众的id为' + user.visitorId)
}
)
user 参数说明:
属性 | 描述 | 类型 |
---|---|---|
mute | 禁言状态,1 为被禁言, 2 为被取消禁言 | number |
visitorId | 被禁言或者取消禁言的观众id | string |
user | 被禁言或者取消禁言的观众名 | string |