This project represents a platform that can be used by the companies to offer customer support to their clients. The goal of the project is to understand better the concepts behind front-end and back-end side of web programming and it's not for commercial use.
- php_pgsql
- Ratchet - PHP WebSockets ( for the chat's wss server)
- illuminate/database ( for communicating with the database)
- PHPMailer ( for sending confirmation links and information )
Note: The dependencies need to be installed using Composer.
For the project to run correctly you need to do the following steps:
-
Set the
DocumentRoot
of the apache server to the root of the repository -
Configure your apache server to run over ssl (see here).
-
Go to the project root and use the
composer update
command to install all of the dependencies andcomposer dump-autoload
to generate the autoload file. -
Enable the
php_pgsql
extension in case you didn't already do it. -
Enable the
mod_proxy
,mod_proxy_http
andmod_proxy_wstunnel
extensions (see here). -
Write the following lines in your apache configuration file, right after the
DocumentRoot
field :ProxyPass /wss ws://localhost:8081/ ProxyPassReverse /wss ws://localhost:8081/
-
Create a Postgresql database named
Resc
and import the schema from theresc_db.sql
file from the root of the project. -
Change the database credentials from
application/app/Database.php
andapplication/app/Mail.php
with your own credentials.
If you builded the application correctly, you should start the apache server and try to access https://localhost/
and the website should load. The default credentials for the login
section are :
username: admin
password: 1234
You can try out the chat by opening 2 tabs. In one tab you should connect with the previous credentials and go to the chat
section, and in the second tab you should click the try a demo
button. In the logged tab, you can click get a client
and you can start a conversation with yourself.
If you want to use the application like an endpoint, you can call the api
functions and connect to the wss
server with a separate app and connect it to your own CRM
( you can find more details, along with the documentation in the documentation.html
file from the root of the project or click here or you can watch the presentation video here).
- Ancutei Catalin-Iulian
- Condurache Andreea-Emanuela