diff --git a/docs/message/private_msg.md b/docs/message/private_msg.md index 417c6e2..ada10e9 100644 --- a/docs/message/private_msg.md +++ b/docs/message/private_msg.md @@ -22,14 +22,23 @@ | at_uids | 有效时:array
无效时:null | at的成员mid | 在粉丝团时有效;此项为 `null` 或 `[0]` 均表示没有 at 成员 | | msg_key | num | 消息唯一id | 部分库在解析JSON对象中的大数时存在数值的精度丢失问题,因此在处理私信时可能会出现问题,建议使用修复了这一问题的库(如将大数转换成文本) | | msg_status | num | 消息状态 | 0:正常
1:被撤回(接口仍能返回被撤回的私信内容)
2:被系统撤回(私信将不会显示在前端,B站接口也不会返回被系统撤回的私信)
51:(?) | -| notify_code | str | 通知代码 | 发送通知时使用;若这条私信非通知则为空文本 | +| notify_code | str | 通知代码 | 发送通知时使用,以下划线 `_` 分割,第 1 项表示主业务 id,第 2 项表示子业务 id;若这条私信非通知则为空文本;详细信息有待补充 | | new_face_version | num | 表情包版本 | 为 `0` 或无此项表示旧版表情包,此时 B 站会自动转换成新版表情包,例如 `[doge]` -> `[tv_doge]`;`1` 为新版 | | msg_source | num | 消息来源 | 见[消息来源列表](#消息来源列表) | +`at_uids`数组: + +| 项 | 类型 | 内容 | 备注 | +| ---- | ---- | --------- | ------- | +| 0 | num | 用户1 | 成员mid | +| n | num | 用户(n+1) | | +| …… | num | …… | …… | + ### 消息来源列表 | 代码 | 含义 | 备注 | | ---- | ------------------------- | ---- | +| 0 | 未知来源 | | | 1 | iOS | | | 2 | Android | | | 3 | H5 | | @@ -69,16 +78,16 @@ `data` 对象: -| 字段 | 类型 | 内容 | 备注 | -| ----------------------- | ---- | ---------------------- | ------------ | -| unfollow_unread | num | 未关注用户未读私信数 | | -| follow_unread | num | 已关注用户未读私信数 | | -| unfollow_push_msg | num | 未读推送消息数 | | -| dustbin_push_msg | num | 被拦截的未读推送消息数 | | -| dustbin_unread | num | 被拦截的未读私信数 | | -| biz_msg_unfollow_unread | num | (?) | 作用尚不明确 | -| biz_msg_follow_unread | num | (?) | 作用尚不明确 | -| custom_unread | num | 未读客服消息数 | | +| 字段 | 类型 | 内容 | 备注 | +| ----------------------- | ---- | ---------------------- | ---------------- | +| unfollow_unread | num | 未关注用户未读私信数 | | +| follow_unread | num | 已关注用户未读私信数 | | +| unfollow_push_msg | num | 未读推送消息数 | | +| dustbin_push_msg | num | 未读被拦截的推送消息数 | | +| dustbin_unread | num | 未读被拦截的私信数 | | +| biz_msg_unfollow_unread | num | (?) | **作用尚不明确** | +| biz_msg_follow_unread | num | (?) | **作用尚不明确** | +| custom_unread | num | 未读客服消息数 | | **示例:** @@ -272,7 +281,7 @@ curl -G 'https://api.vc.bilibili.com/svr_sync/v1/svr_sync/fetch_session_msgs' \ | 参数名 | 类型 | 内容 | 必要性 | 备注 | | --------------------- | ---- | ------------------------ | ------ | ---------------------------------------------------- | -| msg[sender_uid] | num | 发送者mid | 必要 | | +| msg[sender_uid] | num | 发送者mid | 必要 | 必须为自己的 mid | | msg[receiver_id] | num | 接收者id | 必要 | `msg[receiver_type]` 为 `1` 时表示用户 mid,为 `2` 时表示应援团 id | | msg[receiver_type] | num | 接收者类型 | 必要 | 1:用户
2:粉丝团 | | msg[msg_type] | num | 消息类型 | 必要 | 详见[私信消息类型、内容说明](private_msg_content.md) | @@ -350,19 +359,19 @@ public class Main { `data`对象: -| 字段 | 类型 | 内容 | 备注 | -| ------------- | ---- | ---------- | ------------------------------------------------------------------- | -| msg_key | num | 消息唯一id | | -| msg_content | str | 发送的消息 | 仅当请求参数中`msg[msg_type]`为`1`且`msg[receiver_type]`为`1`时显示 | -| key_hit_infos | obj | 触发的提示 | 仅当请求参数中`msg[msg_type]`为`1`且`msg[receiver_type]`为`1`时显示 | +| 字段 | 类型 | 内容 | 备注 | +| ------------- | ---- | ---------- | --------------------------------------------------------------------- | +| msg_key | num | 消息唯一id | | +| msg_content | str | 发送的消息 | 仅当请求参数中`msg[msg_type]`为`1`且`msg[receiver_type]`为`1`时有此项 | +| key_hit_infos | obj | 触发的提示 | 仅当请求参数中`msg[msg_type]`为`1`且`msg[receiver_type]`为`1`时有此项 | `data`对象中的`key_hit_infos`: | 字段 | 类型 | 内容 | 备注 | | --------- | ----- | ------------ | -------------------------------------- | -| toast | str | 提示信息文字 | 未触发提示不显示此项 | -| rule_id | num | 触发的规则id | 未触发提示不显示此项,详细信息有待补充 | -| high_text | array | 高亮的文本 | 未触发提示不显示此项 | +| toast | str | 提示信息文字 | 当触发了提示时有此项 | +| rule_id | num | 触发的规则id | 当触发了提示时有此项,详细信息有待补充 | +| high_text | array | 高亮的文本 | 当触发了提示时有此项 | `data`对象中的`key_hit_infos`中的`high_text`数组: diff --git a/docs/message/private_msg_content.md b/docs/message/private_msg_content.md index 79e5d89..5c04d9c 100644 --- a/docs/message/private_msg_content.md +++ b/docs/message/private_msg_content.md @@ -2,6 +2,8 @@ ## 文字消息(`msg_type=1`) +在发送私信时,请确保下面的对象合法且 `content` 项的值为非 0 长度的文本,否则会提示 `请求错误` + 根对象: | 字段 | 类型 | 内容 | 备注 | @@ -10,6 +12,8 @@ **示例:** +内容为 `Hello` 的文字消息 + ```json { "content": "Hello" @@ -18,11 +22,13 @@ ## 图片消息(`msg_type=2`) +在发送私信时,请确保下面的对象合法且 `url` 项的值为 B 站的图床 url,否则会报 21037 `图片格式不合法,不要调戏接口啦` 错误 + 根对象: | 字段 | 类型 | 内容 | 备注 | | -------- | ---- | ---------- | ------------------------- | -| url | str | 图片url | 默认为B站相簿图片上传通道 | +| url | str | 图片url | 一般为B站图床url | | height | num | 图片高度 | 单位:像素(非必要) | | width | num | 图片宽度 | 单位:像素(非必要) | | type | str | 图片格式 | (非必要) | @@ -31,6 +37,8 @@ **示例:** +图片 `https://message.biliimg.com/bfs/im_new/c161fdf51d901c1607a15e30f10116dd425503913.jpg` + ```json { "url": "https://message.biliimg.com/bfs/im_new/c161fdf51d901c1607a15e30f10116dd425503913.jpg", @@ -44,7 +52,9 @@ ## 撤回消息(`msg_type=5`) -内容为目标私信的`msg_key`,请确保发送的私信与目标私信在同一会话内;发送此私信后,目标私信的 `msg_status` 会改成 `1` +内容为目标私信的 `msg_key` + +请确保目标私信存在,且发送的私信与目标私信在同一会话内;发送此私信后,目标私信的 `msg_status` 会变成 `1` **示例:** @@ -54,4 +64,40 @@ 7345551441311046575 ``` -这时,私信 A 就会被撤回,并且其 `msg_status` 也会改变成 `1` +这时,私信 A 就会被撤回,并且其 `msg_status` 也会变成 `1` + +## 自定义表情消息(`msg_type=6`) + +对象结构基本同 [图片消息](#图片消息(`msg_type=6`)) + +## 分享消息(`msg_type=7`) + +## 小程序消息(`msg_type=9`) + +待补充 + +## 通知消息(`msg_type=10`) + +本类型消息仅可接收,不能直接发送 + + +## 视频推送消息(`msg_type=11`) + +本类型消息仅可接收,不能直接发送 + + +## 专栏推送消息(`msg_type=12`) + +本类型消息仅可接收,不能直接发送 + + +## 图片卡片消息(`msg_type=13`) + +本类型消息仅可接收,不能直接发送 + + +## 被关注时的自动推送消息(`msg_type=16`) + +## 系统提示消息(`msg_type=18`) + +本类型消息仅可接收,不能直接发送