Files
script/cf_worker/lskypro/README.md
T
Orion c05742e6d6 refactor(cf_worker): 🚚 整理 Cloudflare Worker 脚本目录结构
重构 cf_worker 目录结构,将 Lsky Telegram Upload Worker 与 Telegram Bot 脚本分别移动到各自独立的子文件夹中,并拆分相应的文档。

- 将 lsky-telegram-worker.js 移动至 cf_worker/lskypro/ 目录
- 将 tg-bot.js 移动至 cf_worker/tg-bot/ 目录
- 删除原 cf_worker/README.md,并在各子目录下新建专用的 README.md 文档
- 更新主 README.md 中的目录树结构和脚本概览说明
2026-05-27 09:59:37 +08:00

51 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Lsky Telegram Upload Worker
`lsky-telegram-worker.js` 用于把 Telegram 私聊发送的图片或图片文件上传到 Lsky Pro。上传成功后,Bot 会回复 Markdown 图片链接,并使用 Telegram HTML `<pre>` 代码块渲染,便于 Android 客户端点击复制。
## 功能
- 支持 Telegram `photo` 和图片类 `document`
- 支持 Telegram `media_group_id` 相册收集后批量上传。
- 默认单文件大小限制为 `500.00 MB`,可用 `MAX_FILE_MB` 覆盖。
- 默认上传队列最多收 `500` 张,可用 `MAX_UPLOAD_QUEUE_IMAGES` 覆盖。
- 返回格式为 `![filename](url)`,并关闭网页预览。
- 通过 `ALLOWED_TELEGRAM_USER_IDS` 限制可用用户。
## 必需绑定和环境变量
| 名称 | 说明 |
| --- | --- |
| `DB` | Cloudflare D1 数据库绑定名,用于暂存相册队列 |
| `TELEGRAM_BOT_TOKEN` | Telegram Bot Token |
| `TELEGRAM_WEBHOOK_SECRET` | Telegram Webhook secret token,同时用于 `/init` 初始化鉴权 |
| `ALLOWED_TELEGRAM_USER_IDS` | 允许使用的 Telegram user id,多个用英文逗号分隔 |
| `LSKY_API_URL` | Lsky Pro 上传 API 地址 |
| `LSKY_TOKEN` | Lsky Pro API token |
## 可选环境变量
| 名称 | 默认值 | 说明 |
| --- | --- | --- |
| `MAX_FILE_MB` | `500.00` | 单个 Telegram 图片/文件大小上限,单位 MB |
| `MAX_UPLOAD_QUEUE_IMAGES` | `500` | 单个上传队列最多暂存图片数量 |
| `ALBUM_WAIT_SECONDS` | `5` | 相册收集等待秒数 |
| `LSKY_PERMISSION` | `1` | 传给 Lsky Pro 的 `permission` |
| `LSKY_STRATEGY_ID` | 空 | 传给 Lsky Pro 的 `strategy_id` |
## 部署流程
1. 创建 Telegram Bot,拿到 `TELEGRAM_BOT_TOKEN`
2. 创建 Cloudflare D1 数据库,并在 Worker 中绑定为 `DB`
3. 创建 Worker,把 [lsky-telegram-worker.js](lsky-telegram-worker.js) 作为 Worker 代码。
4. 配置上方环境变量。
5. 访问 `https://<WORKER_URL>/init?secret=<TELEGRAM_WEBHOOK_SECRET>` 初始化 D1 表。
6. 设置 Telegram Webhook
```bash
curl -X POST "https://api.telegram.org/bot<TELEGRAM_BOT_TOKEN>/setWebhook" \
-d "url=<WORKER_URL>/webhook" \
-d "secret_token=<TELEGRAM_WEBHOOK_SECRET>"
```
7. 访问 Worker 根路径,若返回 `Lsky Telegram Worker OK - code-block-max500mb-queue500-2026-05-27`,说明 Worker 基本可用。