carga
This commit is contained in:
183
README.md
183
README.md
@@ -1,2 +1,183 @@
|
||||
# codatendechat
|
||||
# Atendechat
|
||||
|
||||
O Atendechat é uma empresa distribuidora de White Label que possui uma solução de atendimentos via Whatsapp que aumenta a produtividade e organização das equipes
|
||||
|
||||
## 🚀 Começando
|
||||
|
||||
O repositório do Atendechat possui 3 pastas importantes:
|
||||
- backend
|
||||
- frontend
|
||||
- instalador
|
||||
|
||||
O backend é feito em Express e possui toda a estrutura organizada dentro dessa pasta para que seja aplicado no ambiente do cliente. A pasta de frontend contém todo o framework do React.js que gerencia toda a interação com o usuário do sistema.
|
||||
|
||||
A pasta de instalador dentro dessa repositório é uma cópia do instalador usado para que os clientes de sistemas possam fazer o clone dentro da pasta home de seus servidores e seguirem com a instalação automática de todas as dependências do projeto
|
||||
|
||||
Link para o repositório do instalador atualizado:
|
||||
- [Instalador](https://github.com/atendechat-org/instalador)
|
||||
|
||||
Consulte **[Implantação](#-implanta%C3%A7%C3%A3o)** para saber como implantar o projeto.
|
||||
|
||||
### 📋 Pré-requisitos
|
||||
|
||||
```
|
||||
- Node.js v20.x
|
||||
- Postgres (release)
|
||||
- Npm ( latest )
|
||||
- Docker (bionic stable)
|
||||
- Redis
|
||||
```
|
||||
|
||||
### 🔧 Instalação
|
||||
|
||||
Para iniciar a instalação do projeto é necessário ter todas as ferramentas de pré-requisitos disponíveis para uso
|
||||
|
||||
#### Redis
|
||||
```
|
||||
- su - root
|
||||
- docker run --name redis-${instancia_add} -p ${redis_port}:6379 --restart always --detach redis redis-server --requirepass ${root_password}
|
||||
```
|
||||
|
||||
#### Postgres
|
||||
```
|
||||
- sudo su - postgres
|
||||
- createdb ${instancia_add};
|
||||
- psql
|
||||
- CREATE USER ${instancia_add} SUPERUSER INHERIT CREATEDB CREATEROLE;
|
||||
- ALTER USER ${instancia_add} PASSWORD '${root_password}';
|
||||
```
|
||||
|
||||
#### .env backend
|
||||
```
|
||||
NODE_ENV=
|
||||
BACKEND_URL=${backend_url}
|
||||
FRONTEND_URL=${frontend_url}
|
||||
PROXY_PORT=443
|
||||
PORT=${backend_port}
|
||||
|
||||
DB_DIALECT=postgres
|
||||
DB_HOST=localhost
|
||||
DB_PORT=5432
|
||||
DB_USER=${instancia_add}
|
||||
DB_PASS=${mysql_root_password}
|
||||
DB_NAME=${instancia_add}
|
||||
|
||||
JWT_SECRET=${jwt_secret}
|
||||
JWT_REFRESH_SECRET=${jwt_refresh_secret}
|
||||
|
||||
REDIS_URI=redis://:${mysql_root_password}@127.0.0.1:${redis_port}
|
||||
REDIS_OPT_LIMITER_MAX=1
|
||||
REGIS_OPT_LIMITER_DURATION=3000
|
||||
|
||||
USER_LIMIT=${max_user}
|
||||
CONNECTIONS_LIMIT=${max_whats}
|
||||
CLOSED_SEND_BY_ME=true
|
||||
|
||||
GERENCIANET_SANDBOX=false
|
||||
GERENCIANET_CLIENT_ID=Client_Id_Gerencianet
|
||||
GERENCIANET_CLIENT_SECRET=Client_Secret_Gerencianet
|
||||
GERENCIANET_PIX_CERT=certificado-Gerencianet
|
||||
GERENCIANET_PIX_KEY=chave pix gerencianet
|
||||
|
||||
# EMAIL
|
||||
MAIL_HOST="smtp.gmail.com"
|
||||
MAIL_USER="seu@gmail.com"
|
||||
MAIL_PASS="SuaSenha"
|
||||
MAIL_FROM="seu@gmail.com"
|
||||
MAIL_PORT="465"
|
||||
|
||||
```
|
||||
|
||||
#### .env frontend
|
||||
```
|
||||
REACT_APP_BACKEND_URL=${backend_url}
|
||||
REACT_APP_HOURS_CLOSE_TICKETS_AUTO = 24
|
||||
```
|
||||
|
||||
#### Instalando dependências
|
||||
```
|
||||
cd backend/
|
||||
npm install --force
|
||||
cd frontend/
|
||||
npm install --force
|
||||
```
|
||||
|
||||
### Rodando localmente
|
||||
```
|
||||
cd backend/
|
||||
npm run watch
|
||||
npm start
|
||||
|
||||
cd frontend/
|
||||
npm start
|
||||
```
|
||||
|
||||
## ⚙️ Executando os testes
|
||||
|
||||
//
|
||||
|
||||
### 🔩 Analise os testes de ponta a ponta
|
||||
|
||||
//
|
||||
|
||||
## 📦 Implantação em produção
|
||||
|
||||
Para correta implantação é necessário realizar uma atualização do código fonte da aplicação e criar novamente os arquivos da pasta dist/
|
||||
|
||||
Atenção: é necessário acessar utilizando o usuário de deploy
|
||||
|
||||
```
|
||||
su - deploy
|
||||
```
|
||||
|
||||
```
|
||||
cd /home/deploy/${empresa_atualizar}
|
||||
pm2 stop ${empresa_atualizar}-frontend
|
||||
git pull
|
||||
cd /home/deploy/${empresa_atualizar}/frontend
|
||||
npm install
|
||||
rm -rf build
|
||||
npm run build
|
||||
pm2 start ${empresa_atualizar}-frontend
|
||||
pm2 save
|
||||
```
|
||||
|
||||
```
|
||||
cd /home/deploy/${empresa_atualizar}
|
||||
pm2 stop ${empresa_atualizar}-backend
|
||||
git pull
|
||||
cd /home/deploy/${empresa_atualizar}/backend
|
||||
npm install
|
||||
npm update -f
|
||||
npm install @types/fs-extra
|
||||
rm -rf dist
|
||||
npm run build
|
||||
npx sequelize db:migrate
|
||||
npx sequelize db:migrate
|
||||
npx sequelize db:seed
|
||||
pm2 start ${empresa_atualizar}-backend
|
||||
pm2 save
|
||||
```
|
||||
|
||||
## 🛠️ Construído com
|
||||
|
||||
|
||||
* [Express](https://expressjs.com/pt-br/) - O framework backend usado
|
||||
* [React](https://react.dev/) - Framework frontend usado
|
||||
* [NPM](https://www.npmjs.com/) - Gerenciador de dependências
|
||||
|
||||
## 🖇️ Colaborando
|
||||
|
||||
//
|
||||
|
||||
## 📌 Versão
|
||||
|
||||
Versão 1.0.0
|
||||
|
||||
## 📄 Licença
|
||||
|
||||
Este projeto está sob a licença
|
||||
|
||||
⌨️ com ❤️ por [Atendechat](https://atendechat.com) 😊
|
||||
|
||||
Todos os direitos reservados a https://atendechat.com
|
||||
|
||||
Reference in New Issue
Block a user