Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Script para telegram #54

Open
emersoncarvalho-hotmart opened this issue Oct 11, 2023 · 1 comment
Open

Script para telegram #54

emersoncarvalho-hotmart opened this issue Oct 11, 2023 · 1 comment

Comments

@emersoncarvalho-hotmart

async function enviarScript(scriptText) {
const lines = scriptText.split(/[\n\t]+/).map((line) => line.trim()).filter((line) => line);

const textarea = document.querySelector('div.input-message-input[contenteditable="true"]');

if (!textarea) throw new Error("Não há uma conversa aberta");

for (const line of lines) {
console.log(line);

textarea.focus();
document.execCommand('insertText', false, line);

const inputEvent = new InputEvent('input', { bubbles: true });
textarea.dispatchEvent(inputEvent);

await new Promise((resolve) => setTimeout(resolve, 100));

const sendButton = document.querySelector('button.btn-send');
if (sendButton) {
  sendButton.click();
}

if (lines.indexOf(line) !== lines.length - 1) {
  await new Promise((resolve) => setTimeout(resolve, 250));
}

}

return lines.length;
}

enviarScript(`
SHREK

Written by

William Steig & Ted Elliott

GINGERBREAD MAN
God bless us, every one.

DONKEY
(as he's done singing and we fade to
black) Oh, that's funny. Oh. Oh. I can't
breathe. I can't breathe.

THE END
).then(e => console.log(Código finalizado, ${e} mensagens enviadas`)).catch(console.error)

@mfventura
Copy link

mfventura commented Nov 15, 2023

The following code worked on Telegram Web today:

async function enviarScript(scriptText) {
const lines = scriptText.split(/[\n\t]+/).map((line) => line.trim()).filter((line) => line);

const textarea = document.querySelector('#editable-message-text[contenteditable="true"]');

if (!textarea) throw new Error("Não há uma conversa aberta");

for (const line of lines) {
console.log(line);

textarea.focus();
document.execCommand('insertText', false, line);

const inputEvent = new InputEvent('input', { bubbles: true });
textarea.dispatchEvent(inputEvent);

await new Promise((resolve) => setTimeout(resolve, 100));

const sendButton = document.querySelector('button.send');
if (sendButton) {
sendButton.click();
}

if (lines.indexOf(line) !== lines.length - 1) {
await new Promise((resolve) => setTimeout(resolve, 250));
}

}

return lines.length;
}

enviarScript(`

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent pretium tortor ex, eget porta nibh venenatis nec. Aenean tincidunt massa eu justo vehicula, sagittis semper velit mollis. In rutrum, dui non sollicitudin elementum, massa augue aliquam velit, non gravida justo purus ut neque. Vestibulum at venenatis nisl. Praesent faucibus augue ac interdum ornare. Donec auctor ex id dolor fermentum bibendum. Nulla ac finibus lorem, eget tincidunt justo. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; In vitae magna porttitor, posuere arcu non, tempor dolor. Pellentesque vehicula felis at nisi laoreet hendrerit. Mauris facilisis et orci sed tincidunt. Sed faucibus commodo ipsum id imperdiet. Vivamus bibendum velit nec metus scelerisque, quis pharetra dui hendrerit.

Cras mollis pharetra lacus a vulputate. Morbi at interdum ante, eu porttitor magna. Nullam eros ipsum, mattis sit amet mi a, posuere sagittis augue. Maecenas metus nisi, dictum ut facilisis a, tincidunt in risus. Morbi sit amet congue nulla. In hac habitasse platea dictumst. Sed vulputate, arcu eget dignissim varius, ex ex viverra metus, eu tristique diam nunc sodales ante. Suspendisse quis aliquet eros. Praesent tincidunt tellus eget justo vulputate posuere.

Morbi sagittis massa justo, ac feugiat mauris sagittis eu. In hac habitasse platea dictumst. Pellentesque a mollis odio, tristique semper tortor. Fusce mattis ex non pharetra semper. Duis eleifend feugiat nisi, a molestie sapien interdum in. Nullam vulputate quam aliquam ante dictum varius. Vestibulum eget ipsum nibh. Ut quis mattis dui, a sodales turpis. Suspendisse eget massa eget nibh interdum tempus. Etiam odio mauris, interdum sed nisl at, blandit aliquam mauris. In eu arcu in ligula ornare porta. Phasellus facilisis condimentum malesuada.

Nulla at dui iaculis, ullamcorper risus a, tincidunt orci. Vestibulum eu quam elementum, posuere nisi sed, interdum dolor. Proin purus ipsum, varius id diam at, venenatis hendrerit justo. Vestibulum aliquam libero eros, quis fermentum mi imperdiet nec. Aliquam et enim rutrum, eleifend enim vitae, fermentum arcu. Vivamus ipsum sem, varius vitae arcu eget, tempor gravida dolor. Curabitur quis purus orci. Sed lacinia dapibus augue, a aliquam mi egestas ut. Pellentesque leo risus, egestas pellentesque posuere eu, faucibus at metus. Duis nec dignissim orci. Morbi in arcu sit amet mi ullamcorper porta. Duis mollis turpis vitae purus rhoncus, ut varius sem volutpat.

Vestibulum gravida turpis a justo tempor posuere. Cras rhoncus nulla lectus, facilisis accumsan eros semper sit amet. Proin iaculis risus tortor, et elementum arcu scelerisque vel. Aenean posuere, ligula eget pulvinar vestibulum, odio lorem rutrum libero, in elementum neque dui eu ex. Suspendisse ac lacus at nunc iaculis pretium. Cras gravida risus in nulla lacinia, vitae gravida nunc aliquet. Integer consectetur, mi eu suscipit dapibus, sem sem faucibus quam, nec hendrerit mauris nisl in sapien.
).then(e => console.log(Código finalizado, ${e} mensagens enviadas`)).catch(console.error)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants