聊天功能启用 — 只有登录才能发消息
聊天功能概述
聊天(Chat)是 Twitch 直播的核心互动方式——观众通过聊天框发送消息,实时与主播和其他观众互动。Twire 的聊天功能对登录状态有严格依赖:F-Droid 页面明确注明 "the chat is only available if you login to your account"——未登录时只能看聊天消息,不能发送。
未登录 vs 已登录的聊天差异
| 能力 | 未登录 | 已登录 |
|---|---|---|
| 查看聊天消息 | ✅ 正常显示 | ✅ 正常显示 |
| 发送聊天消息 | ❌ 输入框灰显 | ✅ 输入可用 |
| 使用表情(官方+第三方) | ❌ | ✅ |
| 查看个人历史消息 | ❌ | ✅ |
| 发送聊天命令(/me /w 等) | ❌ | ✅ |
| 频道专属表情 | ❌ | ✅ |
聊天界面位置
Twire 的聊天区域在直播播放器的下方(竖屏模式)或侧边(横屏模式),可以通过设置调整位置或隐藏。聊天消息实时从 Twitch WebSocket 通道推送,延迟通常在 1 到 3 秒内。
表情在聊天中的使用
登录后聊天输入框旁出现表情按钮——点击打开表情选择面板,包含官方 Twitch 表情、BTTV、FFZ、7TV 四套来源。点击任意表情自动插入输入框,提交后正常渲染。表情优先级和频道页面的表情渲染一致。
聊天命令支持
Twire 支持大部分 Twitch 聊天命令:/me(斜体发言)、/w 用户名(悄悄话)、/emotes(查看频道可用表情列表)、/host、/unhost 等(后者需要主播或管理员权限)。输入框直接输入斜杠开头的命令即可,Twire 会识别并发送到 Twitch 服务器。
聊天功能的性能考虑
热门直播的聊天频率可能达到每秒数十条甚至上百条,Twire 做了滚动窗口优化——只渲染屏幕可见区域的消息,离开视野的自动回收,避免长列表卡顿。同时支持聊天暂停功能——手指触碰聊天区域时暂停自动滚动,松手后恢复。