# Compreendendo o Processo de Coleta de Dados

O processo de coleta de dados de tempo em **RUFUS Race Manager (RRM)** garante o registro preciso e consistente do progresso dos participantes ao longo de uma corrida. Cada passagem (leitura de chip, entrada manual ou entrada flutuante) passa por uma série de verificações determinísticas. Essas verificações validam a passagem, atribuem o status correto e preservam a continuidade de voltas e pontos de controle, mesmo quando ocorrem erros ou casos incomuns.

Este artigo explica como as passagens são processadas, validadas e gerenciadas pelo software.

![](https://rufus-serverless-v1-shopmediabucket-yqa11v58uwom.s3.us-east-1.amazonaws.com/knowledge/assets/knowledge_asset_aed211c3dac14150a3a48b22b7ec2bec/imported.png)
_Processo de Coleta de Dados_

## Começando com um Passe

Cada passagem começa com três informações essenciais:

* **ID do dispositivo** → Identifica qual dispositivo ou entrada criou a aprovação (leitor, importação de arquivo, manual ou flutuante).
* **Número do chip/peitoral** → Identifica o participante.
* **Timestamp** → O horário exato do falecimento.

### Atribuição de Dispositivos e Identificação de Participantes

1. **Verificação do dispositivo** → O sistema verifica se o passe veio de um dispositivo atribuído ao evento.
* Se não for reconhecido, o passe é definido como **ÓRFÃO**.
2. **Atribuição do participante** → Se um chip/dorsal válido for reconhecido, o sistema verifica se o participante está atribuído a uma corrida.
* Se nenhuma corrida for atribuída, a passagem é definida como **CORRIDA ERRADA**.

### Plano de Corrida e Associação de Pontos de Controle

Cada participante pertence a um **plano de corrida** (a lista completa e ordenada de pontos de controle em sua corrida).
Cada dispositivo pertence a um **plano de dispositivo** (o subconjunto de pontos de controle pelos quais o dispositivo é responsável).

* Se o plano de corrida do participante e o ponto de controle do dispositivo não estiverem alinhados, a passagem será marcada como **CORRIDA ERRADA**.
* Se um ponto de controle estiver fechado, a passagem poderá ser **promovida** para o próximo ponto de controle aberto.

### Validação de tempo

Cada passagem é validada em relação ao horário de início da corrida:

* Se ocorrer antes do início da corrida → **TEMPO INVÁLIDO**.
* Caso contrário, a atribuição continua.

### Atribuição de Voltas e Pontos de Controle

* **Cálculo de volta** → A ultrapassagem é colocada na volta correta, preservando a continuidade da volta.
* **Análise de repetição** → Passagens muito próximas no tempo são verificadas em relação a:
* **Repetição de ponto de controle** → por exemplo, intervalo mínimo de 60 segundos no mesmo ponto de controle.
* **Repetição de dispositivo** → por exemplo, intervalo mínimo de 10 segundos no mesmo dispositivo.
* As passagens manuais e flutuantes são imunes ao ressalto do dispositivo, mas ainda respeitam o ressalto do ponto de verificação.

### Precedência de Status

Os status são avaliados em ordem rigorosa para garantir a consistência. Os status comuns incluem:

* **ORPHAN** → Chip/bib não reconhecido.
* **RAÇA ERRADA** → O participante não pertence à raça deste dispositivo.
* **DISPOSITIVO FECHADO / PONTO DE CONTROLE FECHADO** → O dispositivo ou ponto de controle não está aceitando passagens.
* **EOTR (Fim da Estrada)** → Não há mais pontos de controle restantes no plano.
* **BLOCKED_MISSING_START** → Finalizar tentativa sem um início válido (a menos que a política permita).
* **BOUNCED_BY_CHECKPOINT / BOUNCED_BY_DEVICE** → Passagem ignorada devido a janelas de rejeição.
* **VÁLIDO / PROMOVIDO** → Atribuído corretamente ou promovido para o próximo ponto de verificação válido.

Mesmo as passagens bloqueadas ou inválidas **têm o ID da volta correto**, para que possam ser revalidadas posteriormente pelo operador, se necessário.

### Início e Fim de Manuseio Sintético

* Se a primeira passagem de um participante não for no início, o sistema poderá criar um **início sintético** (dependendo da política da corrida).
* O tratamento de finalizações respeita as políticas:
* Se as finalizações forem permitidas sem um início, a passagem é aceita.
* Caso contrário, a finalização é bloqueada até que haja um início válido.
* Uma vez que uma conclusão válida é registrada, as passagens subsequentes no mesmo dispositivo são marcadas como **EOTR**.

### Passagens Flutuantes

As passagens flutuantes diferem das passagens manuais porque não estão vinculadas a nenhum ponto de verificação. Em vez disso, elas:

* Use o **plano de corrida completo** como escopo.
* Permita que o sistema infira automaticamente o próximo ponto de verificação esperado.
* Respeite todas as regras de tempo (início sintético, quique, bloqueio, promoção).

Isso os torna ideais para correções rápidas durante operações de corrida movimentadas.

### Classificação de Dança

Depois que todas as aprovações são validadas e os status atribuídos, ocorre o **processo de classificação** (“dança de classificação”):

* As passagens válidas são ordenadas no tempo.
* Os tempos de segmento e de corrida geral são calculados.
* As classificações dos participantes foram atualizadas.

### Resumo

O processo de coleta de dados no RRM é **determinístico, consistente e ciente de corrida**. Desde a verificação do dispositivo e atribuição do participante até a análise de ressalto e validação do ponto de verificação, cada etapa garante que:

* As mortes são classificadas corretamente.
* A continuidade das voltas e dos pontos de controle é preservada.
* Os operadores podem, posteriormente, revisar, validar ou anular as aprovações com confiança.
