feat: add htsy skill with CLI usage and API references
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# 素材与话术库
|
||||
|
||||
阅读本文件处理素材列表、素材增删改查、获取 OSS 上传 token、话术库、话术分类、话术标签等操作。素材内容里的消息结构见 [api-common.md](api-common.md)。
|
||||
|
||||
## 素材与话术接口
|
||||
|
||||
| 目标 | 接口 | 请求字段 | 常用返回字段 |
|
||||
| --- | --- | --- | --- |
|
||||
| 素材上传 | `POST /api/material/upload` | `type`(string, 必填,素材类型);`material`(bytes, 必填,素材) | `link`(string,素材地址) |
|
||||
| 列表 | `POST /api/material/list` | `page`(int64, 必填,page);`pageSize`(int64, 必填,pageSize);`name`(string, 可选,素材名字搜索);`type`(string, 必填,类型);`isQy`(bool, 可选,是否属于企业) | `list`(repeated MaterialInfo,计划列表);`page`(int64,page);`pageSize`(int64,pageSize);`total`(int64,总数);`last`(bool,是否最后) |
|
||||
| 添加 | `POST /api/material/add` | `id`(int64, 可选,素材id);`type`(string, 必填,素材类型);`name`(string, 必填,素材名字);`text`(MessageText, 可选,文本消息 text);`image`(MessageImage, 可选,图片消息 image);`sticker`(MessageSticker, 可选,表情消息 sticker);`video`(MessageVideo, 可选,视频消息 video);`miniProgram`(MessageMiniProgram, 可选,小程序 miniProgram);`link`(MessageLink, 可选,链接 link);`audio`(MessageAudio, 可选,音频 audio);`compositeImage`(MessageCompositeImage, 可选,合成图 compositeImage);`inviteGroup`(MessageInviteGroup, 可选,入群邀请 inviteGroup);`goods`(MessageGoods, 可选,商品 goods);`freeVideo`(MessageFreeVideo, 可选,视频号 freeVideo);`liveBroadcastRoom`(MessageLiveBroadcastRoom, 可选,直播间 liveBroadcastRoom);`file`(MessageFile, 可选,文件 file);`note`(MessageNote, 可选,笔记 note);`collection`(repeated Collection, 可选,合集 collection);`materialGroup`(repeated MaterialDialogueContent, 可选,素材组List);`isQy`(bool, 可选,是否属于企业);... 另有 1 个字段 | `id`(int64) |
|
||||
| 删除 | `POST /api/material/del` | `ids`(repeated int64, 必填,删除的ids);`type`(string, 必填,素材类型) | 空对象或无业务数据 |
|
||||
| 更新 | `POST /api/material/update` | `id`(int64, 可选,素材id);`type`(string, 必填,素材类型);`name`(string, 必填,素材名字);`text`(MessageText, 可选,文本消息 text);`image`(MessageImage, 可选,图片消息 image);`sticker`(MessageSticker, 可选,表情消息 sticker);`video`(MessageVideo, 可选,视频消息 video);`miniProgram`(MessageMiniProgram, 可选,小程序 miniProgram);`link`(MessageLink, 可选,链接 link);`audio`(MessageAudio, 可选,音频 audio);`compositeImage`(MessageCompositeImage, 可选,合成图 compositeImage);`inviteGroup`(MessageInviteGroup, 可选,入群邀请 inviteGroup);`goods`(MessageGoods, 可选,商品 goods);`freeVideo`(MessageFreeVideo, 可选,视频号 freeVideo);`liveBroadcastRoom`(MessageLiveBroadcastRoom, 可选,直播间 liveBroadcastRoom);`file`(MessageFile, 可选,文件 file);`note`(MessageNote, 可选,笔记 note);`collection`(repeated Collection, 可选,合集 collection);`materialGroup`(repeated MaterialDialogueContent, 可选,素材组List);`isQy`(bool, 可选,是否属于企业);... 另有 1 个字段 | 空对象或无业务数据 |
|
||||
| 获取发送给机器人自己的素材 | `POST /api/material/get/byBotOwn` | `botId`(int64, 必填,机器人id);`msgType`(string, 必填,msgType);`botType`(int32, 必填,类型 1 个微 2企微);`friendId`(int64, 必填,客户id) | `msgType`(string,消息类型);`role`(string,角色名);`delayTime`(int64,延迟时间 单位ms如 1000ms);`delayType`(string,延迟时间单位 s 秒 m 分 h 小时);`text`(MessageText,文本消息 text);`image`(MessageImage,图片消息 image);`sticker`(MessageSticker,表情消息 sticker);`video`(MessageVideo,视频消息 video);`miniProgram`(MessageMiniProgram,小程序 miniProgram);`link`(MessageLink,链接 link);... |
|
||||
| 获取单个素材信息 | `POST /api/material/info` | `id`(int64, 必填,id);`msgType`(string, 必填,msgType) | `id`(int64,素材id);`type`(string,素材类型);`name`(string,素材名字);`text`(MessageText,文本消息 text);`image`(MessageImage,图片消息 image);`sticker`(MessageSticker,表情消息 sticker);`video`(MessageVideo,视频消息 video);`miniProgram`(MessageMiniProgram,小程序 miniProgram);`link`(MessageLink,链接 link);`audio`(MessageAudio,音频 audio);... |
|
||||
| 话术库创建 | `POST /api/material/dialogue/add` | `name`(string, 必填,素材名字);`content`(repeated MaterialDialogueContent, 可选,素材内容);`categoryId`(int64, 可选,分类id);`isQy`(bool, 可选,是否属于企业) | `id`(int64,id) |
|
||||
| 话术库列表 | `POST /api/material/dialogue/list` | `page`(int64, 必填,page);`pageSize`(int64, 必填,pageSize);`name`(string, 可选,素材名字搜索);`categoryId`(int64, 可选,按分类搜索);`tagIds`(repeated int64, 可选,按标签搜索);`isQy`(bool, 可选,是否属于企业) | `list`(repeated MaterialDialogueListItem,话术库列表);`page`(int64,page);`pageSize`(int64,pageSize);`total`(int64,总数);`last`(bool,是否最后) |
|
||||
| 话术库删除 | `POST /api/material/dialogue/del` | `id`(int64, 可选,id) | 空对象或无业务数据 |
|
||||
| 话术库更新 | `POST /api/material/dialogue/update` | `id`(int64, 可选,id);`name`(string, 必填,素材名字);`content`(repeated MaterialDialogueContent, 可选,素材内容);`categoryId`(int64, 可选,分类id);`isQy`(bool, 可选,是否属于企业) | 空对象或无业务数据 |
|
||||
| 话术库分类创建 | `POST /api/material/dialogue/category/add` | `name`(string, 可选,类别名);`isQy`(bool, 可选,是否属于企业) | `id`(int64,id) |
|
||||
| 话术库分类列表 | `POST /api/material/dialogue/category/list` | `isQy`(bool, 可选,是否属于企业) | `list`(repeated MaterialDialogueCategoryItem) |
|
||||
| 话术库分类更新 | `POST /api/material/dialogue/category/update` | `id`(int64, 可选);`name`(string, 可选) | 空对象或无业务数据 |
|
||||
| 话术库分类删除 | `POST /api/material/dialogue/category/del` | `id`(int64, 可选) | 空对象或无业务数据 |
|
||||
| 话术库标签创建 | `POST /api/material/dialogue/tag/add` | `name`(string, 可选,类别名) | `id`(int64,id) |
|
||||
| 话术库标签列表 | `POST /api/material/dialogue/tag/list` | `{}` | `list`(repeated MaterialDialogueTagItem) |
|
||||
| 话术库标签更新 | `POST /api/material/dialogue/tag/update` | `id`(int64, 可选);`name`(string, 可选) | 空对象或无业务数据 |
|
||||
| 话术库分类删除 | `POST /api/material/dialogue/tag/del` | `id`(int64, 可选) | 空对象或无业务数据 |
|
||||
| 为话术库设置分类或者标签 | `POST /api/material/dialogue/setCategoryOrTag` | `dialogueId`(repeated int64, 必填,素材id);`categoryId`(int64, 可选,类别id);`tagIds`(repeated int64, 可选,标签id);`needDelTagIds`(repeated int64, 可选,要删除的标签id) | 空对象或无业务数据 |
|
||||
| 获取oss上传的token,有效期5分钟 | `POST /api/material/getOssToken` | `type`(string, 必填,素材类型 image video等);`original`(string, 必填,来源 messagePush material等) | `accessID`(string,阿里云accessid);`host`(string,阿里云host);`policy`(string,阿里云policy);`signature`(string,阿里云signature);`dir`(string,阿里云文件目录);`expire`(int64,阿里云expire 毫秒);`domain`(string,阿里云domain) |
|
||||
|
||||
|
||||
## 常用示例
|
||||
|
||||
```bash
|
||||
htsy-cli call /api/material/list -d '{"page":1,"pageSize":20,"type":"image"}'
|
||||
htsy-cli call /api/material/add -d '{"type":"text","name":"问候语","text":{"content":"你好"}}'
|
||||
htsy-cli call /api/material/dialogue/list -d '{"page":1,"pageSize":20}'
|
||||
```
|
||||
Reference in New Issue
Block a user