diff --git a/src/api/v1/group.md b/src/api/v1/group.md index 03c528fa..bb65e992 100644 --- a/src/api/v1/group.md +++ b/src/api/v1/group.md @@ -12,7 +12,7 @@ title: group // 机器人数据 - + ``` ::: @@ -239,6 +239,7 @@ POST /v1/group/remove-member "code":-1, "msg":"您无权操作此群聊,请联系群主或者管理员" } +``` @tab 无效用户 ID/不在群聊 @@ -998,3 +999,122 @@ POST /v1/group/switch "msg": "success" } ``` + +## 连接群聊 SSE + +GET /v1/group/event-sse?groupId=`` + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +响应头: + +| 名称 | 内容 | 备注 | +| :------------------------------: | :----------------------------------------------------------------------------------------------------------------------: | :------------------------------: | +| Content-Type | text/event-stream | 无 | +| Cache-Control | no-cache | 无 | +| Transfer-Encoding | chunked | 无 | +| Access-Control-Allow-Credentials | true | 允许跨域请求携带凭证(如Cookie) | +| Access-Control-Allow-Headers | \* | 允许跨域请求携带所有自定义头 | +| Access-Control-Allow-Methods | POST, GET, OPTIONS | 允许跨域请求使用的HTTP方法 | +| Access-Control-Allow-Origin | \* | 允许所有域名跨域访问该资源 | +| Access-Control-Expose-Headers | Content-Length, Access-Control-Allow-Origin, Access-Control-Allow-Headers, Cache-Control, Content-Language, Content-Type | 允许前端JavaScript读取这些响应头 | + +响应体: + +::: tip 此处 data 部分换行只是为了备注方便,实际使用必须遵循 SSE 标准. +::: + +```http +event: snapshot.shopEntry // 商城入口事件 +data: { + "entryPosition":0 // 商城入口位置: 0-关, 1-功能面板, 2-悬浮 +} + +event: snapshot.llmParams +data: {"list":[]} + +event: snapshot.liveRoom // 直播房间 +data: { + "rooms": [ + { + "userId": "7181558", // 发起者 ID + "roomId": "8f5eeb6a82a64e9bb397793966cbea93", // 房间 ID + "chatId": "979377289", // 所属会话 ID + "title": "", // 标题 + "chatType": 2, // 会话类型 + "status": 0, // 状态 + "createBy": "7181558", // 创建者 + "createTime": 1787824247, // 创建时间 + "nickname": "足立零", // 昵称 + "count": 1, // 人数 + "avatarUrl": "https://chat-img.jwznb.com/6f14561ea45329e34bde805afb9e7373.jpg" // 发起人头像 URL + } + ] +} +``` + +## 获取商城入口状态 + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +请求体: + +```json +{ + "groupId": "118738312" // 群聊 ID +} +``` + +响应体: + +```json +{ + "code": 1, + "data": { + "entryPosition": 0 // 商城入口位置: 0-关, 1-功能面板, 2-悬浮 + }, + "msg": "success" +} +``` + +## 编辑商城入口状态 + +POST /v1/group/edit-shop-entry + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +请求体: + +```json +{ + "groupId": "118738312", // 群聊 ID + "entryPosition": 1 // 商城入口位置: 0-关, 1-功能面板, 2-悬浮 +} +``` + +响应体: + +::: tabs + +@tab 未加入云湖伙伴计划 + +```json +{ + "code": -1, + "msg": "您暂未加入云湖伙伴计划" +} +``` + +::: diff --git a/src/api/v1/misc.md b/src/api/v1/misc.md index fa7d7abd..ad3cc961 100644 --- a/src/api/v1/misc.md +++ b/src/api/v1/misc.md @@ -57,7 +57,7 @@ GET `https://api.qiniu.com/v4/query?ak=&bucket=` ::: -## 获取图片上传token +## 获取图片上传 token GET /v1/misc/qiniu-token @@ -79,7 +79,7 @@ GET /v1/misc/qiniu-token } ``` -## 获取音频上传token +## 获取音频上传 token GET /v1/misc/qiniu-token-audio @@ -101,7 +101,13 @@ GET /v1/misc/qiniu-token-audio } ``` -## 获取文件上传token +## 获取文件上传 token + +::: tip + +通过 ZIP 压缩文件导入表情包也是走这个接口上传文件的.需要手动指定 key 的前缀为 `stickerZip/114514.zip"` ~~当然不遵守也可以.不要问为什么这样我也不知道.~~ + +::: GET /v1/misc/qiniu-token2 @@ -145,7 +151,7 @@ GET /v1/misc/qiniu-token-video } ``` -## 获取群文件上传token +## 获取群文件上传 token GET /v1/misc/qiniu-token-group-disk @@ -167,6 +173,40 @@ GET /v1/misc/qiniu-token-group-disk } ``` +## 获取表情上传 token + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +响应体: + +```json +{ + "code": 1, + "data": { + "token": "123:123" // 表情上传 token + }, + "msg": "success" +} +``` + +::: info + +七牛云返回的 key 永远带有 `sticker/` 前缀. + +```json +{ + "key":"sticker/abe73b4671e44aa984ab27ba3dda5951.png", + "hash":"FkSXEmuHphV9We5U1ChAFX7qxfLb", + "fsize":2063660 +} +``` + +::: + ## 获取云端设置 GET /v1/misc/setting diff --git a/src/api/v1/sticker.md b/src/api/v1/sticker.md index 447f6ff5..14762a19 100644 --- a/src/api/v1/sticker.md +++ b/src/api/v1/sticker.md @@ -5,6 +5,10 @@ title: sticker 未特别说明情况下请求域名均为 `https://chat-go.jwzhd.com` 没写请求/响应项目表示不需要相关参数. + + ## 获取收藏表情包 POST /v1/sticker/list @@ -89,7 +93,7 @@ POST /v1/sticker/detail "sort": 0, // 分类相关? "stickerItems": [ { - "id": 18951, // 表情ID + "id": 18951, // 表情 ID "name": "汇总部分", // 表情名称 "url": "sticker/4599f91519364bcc2be6718c3915d388.jpg", // 表情 URL,前面需加上 https://chat-img.jwznb.com/ "stickerPackId": 894, // 所属表情包 ID @@ -220,3 +224,215 @@ print(response.text) "msg": "success" } ``` + +## 创建表情包 + +POST /v1/sticker/create-pack + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +请求体: + +```json +{ + "name": "66665" // 欲创建表情包名称 +} +``` + +响应体: + +```json +{ + "code": 1, + "data": { + "id": 2676 // 创建表情包的 ID + }, + "msg": "success" +} +``` + +--- + +::: tip + +非表情包创建者操作需要表情包创建者权限的 API 的报错如下: + +```json +{ + "code": -1, + "msg": "仅表情包创建者可" +} +``` + +表情包不存在: + +```json +{ + "code": -1, + "msg": "表情包不存在" +} +``` + +表情不存在: + +```json +{ + "code": -1, + "msg": "表情不存在" +} +``` + +::: + +## 重命名表情包 + +POST /v1/sticker/rename-pack + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ------------ | +| token | 是 | 表情包创建者 | + +请求体: + +```json +{ + "id": 2652, // 表情包 ID + "name": "《战双帕弥什》是活泼可爱治愈的合家欢游戏" // 重命名后的名称 +} +``` + +响应体: + +```json +{ + "code": 1, + "msg": "success" +} +``` + +## 添加表情至表情包 + +POST /v1/sticker/add-sticker + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ------------ | +| token | 是 | 表情包创建者 | + +请求体: + +```json +{ + "name": "1730094050", // 表情名称 + "url": "sticker/abe73b4671e44aa984ab27ba3dda5951.png", // 表情 URL(和七牛云返回的 key 一致) + "stickerPackId": 2676 // 所属表情包 ID +} +``` + +响应体: + +```json +{ + "code": 1, + "msg": "success" +} +``` + +## 删除表情包 + +POST /v1/sticker/delete-pack + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ------------ | +| token | 是 | 表情包创建者 | + +请求体: + +```json +{ + "id": 2676 // 欲删除的表情包的 ID +} +``` + +响应体: + +```json +{ + "code": 1, + "msg": "success" +} +``` + +## 导入表情包 + +POST /v1/sticker/import-pack + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ---- | +| token | 是 | 无 | + +请求体: + +```json +{ + "name": "跳过开机引导(先双清再刷入)", // 表情包名称 + "fileKey": "stickerZip/7f4ac069a32e8482e6e74c19a42b6e95.zip" // 文件 URL(和七牛 key 一样) +} +``` + +响应体: + +::: tabs + +@tab 存在异常文件 + +```json +{ + "code": -1, + "msg": "导入失败。第2个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第3个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第4个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第8个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第13个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第14个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;第15个文件格式不正确,支持JPG、JPEG、PNG、GIF、WEBP、TGS;" +} +``` + +::: + +## 重命名表情包里的表情 + +POST /v1/sticker/rename-sticker + +请求头: + +| 名称 | 必须 | 备注 | +| ----- | ---- | ------------ | +| token | 是 | 表情包创建者 | + +请求体: + +```json +{ + "id": 47190, // 表情 ID + "name": "173009405055" // 重命名后的名称 +} +``` + +响应体: + +```json +{ + "code": 1, + "msg": "success" +} +``` + + +~~删除表情 API 还没写~~ \ No newline at end of file