41 lines
2.4 KiB
Markdown
41 lines
2.4 KiB
Markdown
--- name: beauty description: "当用户发送「999」时触发。从3个接口同时获取美女图片链接,再调用本地微信机器人发图接口把3张图片一起发给当前用户。" argument-hint: "无需参数,直接调用即可" ---
|
||
# Beauty Skill
|
||
## 描述
|
||
这是一个用于获取美女图片并直接发送给当前用户的技能。
|
||
当用户发送 `999` 时,从 3 个免费图片接口同时获取图片链接,再调用本地微信机器人接口把 3 张图片一起发出去。
|
||
这个仓库里额外提供了一个可执行脚本 `scripts/beauty.py`,方便宿主机器人直接调用。
|
||
## 触发条件
|
||
- 用户发送 `999`
|
||
## 接口信息
|
||
### 图片接口(3个全部获取)
|
||
| 接口 | 地址 |
|
||
|------|------|
|
||
| 美女图片 | `https://api.ust1.cc/api/meinvpic?return=302` |
|
||
| 白色丝袜 | `https://api.ust1.cc/api/baisi?return=302` |
|
||
| 黑色丝袜 | `https://api.ust1.cc/api/heisi?return=302` |
|
||
- 请求方式:`GET`
|
||
- 请求头:`key: 14e655df72c1b429`
|
||
- 返回机制:`HTTP 302` 重定向到图片地址,通过 `Location` 头获取图片 URL
|
||
### 发图接口
|
||
- 发图接口:`http://127.0.0.1:{ROBOT_WECHAT_CLIENT_PORT}/api/v1/robot/message/send/image/url`
|
||
- 请求方式:`POST`
|
||
- 本地脚本:`scripts/beauty.py`
|
||
## 环境变量
|
||
- `ROBOT_WECHAT_CLIENT_PORT`:本地微信机器人服务端口。
|
||
- `ROBOT_FROM_WX_ID`:当前消息来源用户的 wxid。
|
||
- `BEAUTY_KEY`:ust1 API 的 key(可选,默认使用内置 key)。
|
||
## 执行步骤
|
||
1. 当用户发送 `999` 时触发该技能。
|
||
2. 在仓库根目录下执行本地脚本:`python3 scripts/beauty.py`。
|
||
3. 脚本依次请求 3 个接口(美女图片、白色丝袜、黑色丝袜)。
|
||
4. 每个接口返回 `302` 重定向,脚本从 `Location` 头中提取图片地址。
|
||
5. 脚本从环境变量中读取 `ROBOT_WECHAT_CLIENT_PORT` 和 `ROBOT_FROM_WX_ID`。
|
||
6. 脚本将 3 张图片地址合并为数组,发送 `POST` 请求到 `http://127.0.0.1:{ROBOT_WECHAT_CLIENT_PORT}/api/v1/robot/message/send/image/url`,请求体为:
|
||
```json
|
||
{ "to_wxid": "{ROBOT_FROM_WX_ID}", "image_urls": ["美女图片", "白色丝袜", "黑色丝袜"] }
|
||
```
|
||
7. 如果成功获取到至少 2 张图片,则全部发送出去;否则回复兜底文案:`今天的美女图片暂时没拿到,等我再找找。`
|
||
## 回复要求
|
||
- 成功时,直接发送图片,不要额外追加解释文字。
|
||
- 失败时,使用固定兜底文案回复。
|