Hello friends
I gonna tell you about using bot on steemit i am not the maker of the boot it is open-source can be found on github but first i want to tell you about my strategy
strategy
I follow some new user and results may they follow back in a ratio 100/1000. It less but if I can follow 20,000 user then I have as a average of 2000 follower .
After some days I unfollow those who not following me using another bot called unfollow bot. And repeat in this way I have more follower
After some trending post I unfollow all because there is no notification system on web application but in esteem app
envernmental setup
window
For window
Download node-js and install
##Step-1
Go to-
https://nodejs.org/en/download/
and install it.
Android and linux
Android user
####step-1
Goto->playstore->search for termux ->install termux
Run following commands
pkg install nodejs
Type y and enter install it
On Linux
Open Linux terminal and run
apt-get install nodejs
Downloading required library
###
for all OS followed by for window , Android and linux open command prompt,termux ,terminal run following command
npm install steem
Open a code editer
Write following code
_________________&&&&&_________________
var config = {};
config.steem = {};
//Global Configuration
config.steem.username = process.env.STEEM_USER || 'username';
config.steem.password = process.env.STEEM_PASSWORD || 'pasword here';
config.steem.url = 'wss://steemd-int.steemit.com';
config.steem.auth_type = 'owner'; //owner, posting
//delay in milliseconds between each write transaction
config.steem.delay = 250;
//must be from username, goes with demo start.js only
config.steem.sample_post = 'creating-first-steemit-bot';
//optional account to start at in alphanumerisymbolical order
//this is not applicable in follow_trending_authors, follow_back, generate_contest_winners bots
//todo - add this config to other applicable bots; create a config.steeem.end that works much the same
config.steem.start = "";
//memos only
config.steem.type = false; //either following or followers
config.steem.message = 'Hi @username!'; //message to be sent in each memo (@username will be replaced)
config.steem.amount = '0.001 SBD'; //amount of SBD or STEEM to send to each follower/following
config.steem.send_memos_to = false;//an array of accounts to send memos to, else false
//curation only
config.steem.curation_type = 'created'; //created, hot or trending
config.steem.tags = ['steem','steemit','utopian-io']; //tags. leave empty for all trending tags
config.steem.vote_percent = 1; //percentage of vote for each vote
//generate_contest_winners only
config.steem.contest_permlink = '40-sbd-webgl-screen-capture-contest';
config.steem.contest_sublink = 'https://experiments.withgoogle.com/chrome/';
config.steem.require_graphic = true;
config.steem.require_link = true;
config.steem.require_followers = true;
config.steem.require_resteem = true;
config.steem.filter_by_date = '2018-02-15 20:27:27';
config.steem.filter_by_accounts = false;
config.steem.filter_by_disqualified = false;
//follow_back only
config.steem.unfollow_nonfollowers = false; //if a user unfollows this account, then unfollow them
//follow_accounts only
config.steem.follow_accounts_from = 'money-dreamer';
config.steem.accounts_to_follow = []; //this will be ignored if config.steem.follow_accounts_from is not false
config.steem.follow_accounts_from_type = 'followers'; //either following or followers
//get_reblogs_steemsql only
config.steem.steemsql_username = '';
config.steem.steemsql_password = '';
config.steem.steemsql_server = '';
config.steem.steemsql_database = '';
//and thats that
module.exports = config;
__&________________________&&&_______
And save as config.js
In same directory
var steem = require('steem');
var config = require('./config');
steem.api.setOptions({ url: config.steem.url });
var wif = steem.auth.toWif(config.steem.username, config.steem.password, config.steem.auth_type);
var followingArray = [];
function uniq(a) { return a.sort().filter(function(item, pos, ary) {
return !pos || item != ary[pos - 1];
}) }
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
async function startFollowAccountsInTrending(result) {
var trending_tags = result.tag_idx.trending;
for(var attributename in trending_tags) {
console.log(attributename+": "+trending_tags[attributename]);
steem.api.getState('/created/'+trending_tags[attributename], function(err, result) {
followAccountsInTrending(result);
});
await sleep(config.steem.delay);
}
}
async function followAccountsInTrending(result) {
var content = result.content;
var accounts = result.accounts;
for(var attributename in accounts) {
//console.log(attributename+": "+accounts[attributename]);
var following = accounts[attributename].name;
if( followingArray.indexOf(following) !== -1 ) {
console.log("This item already exists");
continue;
}
let followReq = ["follow"]
followReq.push({follower: config.steem.username, following: following, what: ["blog"]})
const customJson = JSON.stringify(followReq)
console.log( followReq );
followingArray.push(following);
steem.broadcast.customJsonAsync(wif, [], [config.steem.username], "follow", customJson)
.then(console.log)
.catch(console.log)
await sleep(config.steem.delay);
console.log( followingArray );
}
}
//TODO move this to library.js
function getFollowing(start=config.steem.user,count=100) {
//console.log( 'test' );
steem.api.getFollowing(config.steem.username, start, 'blog', 100, function(err, result){
start = '';
count = result.length;
//Inner loop: the followings' accounts following.
for (let i = 0; i < count; i++) {
followingArray.push(result[i].following);
start = result[i].following;
}
if( count === 100 )
getFollowing( start, count );
else
steem.api.getState('/trending', function(err, result) {
startFollowAccountsInTrending(result);
});
});
}
getFollowing();
Save as bot.js
On same directory you save config.js
I use vi editer
Then cd into diractory
Useing cd [dir]
And run
Command
node test.js
But cheack your band width
Http://www.steemd.com/@username
It not go less than 50%
For curator bot and more follow me