Fluxo: alertar manutenção vencida

O cron localiza manutenções vencidas, monta mensagem e delega o envio ao script de WhatsApp.

Entrada: cron/alerta_manutencao.php Tabelas: manutencoes_protese, clientes, proteses, config (indiretamente pelo envio) Ator: Scheduler do servidor, sem interação direta do usuário final.

Cadeia de chamada

agendamento do servidor -> cron/alerta_manutencao.php
cron -> SELECT manutencoes_protese + clientes + proteses
cron -> include ../ajax/api-texto.php
cron -> UPDATE manutencoes_protese.alerta_manutencao_enviado = 1
Esta seção responde à pergunta central de manutenção: qual arquivo chama qual arquivo dentro deste fluxo.

Arquivos envolvidos

ArquivoPapel dentro do fluxo
cron/alerta_manutencao.phpScript principal de varredura e disparo.
ajax/api-texto.phpCanal real de envio da mensagem para WhatsApp.
sistema/conexao.phpFonte de conexão e variáveis globais do sistema.

Passo a passo

EtapaO que acontece
1. Disparo externoO servidor chama `cron/alerta_manutencao.php` via agendador do sistema operacional.
2. Boot do scriptO cron define timezone, habilita erros e carrega `sistema/conexao.php`.
3. Consulta principalO script busca manutenções com `proxima_manutencao < hoje` e cujo alerta ainda não foi enviado.
4. Montagem da mensagemPara cada registro, o cron monta um texto com nome do cliente, prótese e link para agendamento.
5. Delegação do envioO envio real acontece por `include($arquivo_envio)`, que aponta para `../ajax/api-texto.php`.
6. Marcação de estadoSe passou pelo fluxo, o cron atualiza `alerta_manutencao_enviado = 1` e grava `data_alerta_manutencao = NOW()`.
7. Resposta operacionalAo final, o script imprime total de alertas enviados e ignorados para facilitar diagnóstico manual.

Entradas

EntradaOrigem/uso
Data atual`date('Y-m-d')`
rota_agendamentoConfigurada no próprio cron
telefone do clienteLido da tabela `clientes`

Saídas

SaídaDestino
Mensagem externaEnviada via `api-texto.php`
BancoMarcação de alerta enviado
Texto consoleResumo do processamento

Pontos críticos de manutenção

  • O cron assume que `ajax/api-texto.php` existe e está operacional; se esse arquivo mudar, o alerta para de funcionar.
  • A marcação do banco ocorre no mesmo script de envio. Sem logs extras, depurar falha intermitente fica difícil.
  • O link de agendamento é composto a partir de variáveis de ambiente e rota fixa; configuração incorreta gera link quebrado na mensagem.

Abrir a camada linha por linha

Use estes links quando já souber qual arquivo do fluxo precisa ser alterado e quiser leitura minuciosa do código.