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: 4.899 ]
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
A forma correta de se instalar módulos Perl
adb - Como capturar em vídeo a tela de seu Android
Expressões Regulares - Entenda o que são Lookahead e Lookbehind
Sorteio de camisetas promovido pela GeekWorld
Liberte-se: Crie um Servidor Proxy na Nuvem para Acessar Conteúdos Bloqueados
Desligar servidores quando o nobreak entra na bateria e envio de aviso por e-mail
Simples sistema de backup com acesso remoto
Automatizando digitação de códigos 2FA no browser
Apresentando o Yad - "zenity melhorado"
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Conheça o Zashterminal, um terminal moderno com IA
DOOM Carniceiro: rode o Meatgrinder com uzdoom (Gentoo e Ubuntu)
Samba 4 AD-DC 2026: Como instalar e configurar um Active Directory (via APT-GET)
[Resolvido] Sumiço de redes e micro quedas no iwd/iwgtk (Realtek rtw88)
Como Configurar DNS Reverso (PTR) em Ambientes Linux e Microsoft
Linux MInt nao reconhece placa de som (1)
Midia de instalação LM-21.3 não inicializa (12)









