Skip to content

sungithubid/poe-trade-watcher

Repository files navigation

POE 交易监控 (POE Trade Watcher)

Cloudflare Workers License

一个基于 Cloudflare Workers 的 POE (流放之路) 交易历史监控工具,可以定时检查您的交易历史并通过 Bark 推送服务发送通知。

✨ 功能特性

  • 🔄 定时监控:可配置监控频率,默认每 4 小时检查一次
  • 📱 推送通知:通过 Bark 服务将交易信息推送到您的移动设备
  • 🕒 时间窗口:可配置监控时间窗口,只推送指定时间内的交易
  • 🛡️ 安全存储:敏感信息通过 Cloudflare Secrets 安全存储
  • 🌍 零成本部署:基于 Cloudflare Workers 免费套餐运行
  • 📊 交易详情:显示物品名称、类型和价格信息
  • 🔧 易于配置:简单的环境变量配置

🚀 快速开始

前置要求

  • Cloudflare 账号
  • POE 国服账号(腾讯服)
  • iOS 设备(用于 Bark 推送服务)

1. 克隆项目

git clone https://github.com/yourusername/poe-trade-watcher.git
cd poe-trade-watcher

2. 安装依赖

npm install

3. 获取必要信息

获取 POE Cookie

  1. 登录 POE 国服官网
  2. 打开浏览器开发者工具 (F12)
  3. 刷新页面,在 Network 标签中找到对 API 的请求
  4. 复制请求头中的 Cookie 值,特别是 POESESSID 部分

获取 Bark 推送密钥

  1. 在 iOS 设备上下载并安装 Bark 应用
  2. 打开应用,获取您的推送密钥

4. 配置环境变量

# 设置 POE Cookie (敏感信息)
wrangler secret put POE_COOKIE

# 设置 Bark 推送密钥 (敏感信息)
wrangler secret put BARK_KEY

5. 部署到 Cloudflare

npm run deploy

📋 详细部署指南

环境变量配置

变量名 描述 是否必需 默认值
POE_COOKIE POE 国服的登录 Cookie
POE_TRADE_HISTORY_URL POE 交易历史 API 地址(根据赛季调整) 当前赛季 URL
BARK_KEY Bark 推送服务的密钥
BARK_URL Bark 推送服务的 URL
MONITOR_WINDOW_HOURS 监控时间窗口(小时) 4

本地开发

如果您想在本地进行开发和测试:

  1. 复制环境变量模板:

    cp .env.example .env
  2. 编辑 .env 文件,填入实际值

  3. 启动开发服务器:

    npm run dev
  4. 访问 http://localhost:8787/ 手动触发监控任务

自定义配置

您可以通过修改 wrangler.jsonc 文件来自定义:

  • 定时任务的执行频率 (cron 表达式)
  • 默认环境变量值
  • 其他 Cloudflare Workers 配置

例如,要修改为每 2 小时执行一次:

{
  "triggers": {
    "crons": ["0 */2 * * *"]
  }
}

🎯 工作原理

  1. 定时触发:Cloudflare Workers 按照设定的 cron 表达式定时执行
  2. 获取交易历史:使用您的 Cookie 向 POE API 请求最近的交易历史
  3. 数据过滤:根据设定的时间窗口过滤出新的交易记录
  4. 格式化信息:将交易信息转换为易读的文本格式
  5. 发送推送:通过 Bark API 将格式化后的信息推送到您的设备

📱 推送示例

当有新交易时,您会收到类似以下格式的推送:

标题: poe交易提醒:您有3件物品已卖出

内容:
极速腐化(强辅) : 115x 混沌石
背叛邪刺 合金戒指 : 9x 混沌石
毁灭 闪耀之指 紫晶戒指 : 10x 混沌石

bark1

🔧 故障排除

常见问题

  1. 部署失败

    • 检查 wrangler.jsonc 语法是否正确
    • 确认已登录 Cloudflare 账户:wrangler auth login
  2. 定时任务不执行

    • 确认 cron 表达式格式正确
    • 检查 Worker 是否正确部署
  3. 获取不到交易数据

    • 检查 POE_COOKIE 是否有效
    • 确认 API URL 是否正确
  4. 推送不成功

    • 验证 BARK_KEY 和 BARK_URL 是否正确
    • 检查推送内容是否过长

调试方法

  1. 本地开发测试

    npm run dev
  2. 查看日志

    • 在 Cloudflare Dashboard 中查看 Worker 日志
    • 使用 wrangler tail 命令实时查看日志
  3. 手动触发测试

    • 访问部署后的 Worker URL 手动触发监控
    • 检查返回的响应和日志

📝 维护建议

  1. 定期更新 Cookie:POE 的 Cookie 可能会过期,建议每月更新一次
  2. 监控执行日志:定期检查 Worker 执行日志,确保正常运行
  3. 调整监控频率:根据您的交易活跃度调整监控频率
  4. 关注 API 变化:POE API 可能有更新,需要相应调整代码

🤝 贡献

欢迎提交 Issue 和 Pull Request!

  1. Fork 本项目
  2. 创建您的特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交您的更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启一个 Pull Request

📄 许可证

本项目采用 MIT 许可证 - 查看 LICENSE 文件了解详情。

🙏 致谢

📞 支持

如果您在使用过程中遇到问题,请:

  1. 查看 DEPLOYMENT_GUIDE.md 获取详细部署指南
  2. 搜索现有的 Issues
  3. 创建新的 Issue 描述您的问题

⭐ 如果这个项目对您有帮助,请给它一个 Star!

About

A Cloudflare Workers-based monitoring tool for Path of Exile trade history that sends notifications via Bark service.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors