Updated curation trail and queue voting + upvote server on Steemauto

Words
122
Reading
1 min
Listen
Play
9y

steemauto.png


Updated some codes on back-end of steemauto.com
By these changes, curation trail should work fine. You don't need to understand that codes.

Commits:
Number 1: Streaming blocks and upvoting curation trail.
Some codes:

...
...
var users=[];//fanbase
var users1=[];//trailers
var users2=[];//commentupvote
var server = https://private_server; //upvoting server
con.query('SELECT `user` FROM `trailers` WHERE `followers`>0', function (error, results, fields) { //Selecting Trailers
    for(i in results){
        users1.push(results[i].user);
    }
});
// Updating Users List Every 10 Minutes
setInterval(function(){
    try{
        con.query('SELECT `user` FROM `trailers` WHERE `followers`>0', function (error, results, fields) {
            var busers=[];
            for(i in results){
                busers.push(results[i].user);
            }
            users1 = busers;
        });
    }
    catch(e){
        console.log('error in updating users'+e);
    }
},600000);
...
...

Number 2: Checking upvote queue and upvoting after x minutes.
Some codes:

...
...
//streaming block numbers
steem.api.streamBlockNumber(function (err1, newestblock) {
    console.log(newestblock);
});
// Upvote function - included 0 seconds delay!
var delay = 0;
function upvote(voter,author,permlink,weight,type){
    var xmlhttp = new XMLHttpRequest();
    xmlhttp.onreadystatechange = function() {
        if (this.readyState == 4 && this.status == 200) {
            if(this.responseText == 1){
                console.log('up done');
            }else if(this.responseText == 0){
                console.log('err in up.');
            }
        }
    };
    xmlhttp.open("GET", server+'/?wif='+wifkey+'&voter='+voter+'&author='+author+'&permlink='+permlink+'&weight='+weight , true);
    xmlhttp.send();
    return 1;
}
...
...

Number 3: Upvote server which is running on a private node server.
Some codes:

...
...
if(wif && voter && author && permlink && weight){
        steem.api.getContentAsync(author, permlink, function(erz, rez) { //checking if post already upvoted or not
            if(!erz && rez){
                var voted = 0;
                for(j in rez['active_votes']){
                    if(rez['active_votes'][j].voter == voter){
                        voted = 1;
                        break;
                    }
                }
                if(voted == 0){
                    steem.broadcast.vote(wif,voter,author,permlink,weight,function(downerr, result){ //broadcasting upvote
                        if(!downerr && result){
                            res.end('1');
                        }else{
                            res.end('0');
                        }
                    });
                }else{
                    res.end('0');
                }
            }else{
                res.end('0');
            }
        });
    }
...
...

More information about codes included as comments on each file.


What is Steemauto?

Steemauto comes with amazing features, Schedule post, Build a Fanbase, or leave a curation trail for users all around the world to follow.
Steemauto is open source, unlimited, secure and free app for steem users.


Regards,
Steem witness,
Mahdi Yari,
2018-01-29



Posted on Utopian.io - Rewarding Open Source Contributors

Updated curation trail and queue voting + upvote server on Steemaut... | Ecency