Chatwoot は何をしますか?
概要
Chatwootは、オープンソースのカスタマーサポートプラットフォームです。セルフホスト型のIntercom代替として、ライブチャット、共有受信箱、マルチチャンネル対応(ウェブサイト、メール、WhatsApp、Telegram、Twitter)、チャットボットを提供します。セルフホストなら無料で利用できます。
手順
ステップ1: Dockerデプロイ
# docker-compose.yml — セルフホスト型Chatwoot
services:
chatwoot:
image: chatwoot/chatwoot:latest
depends_on: [postgres, redis]
ports: ["3000:3000"]
environment:
RAILS_ENV: production
SECRET_KEY_BASE: your-secret-key-base
FRONTEND_URL: https://chat.example.com
POSTGRES_HOST: postgres
POSTGRES_USERNAME: chatwoot
POSTGRES_PASSWORD: chatwoot
REDIS_URL: redis://redis:6379
MAILER_SENDER_EMAIL: [email protected]
SMTP_ADDRESS: smtp.gmail.com
SMTP_PORT: 587
SMTP_USERNAME: [email protected]
SMTP_PASSWORD: app-password
command: bundle exec rails s -p 3000 -b 0.0.0.0
sidekiq:
image: chatwoot/chatwoot:latest
depends_on: [postgres, redis]
environment: *chatwoot-env
command: bundle exec sidekiq
postgres:
image: postgres:15
environment:
POSTGRES_DB: chatwoot
POSTGRES_USER: chatwoot
POSTGRES_PASSWORD: chatwoot
volumes: [pgdata:/var/lib/postgresql/data]
redis:
image: redis:7-alpine
volumes: [redisdata:/data]
volumes:
pgdata:
redisdata:
ステップ2: チャットウィジェットの追加
<!-- ウェブサイトに追加 -->
<script>
(function(d,t) {
var BASE_URL="https://chat.example.com";
var g=d.createElement(t),s=d.getElementsByTagName(t)[0];
g.src=BASE_URL+"/packs/js/sdk.js";
g.defer = true;
g.async = true;
s.parentNode.insertBefore(g,s);
g.onload=function(){
window.chatwootSDK.run({
websiteToken: 'YOUR_WEBSITE_TOKEN',
baseUrl: BASE_URL
})
}
})(document,"script");
</script>
ステップ3: API連携
// lib/chatwoot.ts — API経由で連絡先と会話を作成
const CHATWOOT_URL = 'https://chat.example.com'
const CHATWOOT_TOKEN = process.env.CHATWOOT_API_TOKEN!
// ユーザー登録時に連絡先を作成
await fetch(`${CHATWOOT_URL}/api/v1/accounts/1/contacts`, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
api_access_token: CHATWOOT_TOKEN,
},
body: JSON.stringify({
name: 'John Doe',
email: '[email protected]',
custom_attributes: { plan: 'pro', mrr: 49 },
}),
})
ガイドライン
- セルフホスト版:完全無料、エージェント数および会話数に制限なし。
- クラウド版:エージェントあたり月額$19から。
- WhatsApp Business、Telegram、Twitter、メール、ウェブサイトチャンネルを1つの受信箱でサポート。
- Webhookを使用して、会話をCRMやチケットシステムと同期可能。