目前还在测试中…很多功能还不完善(让AI写的)欢迎提提意见!
ChatRoom 聊天室插件
Typecho 全站实时聊天插件,固定在右下角浮动展示。
功能特性
| 特性 | 说明 | |
|---|---|---|
| 实时聊天 | 轮询机制,默认每 4 秒拉取新消息 | |
| 身份识别 | 已登录用户自动取账户昵称和网址;游客取评论框 Cookie 记忆信息 | |
| 头像 | Gravatar 头像(cravatar 镜像),加载失败回退首字母 | |
| 管理员删除 | 管理员登入后,每条消息悬停显示红色叉号,弹窗确认删除 | |
| 未读 badge | 面板关闭时有新消息在按钮上显示红色数字(最多 2),localStorage 持久化 | |
| 全屏模式 | 面板头部「⛦」按钮切换全屏 | |
| 滚动穿透 | 打开面板时页面背景不可滚动,关闭恢复 | |
| 安全限制 | 同 IP 5 秒禁重复、1 分钟 20条上限、同内容 10 秒禁重发;strip_tags 防 XSS | |
| 消息格式 | 16:30(今日)或 7/8 16:30(其他日期) |
使用方式
发送消息:点击右下角绿色气泡按钮 → 输入框中输入内容 → 回车或点击发送按钮
全屏切换:面板右上角「⛦」按钮
关闭面板:右上角「×」按钮,或再次点击浮动按钮
管理员删除:管理员登录后,鼠标悬停消息气泡出现红色 × 号,点击确认删除
后台配置
进入 Typecho 后台 → 控制台 → 插件 → ChatRoom → 设置:
| 配置项 | 默认值 | 说明 |
|---|---|---|
| 消息保留天数 | 30 | 自动清理超过天数的旧消息,填 0不清理 |
| 历史消息加载条数 | 200 | 打开面板时加载的历史消息数量 |
| 轮询间隔(秒) | 4 | 拉取新消息的间隔,建议 3-5 秒 |
管理面板
地址:https://你的域名/usr/plugins/ChatRoom/manage.php(需管理员登录)
功能:
- 消息列表(含昵称、邮箱、IP、时间)
- 批量删除消息
- IP 黑名单(拉黑 / 解封)
- 一键清理旧消息
技术信息
| 项目 | 说明 |
|---|---|
| API 地址 | /usr/plugins/ChatRoom/chat_api.php |
| 数据表 | typecho_chat_messages(消息)、typecho_chat_bans(黑名单) |
| 停用插件 | 数据表保留,消息不丢失 |
| 文件 | 仅3个文件(Plugin.php、chat_api.php、manage.php),复制到其他站即可用 |


就羡慕你这种技术大佬
都是交给AI了,方便的很
要是能添加表情功能就更好了
刚弄出来的么,后续慢慢会添加,目前输入法打出来的表情是可以的