-
-
Save callmeloureiro/4c74d60f051ed59650cc76d1da0d32da to your computer and use it in GitHub Desktop.
/* | |
Hoje iremos MUDAR a vida da pessoa que não te responde no whatsappp... | |
Que tal enviar mensagens pra ela até obter uma resposta?! | |
Sensacional não acha?! Mas, somos devs, correto?! Então vamos automatizar esse paranauê! | |
Para utilizar: | |
- Abra o web.whatsapp.com; | |
- Selecione a conversa que você quer; | |
- Abra o console e cole o código que está no gist; | |
- Aguarde e verá uma mensagem sendo enviada a cada segundo até obter uma mensagem de retorno ou atingir o limite de mensagens. | |
Use com responsabilidade e moderação... O intuito é arrancar um riso ;) | |
*/ | |
var counter = 0; | |
// Limite de mensagens | |
// Se quiser enviar sem limites da zueira (porque the zuera never ends), basta modificar o valor para 0. | |
var limit = 100; | |
// Mensagem que será enviada | |
var textToSend = "Me responde!"; | |
var i = setInterval(function() { | |
window.InputEvent = window.Event || window.InputEvent; | |
var d = new Date(); | |
var event = new InputEvent('input', { | |
bubbles: true | |
}); | |
var textbox = document.querySelector('#main > footer > div.block-compose > div.input-container > div.pluggable-input.pluggable-input-compose > div.pluggable-input-body.copyable-text.selectable-text'); | |
// O envio para quando a pessoa responde, caso queira remover, basta apagar essa condiço. | |
if ( counter > 0 ) { | |
var lastMessage = document.querySelector('#main > .pane-body > .copyable-area > .pane-chat-msgs .msg:last-child > .message'); | |
if ( lastMessage.classList.contains('message-in') ) { | |
textToSend = "Finalmente respondeu!"; | |
clearInterval(i); | |
} | |
} | |
textbox.textContent = textToSend; | |
textbox.dispatchEvent(event); | |
document.querySelector("button.compose-btn-send").click(); | |
counter++; | |
if (counter === limit && limit !== 0) | |
clearInterval(i); | |
console.log("Já enviei " + counter + ' mensagens.') | |
}, 1000); // 1000 = 1 segundo, tempo que será enviada cada mensagem. |
Só para se responderem o que você quer:
var counter = 0;
// Limite de mensagens
// Se quiser enviar sem limites da zueira (porque the zuera never ends), basta modificar o valor para 0.
var limit = 0;
// Mensagem que será enviada
var textToSend = 'Só paro se mandar '"você manda em mim"';
var textToCompare = "você manda em mim";
var i = setInterval(function() {
// O envio para quando a pessoa responde, caso queira remover, basta apagar essa condiço.
if ( counter > 0 ) {
var lastMessage = document.querySelector('#main ._3zJZ2 .copyable-area ._2nmDZ ._9tCEa .vW7d1:last-child ._3_7SH');
if ( lastMessage.classList.contains('message-in') ) {
var mensagemRetorno = document.querySelector('#main ._3zJZ2 .copyable-area ._2nmDZ ._9tCEa .vW7d1:last-child ._3_7SH .selectable-text').innerText;
if(mensagemRetorno == textToCompare){
textToSend = ":-)";
clearInterval(i);
}
}
}
var textbox = document.querySelector('._2S1VP');
textbox.textContent = textToSend;
var event = new InputEvent('input', {
bubbles: true
});
textbox.dispatchEvent(event);
document.querySelector("button._35EW6").click();
counter++;
if (counter === limit && limit !== 0)
clearInterval(i);
console.log("Já enviei " + counter + ' mensagens.')
}, 1000); // 1000 = 1 segundo, tempo que será enviada cada mensagem.
Funcionando!
// Limite = 0, manda até o cara dizer "a"
var limit = 100;
//mensagem a ser enviada
var textToSend = 'Fala um "a" pra você ver';
//Palavra chave para parar o envio
var textToCompare = "a";
// Resposta enviada ao acertar a pavra chave
var resposta = "Cara Esperto!";
var counter = 0;
var i = setInterval(function() {
if ( counter > 0 ) {
var lastMessage = document.querySelector('#main ._1_q7u .copyable-area ._1_keJ ._1ays2 .FTBzM:last-child ._1zGQT');
if ( lastMessage.classList.contains('message-in') ) {
var mensagemRetorno = document.querySelector('#main ._1_q7u .copyable-area ._1_keJ ._1ays2 .FTBzM:last-child ._1zGQT .-N6Gq .copyable-text ._12pGw .selectable-text').innerText;
if(mensagemRetorno == textToCompare){
textToSend = resposta;
clearInterval(i);
}
}
}
var textbox = document.querySelector('._3u328');
textbox.textContent = textToSend;
var event = new InputEvent('input', {
bubbles: true
});
textbox.dispatchEvent(event);
document.querySelector("button._3M-N-").click();
counter++;
if (counter === limit && limit !== 0){
clearInterval(i);
}
console.log("Já enviei " + counter + ' mensagens.')
}, 3000);// tempo entre cada mensagem em milisegundos
Galera, alguém já pensou em modificar para marcar alguém em um grupo? Eu o @encinecarlos estamos com uma missão pra "perturbar" um membro do nosso grupo e isso seria interessante.
Olhando o HTML, não faço a menor ideia de como implementar hehehe... se alguém tiver uma ideia de como fazer, manda aqui ou via DM no Twitter (_carvalho_leo) ou Telegram (@carvalho_leo). Valeuuuuuu
colo o código aonde?
Galera, alguém já pensou em modificar para marcar alguém em um grupo? Eu o @encinecarlos estamos com uma missão pra "perturbar" um membro do nosso grupo e isso seria interessante.
Olhando o HTML, não faço a menor ideia de como implementar hehehe... se alguém tiver uma ideia de como fazer, manda aqui ou via DM no Twitter (_carvalho_leo) ou Telegram (@carvalho_leo). Valeuuuuuu
lá para cima tem um exemplo de mention que fiz. funciona até em conversa 1x1
nenhum desses codigos funciona, fica dando Uncaught TypeError: Cannot set property 'textContent' of null
Nenhum destes códigos estão funcionando, alguém sabe o porque?
boa, funcionando em 10/05/2019