概念

Image

Chatwoot 是一个开源客户沟通平台,可帮助公司在其网站、Facebook 页面、Twitter、Whatsapp、SMS、电子邮件等上吸引客户。它是 Intercom、Zendesk、Salesforce Service Cloud 等的开源替代品。您的客户对话渠道,并从一个地方与您的客户交谈。

[图片](https://res.cloudinary.com/practicaldev/image/fetch/s--P-A4vVu6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://marketplace.whmcs .com/product/5530/images/screenshots/16568-892-2aa54410738288d1a9d695f641291745.png)

特点

Chatwoot 提供了在不同通信渠道中发生的对话的综合视图。

它支持以下对话渠道:

  • 网站:使用我们的实时聊天小部件与您的客户交谈,并使用我们的 SDK 来识别用户并提供上下文支持。

  • Facebook:连接您的 Facebook 页面并开始回复到您的页面的直接消息。

  • Twitter:连接您的 Twitter 个人资料并回复直接消息或提及您的推文。

  • Whatsapp:连接您的 Whatsapp 商业帐户并管理 Chatwoot 中的对话

  • SMS:连接您的 Twilio SMS 帐户并回复 Chatwoot 中的 SMS 查询

  • API 通道:使用我们的 API 通道构建自定义通信通道。

  • 电子邮件(测试版):将您的所有电子邮件查询转发到 Chatwoot 并在我们的集成仪表板中查看。

其他功能包括:

  • 多品牌收件箱:使用单个仪表板管理多个品牌或页面。

  • 私人笔记:可以在对话中使用私人笔记进行团队间交流。

  • 预设回复(已保存回复):通过添加常见问题的已保存回复来提高回复率。

  • 对话标签:使用对话标签创建自定义工作流程。

  • 自动分配:Chatwoot 根据其可用性和负载情况,智能地将工单分配给有权访问收件箱的代理。

  • 对话连续性:如果用户通过聊天小部件提供了电子邮件地址,Chatwoot 将以代理名称向客户发送电子邮件,以便用户可以通过电子邮件继续对话。

  • 多语言支持:Chatwoot 支持 10 多种语言。

  • 强大的 API 和 Webhook:使用 Chatwoot Webhook 和 API 扩展软件的功能。

  • 集成:Chatwoot 现在与 Slack 原生集成。无需登录仪表板即可在 Slack 中管理您的对话。


文档

详细文档可在www.chatwoot.com/help-center获得。

使用 docker-compose 安装

这是指南:使用 Docker 安装

您可以使用 docker-compose 安装它并更改环境变量。

这是 docker-compose.yml 和 .env 。

# docker-compose.yml
version: '3'

services:
  base: &base
    image: chatwoot/chatwoot:develop
    env_file: .env ## Change this file for customized env variables
    stdin_open: true # docker run -i
    tty: true        # docker run -t

  rails:
    <<: *base
    depends_on:
      - postgres
      - redis
    ports:
      - 3000:3000
    environment:
      - NODE_ENV=production
      - RAILS_ENV=production
    entrypoint: docker/entrypoints/rails.sh
    command: ['bundle', 'exec', 'rails', 's', '-p', '3000', '-b', '0.0.0.0']

  sidekiq:
    <<: *base
    depends_on:
      - postgres
      - redis
    environment:
      - NODE_ENV=production
      - RAILS_ENV=production
    command: ['bundle', 'exec', 'sidekiq', '-C', 'config/sidekiq.yml']

  postgres:
    image: postgres:12
    restart: always
    ports:
      - '5432:5432'
    volumes:
      - /data/postgres:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=chatwoot
      - POSTGRES_USER=postgres
      # Please provide your own password.
      - POSTGRES_PASSWORD=chatwoot

  redis:
    image: redis:alpine
    restart: always
    command: ["sh", "-c", "redis-server --requirepass \"$REDIS_PASSWORD\""]
    env_file: .env ## Change this file for customized env variables
    volumes:
      - /data/redis:/data
    ports:
      - '6379:6379'

进入全屏模式 退出全屏模式

# .env
# Used to verify the integrity of signed cookies. so ensure a secure value is set
SECRET_KEY_BASE=replace_with_lengthy_secure_hex

# Replace with the URL you are planning to use for your app
FRONTEND_URL=http://0.0.0.0:3000

# If the variable is set, all non-authenticated pages would fallback to the default locale.
# Whenever a new account is created, the default language will be DEFAULT_LOCALE instead of en
# DEFAULT_LOCALE=en

# If you plan to use CDN for your assets, set Asset CDN Host
ASSET_CDN_HOST=

# Force all access to the app over SSL, default is set to false
FORCE_SSL=false

# This lets you control new sign ups on your chatwoot installation
# true : default option, allows sign ups
# false : disables all the end points related to sign ups
# api_only: disables the UI for signup, but you can create sign ups via the account apis
ENABLE_ACCOUNT_SIGNUP=false

# Redis config
REDIS_URL=redis://redis:6379
# If you are using docker-compose, set this variable's value to be any string,
# which will be the password for the redis service running inside the docker-compose
# to make it secure
REDIS_PASSWORD=chatwoot
# Redis Sentinel can be used by passing list of sentinel host and ports e,g. sentinel_host1:port1,sentinel_host2:port2
REDIS_SENTINELS=
# Redis sentinel master name is required when using sentinel, default value is "mymaster".
# You can find list of master using "SENTINEL masters" command
REDIS_SENTINEL_MASTER_NAME=

# Postgres Database config variables
POSTGRES_HOST=postgres
POSTGRES_USERNAME=postgres
POSTGRES_PASSWORD=chatwoot
RAILS_ENV=development
RAILS_MAX_THREADS=5

# The email from which all outgoing emails are sent
# could user either  `email@yourdomain.com` or `BrandName <email@yourdomain.com>`
MAILER_SENDER_EMAIL=Chatwoot <accounts@chatwoot.com>


#SMTP domain key is set up for HELO checking
SMTP_DOMAIN=chatwoot.com
# the default value is set "mailhog" and is used by docker-compose for development environments,
# Set the value as "localhost" or your SMTP address in other environments
SMTP_ADDRESS=mailhog
SMTP_PORT=1025
SMTP_USERNAME=
SMTP_PASSWORD=
# plain,login,cram_md5
SMTP_AUTHENTICATION=
SMTP_ENABLE_STARTTLS_AUTO=true
# Can be: 'none', 'peer', 'client_once', 'fail_if_no_peer_cert', see http://api.rubyonrails.org/classes/ActionMailer/Base.html
SMTP_OPENSSL_VERIFY_MODE=peer

# Mail Incoming
# This is the domain set for the reply emails when conversation continuity is enabled
MAILER_INBOUND_EMAIL_DOMAIN=
# Set this to appropriate ingress channel with regards to incoming emails
# Possible values are :
# relay for Exim, Postfix, Qmail
# mailgun for Mailgun
# mandrill for Mandrill
# postmark for Postmark
# sendgrid for Sendgrid
RAILS_INBOUND_EMAIL_SERVICE=
# Use one of the following based on the email ingress service
# Ref: https://edgeguides.rubyonrails.org/action_mailbox_basics.html
RAILS_INBOUND_EMAIL_PASSWORD=
MAILGUN_INGRESS_SIGNING_KEY=
MANDRILL_INGRESS_API_KEY=

# Storage
ACTIVE_STORAGE_SERVICE=local

# Amazon S3
# documentation: https://www.chatwoot.com/docs/configuring-s3-bucket-as-cloud-storage
S3_BUCKET_NAME=
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_REGION=

# Sentry
SENTRY_DSN=

# Log settings
# Disable if you want to write logs to a file
RAILS_LOG_TO_STDOUT=true
LOG_LEVEL=info
LOG_SIZE=500

### This environment variables are only required if you are setting up social media channels

# Facebook
# documentation: https://www.chatwoot.com/docs/facebook-setup
FB_VERIFY_TOKEN=
FB_APP_SECRET=
FB_APP_ID=

# Twitter
# documentation: https://www.chatwoot.com/docs/twitter-app-setup
TWITTER_APP_ID=
TWITTER_CONSUMER_KEY=
TWITTER_CONSUMER_SECRET=
TWITTER_ENVIRONMENT=

#slack integration
SLACK_CLIENT_ID=
SLACK_CLIENT_SECRET=

### Change this env variable only if you are using a custom build mobile app
## Mobile app env variables
IOS_APP_ID=6C953F3RX2.com.chatwoot.app


### Smart App Banner
# https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/PromotingAppswithAppBanners/PromotingAppswithAppBanners.html
# You can find your app-id in https://itunesconnect.apple.com
#IOS_APP_IDENTIFIER=1495796682

## Push Notification
## generate a new key value here : https://d3v.one/vapid-key-generator/
# VAPID_PUBLIC_KEY=
# VAPID_PRIVATE_KEY=
#
# for mobile apps
# FCM_SERVER_KEY=

## Bot Customizations
USE_INBOX_AVATAR_FOR_BOT=true



## IP look up configuration
## ref https://github.com/alexreisner/geocoder/blob/master/README_API_GUIDE.md
## works only on accounts with ip look up feature enabled
# IP_LOOKUP_SERVICE=geoip2
# maxmindb api key to use geoip2 service
# IP_LOOKUP_API_KEY=

## Development Only Config
# if you want to use letter_opener for local emails
# LETTER_OPENER=true

进入全屏模式 退出全屏模式

通过运行迁移来准备数据库。

docker-compose run --rm rails bundle exec rails db:chatwoot_prepare

进入全屏模式 退出全屏模式

启动并运行服务。

docker-compose up -d

进入全屏模式 退出全屏模式

您的 Chatwoot 安装应该可以通过http://localhost:3000访问

链接

  • https://www.chatwoot.com/

  • https://github.com/chatwoot/chatwoot

[图片](https://res.cloudinary.com/practicaldev/image/fetch/s--gDTTisq2--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://user-images.githubusercontent .com/73185/107608463-129ff600-6c62-11eb-84f4-1dc1ebdbf1de.gif)

Logo

ModelScope旨在打造下一代开源的模型即服务共享平台,为泛AI开发者提供灵活、易用、低成本的一站式模型服务产品,让模型应用更简单!

更多推荐