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.086 ]
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
Criando um painel de rede em PHP
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
Mais uma política "suja" de marketing da Microsoft
Monitoramento de pops para provedores
Piano Gripe 3 - Caracteres de controle
Como programar backup com rsync e cron de maneira rápida e simples
Extracttext - como extrair texto de uma área selecionada da tela
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Acessando página do Syncthing fora da máquina local
[Resolvido] Meu monitor suporta 100fps. Por que o máximo é 60fps nos jogos?
Jogando "Magic" gratuitamente no Linux
A falsa sensação de que entende a tal da palavra! (3)









