No description
| commands | ||
| database | ||
| events | ||
| .env_Example | ||
| .gitignore | ||
| index.js | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
Ponto GPT LLM Bot
Este é um bot para Discord desenvolvido para gerenciar pontos de trabalho, limpar mensagens e fornecer informações úteis para os usuários. Abaixo está uma descrição detalhada de todas as funcionalidades disponíveis.
Funcionalidades
1. Abrir Ponto
- Comando:
abrir - Descrição: Abre um ponto de trabalho para o usuário.
- Detalhes:
- Cria um tópico no canal para o ponto de trabalho.
- Adiciona o usuário ao tópico.
- Registra o início do ponto no arquivo
data.json. - Adiciona um botão para finalizar o ponto.
2. Finalizar Ponto
- Descrição: Finaliza um ponto de trabalho ativo.
- Detalhes:
- O botão
✅ Finalizar Pontoé usado para encerrar o ponto. - Registra o horário de término no arquivo
data.json. - Remove o ponto ativo do arquivo
activePontos.json. - Envia um log para o canal configurado em
LOG_CHANNEL_ID.
- O botão
3. Listar Pontos
- Comando:
listar - Descrição: Lista os pontos de trabalho e horas acumuladas.
- Detalhes:
- Mostra os pontos do usuário que executou o comando.
- Administradores podem listar pontos de outros usuários ou de todos os usuários usando
listar @idoulistar all. - Calcula as horas trabalhadas e os pontos acumulados.
- Apaga a mensagem do bot após 1 minuto.
4. Limpar Mensagens
- Comando:
clean <quantidade> - Descrição: Apaga uma quantidade especificada de mensagens no canal atual.
- Detalhes:
- Permite apagar até 1000 mensagens em lotes de 150.
- Apenas usuários com cargos definidos em
ALLOWED_ROLE_IDSpodem executar este comando. - Exclui mensagens com menos de 14 dias.
- Exibe uma mensagem de confirmação com o número de mensagens apagadas, que é removida após 10 segundos.
5. Ajuda
- Comando:
ajuda - Descrição: Lista todos os comandos disponíveis para o bot.
- Detalhes:
- Exclui comandos marcados como
hidden(como o comandoclean). - Apaga a mensagem de ajuda após 30 segundos.
- Exclui comandos marcados como
Configuração
Variáveis de Ambiente
TOKEN: Token do bot do Discord.PREFIX: Prefixo para os comandos do bot.LOG_CHANNEL_ID: ID do canal onde os logs de pontos finalizados serão enviados.ALLOWED_CHANNEL_ID: ID do canal onde comandos comolistarpodem ser executados.ALLOWED_ROLE_IDS: IDs dos cargos que têm permissão para executar comandos administrativos, separados por vírgulas.
Estrutura do Projeto
/home/madruga/Desktop/Cursor/Ponto GPT LLM
├── commands
│ ├── abrir.js
│ ├── clean.js
│ ├── help.js
│ ├── listpontos.js
├── database
│ ├── activePontos.json
│ ├── data.json
├── events
│ ├── ready.js
│ ├── activePontosManager.js
├── index.js
├── .env
Observações
- Mensagens Temporárias: Mensagens enviadas pelo bot (como confirmações ou respostas) são apagadas automaticamente após um período configurado.
- Erros Tratados: O bot lida com erros comuns, como mensagens ou interações inexistentes, para evitar falhas inesperadas.
- Formato de Datas: As datas são armazenadas no formato ISO 8601 (
YYYY-MM-DDTHH:mm:ss.sssZ) para garantir compatibilidade e precisão.
Como Executar
- Clone o repositório.
- Instale as dependências com
npm install. - Configure as variáveis de ambiente no arquivo
.env. - Inicie o bot com
node index.js.
Contribuição
Sinta-se à vontade para contribuir com melhorias ou novas funcionalidades. Abra uma issue ou envie um pull request.
Licença
Este projeto está licenciado sob a MIT License.