冷启动文件
Differences
This shows you the differences between two versions of the page.
| 冷启动文件 [2026/08/15 15:55] – CTWing设备数据工作流冷启动文件 172.17.0.1 | 冷启动文件 [2026/08/15 16:40] (current) – 更名为曼陀林工作冷启动文件 172.17.0.1 | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ======= 慧飞 CTWing 设备数据工作流 — 冷启动文件 | + | 该页面已更名为 **[[曼陀林工作冷启动文件]]**(曼陀林平台完整冷启动文档)。 |
| - | + | ||
| - | + | ||
| - | > 版本: 1.0 | 日期: 2026-08-15 | 用途: 服务器冷启动/ | + | |
| - | > 服务器: 腾讯云轻量 lhins-1dai07vu | 公网IP: 82.156.85.124 | 域名: dev.mandolinwu.site(HTTPS) | + | |
| - | > 系统: Ubuntu | 时区: Asia/ | + | |
| - | + | ||
| - | --- | + | |
| - | + | ||
| - | ====== 1. 系统总览 ====== | + | |
| - | + | ||
| - | + | ||
| - | < | + | |
| - | 设备(4G/ | + | |
| - | ↓ | + | |
| - | SQLite(ctwing.db) → 每日09: | + | |
| - | ↓ | + | |
| - | H5查询工具(/ | + | |
| - | </ | + | |
| - | + | ||
| - | **所有服务 URL:** | + | |
| - | | 服务 | 地址 | | + | |
| - | |------|------| | + | |
| - | | 设备数据查询 H5 | https:// | + | |
| - | | 我的世界3D游戏 | https:// | + | |
| - | | 佩奇丛林大冒险 | https:// | + | |
| - | | Halo博客(曼陀林) | http:// | + | |
| - | | NocoDB | http:// | + | |
| - | | RabbitMQ管理台 | http:// | + | |
| - | + | ||
| - | ====== 2. 核心组件清单 ====== | + | |
| - | + | ||
| - | + | ||
| - | | 组件 | 位置 | 说明 | | + | |
| - | |------|------|------| | + | |
| - | | Flask接收端 | ~/ | + | |
| - | | systemd服务 | ctwing-receiver | 端口13543,开机自启 | | + | |
| - | | MQ消费端 | ~/ | + | |
| - | | systemd服务 | mq_consumer | 备用通道消费 | | + | |
| - | | AEP SDK | ~/ | + | |
| - | | AEP API客户端 | ~/ | + | |
| - | | SQLite | ~/ | + | |
| - | | 日报脚本 | ~/ | + | |
| - | | Caddy | / | + | |
| - | | RabbitMQ | Docker容器 rabbitmq | 5672(AMQP)/ | + | |
| - | | MySQL | Docker容器 huifei-mysql | 127.0.0.1: | + | |
| - | | 二维码 | / | + | |
| - | + | ||
| - | **cron定时任务:** b3b717e6550f 每天09:00 设备日报(no_agent,先db_writer写MySQL再hermes send推送微信) | + | |
| - | + | ||
| - | ====== 3. AEP 开放平台接入(关键!) ====== | + | |
| - | + | ||
| - | + | ||
| - | ===== 凭证(存 ~/ | + | |
| - | + | ||
| - | | 产品 | 产品ID | MasterKey变量 | 协议 | | + | |
| - | |------|--------|--------------|------| | + | |
| - | | 4G智慧球阀 | 17080670 | AEP_VALVE_MASTER_KEY | MQTT | | + | |
| - | | NB智慧球阀 | 17070058 | AEP_NB_MASTER_KEY | LWM2M | | + | |
| - | | 土壤墒情气象站 | 17197695 | AEP_MASTER_KEY | 其他 | | + | |
| - | - 应用凭证(共用): | + | |
| - | - 租户ID: 2000455438(=API域名前缀) | + | |
| - | + | ||
| - | ===== API 接入 ===== | + | |
| - | + | ||
| - | - 域名: `https:// | + | |
| - | - **签名算法(血泪教训,不是MD5!)**: | + | |
| - | < | + | |
| - | code = " | + | |
| - | signature = Base64(HMAC-SHA1(key=AppSecret, | + | |
| - | </ | + | |
| - | - 时间校准: | + | |
| - | - 订阅管理API(aep_subscribe_north): | + | |
| - | - CreateSubscription: | + | |
| - | - DeleteSubscription: | + | |
| - | - GetSubscriptionsList: | + | |
| - | - AEP deviceId = 产品ID + SN(如 17080670+863304082793730) | + | |
| - | - 定源语义: | + | |
| - | + | ||
| - | ===== 设备管理原则(用户明确要求) ===== | + | |
| - | + | ||
| - | - **添加设备 → 创建该设备的设备级订阅** | + | |
| - | - **删除设备 → 删除该设备的订阅** | + | |
| - | - 禁止产品级订阅(会把全产品设备数据都拉过来) | + | |
| - | - 删除只允许动 subUrl=http:// | + | |
| - | + | ||
| - | ====== 4. 设备数据解析(AEP直推格式) ====== | + | |
| - | + | ||
| - | + | ||
| - | AEP推送信封: | + | |
| - | - APPdata base64解码(latin-1) → 内含SN(18位) + JSON数据体(cmd/ | + | |
| - | - 设备类型按deviceId前缀: | + | |
| - | - 解析函数: | + | |
| - | + | ||
| - | ====== 5. H5 设备管理工具 ====== | + | |
| - | + | ||
| - | + | ||
| - | - 页面: /ctwing/h5 | API: / | + | |
| - | - 台账表: monitored_devices(sn, | + | |
| - | - 功能: 添加/ | + | |
| - | - 纯前端Canvas绘图,零外部依赖 | + | |
| - | + | ||
| - | ====== 6. 日报流程(每天09: | + | |
| - | + | ||
| - | + | ||
| - | 1. cron b3b717e6550f 触发 ~/ | + | |
| - | 2. db_writer.py: | + | |
| - | 3. hermes send 微信推送日报+Excel附件 | + | |
| - | 4. 日报窗口: | + | |
| - | + | ||
| - | ====== 7. 常见运维命令 ====== | + | |
| - | + | ||
| - | + | ||
| - | < | + | |
| - | sudo systemctl restart ctwing-receiver | + | |
| - | sudo systemctl restart mq_consumer | + | |
| - | sudo systemctl restart caddy # 重启反代 | + | |
| - | sudo caddy reload --config / | + | |
| - | docker ps # 查看容器(rabbitmq/ | + | |
| - | tail -f ~/ | + | |
| - | </ | + | |
| - | + | ||
| - | ====== 8. 排障速查 ====== | + | |
| - | + | ||
| - | + | ||
| - | | 症状 | 排查 | | + | |
| - | |------|------| | + | |
| - | | 数据没流入 | curl http:// | + | |
| - | | 添加设备报" | + | |
| - | | 微信打不开链接 | 用 https:// | + | |
| - | | 日报无数据 | 检查设备是否上报;cron b3b717e6550f 状态;cron.log | | + | |
| - | | AEP签名401 | 时间戳偏差> | + | |
| - | + | ||
| - | ====== 9. 冷启动恢复步骤 ====== | + | |
| - | + | ||
| - | + | ||
| - | 1. 装 Docker + 启动容器(rabbitmq/ | + | |
| - | 2. 装 python3-venv + pip install flask pika pymysql;恢复 ~/ | + | |
| - | 3. systemd: ctwing-receiver + mq_consumer 启用 | + | |
| - | 4. Caddy 配置(80+443) + 防火墙放行 80/ | + | |
| - | 5. cron 建 b3b717e6550f(每天09: | + | |
| - | 6. 验证: / | + | |
| + | ~~DISCUSSION~~ | ||
冷启动文件.1786809324.txt.gz · Last modified: by 172.17.0.1
