Um bot de votação comentários

in blurt •  13 days ago 

Muitas vezes não tenho tempo de votar, então criei um bot para votar em comentários de uma postagem, como por exemplo a do ctime que queima as recompensas ou usa para alguma coisa boa.

Instale o BlurtJs: npm install @blurtfoundation/blurtjs --save

Para rodar salve como main.js e tenha instalado o nodejs e abra no terminal e digite node main.js, mas isso depois de editar seu Username para o seu e a Postingkey para sua senha.

O bot já está configurado para não votar em comentários com menos de 5 minutos, nem mais de 24 horas e também só vota no autor do post. Mas esse não fica monitorando cada bloco para votar, ele vota nos comentários e pronto.

var blurt = require("@blurtfoundation/blurtjs");

// Modifique se desejar votar em outro lugar
const url = 'https://blurt.blog/burnbot/@ctime/4xmzc1-burn-bot-has-been-shut-down';
const partes = url.split('/');

const username = 'bgo';
const postingkey = 'Password';

const converterParaMilissegundos = dataString => new Date(dataString).getTime();

const realizarVotacao = (wif, voter, author, permlink, weight) =>
    blurt.broadcast.vote(wif, voter, author, permlink, weight, (err, result) =>
        err ? console.error('Erro ao votar:', err) : console.log('Votação realizada com sucesso:', result));

const verificarVotante = (array, usuario) => array.some(item => item.voter === usuario);

const carregarComentarios = async (permlink1, autor1) => {
    blurt.api.getContentReplies(autor1, permlink1, async (err, result) => {
        if (err) return console.log(err);

        for (let i = result.length - 10; i < result.length; i++) {
            const post = result[i];
            if (post?.author === autor1) {
                if (verificarVotante(post.active_votes, 'bgo')) {
                    console.log(`${i} ja voltou em  ${JSON.stringify(post.permlink)}`);
                } else {
                    const postdata = converterParaMilissegundos(post.created) + 300000;
                    const agora = Date.now();

                    if (agora <= postdata) {
                        await delay(postdata - agora);
                        realizarVotacao(postingkey, username, autor1, post.permlink, 10000);
                        console.log(`${i} votando em ${JSON.stringify(post)}`);
                    } else if (agora - 85000000 >= postdata) {
                        console.log(`${i} Já passou as 24 horas`);
                    } else {
                        await delay(6000);
                        realizarVotacao(postingkey, username, autor1, post.permlink, 10000);
                        console.log(`${i} votando em ${JSON.stringify(post)}`);
                    }
                }
            }
        }
    });
};
carregarComentarios(partes[5], partes[4].replace('@', ''));

function delay(ms) {
    return new Promise(resolve => setTimeout(resolve, ms));
}
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE BLURT!