Enviando mensagens de WhatsApp no Linux usando Shell Script e ADB
Neste tutorial, ensinamos como enviar mensagens de WhatsApp no Linux utilizando Shell Script e a ferramenta Android Debug Bridge (ADB). O tutorial abrange a instalação do ADB, como conectar o celular ao sistema operacional e o uso de um script Shell personalizado para interagir com o aplicativo WhatsApp. Além disso, explicamos a importância de mapear as coordenadas de toque e deslize de acordo com a resolução do dispositivo e como fazer isso usando um editor de imagens.
[ Hits: 5.216 ]
Por: Fábio Berbert de Paula em 24/03/2023 | Blog: https://fabio.automatizando.dev
#!/bin/bash
ADB="/usr/bin/adb" # Define o caminho do ADB
ID="192.168.0.22:5555" # ID do dispositivo
BUSCA=$1 # Nome do contato ou grupo
BUSCA=`echo ${BUSCA} | iconv -f UTF-8 -t ASCII//TRANSLIT` # Remove acentos
FRASE=${@:2} # Mensagem a ser enviada
FRASE=$(echo ${FRASE} | iconv -f UTF-8 -t ASCII//TRANSLIT) # Remove acentos
# Verifica se a tela está ligada:
if ! $ADB -s $ID shell dumpsys window | grep 'mDreamingLockscreen=true'
then
echo "tela ligada, abortar"
exit
fi
# Desbloqueia o celular
$ADB -s $ID shell input keyevent 26 # Pressiona o botão Power
sleep 0.5
$ADB -s $ID shell input swipe 200 2000 200 1500 100 # Desliza para desbloquear
sleep 0.5
$ADB -s $ID shell input text "000" # Digita a senha / PIN de desbloqueio da tela
sleep 0.5
# Fecha todas as janelas e abre o WhatsApp
$ADB -s $ID shell input keyevent KEYCODE_HOME # Pressiona o botão Home
sleep 1
$ADB -s $ID shell input tap 235 2250 # Toca o botão Janelas
sleep 1
$ADB -s $ID shell input tap 500 1800 # Fecha todas as janelas
sleep 1
$ADB -s $ID shell input tap 400 2050 # Abre o WhatsApp
sleep 3
$ADB -s $ID shell input tap 900 150 # Toca no ícone da lupa (pesquisa)
sleep 1
$ADB -s $ID shell input text "${BUSCA}" # Digita o nome do contato ou grupo na pesquisa
sleep 1.5
$ADB -s $ID shell input tap 475 350 # Toca no resultado da pesquisa
sleep 2
$ADB -s $ID shell input tap 525 2140 # Toca na caixa de texto para escrever a mensagem
echo "clicar na caixa de texto"
sleep 2
# Digita a mensagem palavra por palavra, adicionando espaços entre as palavras
for PALAVRA in $FRASE
do
$ADB -s $ID shell input text "${PALAVRA}"
$ADB -s $ID shell input keyevent KEYCODE_SPACE
done
sleep 3
# Pressiona o botão Enter para enviar a mensagem
$ADB -s $ID shell input keyevent KEYCODE_ENTER
sleep 2
# Fecha o aplicativo e bloqueia o celular
$ADB -s $ID shell input keyevent KEYCODE_HOME
sleep 1
$ADB -s $ID shell input keyevent KEYCODE_MENU
sleep 1
$ADB -s $ID shell input tap 500 1800 # Fecha todas as janelas
sleep 1
$ADB -s $ID shell input keyevent KEYCODE_HOME
sleep 1
$ADB -s $ID shell input keyevent 26 # Pressiona o botão Power
Firewire resiste, Bcachefs sai: destaques Linux do dia
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Como implementar uma assistente virtual no Linux
GitHub Copilot - Inteligência Artificial no NeoVim
Tasker - Como fazer um ANDROID falante
Relatório de conexão Wi-Fi com dados de usuários conectados nos POPs
Kit de scripts para backup (Full + Diferencial + Samba + Rede)
GNU Parallel: criando atividades em paralelo com shell script
Extracttext - como extrair texto de uma área selecionada da tela
cal2svg - brincando com shell script e arquivos vetoriais SVG
File Browser: Crie sua Nuvem Pessoal Privada
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
Assistindo IPTV no Linux com Fred TV e Lista Free TV
Impressora Tomate MDK-007 no Ubuntu (ou qualquer distro Linux)
Acelerando a compilação de pacotes no Arch Linux (AUR) usando todos os núcleos do processador
Teclado sem conseguir usar o acento crase (2)
Warsaw no Ubuntu/Kubuntu 26.04, alguiém conseguiu? [RESOLVIDO] (2)
Continuando meus tópicos anteriores (13)
As Assinaturas Perderam o Negrito e o Itálico? [RESOLVIDO] (1)









