SteemStalker - Follow your close friends in real-time
What is SteemStalker?
SteemStalker is an open-source one-page tool that allows the user to follow her/his friends and/or self-activities realtime.
With SteemStalker, the user can follow :
- Upvotes
- Downvotes
- Posts and Comments
- Transfers ( to and from )
at the same time.
The tool informs the user with an alert window as each activity occurs.
There is also a log div where the user can scroll through the occured activities.
Also, in the footer section, the user can follow all the transfer activities occurring in the Steem blockchain as real-time.
Features
Entry : Names to be followed
To start, the user has to enter the names to be followed.
Also, with each entry, the user should define the parameters to be followed by ticking the check-boxes.
The user can add as many names as he/she requests.
Pressing "ADD USER" button will clear the entry field for the next entry and write the name and parameter preferences to the left div.
To undo the selection, the user can use the "CLEAR" button at the bottom of the div.
This clears all the arrays and the div so the user can restart selecting.
Starting the follow
As the user press "START" button after selecting the names, the tool will start showing all the transfer information in the Steem blockchain.
This is to show both the transfer occuring and also to show that tool is alive.
As the tool reads an action in the Steem blockchain related with the defined names, an alert box will open and inform the user.
Also the occured action will be recorded to the right div as log.
Technology used
SteemStalker is a single page HTML file and JavaScript using Steem.Js (GitHub) libraries.
The complete source code can be forked from the repo: https://github.com/firedreamgames/steemstalker
The heart of the script is the asynchronous Steem.Js function:
var release = steem.api.streamTransactions('head', function(err, result)
This allows us to read the blockchain data in realtime.
Then the data is compared with the following criteria:
if (result.operations["0"]["0"] == 'transfer') \\is the operation a transfer?
if (the_user.includes(result.operations["0"]["1"].to)) \\ is the transfer made to the selected name?
if (the_user.includes(result.operations["0"]["1"].from)) \\ is the transfer made from the selected name?
if (result.operations["0"]["0"] == 'vote') \\is the operation a vote?
if ((the_user.includes(result.operations["0"]["1"].author)) && (result.operations["0"]["1"].weight > 0)) \\ is the operation an upvote given to the selected name?
if ((the_user.includes(result.operations["0"]["1"].author)) && (result.operations["0"]["1"].weight < 0)) \\ is the operation a downvote given to the selected name?
if ((the_user.includes(result.operations["0"]["1"].voter)) && (result.operations["0"]["1"].weight > 0)) \\ is the operation an upvote given by the selected name?
if ((the_user.includes(result.operations["0"]["1"].author)) && (result.operations["0"]["1"].weight < 0)) \\ is the operation a downvote given by the selected name?
if (result.operations["0"]["0"] == 'comment') {
if (the_user.includes(result.operations["0"]["1"].author)) \\ did the selected name post or comment?
Links
- SteemStalker Tool : https://fdsteemtools.neocities.org/steemstalker.html
- SteemStalker Repo : https://github.com/firedreamgames/steemstalker
- Steem.JS Repo : https://github.com/steemit/steem-js
Contact
- @FireDream - Steemit
- @firedream#3528 - Discord
Proof of Work
Posted on Utopian.io - Rewarding Open Source Contributors