01启动服务
/display.html,控制台 /control.html(需要控制台密码)。下面第 1 步的 start.cmd 只适用于本地/私有部署。本地/私有部署时,服务端只需要 Node.js。双击项目根目录的 start.cmd,会打开一个命令行窗口并启动服务;也可以在该目录执行 node server.js。
启动
双击 start.cmd。看到「本机 / 大屏 / 控制台」三行地址即启动成功。窗口不要关。
本机访问
浏览器打开 http://127.0.0.1:8788/。默认端口 8788,可用环境变量 PORT 修改。
电视/手机访问
让设备连同一个 Wi-Fi,使用 http://电脑局域网IP:8788/。电脑 IP 用 ipconfig 查看 IPv4;Windows 防火墙需放行 8788 端口。
data/rooms.json。关闭命令行窗口 = 停止服务,比赛界面会暂时连不上,重新启动即可恢复配置。02打开大屏
在电视或连接电视的电脑上,用浏览器打开 /display.html,按 F11 全屏。页面固定为 1920×1080 设计,会自动按屏幕等比缩放,16:9 效果最好。
左下角的 6 位数字就是电视机密码。如果电视断网,密码会变红并提示「网络断开」,这时手机是连不上的,先检查电视网络。
03连接控制台
手机或电脑打开 /control.html,在「电视机」卡片里输入 6 位密码,点「连接」。连接成功后:
- 控制台出现一张电视卡片,状态显示在线,绿点亮起;
- 大屏左下角的密码自动隐藏;
- 左侧计时卡开始显示大屏的实时状态。
可以连接多台电视,每台一个密码;也可以随时点电视卡片右上角的 × 断开。断开只是从这台控制台移除,不会关闭电视。
04盲注与计时
进入「盲注」页,选择一套预设,或直接改表格:
- 小盲 / 大盲 / ANTE:当前级别的盲注;
- 时长(分):这一级持续多少分钟;
- 休息(分):这一级打完后休息多少分钟,填 0 表示不休息;
- 「+ 添加一级」按上一级翻倍生成,可再手动改;「×」删除该级。
改完点右上角「保存并同步」。比赛没开始时,保存会把大屏重置到第 1 级;比赛进行中保存只更新显示内容,不会打断倒计时。
05比赛中的操作
左侧计时卡下方是裁判最常用的按钮:
| 按钮 | 作用 |
|---|---|
| 开始比赛 | 未开赛时从第 1 级开始;已暂停时变为「继续」。 |
| 暂停 | 比赛进行中显示;暂停级别倒计时与总时间,再点恢复。 |
| 上一级 / 下一级 | 手动纠错或提前升盲;不会改变当前是暂停还是运行。 |
| +1 / +5 分钟 | 给当前级别加时,现场处理纠纷最常用。 |
| 揭晓排行 | 把「排行」页填好的名次全屏动画揭晓。 |
| 预约开赛 | 输入分钟数,大屏先显示「即将开始」倒计时,归零自动开赛。 |
| 重置比赛 | 回到第 1 级、时间归位、重新开放报名(需二次确认)。 |
| 结束比赛 | 停止计时并显示 END / 比赛结束。 |
计时以大屏为准:控制台只是发指令和显示。因此电视页面必须保持打开;手机锁屏、切后台、关掉控制台都不影响比赛继续走。
06模板与样式
「设置 → 大屏模板」里有 9 套模板,点击立即生效。比赛进行中切换只换外观,不重置计时与级别。
颜色与字号
标题、副标题、倒计时、盲注、级别五组元素各自有两个渐变色和字号。改颜色时大屏会实时预览;字号点保存后生效。
背景与 LOGO
内置 7 张背景,点选即可;也可以上传 16:9 图片(小于 6MB)。LOGO 建议透明 PNG,可单独设置宽高;「使用默认背景」恢复红色主视觉。
07排行榜 / 筹码 / 蘑菇
排行榜
填写 1–6 名昵称,设置展示时长,点「全屏揭晓」。大屏会播放逐行入场动画,到时自动淡出;任意模板下都能用。留空的名次不会显示。
底部筹码
默认 4 个筹码(50/100/500/1000)。点筹码图片可替换,下面输入面值;「+ 新增筹码」最多 8 个,「×」删除。也可以整体关闭「大屏显示筹码」和「显示滚动文字」。
蘑菇玩法
开启后大屏会显示蘑菇数与蘑菇价值,价值按级别分四档(Lv1-3 / 4-6 / 7-9 / 10+)。不使用就保持关闭。
08声音
「设置 → 电视机声音」有 6 个开关:背景音乐、倒计时、升盲提示、休息提示、比赛结束、预约开赛。默认全部关闭,按场地需要逐项开启。
09多屏同控
同一场赛事可以连接多台电视(例如主屏 + 边屏 + 休息区)。每台电视有自己的密码,在控制台逐个连接。
- 连接 2 台以上时,「电视机」卡片下方会出现目标选择;
- 点某台电视,只控制那一台;点全部,开始/暂停/切级/加时会同时发给所有在线电视;
- 每台电视的模板、配色、背景可以单独设置;在「全部」模式下改模板/声音,会同步到所有屏幕。
10断电与刷新恢复
大屏每秒把比赛状态快照到本机,同时同步到服务器。遇到以下情况,重新打开大屏会回到原来的级别与剩余时间,但默认是暂停状态,由裁判确认后点「继续」:
- 电视断电、重启、浏览器崩溃;
- 刷新页面、换一台电视;
- 服务器重启后电视重连。
11常见问题
输入密码提示「没有找到密码」
大屏没有打开、密码输错、电视和控制台不在同一个服务地址,或大屏断网。先确认电视上密码还在、网络正常,再重新输入。电视刷新后会保持同一个密码。
手机能打开控制台,但连不上大屏
手机和电视/服务器不在同一 Wi-Fi;或用了 127.0.0.1(这只在本机有效)。改用服务器的局域网 IP;检查 Windows 防火墙是否放行 8788。
电视没有声音
先在大屏上点一下页面激活音频,再检查控制台的 6 个声音开关和电视音量。浏览器默认禁止自动播放,这是正常限制。
大屏显示不完整 / 两边有黑边
按 F11 全屏;浏览器缩放保持 100%;屏幕尽量设为 16:9。系统按 1920×1080 等比缩放,非 16:9 会有黑边但不会变形。
改了设置但大屏没变
确认电视卡片是「在线」,然后点「更新电视机」;模板/声音/筹码开关是即时生效的。若仍不变,点「刷新大屏」让电视重新加载。
两台电视用了同一个密码
后打开的那台会接管房间,先打开的那台显示「已在另一台设备打开」并停止。请给每台电视用各自的密码。
比赛进行中能改模板/颜色吗?
可以。配置下发只改变显示内容,不会重置倒计时和级别;只有「重置比赛」才会清零。
怎么备份数据?
备份 data/rooms.json 和 data/uploads/ 即可。恢复时放回原位,重启服务。
12部署与数据
文件结构
局域网部署
把整个 poker-tv 目录放到一台常开的电脑上,安装 Node.js 18+,双击 start.cmd。用路由器给这台电脑固定内网 IP,电视和手机收藏 http://IP:8788/。
公网部署(可选)
升级
覆盖 server.js 与 public/ 后重启服务;data/ 不要覆盖,比赛配置和上传素材都在里面。
准备好了?
电视打开大屏,手机打开控制台,输入 6 位密码就能开赛。