ShellBot - Crie Bots para Telegram em Shell Script
ShellBot é uma API desenvolvida em Shell Script com o propósito de facilitar e agilizar a criação de bots na plataforma Telegram. O fato de ter sido desenvolvido na linguagem script nativa do ambiente Linux e que utiliza o interpretador de comandos BASH, oferece ao usuário uma portabilidade entre sistemas do mesmo dialeto.
[ Hits: 16.836 ]
Por: Juliano Santos em 12/07/2017
#!/bin/bash # Meu bot # Importando source ShellBot.sh
#!/bin/bash # Meu bot # Importando . ShellBot.sh
#!/bin/bash
# script: WelcomeBot.sh
#
# Para melhor compreensão foram utilizados parâmetros longos nas funções; Podendo
# ser substituídos pelos parâmetros curtos respectivos.
# Importando API
source ShellBot.sh
# Token do bot
bot_token='<TOKEN_AQUI>'
# Inicializando o bot
ShellBot.init --token "$bot_token"
ShellBot.username
# boas vindas
msg_bem_vindo()
{
local msg
# Texto da mensagem
msg="🆔 [@${message_new_chat_member_username[$id]:-null}]
"
msg+="🗣 Olá *${message_new_chat_member_first_name[$id]}*"'!!
'
msg+="Seja bem-vindo(a) ao *$message_chat_title*.
"
msg+='`Se precisar de ajuda ou informações sobre meus comandos, é só me chamar no privado.`'"[@$(ShellBot.username)]"
# Envia a mensagem de boas vindas.
ShellBot.sendMessage --chat_id ${message_chat_id[$id]}
--text "$(echo -e $msg)"
--parse_mode markdown
return 0
}
while :
do
# Obtem as atualizações
ShellBot.getUpdates --limit 100 --offset $(ShellBot.OffsetNext) --timeout 30
# Lista o índice das atualizações
for id in $(ShellBot.ListUpdates)
do
# Inicio thread
(
# Chama a função 'msg_bem_vindo' se o valor de 'message_new_chat_member_id' não for nulo.
[[ ${message_new_chat_member_id[$id]} ]] && msg_bem_vindo
# Verifica se a mensagem enviada pelo usuário é um comando válido.
case ${message_text[$id]} in
*)
:
# <BOT COMANDOS> ...
;;
esac
) & # Utilize a thread se deseja que o bot responda a várias requisições simultâneas.
done
done
#FIM
Script GitPratico para criar repositórios remotos sem logar no GitHub
Monitoramento de pops para provedores
Script com muitas utilidades para arquivos e pastas
Entendendo, criando e editando pacotes Debian (.deb)
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como implementar Raid (0, 1, 5, 6, 10 e 50)
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Como programar um sistema de controle para distribuições linux em c? (0)
Compartilhar ZEBRA ZD220 na rede (2)
Como programar um software que seja utilizado para coleta de dados em ... (1)









