Setup Steeming Bot for @Automation made for minnows and authors that needs a little boost.

in stemming •  7 years ago  (edited)

The @automation bot is a project courtesy by @yehey a Steem Witness. This is the step-by-step procedure on how to setup a bid voting bot to help minnows in steem blockchain.

Please note. This is two different bot script created by two programmers, the first one is using Dr Otto by @inertia and the second is PostPromoter script by @yabapmatt. You decide which is best for your project. I love both program works as intended, Dr Otto is based on Ruby while PostPromoter is on JavaScript.


Source: https://que.com/setup-steeming-bot-for-automation/

Let's start the installation and setup.

In Ubuntu server, I always start using a "screen -S automation.bot" session. The -S is a parameter to name my session as "automation.bot"

$ screen -S automation.bot [enter]
$ screen -ls // this is to show the current screen sessions.

Step 01. Begin installing dependencies.
$ sudo apt-get update

$ sudo apt-get install git-core curl zlib1g-dev build-essential libssl-dev libreadline-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev python-software-properties libffi-dev

Step 02. Clone Ruby
$ git clone https://github.com/rbenv/rbenv.git ~/.rbenv

You will result something like this.

Cloning into '/home/emil/.rbenv'...remote: Counting objects: 2714, done.remote: Compressing objects: 100% (8/8), done.remote: Total 2714 (delta 0), reused 8 (delta 0), pack-reused 2706Receiving objects: 100% (2714/2714), 507.91 KiB | 0 bytes/s, done.Resolving deltas: 100% (1695/1695), done.Checking connectivity... done.

Step 03. Follow up setting the environment.
$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc $ echo 'eval "$(rbenv init -)"' >> ~/.bashrc $ exec $SHELL
Step 04. Clone Ruby plugins
$ git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build

You should see this when it's done.
Cloning into '/home/emil/.rbenv/plugins/ruby-build'...
remote: Counting objects: 8615, done.
remote: Compressing objects: 100% (16/16), done.
remote: Total 8615 (delta 8), reused 19 (delta 4), pack-reused 8592
Receiving objects: 100% (8615/8615), 1.81 MiB | 0 bytes/s, done.
Resolving deltas: 100% (5478/5478), done.
Checking connectivity... done.

and run this command.

$ echo 'export PATH="$HOME/.rbenv/plugins/ruby-build/bin:$PATH"' >> ~/.bashrc
$ exec $SHELL

Step 05. Let's install Ruby // Check the latest version of Ruby.
$ rbenv install 2.5.0 // this will take a some time, please wait. Downloading ruby-2.5.0.tar.bz2... -> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.0.tar.bz2 Installing ruby-2.5.0... Installed ruby-2.5.0 to /home/emil/.rbenv/versions/2.5.0

$ rbenv global 2.5.0

Step 06. Install bundler with gem (this will take some time)
$ gem install bundler Fetching: bundler-1.16.1.gem (100%) Successfully installed bundler-1.16.1 Parsing documentation for bundler-1.16.1 Installing ri documentation for bundler-1.16.1 Done installing documentation for bundler after 4 seconds 1 gem installed

$ rbenv rehash

Step 07: Install Radiator
$ gem install radiator
Step 08 Now we are ready to download dr otto and run, here are commands
$ git clone https://github.com/inertia186/drotto.git Cloning into 'drotto'... remote: Counting objects: 946, done. remote: Total 946 (delta 0), reused 0 (delta 0), pack-reused 946 Receiving objects: 100% (946/946), 5.21 MiB | 2.74 MiB/s, done. Resolving deltas: 100% (542/542), done. Checking connectivity... done. $ cd drotto $ bundle install // wait to complete the installation.
Step 09. Once the bundle install is complete. Open config.yml to update the steem account, posting key, private key and other configuration.
/drotto$ nano config.yml

and also update support/confirm.md to customize the confirmation comment.

Step 10. Start the program.
/drotto$ rake run WARN: Unresolved specs during Gem::Specification.reset: ffi (>= 1.9.18, ~> 1.9) WARN: Clearing out unresolved specs. Please report a bug if this causes problems. rake aborted! Gem::LoadError: You have already activated bitcoin-ruby 0.0.18, but your Gemfile requires bitcoin-ruby 0.0.14. Prepending `bundle exec` to your command may solve this. /home/yehey/drotto/lib/drotto.rb:1:in `<top (required)>' /home/yehey/drotto/Rakefile:4:in `<top (required)>' Caused by: LoadError: cannot load such file -- krang /home/yehey/drotto/lib/drotto.rb:1:in `<top (required)>' /home/yehey/drotto/Rakefile:4:in `<top (required)>' (See full trace by running task with --trace)

Researching this error...

Using this command fixed the issue above. We are in business!
/drotto$ bundle exec rake run { :INF => "Remaining voting power: 100.00 % (recharged 2.00 % since last vote)" } { :INF => "Last vote: 1032 minutes ago; 0.0 minutes of recharge power unused in 100.00 %" } { :DBG => "Transactions found: 12" } { :INF => "Looking for new bids to automation; starting at block 20250487; current time: 2018-02-28 07:39:39 UTC ..." } { :INF => "Last block in this timeframe is: 20259415 (8928 blocks)." }

Completed the install using Dr Otto script.

And the 2nd option is using PostPromoter by @yabapmatt. Follow the guide.
Installation $ git clone https://github.com/MattyIce/postpromoter.git $ npm install

++++++++++++++++++
$ npm install
npm WARN saveError ENOENT: no such file or directory, open '/home/yehey/package.json'
npm WARN enoent ENOENT: no such file or directory, open '/home/yehey/package.json'
npm WARN yehey No description
npm WARN yehey No repository field.
npm WARN yehey No README data
npm WARN yehey No license field.
up to date in 0.073s
++++++++++++++++++
It corrected the error when I run inside the postpromoter folder.

/postpromoter$ npm install

[email protected] postinstall /home/emil/postpromoter/node_modules/steem
postinstall-build lib && cross-env scripts/post-install.js
Running post install.js
added 140 packages in 4.033s

Configuration. First copy config-example.json to config.json:
$ cp config-example.json config.json

Then set the following options in config.json

Edit the following file.
comment.md // for vote reply
blacklist // list of blacklisted account.

The file should contain only one steem account name on each line and nothing else as in the following example:
blacklisted_account_1
blacklisted_account_2
blacklisted_account_3

Run
$ nodejs postpromoter.js

First time try, got this error.

~/postpromoter$ nodejs postpromoter.js
module.js:328
throw err;
^
Error: Cannot find module 'steem'
at Function.Module._resolveFilename (module.js:326:15)
at Function.Module._load (module.js:277:25)
at Module.require (module.js:354:17)
at require (internal/module.js:12:17)
at Module._compile (module.js:410:26)
at Object.Module._extensions..js (module.js:417:10)
at Module.load (module.js:344:32)
at Function.Module._load (module.js:301:12)
at Function.Module.runMain (module.js:442:10)

To correct the error above. I re-run "npm install" inside postpromoter folder.

~/postpromoter$ nodejs postpromoter.js

Excellent. That works!

You can send a minimum 0.1 SBD/STEEM to @automation with a post link in the memo field to get a share of a 100% vote. Votes every 2.4 hrs.

I hope you can join me supporting this project by delegation of SP to @automation. This project is initiated by @yehey Steem Witness

Next, create a marketing campaign introducing @automation bot service is up and running. Ready to serve.

Source: I also posted this article at https://que.com/setup-steeming-bot-for-automation/

If you like what I do please vote @YEHEY as your Witness or Set as Proxy.


Go to https://steemit.com/~witnesses URL address then scroll down to Vote.

Or use this link to Vote - https://on.king.net/witness simply click and vote.

REFERENCES:

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 STEEM!
Sort Order:  

Hi thanks for that.
Could you give a brief of what the boys will do?