- README: o que a aplicação faz, migrations, BP_WEB_PORT e testes com
go.sum/package-lock.json (sem go mod tidy)
- ARQUITETURA: esquema real (00001 a 00003), rotas que faltavam, Compose
e imagens atuais, cadeia de proxies, retenção, situação dos testes,
decisões 30 a 33 e estado da implementação
- DEPLOY: cópia por tar, BP_WEB_PORT em todas as etapas e atualização
para a versão com exclusão de contas
- MANUAL: papéis do owner e navegação por ano nos feriados
- openapi.yaml: DELETE /accounts/{id} e regras da conta restrita
- Dockerfiles: comentários sobre go.sum e package-lock.json
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
430 lines
22 KiB
Markdown
430 lines
22 KiB
Markdown
# Manual do usuário — Bot de Pontos
|
||
|
||
O Bot de Pontos avisa pelo Telegram a hora de **voltar do almoço** e a hora de **encerrar a jornada**, com base nos pontos que você registra na PontoMais.
|
||
|
||
Este manual tem duas partes:
|
||
|
||
- **[Parte 1 — Usuário](#parte-1--usuário):** para quem recebe os lembretes pelo Telegram.
|
||
- **[Parte 2 — Administrador](#parte-2--administrador):** para quem aprova usuários e cuida do painel.
|
||
|
||
---
|
||
|
||
# Parte 1 — Usuário
|
||
|
||
## O que o bot faz
|
||
|
||
- Consulta os seus pontos do dia na PontoMais.
|
||
- Calcula a hora prevista de **voltar do almoço** e de **sair**.
|
||
- Envia um lembrete pelo Telegram **alguns minutos antes** de cada horário (5 minutos, por padrão).
|
||
- Responde na hora quando você pergunta (`/entrada2`, `/saida2`).
|
||
|
||
## O que o bot **não** faz
|
||
|
||
- **Não registra ponto.** Você continua batendo o ponto na PontoMais normalmente.
|
||
- Não substitui a conferência do seu espelho de ponto.
|
||
- Não controla hora extra (dias com mais de quatro pontos).
|
||
- Não funciona em grupos: só em conversa privada com o bot.
|
||
|
||
> O bot é uma ajuda para lembrar. A fonte oficial continua sendo a PontoMais.
|
||
|
||
## Primeiro acesso
|
||
|
||
1. **Abra o bot no Telegram.** Peça ao administrador o nome ou o link do bot e toque em **Iniciar**.
|
||
2. **Peça acesso:** envie `/cadastrar`. O administrador recebe um aviso.
|
||
3. **Credencial da PontoMais:** o administrador vai configurar o seu e-mail e senha de login da PontoMais no painel.
|
||
- Combine com ele uma forma segura de passar a senha.
|
||
- **Nunca envie sua senha para o bot no chat.** O bot nunca pede senha.
|
||
4. **Aguarde a aprovação.** Você recebe a mensagem *"Seu cadastro foi aprovado"*.
|
||
5. **Ligue os lembretes:** envie `/ativarponto`.
|
||
6. **Confira:** envie `/status`. Deve aparecer *Cadastro: ativo* e *Lembretes: ligados*.
|
||
|
||
Pronto. A partir do próximo dia útil você passa a receber os lembretes.
|
||
|
||
## Os lembretes
|
||
|
||
### Como os horários são calculados
|
||
|
||
A jornada padrão tem **quatro pontos**:
|
||
|
||
| Ponto | Significado |
|
||
| --- | --- |
|
||
| 1º | Entrada |
|
||
| 2º | Saída para o almoço |
|
||
| 3º | Volta do almoço |
|
||
| 4º | Saída do dia |
|
||
|
||
- **Volta do almoço** = hora em que você saiu para o almoço + tempo de almoço (60 min, por padrão).
|
||
- **Saída** = hora em que você voltou do almoço + o que falta da jornada (8h00, por padrão).
|
||
|
||
**Exemplo:** entrada às 08:00, saída para o almoço às 12:00 e volta às 13:00.
|
||
|
||
- Lembrete de volta do almoço: **12:55** (volta prevista às 13:00).
|
||
- Você trabalhou 4 horas antes do almoço; faltam 4 horas.
|
||
- Lembrete de saída: **16:55** (saída prevista às 17:00).
|
||
|
||
Tempo de almoço, jornada e antecedência podem ser diferentes para você. Quem ajusta é o administrador.
|
||
|
||
### Como as mensagens chegam
|
||
|
||
```text
|
||
⏰ Lembrete: seu retorno do almoço está previsto para 13:00.
|
||
⏰ Lembrete: sua saída está prevista para 17:00 (jornada de 8h00).
|
||
```
|
||
|
||
Se o lembrete chegar depois do horário previsto, a frase muda para *"estava previsto para 13:00"*. Assim você sabe a hora certa mesmo com atraso.
|
||
|
||
### Quando os lembretes **não** chegam (e está tudo certo)
|
||
|
||
- **Fim de semana e feriado:** não há consultas nem lembretes.
|
||
- **Você já bateu o ponto seguinte:** se voltou do almoço antes do lembrete, ele é cancelado. O mesmo vale para a saída.
|
||
- **Lembrete muito atrasado:** se o bot só percebe o seu ponto com mais de 10 minutos de atraso em relação ao horário do aviso, o lembrete não é enviado, porque já não ajudaria. Isso pode acontecer se você sair para o almoço muito cedo, antes do horário em que o bot começa a consultar.
|
||
- **Hora extra:** com mais de quatro pontos no dia, o bot para de acompanhar.
|
||
|
||
### Horário em que o bot acompanha seus pontos
|
||
|
||
O bot consulta a PontoMais apenas numa **janela do dia**: por padrão, **das 11:30 às 19:00**.
|
||
|
||
- Antes das 11:30 o bot ainda não olha seus pontos. Isso é normal: o primeiro lembrete do dia (volta do almoço) quase sempre é depois disso.
|
||
- Se o seu horário for bem diferente (por exemplo, almoço às 10:30), peça ao administrador uma **janela personalizada**.
|
||
|
||
### Dia sem pontos
|
||
|
||
Se às **11:30** e às **11:45** o bot não encontrar nenhum ponto seu, ele entende que você pode não estar trabalhando hoje (férias, folga, atestado). Ele passa a conferir **de hora em hora até as 15:00** e, se continuar sem pontos, encerra as consultas do dia.
|
||
|
||
Você **não** recebe mensagem quando isso acontece (para não receber aviso todo dia nas férias). Se começou a trabalhar mais tarde, faça uma destas coisas e as consultas voltam:
|
||
|
||
- envie `/ativarponto`; ou
|
||
- envie `/entrada2` ou `/saida2` depois de bater o ponto.
|
||
|
||
## Comandos
|
||
|
||
| Comando | Para que serve |
|
||
| --- | --- |
|
||
| `/cadastrar` | Pedir acesso ao bot (só na primeira vez) |
|
||
| `/status` | Ver a situação do seu cadastro, da credencial, dos lembretes e do dia |
|
||
| `/entrada2` | Perguntar agora a hora prevista de voltar do almoço (precisa de pelo menos 2 pontos no dia) |
|
||
| `/saida2` | Perguntar agora a hora prevista de saída (precisa de pelo menos 3 pontos no dia) |
|
||
| `/ativarponto` | Ligar os lembretes automáticos (ou religar depois de uma pausa) |
|
||
| `/desativarponto` | Pausar os lembretes. Os comandos `/entrada2` e `/saida2` continuam funcionando |
|
||
| `/ajuda` | Ver a lista de comandos |
|
||
|
||
### Entendendo o `/status`
|
||
|
||
```text
|
||
Cadastro: ativo
|
||
Credencial PontoMais: validada
|
||
Lembretes: ligados
|
||
Janela de consulta: 11:30 às 19:00 (global)
|
||
Hoje: acompanhando (2 ponto(s) até a última consulta)
|
||
```
|
||
|
||
| Linha | O que significa |
|
||
| --- | --- |
|
||
| **Cadastro** | *aguardando aprovação*, *ativo* ou *desativado* |
|
||
| **Credencial PontoMais** | se o administrador já configurou e validou seu login. Se houver falhas recentes, aparece quantas |
|
||
| **Lembretes** | *ligados* ou *pausados*, com o motivo da pausa |
|
||
| **Janela de consulta** | horário em que o bot acompanha seus pontos; *personalizada* se for só sua |
|
||
| **Hoje** | o que o bot sabe do seu dia: aguardando, acompanhando, sem pontos, jornada encerrada ou dia não útil |
|
||
|
||
## Situações comuns
|
||
|
||
### "Pausei os lembretes por falha na PontoMais"
|
||
|
||
O bot tentou consultar seus pontos **3 vezes seguidas** (cerca de 30 minutos) e não conseguiu, então pausou seus lembretes e avisou você e o administrador. O motivo mais comum é **senha da PontoMais alterada**.
|
||
|
||
1. Se você trocou a senha da PontoMais, informe a nova ao administrador (de forma segura, fora do bot).
|
||
2. Depois que ele atualizar, envie `/ativarponto`.
|
||
|
||
### "A PontoMais está fora do ar"
|
||
|
||
Quando a PontoMais cai para todo mundo, **ninguém é pausado**. O administrador é avisado, e os lembretes voltam ao normal quando ela responder de novo. Enquanto isso, pontos novos podem não ser percebidos a tempo.
|
||
|
||
### Esqueci de bater a entrada
|
||
|
||
O bot calcula pela **ordem** dos pontos. Se a entrada estiver faltando, ele vai confundir os horários (vai achar que a saída para o almoço é a entrada). Faça o ajuste do ponto na PontoMais. Enquanto isso, desconsidere os lembretes do dia.
|
||
|
||
### Vou sair antes / fazer hora extra
|
||
|
||
- **Saída antecipada:** se você bater o ponto de saída antes do lembrete, ele é cancelado. Se bater pouco antes do aviso, o lembrete ainda pode chegar.
|
||
- **Hora extra:** a partir do quinto ponto o bot para de acompanhar o dia.
|
||
|
||
### Férias ou afastamento longo
|
||
|
||
Envie `/desativarponto` antes de sair e `/ativarponto` na volta. Mesmo sem isso o bot para de consultar sozinho nos dias sem pontos, mas pausar evita consultas desnecessárias.
|
||
|
||
### Mudei de horário
|
||
|
||
Peça ao administrador para ajustar o tempo de almoço, a jornada, a antecedência dos avisos ou a janela de consulta.
|
||
|
||
## Privacidade e segurança
|
||
|
||
- Sua senha da PontoMais fica **cifrada** no servidor. Ninguém, nem o administrador, consegue vê-la depois de salva.
|
||
- O bot só **lê** seus pontos; ele não altera nada na PontoMais.
|
||
- O bot só responde em conversa privada.
|
||
- **Nunca** envie senhas no chat do bot. Ele nunca vai pedir.
|
||
|
||
## Perguntas frequentes
|
||
|
||
**O lembrete chegou depois da hora prevista. Por quê?**
|
||
O bot confere seus pontos de tempos em tempos (a cada 15 minutos na maior parte do dia) e envia os lembretes a cada 2 minutos. Pequenos atrasos são normais. Atrasos maiores acontecem quando a PontoMais demora a mostrar o ponto. Por isso a mensagem sempre traz o horário previsto.
|
||
|
||
**Não recebi nenhum lembrete hoje.**
|
||
Envie `/status` e confira, nesta ordem:
|
||
1. *Cadastro: ativo* e *Lembretes: ligados*.
|
||
2. Hoje é dia útil.
|
||
3. A linha *Hoje* não mostra "sem pontos".
|
||
4. Seus pontos aparecem na PontoMais na ordem certa.
|
||
|
||
Se tudo estiver certo, envie `/entrada2` para testar. Se der erro, procure o administrador.
|
||
|
||
**Posso usar o bot em um grupo?**
|
||
Não. Ele só responde em conversa privada.
|
||
|
||
---
|
||
|
||
# Parte 2 — Administrador
|
||
|
||
## Papéis
|
||
|
||
O painel tem três tipos de conta. Usuários comuns **não** acessam o painel; eles usam só o Telegram.
|
||
|
||
| Ação | Leitura | Admin | Owner |
|
||
| --- | :-: | :-: | :-: |
|
||
| Ver início, usuários, lembretes, auditoria, feriados e configurações | ✓ | ✓ | ✓ |
|
||
| Ativar/desativar usuários, ligar/pausar lembretes | | ✓ | ✓ |
|
||
| Alterar jornada, janela personalizada e credencial; testar a PontoMais | | ✓ | ✓ |
|
||
| Cancelar e reenviar lembretes | | ✓ | ✓ |
|
||
| Cadastrar feriados e alterar a janela global | | ✓ | ✓ |
|
||
| Definir o admin do bot | | ✓ | ✓ |
|
||
| Criar, desativar e excluir contas, mudar papéis e usuário ligado, redefinir senhas | | | ✓ |
|
||
|
||
### Conta de leitura ligada a um usuário
|
||
|
||
Uma conta de **leitura** pode ser ligada a um usuário do Telegram (feito pelo owner em **Contas**). Ela serve para a pessoa acompanhar e ajustar só o que é dela, sem ver nada dos outros.
|
||
|
||
| Tela | O que a conta ligada vê e faz |
|
||
| --- | --- |
|
||
| **Início** | Os avisos do sistema (PontoMais fora do ar, feriados indisponíveis) e os próprios lembretes de hoje, só para consulta (sem link). Não há contadores gerais. |
|
||
| **Usuários** | Abre direto na própria ficha. Pode salvar e testar a credencial PontoMais, alterar a jornada e a janela de consulta, e ligar ou pausar os próprios lembretes. Não ativa nem desativa o cadastro, não define admin do bot e não retoma consultas. |
|
||
| **Lembretes** | Só os próprios, somente leitura (não cancela nem reenvia). |
|
||
| **Feriados** | Somente visualização. |
|
||
| **Auditoria, Configurações e Contas** | Não aparecem no menu e a API recusa o acesso. |
|
||
|
||
Uma conta de leitura **sem** usuário ligado continua como antes: vê todas as telas, menos Contas, e não altera nada. Um usuário do Telegram só pode estar ligado a **uma** conta do painel.
|
||
|
||
Existe ainda o **admin do bot**: um usuário do Telegram que recebe os avisos operacionais e pode usar os comandos administrativos no Telegram. Ser admin do bot é independente de ter conta no painel.
|
||
|
||
## Acessar o painel
|
||
|
||
1. Abra o endereço do painel (ex.: `https://botpontos.lan`) num computador da rede.
|
||
2. Entre com seu usuário e senha.
|
||
|
||
Regras de acesso:
|
||
|
||
- A sessão dura no máximo **8 horas** e expira após **30 minutos** sem uso.
|
||
- **5 senhas erradas seguidas** bloqueiam a conta por **15 minutos**.
|
||
- Use **Sair** ao terminar, principalmente em computadores compartilhados.
|
||
- Esqueceu a senha? Peça a um owner para redefinir (em **Contas**).
|
||
|
||
## Início (dashboard)
|
||
|
||
Mostra o resumo do sistema:
|
||
|
||
- usuários **aguardando aprovação** e **ativos**;
|
||
- quantos estão com lembretes ligados;
|
||
- quantos foram **pausados por falha na PontoMais**;
|
||
- falhas de envio e lembretes expirados nos últimos 7 dias;
|
||
- quantos usuários têm **janela personalizada**;
|
||
- lembretes de hoje por situação.
|
||
|
||
Faixas de alerta aparecem no topo quando:
|
||
|
||
- **a PontoMais está fora do ar:** ninguém é pausado; aguarde;
|
||
- **os feriados do ano não foram obtidos:** segunda a sexta estão valendo como dias úteis. Cadastre os feriados manualmente se precisar.
|
||
|
||
Os números são clicáveis e levam à lista filtrada.
|
||
|
||
## Aprovar um novo usuário
|
||
|
||
Quando alguém envia `/cadastrar`, os admins do bot recebem um aviso no Telegram.
|
||
|
||
1. Em **Usuários**, filtre por *Aguardando aprovação* e abra o cadastro.
|
||
2. Em **Credencial PontoMais**, informe o e-mail e a senha de login da pessoa e clique em **Validar e salvar**.
|
||
- A credencial é testada na PontoMais **na hora**. Se for recusada, nada é gravado.
|
||
- Depois de salva, a senha nunca mais aparece.
|
||
3. Ajuste a **jornada**, se for diferente do padrão (ver adiante).
|
||
4. Clique em **Ativar**. A pessoa recebe a mensagem de aprovação.
|
||
5. Peça para ela enviar `/ativarponto`.
|
||
|
||
> Sem credencial validada **não é possível ativar**, nem pelo painel nem pelo Telegram.
|
||
|
||
## Tela do usuário
|
||
|
||
### Cadastro e lembretes
|
||
|
||
| Botão | O que faz |
|
||
| --- | --- |
|
||
| **Ativar** | Aprova o cadastro (exige credencial validada) |
|
||
| **Desativar** | Bloqueia o uso do bot e cancela os lembretes agendados. Não apaga o histórico |
|
||
| **Ligar lembretes** | Liga os lembretes, zera o contador de falhas e retoma o dia, se ele estava "sem pontos" |
|
||
| **Pausar lembretes** | Desliga os lembretes e cancela os agendados. O `/status` do usuário mostra "pausado pelo painel" |
|
||
| **Tornar admin do bot** / **Remover admin do bot** | Define quem recebe os avisos operacionais no Telegram |
|
||
| **Retomar consultas de hoje** | Aparece quando o dia está "sem pontos". Volta a consultar até o fim da janela |
|
||
|
||
A linha **Hoje** mostra a situação do dia, quantos pontos foram vistos na última consulta e quando será a próxima.
|
||
|
||
### Credencial PontoMais
|
||
|
||
Mostra o e-mail, se a credencial está validada, as **falhas seguidas** e o **último erro**. Para trocar a senha (por exemplo, depois que o usuário mudou a senha na PontoMais), preencha de novo e clique em **Validar e salvar**.
|
||
|
||
### Jornada e janela de consulta
|
||
|
||
| Campo | Padrão | Regras |
|
||
| --- | --- | --- |
|
||
| Almoço | 60 min | entre 15 e 180 |
|
||
| Jornada | 480 min (8h00) | entre 60 e 720 |
|
||
| Antecedência do retorno | 5 min | entre 0 e 60 |
|
||
| Antecedência da saída | 5 min | entre 0 e 60 |
|
||
| Fuso horário | `America/Sao_Paulo` | nome no formato IANA |
|
||
|
||
**Regra importante:** *almoço − antecedência do retorno* precisa ser **pelo menos 15 minutos**. Assim o bot tem tempo de perceber a saída para o almoço antes da hora do aviso. Exemplo: almoço de 20 min com antecedência de 5 min passa; almoço de 15 min com antecedência de 5 min é recusado.
|
||
|
||
**Janela personalizada:** desmarque **Usar padrão global** para definir uma janela só para este usuário. Os quatro horários aparecem preenchidos com os valores globais, como ponto de partida:
|
||
|
||
| Horário | Significado |
|
||
| --- | --- |
|
||
| Início da janela | primeira consulta do dia |
|
||
| Confirmação sem pontos | segunda verificação sem pontos; depois dela, o bot passa a conferir de hora em hora |
|
||
| Fim das reverificações | depois desse horário, um dia sem pontos é encerrado |
|
||
| Fim da janela | última consulta do dia |
|
||
|
||
Os horários precisam ser múltiplos de 15 minutos (:00, :15, :30, :45), estar nessa ordem e somar pelo menos 4 horas de janela. Para voltar à janela global, marque **Usar padrão global** e salve.
|
||
|
||
Mudanças valem a partir da próxima consulta. Lembretes que já foram agendados hoje não mudam.
|
||
|
||
### Pontos de hoje
|
||
|
||
- **Consultar PontoMais agora:** mostra os pontos do dia e os horários previstos. Não é automático, para não gastar consultas à toa.
|
||
- **Testar credencial:** igual, mas também marca a credencial como validada se der certo.
|
||
|
||
## Lembretes
|
||
|
||
Lista os lembretes com filtros por dia, situação, tipo e usuário.
|
||
|
||
| Situação | Significado |
|
||
| --- | --- |
|
||
| **agendado** | aguardando a hora do aviso |
|
||
| **enviando** | envio em andamento |
|
||
| **enviado** | entregue ao Telegram |
|
||
| **falhou** | o Telegram recusou ou não respondeu |
|
||
| **cancelado** | não será enviado (ponto seguinte já batido, pausa ou cancelamento manual) |
|
||
| **expirado** | o atraso passou de 10 min e o lembrete não foi enviado |
|
||
|
||
Ações:
|
||
|
||
- **Cancelar:** só para lembretes **agendados**.
|
||
- **Reenviar:** só para lembretes que **falharam** e são **do dia de hoje**.
|
||
- O usuário precisa estar ativo e com os lembretes ligados.
|
||
- Se o ponto seguinte já foi batido, o reenvio é bloqueado.
|
||
- Atenção: se a falha foi um travamento no meio do envio, a pessoa **pode já ter recebido** a mensagem original. O painel pergunta antes de reenviar.
|
||
|
||
Lembretes **expirados** não podem ser reenviados.
|
||
|
||
## Auditoria
|
||
|
||
Registra quem fez o quê e quando: cadastros, ativações, mudanças de jornada e de credencial, envios, falhas, pausas, logins, alterações de configuração etc.
|
||
|
||
Filtre por período, origem (Telegram, painel, worker, terminal), tipo de evento e resultado. A partir da tela de um usuário, o link **Auditoria deste usuário** já abre filtrado. Use **Mais antigos →** para paginar.
|
||
|
||
Senhas e tokens nunca aparecem na auditoria.
|
||
|
||
## Feriados
|
||
|
||
O bot não consulta nem envia lembretes em fins de semana e feriados. A tela mostra os feriados de um ano por vez; use os links do ano anterior e do seguinte (ex.: **← 2025 · 2027 →**) para navegar. A coluna **Origem** indica `manual` ou a API de onde o feriado veio.
|
||
|
||
- **Sincronizar (ano) com a feriadosapi.com:** baixa os feriados do ano para a cidade configurada (nacionais e municipais; hoje Belo Horizonte). O sistema também faz isso sozinho no primeiro uso de cada ano. Só entram datas que ainda não estão na lista, então feriados manuais nunca são alterados.
|
||
- **Cadastrar feriado manual:** para pontos facultativos, recessos ou feriados que a API não trouxe (por exemplo, o Carnaval).
|
||
- **Remover:** só feriados manuais.
|
||
|
||
Se a API de feriados estiver fora do ar e o ano ainda não tiver sido sincronizado, segunda a sexta contam como dias úteis. Os admins do bot recebem um aviso por dia enquanto isso durar.
|
||
|
||
## Configurações
|
||
|
||
### Janela de consulta global
|
||
|
||
Vale para todos os usuários **sem** janela personalizada. O padrão é 11:30 às 19:00, com confirmação às 11:45 e reverificações até as 15:00.
|
||
|
||
1. Ajuste os horários.
|
||
2. Clique em **Pré-visualizar efeito** para ver:
|
||
- quantas consultas por usuário a janela gera (máximo, dia típico e dia de folga);
|
||
- quantos usuários teriam tido lembretes atrasados nos últimos 30 dias;
|
||
- quantos usuários têm janela personalizada e não serão afetados.
|
||
3. Clique em **Salvar**.
|
||
|
||
### Parâmetros do servidor
|
||
|
||
Só leitura: intervalo das consultas, do envio, tolerância de atraso e limite de falhas. Alterá-los exige mudar a configuração do servidor.
|
||
|
||
## Contas do painel (owner)
|
||
|
||
- **Nova conta:** usuário (3 a 50 caracteres: letras, números, ponto, hífen ou sublinhado), senha (mínimo 12 caracteres) e papel.
|
||
- **Papel:** troque no seletor da linha.
|
||
- **Usuário do Telegram:** ao criar a conta, ou depois no seletor da linha, escolha o usuário ao qual ela fica ligada (ou "Sem usuário ligado" para remover o vínculo). Com papel de leitura, isso restringe a conta aos dados desse usuário (ver [Papéis](#papéis)). A troca vale na próxima requisição, sem precisar sair e entrar de novo.
|
||
- **Redefinir senha:** define uma nova senha e encerra as sessões abertas daquela conta.
|
||
- **Desativar / Reativar:** desativar encerra as sessões; ninguém pode desativar a própria conta.
|
||
- **Excluir:** apaga a conta de vez, com as sessões abertas. Não dá para desfazer; na auditoria, as ações antigas continuam mostrando o nome da conta. Ninguém pode excluir a própria conta. Para só bloquear o acesso, prefira **Desativar**.
|
||
|
||
Sempre precisa existir **pelo menos um owner ativo**. O sistema recusa rebaixar, desativar ou excluir o último.
|
||
|
||
## Comandos de admin no Telegram
|
||
|
||
Disponíveis para quem é **admin do bot** e está ativo:
|
||
|
||
| Comando | O que faz |
|
||
| --- | --- |
|
||
| `/usuarios` | Lista os usuários com ID, situação, credencial e lembretes |
|
||
| `/ativarusuario <id>` | Ativa (exige credencial validada, configurada no painel) |
|
||
| `/desativarusuario <id>` | Desativa e cancela os lembretes agendados |
|
||
|
||
Exemplo: `/ativarusuario 12`.
|
||
|
||
## Avisos que o admin do bot recebe
|
||
|
||
| Aviso | Quando | O que fazer |
|
||
| --- | --- | --- |
|
||
| Novo pedido de cadastro | alguém enviou `/cadastrar` | configurar a credencial e ativar |
|
||
| Usuário pausado após falhas | 3 falhas seguidas na PontoMais para aquela pessoa | testar a credencial no painel; se a senha mudou, atualizar; pedir `/ativarponto` |
|
||
| PontoMais fora do ar / voltou | todas as consultas de um ciclo falharam / alguma voltou a funcionar | aguardar; ninguém é pausado |
|
||
| Feriados não obtidos | API de feriados indisponível (no máximo 1 aviso por dia) | sincronizar depois ou cadastrar manualmente |
|
||
| Jornadas fora da regra | ao reiniciar o servidor, se alguma jornada ficou com almoço − antecedência menor que o intervalo das consultas | ajustar a jornada na tela do usuário |
|
||
|
||
Se não houver nenhum admin do bot ativo, esses avisos ficam só na auditoria. **Mantenha pelo menos um admin do bot.**
|
||
|
||
## Rotina sugerida
|
||
|
||
**Diariamente** (1 minuto, pela tela **Início**):
|
||
|
||
- alguém aguardando aprovação?
|
||
- alguém pausado por falha na PontoMais?
|
||
- falhas de envio hoje?
|
||
|
||
**Mensalmente:**
|
||
|
||
- revisar usuários desativados e contas do painel que não são mais usadas;
|
||
- conferir se os feriados do ano estão cadastrados;
|
||
- confirmar com o operador que os backups estão sendo copiados para fora do servidor.
|
||
|
||
## Problemas comuns (administrador)
|
||
|
||
| Situação | Causa provável | O que fazer |
|
||
| --- | --- | --- |
|
||
| "Configure e valide a credencial da PontoMais antes" ao ativar | credencial ausente ou nunca validada | salvar a credencial na tela do usuário |
|
||
| "A PontoMais recusou o e-mail ou a senha" | dados errados ou senha alterada | conferir com o usuário; a credencial anterior foi mantida |
|
||
| "Não foi possível validar na PontoMais agora" | PontoMais lenta ou fora do ar | tentar mais tarde |
|
||
| Usuário diz que não recebe lembretes | lembretes pausados, dia sem pontos, fora da janela ou feriado | tela do usuário (linha **Hoje**), **Lembretes** filtrado pela pessoa e **Auditoria** |
|
||
| Muitos lembretes **expirados** de um usuário | sai para o almoço antes do início da janela | dar a ele uma janela personalizada que comece mais cedo |
|
||
| Lembrete **falhou** | Telegram recusou (ex.: o usuário bloqueou o bot) ou instabilidade | pedir para o usuário desbloquear/abrir o bot; reenviar se for do dia |
|
||
| "Origem da requisição não permitida" ou "Token CSRF inválido" | painel acessado por endereço diferente do configurado, ou cookies antigos | usar sempre o endereço oficial; apagar os cookies do site e entrar de novo |
|
||
| Conta de leitura vê "Seu papel não permite esta ação" | tentou abrir tela ou ação fora do que a conta ligada permite | esperado; para ver tudo, usar uma conta sem vínculo ou admin |
|
||
| Conta bloqueada | 5 senhas erradas | aguardar 15 minutos ou pedir a um owner para redefinir a senha |
|