Digitalize facilmente códigos QR usando o Telegram!
Este repositório contém o código do @easyqrscanbot, um aplicativo Telegram Mini para escanear códigos QR.
Certifique-se de ter atualizado seu aplicativo Telegram, a versão mínima necessária da API Telegram é 6.9
.
@easyqrscanbot
no Telegram e inicie um chat privado.Scan QR
). O leitor de código QR é compatível com clientes de smartphones Telegram (Android e iOS) com versões da API do Telegram superiores a 6.9
. Infelizmente, a digitalização QR não está disponível nos clientes Web do Telegram. No entanto, você ainda pode acessar o Mini App no Web Client e revisar seu histórico de varredura.
Este projeto serve como uma ilustração da criação de um Mini App Telegram usando uma estrutura JavaScript moderna como Vue. Ele também demonstra como aproveitar os recursos mais recentes introduzidos na API do Telegram versão 6.9, incluindo:
O projeto representa uma aplicação Vue Front-End pura que utiliza o Telegram Cloud Storage Back-End para armazenar os scans adquiridos.
O processo de implantação é totalmente automatizado usando GitHub Actions. A cada envio para o branch master
, o Mini App é criado e implantado automaticamente no site GitHub Pages associado.
Acesse o Mini App aqui: Link do Mini App.
Para começar o projeto, siga estas etapas:
git clone https://github.com/MBoretto/easy-qr-scan-bot.git
cd easy-qr-scan-bot
npm install
npm run build
Para executar o linting de código, use o seguinte comando:
npm run lint
Boa codificação!
Antes de começar, certifique-se de ter um Telegram Bot. Se ainda não tiver um, você pode criar um usando este guia do Telegram.
Se você deseja implantar seu próprio Mini App, siga estas etapas:
Clone este repositório.
Habilite GitHub Pages para seu repositório acessando Settings
-> Pages
-> Selecione GitHub Actions
como fonte. O GitHub implantará automaticamente o Mini App nas páginas do GitHub associadas ao seu repositório.
Você também pode optar por implantar seu Mini App usando qualquer serviço de hospedagem que suporte https://
.
Esta é a maneira mais fácil de iniciar o Mini App, pois requer que você configure o Telegram Bot Menu apenas uma vez. Aqui estão as etapas para vincular o Mini App ao menu do bot:
/mybots
.Agora, você pode iniciar seu Mini App no menu Telegram Bot.
Este método é útil durante a fase de desenvolvimento, permitindo especificar URLs diferentes para o Mini App sem reconfigurar o menu do Telegram Bot. No entanto, requer um serviço de bot Telegram em execução. Siga estas etapas:
pip3 install python-telegram-bot --upgrade
config-example.py
em config.py
: mv config-example.py config.py
Edite o arquivo config.py
e insira seus links Telegram Bot Token TOKEN
(você pode obtê-lo em @BotFather), URL
e URL_TEST
.
Execute o script web-app-launcher.py
:
python3 web-app-launcher.py
/start
(para o link de produção) ou /dev
(para o link de teste) para o bot.Agora, você pode iniciar e testar seu Mini App usando o link de teste.
Telegram Cloud Storage é um banco de dados de valores-chave acessível a partir de qualquer cliente Telegram. Ele permite armazenar até 1024
chaves por usuário por bot, com cada valor tendo um limite de 4096
caracteres. Os dados são associados à conta do Telegram do usuário e persistem em todos os dispositivos. Depois de escanear um código QR, a string bruta é armazenada usando o carimbo de data/hora como chave.
O Mini App carrega o histórico completo de verificação na inicialização e o armazena localmente. As verificações subsequentes são armazenadas no Telegram Cloud Storage e localmente.
Os dados brutos recuperados são manipulados para extrair informações de acordo com o conteúdo do código QR. Tipos de conteúdo de código QR suportados:
Na guia histórico, expanda o código QR que deseja excluir e pressione o botão Bin
. Esta ação remove o código QR do Telegram Cloud Storage e do armazenamento local. O Mini App não armazena quaisquer outros dados e nenhum cookie é usado.
O leitor de código QR normalmente fecha após reconhecer um código. No entanto, você pode ativar o modo de varredura contínua navegando até a guia de configurações e pressionando o botão Continuous Scan
. Para desativar o modo de varredura contínua, pressione o botão novamente. Você pode sair do modo contínuo pressionando a seta superior esquerda.
Após a leitura bem-sucedida de um código QR, o dispositivo vibrará para fornecer feedback.
Na seção de configurações do Mini App, você encontrará ferramentas úteis para depuração e desenvolvimento:
Sync Cloud Storage
: sincroniza o armazenamento local do Mini App com o Telegram Cloud Storage, equivalente a abrir e fechar o Mini App.Enrich QR codes
: Aciona o cálculo de códigos QR brutos para todas as varreduras.Show debug
:O projeto faz uso do Vuetify, uma biblioteca Vue Components Framework.
O código é distribuído sob a licença MIT