This article will guide you to set up ChatPlus on your server by yourself. In this article, we assume that you are already familiar with  Linux server management and docker, know how to use terminal, access SSH with root/super users privileges and set up necessary software such as Git, Docker, NginX/Apache as Reverse proxy, etc.

If you aren't familiar with setting up ChatPlus server, please feel free to open ticket to request our support. You aren't charged any fee for the 1st setup.

Firstly, you will need to install and run following software on your Linux server:

Then, let's start setting up ChatPlus server

Configure subdomains for ChatPlus server

Set up Chat

wget -O - https://s3.amazonaws.com/phpfox-chatplus/shared/install-chatplus.sh | bash
# ChatPlus enviroment file.
# This file is used for package @foxsystem/chatplus

# Default chat port is 3000. 
# If using another custom port, please update PORT and ROOT_URL variables
PORT=3000
ROOT_URL=http://localhost:3000

# Database info for Chat. You can keep it as default
MONGO_URL=mongodb://mongo:27017/rocketchat
MONGO_OPLOG_URL=mongodb://mongo:27017/local

# MAIL_URL is for SMTP service to send notification emails when having new messages. 
# Its value should be in following format: smtp://[smtp_email]:[smtp_password]@[smtp_host]:[smtp_port]
MAIL_URL=smtp://smtp.email

# Admin user to access ChatPlus Dashboard. 
# Can configure to use same username and email address of the Admin user of phpFox site
ADMIN_USERNAME=chatplusadmin
ADMIN_PASSWORD=ChatPlus@123
ADMIN_EMAIL=admin@youdomain.com

# Info of phpFox license
PHPFOX_LICENSE_ID=c35gasf356t4rafdg45wafasgfwhjiyfsf36js
PHPFOX_LICENSE_KEY=4Wfv456ffeGFTEdAghrdgsg4fdgjets

# SECRET_CODE is the arbitrary string to verify connection between phpFox site and ChatPlus server. 
# This string needs to be configured on both phpFox site and ChatPlus
SECRET_CODE=C13#@#DSd

Start Chat server

docker-compose up -d

Connecting phpFox site

Set up folders and environments for built-in Call feature (Optional)

Be default, Chatplus server integrates with default VoIP server of Jitsi to make voice/video call . For better performance, please set up this separately with ChatPlus server. You can find the full guide here

Once, Jitsi VoIP server is installed completely. You will need to update some configuration to update Jitsi branding with your own branding. Please replace the phrases with square blanket [] by respective value


Enable Jitsi JWT 

To secure VoIP server to accept calls from your phpFox site only, you will need to enable Jitsi JWT as below:

ENABLE_AUTH=1

ENABLE_GUESTS=0

AUTH_TYPE=jwt

JWT_APP_ID=[your_app_id_configs_in_phpfox_chatplus_app_in_section_call_server]

JWT_APP_SECRET=[your_app_secret_configs_in_phpfox_chatplus_app_in_section_call_server]

Change default Jitsi web configs

Go to ~/.jitsi-meet-config/web and change these in file interface_config.js :

SHOW_BRAND_WATERMARK=false

SHOW_JITSI_WATERMARK=false

APP_NAME=[YOUR_APP_NAME]

NATIVE_APP_NAME=[YOUR_APP_NAME]

MOBILE_APP_PROMO= true

MOBILE_DOWNLOAD_LINK_ANDROID=[GOOGLE_PLAY_STORE_LINK_TO_DOWNLOAD_APP]

MOBILE_DOWNLOAD_LINK_IOS=[APPLE_STORE_LINK_TO_DOWNLOAD_APP]

ANDROID_APP_PACKAGE=[ANDROID_BUNDLE_ID]

APP_SCHEME=[IOS_BUNDLE_ID]

Update Jitsi web images/logos

docker exec -it container_id bin/bash
cd /usr/share/jitsi-meet/images