# WPS 表单数据推送 -> GoToSocial 机器人 一个 Cloudflare Worker,用于将 WPS 表单收集的数据自动推送到 GoToSocial 发布动态。 ## 工作流程 用户填写 WPS 表单 → WPS 推送数据 → Cloudflare Worker (本应用) → GoToSocial 发布动态 ## 部署步骤 ### 1. 安装依赖 本项目使用 [Bun](https://bun.sh/) 作为包管理器。 ```bash bun install ``` ### 2. 登录 Cloudflare 执行以下命令,将根据提示在浏览器中登录您的 Cloudflare 账号。 ```bash bun x wrangler login ``` ### 3. 设置密钥 (Secrets) 部署此 Worker 需要3个密钥。 1. **登录 WPS 后台,找到 `bind_code`** * 在WPS表单的“数据推送”设置页面,您会看到一行说明,其中包含 `bind_code` 和一长串数字,像这样: `{"bind_code":"20260119203041975010606"}` * **复制**这串数字 (不要引号)。 2. **设置 BIND_CODE 密钥** * 在终端执行以下命令,当提示时,粘贴您刚刚复制的数字: ```bash bun x wrangler secret put BIND_CODE ``` 3. **设置 GoToSocial 密钥** * 执行以下命令来设置您的 GoToSocial 实例地址和访问令牌: ```bash # 设置 GoToSocial 实例 API 地址 # 示例: https://your-domain.com/api/v1/statuses bun x wrangler secret put GOTOSOCIAL_URL # 设置 GoToSocial 访问令牌 (Bearer Token) bun x wrangler secret put GOTOSOCIAL_TOKEN ``` ### 4. (可选) 本地配置 `wrangler.toml` 文件包含本地开发时的配置。 - `GOTOSOCIAL_URL`: 你的 GoToSocial 实例 API 地址。 - `GOTOSOCIAL_VISIBILITY`: 动态的可见性,默认为 `private`。可选值:`public`, `unlisted`, `private`, `direct`。 - `BIND_CODE`: 您在WPS后台看到的 `bind_code`。 > **注意**: 在生产环境(部署后),配置的密钥 (`secrets`) 会覆盖 `wrangler.toml` 文件中的 `vars` 变量。 ### 5. 部署 ```bash bun x wrangler deploy ``` 部署成功后,Cloudflare 会提供一个 Worker URL,格式通常为: `https://wps-gotosocial-bot.你的用户名.workers.dev` ### 6. 绑定 WPS 表单 1. 回到 WPS 表单的“数据推送”设置页面。 2. 在 **URL** 输入框中,填入你部署好的 Worker URL,并在末尾加上 `/webhook`。最终的 URL 应该像这样: ``` https://wps-gotosocial-bot.你的用户名.workers.dev/webhook ``` 3. 确保您已经通过 `wrangler secret put BIND_CODE` 设置好了密钥。 4. 点击 **“校验并绑定”**。如果一切顺利,会提示绑定成功。 5. 之后,WPS 表单的任何新提交都将自动推送到你的 GoToSocial。