Repolode
yshmarov

yshmarov/livechat

面向 Rails 应用的自托管在线客服组件,包含访客挂件与团队收件箱,会话数据存放在你自己的数据库中。

可替代:IntercomCrisp

Star
66
Fork
2
未关闭 Issue
2
最近提交
11天前

这是什么?

livechat 是一个 Ruby gem,可为 Rails 应用添加站内客服消息功能。访客通过聊天按钮在出问题的页面直接提问,团队则在挂载于 /livechat 的收件箱中回复。会话、消息和附件都保存在宿主应用自己的数据库里,不依赖第三方服务或外部脚本。

该 gem 支持 Rails 7.1 及以上版本,默认使用轮询获取实时更新,无需 Redis 或 Action Cable;也可以选择开启 Action Cable 推送。鉴权、访客识别和通知钩子都通过接收原始请求的 lambda 配置,因此可以搭配 Devise、Rails 8 内置认证或自定义会话使用。此外还支持双向邮件通知、基于 Active Storage 的文件附件,以及用于同源静态站点的嵌入脚本。

收件箱是共享的:有权限的客服可以查看并回复任何会话,该 gem 不提供租户隔离的收件箱。它也不包含 AI 机器人、预设回复,或 WhatsApp 等多渠道接入。

核心功能

  • 01聊天气泡挂件,访客可在任意页面打开,带未读角标并保留草稿。
  • 02团队收件箱支持待处理/已解决筛选、搜索,并记录每条回复的作者。
  • 03默认使用轮询实现实时更新,可选开启 Action Cable 推送。
  • 04支持双向邮件通知,按未读时段合并发送。
  • 05通过 Active Storage 发送文件附件,并由引擎鉴权后提供访问。
  • 06鉴权、访客身份和消息钩子均可配置,例如接入 Slack 通知。

适用场景

  • 在 SaaS 应用内直接解答账单、入门指引或账户相关问题。
  • 让客户门户用户就订单、发票或预订提问。
  • 在内部管理后台为非技术同事提供与技术支持团队直接沟通的入口。
  • 添加带上下文的客服按钮,自动将当前订单或记录填入聊天内容。

快速上手

  1. 1

    在 Gemfile 中添加 gem

  2. 2

    安装依赖

    bundle install
  3. 3

    运行安装生成器

    bin/rails generate livechat:install
  4. 4

    运行数据库迁移

    bin/rails db:migrate

使用前须知

  • 仅适用于 Ruby on Rails 应用(需要 Ruby >= 3.2,Rails >= 7.1 且 < 9)。
  • 收件箱默认仅在开发环境可用,部署前必须设置 authorize_agent。

收录于专题

标签

#ruby-on-rails#live-chat#customer-support#rails-engine#self-hosted#chat-widget#chatwoot-alternative#crisp-alternative#intercom-alternative#livechat

常见问题

livechat 是什么?
面向 Rails 应用的自托管在线客服组件,包含访客挂件与团队收件箱,会话数据存放在你自己的数据库中。 livechat 是一个 Ruby gem,可为 Rails 应用添加站内客服消息功能。访客通过聊天按钮在出问题的页面直接提问,团队则在挂载于 /livechat 的收件箱中回复。会话、消息和附件都保存在宿主应用自己的数据库里,不依赖第三方服务或外部脚本。
livechat 可以免费使用吗?用的什么许可证?
livechat 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
livechat 还在维护吗?
活跃维护中。livechat 最近一次提交是在 2026年10月27日。
livechat 适合用来做什么?
在 SaaS 应用内直接解答账单、入门指引或账户相关问题。 让客户门户用户就订单、发票或预订提问。 在内部管理后台为非技术同事提供与技术支持团队直接沟通的入口。 添加带上下文的客服按钮,自动将当前订单或记录填入聊天内容。
livechat 怎么安装和运行?
在 Gemfile 中添加 gem 安装依赖: bundle install 运行安装生成器: bin/rails generate livechat:install 运行数据库迁移: bin/rails db:migrate
在哪里获取 livechat?
源代码和安装说明在 GitHub 上:https://github.com/yshmarov/livechat

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目