INTELI JÚNIOR / ECOROTA

Guia de integração

Operação simulada de coleta. Construa a experiência dos moradores e coletores com HTTP ou eventos em tempo real.

A EcoRota simula uma operação de coleta de lixo. Os coletores se movimentam, seguem rotas e atendem às solicitações enviadas pela plataforma do seu grupo.

Onde encontrar os endpoints: todos os endpoints HTTP da API, seus campos e as opções de teste estão no Swagger — referência interativa. Este guia explica o funcionamento e as regras do case.

O que seu grupo vai desenvolver

Seu grupo constrói as interfaces, a API própria, o banco de dados e o acesso dos usuários. A EcoRota fornece os pontos de coleta, os coletores, as rotas e o andamento dos atendimentos.

A integração com a EcoRota deve passar pela API do grupo. Mantenha a credencial no backend: ela não deve aparecer nas telas, no código do navegador ou em repositórios públicos.

Um ambiente para cada equipe

Cada uma das duas equipes terá uma credencial exclusiva e dados independentes. As ações de uma equipe não alteram o ambiente da outra.

O cenário inicial tem 12 pontos de coleta, 2 circuitos habituais e 2 coletores automáticos. Há espaço para cadastrar mais 2 coletores, totalizando 4. Coletores indisponíveis também ocupam vagas.

Como os coletores funcionam

Tipo Comportamento
System São os coletores iniciais. Trabalham automaticamente e podem ser consultados, mas não alterados ou excluídos pelo grupo.
Custom São cadastrados pelo grupo e começam indisponíveis. A plataforma do grupo controla sua disponibilidade e confirma as coletas. O deslocamento é simulado pela EcoRota.

Ao deixar um coletor indisponível, ele para de receber novos trabalhos; os já atribuídos precisam ser resolvidos. Para excluir um custom, ele deve estar indisponível e sem trabalho atribuído ou em atendimento. A exclusão libera uma vaga e preserva o histórico.

Da solicitação à coleta

  1. Escolha um ponto entre os locais disponíveis no ambiente.
  2. Envie a solicitação. Ela fica pendente até ser atribuída a um coletor.
  3. Acompanhe o deslocamento. A EcoRota escolhe o coletor disponível e simula sua chegada.
  4. Conclua o atendimento. Coletores system concluem automaticamente. Para custom, sua plataforma deve confirmar a coleta depois da chegada.

Uma solicitação passa por pendente → atribuída → em atendimento → concluída. É possível cancelar antes do atendimento. Um custom permanece no ponto enquanto aguarda a confirmação.

Cadastrar um coletor não garante que ele receberá a próxima solicitação. Use uma referência única para cada pedido da sua plataforma: reenviar a mesma referência para o mesmo ponto recupera o pedido existente, sem duplicá-lo.

As solicitações entram na operação assim que são enviadas. Se sua plataforma oferecer agendamento, envie o pedido à EcoRota no horário previsto.

Como as rotas são escolhidas

Os coletores percorrem os circuitos habituais e podem fazer um desvio entre duas paradas para atender pontos adicionais. A prioridade é a maior demanda; após cinco minutos de espera na simulação, os pedidos mais antigos têm preferência. Nos empates, contam a antiguidade, a distância e o identificador do ponto.

O destino não muda durante um deslocamento. Pedidos que chegam depois da reserva de um atendimento aguardam outra visita. O tempo de espera depende da demanda e dos coletores disponíveis.

Os pontos e trajetos são fictícios e servem ao case; não representam instruções de navegação em ruas reais.

Acompanhar e testar

É possível desenvolver todo o projeto com consultas HTTP periódicas. Para começar, atualize a visão geral da operação a cada cinco segundos. Se uma posição ficar sem atualização, sinalize isso na interface.

O WebSocket é opcional para quem quiser receber atualizações em tempo real. Ele não substitui as ações da API. Os detalhes estão no guia de WebSocket.

O limite por ambiente é de 300 chamadas HTTP por minuto e 5 conexões WebSocket simultâneas. Em caso de limite atingido, aguarde antes de tentar novamente.

Se a EJ reiniciar o cenário, recarregue os dados do ambiente e atualize as associações da sua plataforma. Não reenvie pedidos antigos automaticamente.

Explore a API no Swagger

Abra o Swagger, clique em Authorize e informe a credencial da sua equipe. Comece consultando o ambiente e os pontos; depois experimente cadastrar um coletor e solicitar uma coleta. Todos os endpoints HTTP e seus detalhes estão lá.

Os testes alteram os dados do seu ambiente. Criar, editar, cancelar e excluir pelo Swagger tem o mesmo efeito que realizar essas ações pela sua plataforma. A autorização não é persistida no armazenamento local do navegador.