TimeSheet é um bot simples para controle de ponto. Foi utilizado o Node Telegram Bot API e o DynamoDB
Clone o repositório e instale as depências.
git clone https://github.com/efsfilho/timesheet.git
npm install
No arquivo /config/index.js estão os locais onde os logs serão salvos, arquivos de exportação enviado para os usuários, local do arquivo Excel usado como base
module.exports = {
logDir: './log/', // local dos logs
exportDir: './exports/', // local dos arquivos de exportação
exportModelFileName: './src/file.xlsx', // arquivo excel modelo para exportacao
e a região do serviço do DynamoDB(AWS Regions and EndPoints)
AWS_REGION: 'us-east-1'
};
É necessário configurar as credenciais do AWS-SDK(Recomendado) na plataforma onde rodará o bot ou manualmente nos arquivos /dynamodb/dynamo.js e /src/dynamo.js(Não recomendado)
aws.config.update({
accessKeyId: 'chave_de_acesso_aws',
secretAccessKey: 'chave_secreta_aws'
});
Após configurado o acesso ao DynamoDB, crie as tabelas executando:
npm run createdb
Para executar o bot você precisará criar um contato bot do Telegram. Para criar o contato envie o comando /newbot
para o Botfather
Digite o nome que será o contato/usuário do bot e em seguida você receberá o token de identificação do seu bot
Depois que gerar o token, configure o token na variável de ambiente TELEGRAM_TOKEN, execute o bot:
TELEGRAM_TOKEN=123456789:ABCDEF1234567890abcdef1234567890 node bot.js
Pesquise o contato do seu bot
exemplo: cartaobot
/c1
ou Começo de Jornada
: registro de comeco de jornada
/c2
ou Almoço
: registro de início de almoço
/c3
ou Volta do almoço
: registro de volta de almoço
/c4
ou Fim de jornada
: fim de jornada
/editar
ou Editar pontos
: exibe calendário para a alteração de pontos registrados
/atalho
: altera a lista de comandos para botões
/list
: lista os pontos do dia
/exp
: exporta folha(excel)
- Controle de usuários