Projeto:
https://github.com/vysheng/tg
Distribuição testadas: Debian 8& 9 / Instalação Limpa
(Tutorial de instalação aqui)
Instalando pacotes necessários
1
2
3
4
| # apt install git libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make build-essential zlib1g-dev
# cd /tmp/
# git clone --recursive https://github.com/vysheng/tg.git
# cd tg
|
Agora vamos compila-lo:
Debian 8
Debian 9 precisei desativar o openssl:
1
2
3
| # apt install libcrypto++-dev libgcrypt11-dev
# ./configure --disable-openssl
# make
|
1
2
3
4
| # mkdir /opt/telegram
# cp bin/telegram-cli /opt/telegram/
# cp tg-server.pub /opt/telegram/
# cd /opt/telegram/
|
Crie o arquivo telegram.config, utilizarei o editor vim, utilize o de sua preferência.
Adicione as seguintes linhas:
1
2
3
4
5
6
7
8
9
| default_profile = "rrprofile";
rrprofile = {
config_directory = "/opt/telegram/";
#test = false;
#msg_num = true;
#binlog_enabled = true;
log_level = 2;
};
|
Vamos inicia-lo! Para isso digite o seguinte comando:
1
| # ./telegram-cli --rsa-key tg-server.pub --config telegram.config
|
change_user_group: can't find the user telegramd to switch to
Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license'.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license' for details.
Telegram-cli uses libtgl version 2.1.0
Telegram-cli includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit. (http://www.openssl.org/)
[/opt/telegram//downloads] created
phone number: +555599999999 (Infome seu nº celular)
code ('CALL' for phone code): 12345 (Código via SMS)
password: (Se sua conto tiver senha)
>
Agora o telegram-cli está configurado para utilizar a sua conta.
O comando contact_list irá exibir seus contatos e o dialog_list suas
conversas. Execute user_info seguido do nome do contato conforme está na
sua agenda, se quiser enviar para um grupo, execute chat_info seguido
do nome do grupo. Observe que a tecla TAB pode ser utilizada para
autocompletar as palavras.
Nota: nos nomes de contatos e grupos, espaços são transformados em
underscore (_), cerquilhas (#) em arrobas (@) e contatos com mesmo nome
tem um #1 acrescentado ao nome.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| > contact_list
Nome Contato1
Nome Contato2
Nome Contato3
Nome Contato4
> user_info Rudimar_Remontti
User Rudimar Remontti @remontti (#123456789):
phone: 555599999999
offline (was online [2016/09/24 22:14:23])
>
> chat_info Tutorial
Chat Tutorial updated members
Chat Tutorial (id 987654321) members:
Fulano de tal invited by Rudimar Remontti at [2016/09/24 22:22:03]
Rudimar Remontti invited by user#0 at [1969/12/31 21:00:00]
>
> msg Rudimar_Remontti Teste
[23:29] Rudimar Remontti <<< Teste
> msg Rudimar_Remontti Mensagem via terminal ;)
[23:29] Rudimar Remontti <<< Mensagem via terminal ;)
>
> quit
|
Em
https://github.com/vysheng/tg você encontra uma lista com todos os comandos.
Vamos criar um arquivo chamado de
telegram-on para entrarmos automaticamente na nossa qual já está autorizada.
1
| # vim /opt/telegram/telegram-on
|
Adicione:
1
2
| #!/bin/bash
/opt/telegram/telegram-cli --rsa-key /opt/telegram/tg-server.pub --config /opt/telegram/telegram.config
|
Alteramos as permissões do arquivo para podermos executar, e criamos
uma atalho em /usr/bin/ para podermos rodar o comando a partir de
qualquer diretório.
1
2
| # chmod 777 /opt/telegram/telegram-on
# ln -s /opt/telegram/telegram-on /usr/bin/telegram-on
|
Agora basta dar o comando # telegram-on
Com base no que vimos podemos “ter ideias” exemplo um script para
enviar alguns alertas do nosso servidor, utilizo algo assim com o
Zabbix.
Vamos ao script.
Crie o arquivo /opt/telegram/telegram-cmd
1
| # vim /opt/telegram/telegram-cmd
|
Adicione:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| #!/bin/bash
MAIN_DIRECTORY="/opt/telegram/"
# Utilize: user#user_id ou chat#chat_id
# ./telegram-cmd user#123456789 "Minha mensagem"
# ./telegram-cmd chat#987654321 "Minha mensagem"
USER=$1
SUBJECT=$2
TEXT=$3
cd $MAIN_DIRECTORY
if [[ $? -ne 0 ]]; then
echo "Erro! Diretorio nao encontrado."
exit 1
fi
$MAIN_DIRECTORY/telegram-cli -k $MAIN_DIRECTORY/tg-server.pub -c $MAIN_DIRECTORY/telegram.config -WR -U rrprofile -e "msg $USER $SUBJECT" || exit 1
exit 0
|
Alteramos as permissão para execução, e vamos também criar um atalho em /usr/bin/ para executar o comando de qualquer diretório.
1
2
| # chmod 777 /opt/telegram/telegram-cmd
# ln -s /opt/telegram/telegram-cmd /usr/bin/telegram-cmd
|
Perceba que quando damos o comando user_info ou chat_info é exibido
um código de usuário ou de grupo, nestes casos será esse “ID” que
utilizaremos para escolher nosso destinatário.
> user_info Rudimar_Remontti
User Rudimar Remontti @remontti (#123456789):
phone: 555599999999
offline (was online [2016/09/24 22:14:23])
>
> chat_info Tutorial
Chat Tutorial updated members
Chat Tutorial (id 987654321) members:
Fulano de tal invited by Rudimar Remontti at [2016/09/24 22:22:03]
Rudimar Remontti invited by user#0 at [1969/12/31 21:00:00]
>
Agora que sabemos os ID de user ou chat vamos aos teste:
1
2
| # telegram-cmd user#123456789 "Minha mensagem"
# telegram-cmd chat#987654321 "Minha mensagem"
|
Fonte:
http://blog.remontti.com.br/1325
Nenhum comentário:
Postar um comentário