-
-
Save callmeloureiro/aee312dc9e2bffd59313988ec4a70928 to your computer and use it in GitHub Desktop.
/* | |
Hoje não deixaremos mais ninguém no vácuo no whatsapp | |
Para utilizar: | |
- Abra o web.whatsapp.com; | |
- Abra o console e cole o código que está no gist; | |
- Aguarde e verá uma mensagem sendo enviada a cada momento que alguém te enviar alguma mensagem. | |
Confira também como ser chato no whatsapp: https://gist.github.com/mathloureiro/4c74d60f051ed59650cc76d1da0d32da | |
e como ser chato no mensseger: https://gist.github.com/mathloureiro/d3f91d19cf148838217e42a0c6df5ed8 | |
*/ | |
// Declaração de variáveis utilizadas | |
// Mensagem que será enviada | |
var setTextContent = "Oi! Você está falando com o *LOU COMPUTADOR*, o computador do Loureiro! Infelizmente ele não se encontra no momento, mas assim que possível ele irá responder você :D"; | |
var i; | |
var group; | |
var conversas; | |
var lastMessage; | |
var eventVar; | |
var textbox; | |
function simulateMouseEvents(element, eventName) { | |
var mouseEvent = document.createEvent ('MouseEvents'); | |
mouseEvent.initEvent (eventName, true, true); | |
element.dispatchEvent (mouseEvent); | |
} | |
i = setInterval(() => { | |
conversas = document.querySelectorAll('.chat.unread'); | |
conversas.forEach((div) => { | |
group = div.querySelector('.chat-body .chat-secondary .chat-status span._2_LEW span.sender') | |
if (!group) { | |
simulateMouseEvents(div, 'mousedown') | |
setTimeout(() => { | |
lastMessage = document.querySelector('#main > .pane-body > .copyable-area > .pane-chat-msgs .msg:last-child > .message'); | |
if ( lastMessage.classList.contains('message-in') ) { | |
window.InputEvent = window.Event || window.InputEvent; | |
eventVar = new InputEvent('input', { | |
bubbles: true | |
}); | |
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'); | |
textbox.textContent = setTextContent; | |
textbox.dispatchEvent(eventVar); | |
document.querySelector("button.compose-btn-send").click(); | |
} | |
}, 1000); | |
} | |
}) | |
}, 2000); // 1000 = 1 segundo, tempo que será enviada cada mensagem. |
Foda demais, extremamente util
Kkkkkkkkkk
Tentei colocar em bookmarklets mas não deu muito certo, não to percebendo o erro.
javascript:(function(){()
var setTextContent = "Oi! Infelizmente ele não se encontra no momento, mas assim que possível ele irá responder você, Att. O Computador :D";
function simulateMouseEvents(element, eventName) {
var mouseEvent = document.createEvent ('MouseEvents');
mouseEvent.initEvent (eventName, true, true);
element.dispatchEvent (mouseEvent);
}
window.autoresponder = setInterval(() => {
var conversas = document.querySelectorAll('.chat.unread');
conversas.forEach((div) => {
var group = div.querySelector('.chat-body .chat-secondary .chat-status span._2_LEW span.sender')
var isMuted = div.querySelector('.chat-body .chat-secondary .chat-meta > span div > span[data-icon=muted]');
if (!group && !isMuted) {
simulateMouseEvents(div, 'mousedown')
setTimeout(() => {
var lastMessage = document.querySelector('#main > .pane-body > .copyable-area > .pane-chat-msgs .msg:last-child > .message');
if ( lastMessage.classList.contains('message-in') ) {
window.InputEvent = window.Event || window.InputEvent;
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');
textbox.textContent = setTextContent;
textbox.dispatchEvent(event);
document.querySelector("button.compose-btn-send").click();
}
}, 1000);
}
})
}, 2000); // 1000 = 1 segundo, tempo que será enviada cada mensagem.
})()
foda!
Customizei para o uso próprio, e vou compartilhar o code, so tome cuidado com o nome que esta usando para os seus contatos
kkkk
/*
Hoje não deixaremos mais ninguém no vácuo no whatsapp
Para utilizar:
- Abra o web.whatsapp.com;
- Abra o console e cole o código que está no gist;
- Aguarde e verá uma mensagem sendo enviada a cada momento que alguém te enviar alguma mensagem.
Confira também como ser chato no whatsapp: https://gist.github.com/mathloureiro/4c74d60f051ed59650cc76d1da0d32da
e como ser chato no mensseger: https://gist.github.com/mathloureiro/d3f91d19cf148838217e42a0c6df5ed8
*/
// Mensagem que será enviada de acordo com as etapas que você definiu
function setTextContent(contactName) {
if (working()) {
// mensagem para quando estiver workando
return "Oi " + contactName + "! Infelizmente ele não esta com o celular. Ele esta trabalhando e o chefe dele é muito chato e não deixa ele responder o zapzap em horário de serviço =( Mas assim que possível ele irá responder você :D";
} else if (sleeping()) {
// mensagem para quando estiver tirando uma soneca
return "Oi " + contactName + "! Infelizmente ele esta dormindo, mas assim que acordar ele irá te responder";
} else {
// mensagem para dar aquele migué mesmo
return "Oi " + contactName + "! Infelizmente ele não esta com o celular no momento, mas assim que possível ele irá responder você :D";
}
}
var i;
var chat = document.querySelectorAll('.chat.unread');
function day() {
var date = new Date();
return date.getDay();
}
function hour() {
var date = new Date();
return date.getHours();
}
// defina a hora do trabalho
function working() {
return day() > 0 && day() < 6 && hour() >= 9 && hour() <= 18;
}
// defina a hora do cochilo
function sleeping() {
return hour() >= 0 && hour() <= 8;
}
function simulateMouseEvents(element, eventName) {
var mouseEvent = document.createEvent ('MouseEvents');
mouseEvent.initEvent (eventName, true, true);
element.dispatchEvent (mouseEvent);
}
function parserContactName(contactName) {
if (!contactName.match(/[a-zA-Z]/g)) {
return '';
} else {
return contactName;
}
};
i = setInterval(() => {
chat.forEach((div) => {
var group = div.querySelector('.chat-body .chat-secondary .chat-status span._2_LEW span.sender')
var mutedChat = div.querySelector('.chat-body .chat-secondary .chat-meta > span div > span[data-icon=muted]');
if (!group && !mutedChat) {
simulateMouseEvents(div, 'mousedown')
setTimeout(() => {
var lastMessage = document.querySelector('#main > .pane-body > .copyable-area > .pane-chat-msgs .msg:last-child > .message');
if ( lastMessage.classList.contains('message-in') ) {
window.InputEvent = window.Event || window.InputEvent;
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');
var contactName = parserContactName(div.querySelector('.chat-body .chat-title .emojitext').innerText);
textbox.textContent = setTextContent(contactName);
textbox.dispatchEvent(event);
document.querySelector("button.compose-btn-send").click();
}
}, 1000);
}
})
}, 2000);
Quem quiser colocar o script em bookmarklet (link na barra de favoritos) pra automatizar o uso, pode fazer dessa maneira:
créditos ao @russiann
/* Script do @mathloureiro - modificado! */
javascript:(function(){
var setTextContent = "Oi! Você está falando com o *O COMPUTADOR*, o computador do Murilo! Infelizmente ele não se encontra no momento, mas assim que possível ele irá responder você :D";
function simulateMouseEvents(element, eventName) {
var mouseEvent = document.createEvent ('MouseEvents');
mouseEvent.initEvent (eventName, true, true);
element.dispatchEvent (mouseEvent);
}
window.zoeira = setInterval(function(){
var conversas = document.querySelectorAll('.chat.unread').forEach(function(div) {
var group = div.querySelector('.chat-body .chat-secondary .chat-status span._2_LEW span.sender')
var isMuted = div.querySelector('.chat-body .chat-secondary .chat-meta > span div > span[data-icon=muted]');
if (!group && !isMuted) {
simulateMouseEvents(div, 'mousedown')
setTimeout(() => {
var lastMessage = document.querySelector('#main > .pane-body > .copyable-area > .pane-chat-msgs .msg:last-child > .message');
if ( lastMessage.classList.contains('message-in') ) {
window.InputEvent = window.Event || window.InputEvent;
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');
textbox.textContent = setTextContent;
textbox.dispatchEvent(event);
document.querySelector("button.compose-btn-send").click();
}
}, 1000);
};
});
}, 10000);
})()
Para terminar a execução, só é necessário ter um outro bookmarklet assim:
javascript:(function(){[
clearInterval(window.zoeira);
console.log("Evento foi parado.");
})()
galera, o codigo acima esta apresentando um erro...
VM4100:19 Uncaught TypeError: Cannot read property 'classList' of null
at setTimeout (:19:22)
alguem tem esse codigo funcionando ?
estou desenvolvendo um aplicativo desktop para melhorar o uso, e queria apllicar o auto responder... para que possa ficar mais automatico ainda.
se quiserem participar comigo, segue meu email [email protected]
Muito bom, parabéns!