Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Create 2 different domains or subdomains for chat and call features, such as chat.yourdomain.com and voip.yourdomain.com
  • Configure these 2 domains/subdomains above with Reverse Proxy server (NginX or Apache) for Websocket.
    • Set up SSL for domain/subdomain
    • For Chat domain/subdomain, configure to proxy requests to port 3000 (default Port of Chatplus), such as http://127.0.0.1:3000 . You can use another port for Chatplus, but will need to update this port into docker-compose.yml file and chatplus.env file for Chat as described later.
    • For Call domain/subdomain, configure to proxy requests to port 8443 (default port of Call feature), such as https://127.0.0.1:8443 .  You can use another port for Call feature , but will need to update follow guide to configure this port into .env file for Call/VoIP server as described later.

Set up Chat

...

Code Block
# 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

  • Run docker-compose file to download/update docker images and run docker containers

...

Be default, Chatplus server integrates with default VoIP server of Jitsi to make voice/video call . For better performance, please setup 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:

  • Go to voip_folder/.env and change all of these
Code Block
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]
  • Delete folder ~/.jitsi-meet-config/ and restart VoIP docker again.
  • Also, you will need to enable JWT Authentication and configure same values of JWT_APP_ID and JWT_APP_SECRET in the AdminCP > Apps > ChatPlus > Settings page

Image Added

Change default Jitsi web configs

...

Code Block
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

  • Run "docker ps" to get the running container ID of jiti-web.
  • Access docker container of jiti-web service :

...

  • Replace any image/logs you want to:
    • watermark.png -> watermark image when user is in call/voice if flag SHOW_JITSI_WATERMARK is true
    • logo-deep-linking.png -> image at on top when deep linking page is showed (No mobile app installed) when flag MOBILE_APP_PROMO is true
    • jitsiLogo.png, JitsiLogo_square.png

How to enable Jitsi JWT 

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

  • Go to voip_folder/.env and change all of these
Code Block
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]
  • Delete folder ./jitsi_meet_config and restart VoIP docker again.
  • Also, you will need to enable JWT Authentication and configure same values of JWT_APP_ID and JWT_APP_SECRET in the AdminCP > Apps > ChatPlus > Settings page

Image Removed