线下的一次购买(自动贩卖机、收银台、小程序支付…)可以实时变成虚拟世界里的一点奇趣: 一朵荷花开了、一只乌龟从水里爬出、锦鲤跃出水面。它不打扰园中人物的主线故事,只是让两个世界轻轻相触。
点「试一下」会向世界推送一个示例事件(开放、限流),上方预览里应立刻出现一点变化。 这正是你的贩卖机要做的事——只不过换成真实的购买。
你的系统只需把事件 POST 到事件中枢,所有正在观看世界的人就会同时看到对应的小变化。
事件中枢 Base:https://anotherworld-events.fxp007.workers.dev
发布需要令牌 PUB_TOKEN(向运营方索取,只放服务端、勿写入公开前端)。
curl -X POST https://anotherworld-events.fxp007.workers.dev/pub \
-H "Authorization: Bearer $PUB_TOKEN" \
-H "content-type: application/json" \
-d '{"product":"冰激凌","source":"自动贩卖机-01"}'
成功返回 {"ok":true,"delivered":N}(N = 当前在线观看人数);令牌缺失/错误返回 401。
| 方法 | 路径 | 谁用 | 用途 |
|---|---|---|---|
| POST | /pub | 外部系统(需令牌) | 推送事件 → 广播给所有观看者 |
| GET | /sub | 浏览器 | WebSocket 订阅(接收事件) |
| GET | /demo | 演示(开放·限流) | 无令牌广播一个示例事件 |
| GET | /recent | 调试 | 最近 20 条事件 + 在线人数 |
Body 字段(均可选):product 商品名(决定特效)、source 机器/门店名(显示在提示里)、
effect 直接指定特效覆盖映射。
| 商品关键词 | 特效 | 商品关键词 | 特效 |
|---|---|---|---|
| 冰激凌 / 雪糕 / ice | 荷花 lotus | 奶茶 / tea | 蝴蝶 butterfly |
| 烤肠 / sausage | 乌龟 turtle | 汽水 / 可乐 / drink | 锦鲤 koi |
| 糖 / 糖葫芦 / candy | 花 flower | 咖啡 / coffee | 猫 cat |
| 薯片 / chips | 兔子 rabbit | 爆米花 / popcorn | 流萤 firefly |
未匹配 → 随机;或用 effect 字段直接指定 flower|lotus|turtle|butterfly|koi|cat|rabbit|petals|firefly | |||
大多数云管贩卖机 / POS / 小程序支付都能配「出货成功 / 支付成功」webhook。写一个薄适配器,把回调映射成 {product, source} 再转发:
// Node:收到平台「出货成功」回调时
await fetch("https://anotherworld-events.fxp007.workers.dev/pub", {
method: "POST",
headers: { "Authorization": `Bearer ${process.env.PUB_TOKEN}`,
"content-type": "application/json" },
body: JSON.stringify({ product: payload.goodsName, source: payload.deviceId }),
});
# Python
import os, requests
requests.post("https://anotherworld-events.fxp007.workers.dev/pub",
headers={"Authorization": f"Bearer {os.environ['PUB_TOKEN']}"},
json={"product": goods_name, "source": device_id})
把下面这个 Skill 交给你的 AI 编程助手(Claude Code / Cursor / …),它就能照着帮你把贩卖机或收银系统接进来。
安装:放到 ~/.claude/skills/anotherworld-connect/SKILL.md。
加载中…