Skip to content

Titus-System/SyncDesk

Repository files navigation

SyncDesk

Sistema Estruturado para Atendimento, Triagem e Escalonamento de Demandas

Status do Projeto: Em Desenvolvimento

Desafio

Desenvolver uma aplicação mobile que centralize o atendimento ao cliente por meio de um sistema de chat estruturado que registre o histórico completo das interações e permita o acompanhamento do fluxo de atendimento, incluindo abertura, escalonamento e encerramento de chamados. A jornada deve iniciar com uma triagem automatizada. O objetivo geral é estruturar e otimizar o processo de atendimento, promovendo eficiência operacional, melhor experiência ao cliente e maior controle gerencial.

⚡ Desenvolvimento Ágil

O projeto está sendo seguindo o método Ágil SCRUM, dividindo o trabalho em sprints de 21 dias, com reuniões diáras, revisões e retrospectivas ao final.

📋 Backlog do Produto

Sprint User Story Status Prioridade
1 Como atendente, quero poder trocar mensagens com clientes em uma tela de chat, para conseguir compreender suas necessidades e auxiliar rapidamente. CONCLUÍDA ▲ Alta
1 Como solicitante, quero começar uma conversa rapidamente e ser guiado com algumas perguntas iniciais, para que meu problema seja identificado de forma ágil e descomplicada. CONCLUÍDA ▲ Alta
1 Como atendente, quero gerenciar o ciclo de vida dos chamados (atualizar status, encaminhar, atribuir e encerrar), para acompanhar e controlar as solicitações dos clientes. CONCLUÍDA ▲ Alta
2 Como gestor da aplicação, quero que o meu acesso possua ferramentas administrativas (como gestão de usuários e monitoramento de atendimentos), para ter controle sobre a operação do suporte. CONCLUÍDA ▲ Alta
2 Como usuário do sistema, quero poder realizar pesquisas no histórico de conversas, para localizar trocas de mensagens específicas de forma mais rápida. CONCLUÍDA ▼ Baixa
3 Como solicitante do atendimento, quero identificar atualizações nos meus chamados por meio de alertas na interface do aplicativo, para não precisar buscar novidades manualmente em cada tela. PENDENTE = Média
3 Como administrador, quero visualizar dashboards sobre o sistema e gráficos de auditoria, para embasar a tomada de decisões da empresa em dados reais e acompanhar o desempenho dos atendentes. PENDENTE = Média
3 Como solicitante do atendimento, quero poder deixar uma avaliação após o encerramento, para registrar meu nível de satisfação com o suporte prestado. PENDENTE ▼ Baixa

📅 Cronograma

Sprint Prazo Status Entrega
Kick Off 03/03/2026 Concluído -
Sprint 1 05/04/2026 Concluído video
Sprint 2 03/05/2026 Concluído -
Sprint 3 31/05/2026 Não iniciado -
Feira de Soluções 25/06/2026 Não iniciado -

Roadmap

roadmap

👥 Fatec São José dos Campos - Prof. Jessen Vidal

Cliente Período/Curso Professor P2 Contato Cliente
Larissa Souza e Rafael Monteiro - Empresa Pro4Tech 5º Análise e Desenvolvimento de Sistemas Gerson Penha https://www.linkedin.com/company/pro4tech/

Arquitetura

arquitetura

Abaixo você encontra os links para acessar o repositório de cada serviço.


O syncdesk-api, construído com FastAPI, é o núcleo central da aplicação, responsável por gerenciar toda a lógica de negócio, a comunicação entre os sistemas e a persistência dos dados.

Principais Responsabilidades:

  • Comunicação e Atendimento: Gerencia o fluxo de dados das conversas (envio, recebimento e recuperação do histórico de mensagens entre solicitantes e atendentes).
  • Autenticação e Controle de Acesso: Realiza o gerenciamento de usuários, incluindo login, cadastro e controle de permissões por perfil (solicitante, atendente e administrador).
  • Gestão de Chamados: Controla o ciclo de vida dos atendimentos (criação, atualização de status e regras de negócio associadas ao atendimento).
  • Processamento da Triagem Automatizada: Executa a lógica do atendimento inicial automatizado, avaliando respostas do usuário e definindo os próximos passos do fluxo.
  • Monitoramento e Métricas: Disponibiliza métricas e indicadores de desempenho da aplicação, permitindo acompanhamento da saúde do sistema.
  • Persistência de Dados: Gerencia o armazenamento de dados em diferentes bancos:
    • PostgreSQL para dados estruturados (usuários, chamados, permissões)
    • MongoDB para dados mais dinâmicos (mensagens e interações)

Tecnologias-chave: Python, FastAPI, SQLAlchemy, PostgreSQL, MongoDB, JWT, Docker, Pytest.


O syncdesk-mobile é a aplicação cliente desenvolvida em React Native, responsável por fornecer a interface para os solicitantes interagirem com o sistema de atendimento. Ele permite a abertura de atendimentos, comunicação em tempo real com o suporte e acompanhamento do histórico de conversas. A aplicação é construída sobre a arquitetura do Expo.

Principais Responsabilidades:

  • Interface do Usuário: Implementa as telas da aplicação mobile, com a garantia uma experiência fluida e responsiva para o solicitante.
  • Comunicação em Tempo Real: Integra o cliente WebSocket para envio e recebimento de mensagens em tempo real, permitindo interação contínua com atendentes e com o sistema automatizado.
  • Consumo de APIs e Histórico de Dados: Realiza chamadas REST para recuperação de dados como históricos de conversas, incluindo suporte à paginação.
  • Integração com Triagem Automatizada: Exibe e processa as mensagens automáticas iniciais, com suporte a respostas estruturadas (como botões de seleção), conforme definido pelos contratos de API.

Tecnologias-chave: React Native (Expo), TypeScript, TailWindCSS, WebSocket, Node, ESLint.


🖥️ SyncDesk Web

O syncdesk-web gerencia o frontend voltado para atendentes e administradores. Desenvolvido com React e Vite, ele oferece uma interface para gerenciamento de chamados, controle de usuários, dashboards de monitoramento e gestão operacional do sistema. As telas priorizam organização das informações para uso proveitoso em ambiente corporativo.

Principais Responsabilidades:

  • Interface moderna e responsiva: Construída com React e TailwindCSS, com foco em clareza visual, organização e produtividade no uso diário.
  • Controle de Acesso e Perfis: Suporta diferentes níveis de acesso, com funcionalidades específicas para atendentes e administradores.
  • Consumo de APIs e Sincronização de Dados: Utiliza React Query para gerenciamento de estado assíncrono e consumo eficiente das APIs REST.
  • Comunicação em Tempo Real: Integra WebSocket para envio e recebimento de mensagens, mantendo a interface sincronizada com o backend.
  • Manutenção de Chamados: Permite visualizar e controlar o status dos chamados ao longo do fluxo de atendimento.

Tecnologias-chave: React, JavaScript, Vite, React Query, WebSocket, TailwindCSS, Node, ESLint.


O syncdesk-library é uma biblioteca compartilhada responsável por padronizar a comunicação entre os frontends (mobile e web) e o backend da aplicação. Publicada como pacote npm, ela centraliza a lógica de integração, garantindo consistência no consumo das APIs.

Principais Responsabilidades:

  • Padronização da Integração com o Backend: Define uma camada única de comunicação para os frontends, para que mobile e web utilizem os mesmos contratos e estruturas de requisição.
  • Gerenciamento de Requisições HTTP: Utiliza Axios para estruturar chamadas REST, centralizando configurações como base URL, headers e interceptadores.
  • Configuração Dinâmica: Permite configuração dinâmica por meio de funções como configureLibrary, adaptando a biblioteca a diferentes ambientes.
  • Reutilização e Desacoplamento: Evita duplicação de lógica e código, promovendo manutenção simplificada e evolução independente das interfaces.

Tecnologias-chave: TypeScript, Axios, WebSocket, React, npm.

🛠️ Tecnologias Utilizadas

FastAPI Python MongoDB PostgreSQL Pytest Poetry Android Studio npm Git JavaScript JavaScript
socketio Node Typescript React Vite HTML Tailwind docker Github Figma Figma

🎓 Equipe

Membro Função Github Linkedin
Julia Pereira Product Owner
Wesley Gonçalves Scrum Master
Pedro Garcia Dev Team
Eduardo Ribeiro Dev Team
Maria Fernanda Diniz Dev Team
Angelina Borroni Dev Team
Pablo Rafael Dev Team
Matheus Germano Dev Team

About

No description, website, or topics provided.

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors