icon

Campfire

由 Basecamp 開發的網頁聊天應用,支援多房間、私訊、檔案附件和即時通知功能。

平台Zeabur
部署次數6
發布者leechenghsiu
部署次數6
發布者leechenghsiu
建立於2025-09-13
模板內的服務
service icon
標籤
ChatCommunicationTeam CollaborationReal-time

Campfire

Campfire 是由 Basecamp 開發的網頁聊天應用。這是一個自包含的應用程式,包含團隊溝通所需的所有功能。

功能特色

  • 多房間支援:建立和管理具有存取控制的聊天室
  • 私人訊息:一對一私人對話
  • 檔案附件:上傳和分享檔案,支援自動預覽
  • 搜尋功能:在所有對話中尋找訊息和檔案
  • 即時更新:無需重新整理頁面的即時聊天更新
  • @提及:使用 @使用者名稱 通知特定使用者
  • 網頁推送通知:即使應用程式關閉也能收到通知(可選)
  • API 支援:REST API 用於建立自訂整合和機器人

開始使用

  1. 部署完成後,使用提供的網域存取您的 Campfire 實例
  2. 建立您的第一個帳戶 - 第一個使用者將成為管理員
  3. 建立房間並邀請使用者開始聊天
  4. 可選擇使用 VAPID 金鑰設定網頁推送通知

網頁推送通知(可選)

網頁推送通知讓使用者即使在瀏覽器關閉時也能收到聊天通知。此功能完全可選 - Campfire 在沒有此功能的情況下也能完美運作。

選項 1:線上生成器(最簡單)

  1. 訪問 https://vapidkeys.com
  2. 點擊「Generate VAPID Keys」
  3. 複製公鑰和私鑰
  4. 在部署時將其貼到模板變數中

選項 2:命令列

# 全域安裝 web-push
npm install -g web-push

# 生成 VAPID 金鑰
web-push generate-vapid-keys

選項 3:部署後設定

如果您在沒有 VAPID 金鑰的情況下部署,可以稍後新增:

  1. 使用上述方法之一生成金鑰
  2. 前往您的 Zeabur 專案 → Campfire 服務 → 變數
  3. 新增 VAPID_PUBLIC_KEYVAPID_PRIVATE_KEY
  4. 重新啟動服務

SSL 設定

當您將網域綁定到服務時,SSL 會自動處理。應用程式將自動取得和續約 Let's Encrypt 憑證。

儲存

所有聊天資料、使用者資訊和檔案附件都會自動持久化在 /rails/storage 磁碟區中。這包括:

  • 使用者帳戶和身份驗證資料
  • 聊天訊息和房間設定
  • 上傳的檔案和附件
  • 應用程式設定和偏好

API 存取

Campfire 提供 REST API 用於建立整合和機器人。部署後,API 文件可在應用程式內取得。

架構

Campfire 是一個自包含的 Rails 應用程式,包含:

  • 網頁伺服器:處理 HTTP/HTTPS 請求
  • 資料庫:內建 SQLite 用於資料持久化
  • 背景作業:內建作業處理用於非同步任務
  • 檔案儲存:本地檔案系統用於附件
  • WebSocket:即時通訊支援

支援

如有關於 Campfire 的問題和疑問,請訪問官方儲存庫