Compilando o Telegram CLI no CentOS 8
Telegram-CLI, chamado “tg”, é um cliente do Telegram basado em linha de comandos. No momento deste post, só existiam as versões para sistemas Linux e Mac.
Ele será executado a partir de um terminal. Utilizaremos a versão deste aplicativo que se encontra hospedada no GitHub e que fora desenvolvida por vysheng. Todos os comandos mostrados nesse post devem ser executados com o usuários root.
Para iniciar o processo de instalação, vamos fazer os seguintes procedimentos:
Primeiro, é necessário habilitar o repositório “PowerTools”:
sed -i s/enabled=0/enabled=1/g /etc/yum.repos.d/CentOS-PowerTools.repo
Agora, precisamos instalar os pacotes necessários:
yum install -y jansson-devel lua-devel readline-devel libconfig-devel libevent-devel git gcc gcc-c++ openssl-devel make libgcrypt-devel
Agora, vamos baixar o TG no GIT:
cd /tmp && git clone --recursive https://github.com/vysheng/tg.git && cd tg
Agora, precisamos fazer alguns ajustes antes de preparar a compilação:
vim tgl/mtproto-utils.c
Comente as linhas 101 e 115, ou seja, deixe-as como mostrado abaixo:
Linha 101:
//assert (0); // As long as nobody ever uses this code, assume it is broken.
Linha 115:
//assert (0); // As long as nobody ever uses this code, assume it is broken.
Vamos preparar para compilar:
./configure --disable-openssl CFLAGS="-w"
Enfim, vamos compilar:
make
Agora, vamos colocar os arquivos nos lugares adequados:
mkdir /opt/telegram-cli && cp bin/telegram-cli tg-server.pub /opt/telegram-cli/ && ln -s /opt/telegram-cli/telegram-cli /usr/bin/
Vamos então fazer os últimos ajustes:
echo "alias telegram='telegram-cli --enable-msg-id --log-level 0 --log-level 1'" >> /root/.bashrc echo "alias telegram-cli='/usr/bin/telegram-cli --enable-msg-id --log-level 0 --log-level 1'" >> /root/.bashrc
Depois disso, o Telegram Cli já vai está instalado e pronto para ser usado.
Alguns comandos básicos:
Para facilitar a digitação dos comandos, “tg” oferece complementação de texto através da tecla “tab”.
> help > contact_list > dialog_list > msg usuario > chat_with_peer usuario (Obs: para terminar: /quit) > quit
Alguns comandos de controle/configuração:
> set msg_num 0 desativa a numeração das mensagens. > set msg_num 1 ativa a numeração das mensagens. > set log_level 0 desativa informação de quando se conectam/desconectam os contatos > set log_level 1 imprime informação as mensagens lidas > set log_level 2 imprime no terminal quando alguém está escrevendo no chat > set log_level 3 ativa informação de quando se conectam/desconectam os contatos
Opções (chaves) para iniciar o Telegram-CLI:
-c nome do arquivo de configuração -C desabilita cores -d modo daemon -D desabilitar a saída -E desabilita "auto accept" de chats encriptados -f durante a autorização busca todas as mensagens desde o registro -G alterar gid após iniciar -k especificar a localização da chave pública (possível múltiplas entradas) -l nível de log -L nome do arquivo de log -N mostrar o número das mensagens -p usar o perfil especificado -P <port> porta para ouvir para os comandos de entrada -R desabilitar a leitura do teclado do usuário -s lua script file -S <socket-name> criar unix socket -u especificar username (poderá ser solicitado durante a autorização) -U alterar uid após iniciar -v nível de detalhamento -verbosity- (0-ERROR 1-WARNIN 2-NOTICE 3-DEBUG) -W mostra a fila do dialog_list e espera por resposta antes de tratar a entrada do teclado
Exemplos de iniciação do Telegram-CLI:
telegram-cli telegram-cli -N -W telegram-cli -N -v 1 telegram-cli -W -k tg-server.pub telegram-cli -W -k telegram/tg/tg-server.pub
Backup de mensagens trocadas:
Uma das poucas características que falta no Telegram-CLI é a opção ‘exportação do bate-papo’. E isso parece ser uma facilidade que é importante existir na solução e que esperamos que ela seja disponibilizada no futuro próximo.
Mas vamos expor a seguir uma forma de contornar esta falta, mesmo com um “trabalhinho” a mais por conta do usuário. O comando exemplificado a seguir lista as mensagens anteriormente trocadas:
> history nome_contato 20
Entendendo:
– o comando busca as últimas 20 mensagens trocadas com o “nome_contato”;
– o primeiro argumento é o nome de seu amigo e o segundo argumento é o número de mensagens;
– o comando “history” do “tg” também funciona para grupos. Lembrar que para saber quais os grupos em que o usuário está participando basta usar o comando “dialog_list”.
Nota: sedimentando o entendimento, o comando “history” do “tg” não oferece uma maneira de exportar as mensagens trocadas para um arquivo texto. A maneira possível de fazer este “backup” é através de “copy-paste” a partir do terminal.
Esse artigo foi útil? Colabore com o nosso site para podermos continuar dando mais dicas como essa!
Formas de doação:
- Boleto / Cartão de crédito: https//bit.ly/AprendendoLinux
- Pix: [email protected]
- PicPay: @henrique_fagundes
- PayPal: [email protected]
- Bitcoin: bc1qtnn5z058htzy799dslwrpjcdpm0vuta3vrj28l
Favorecido: Luiz Henrique Marques Fagundes