How to Set Up Your On-Call Duty when Your Steem Witness is Missi
- Time:2020-09-08 11:19:41
- Class:Weblog
- Read:41
What is On-Call? You know many Software Engineers at Big Companies need to do On-Call Duties to fix service related issues when they arise.
Here is a utility to switch your steem witness node in case of missing too many blocks. But wouldn’t it be a lot nicer if we can be notified (be paged) when this happens?
Open Source Utility: https://github.com/DoctorLai/SteemWitnessAutoSwitch
Please be warned that if you like less intrusive notification, you should go for SMS (which should be easy to set up using the method below) or even just email.
If this then that
You may have heard of IFTTT which stands for If This Then That. This is a powerful service that allows you to connect two or more services.
First, you would need to register a IFTTT account, then you would need to connect the “Webhooks” service which allows you to send a message to the hook. Then, the “That” part would be to connect the “Voip Call” part which will call you – alternatively, you could choose other notification methods such as SMS or Emails, or even make a tweet if you like!
This is how the final recipe looks like:

ifttt-webhooks-steem-witness-notification
Note that we can pass a *value1* parameter to report the current missing blocks.
Here is how you send a notification message to the webhook aka “This”
1 | curl -X POST -H "Content-Type: application/json" -d '{"value1":"123"}' https://maker.ifttt.com/trigger/{steem-witness}/with/key/YourIFTTTKeyHere |
curl -X POST -H "Content-Type: application/json" -d '{"value1":"123"}' https://maker.ifttt.com/trigger/{steem-witness}/with/key/YourIFTTTKeyHere
You will see this message on success.
Congratulations! You’ve fired the steem-witness event
Then, on the github code, you can modify a little bit:
1 2 3 4 5 6 7 8 | const execSync = require('child_process').execSync; function reportMissing(missed) { log("Report missing: " + missed); // TODO: You can send a email/SMS here execSync('curl -X POST -H "Content-Type: application/json" -d \'{"value1":"' + missed + '"}\' https://maker.ifttt.com/trigger/{steem-witness}/with/key/YourIFTTTKeyHere'); } |
const execSync = require('child_process').execSync; function reportMissing(missed) { log("Report missing: " + missed); // TODO: You can send a email/SMS here execSync('curl -X POST -H "Content-Type: application/json" -d \'{"value1":"' + missed + '"}\' https://maker.ifttt.com/trigger/{steem-witness}/with/key/YourIFTTTKeyHere'); }
That is it, everytime there is a missing block, you will get a call who will tell you total missed blocks aka the parameter *value1*

ifttt-calling
–EOF (The Ultimate Computing & Technology Blog) —
Recommend:Java Pattern: Use Atomic Boolean to Return Single Usage Object
Significance of HTML and CSS in Mobile App Development
How to Reverse Words in a String using Modern Programming Langua
The Python Function to Retrieve the Producer Reward for Witness
Function to Compute the Average Salary Excluding the Minimum and
Efficient Algorithms to Compute The kth Factor of a Natural Numb
Can We Make Arithmetic Progression From Sequence of Numbers?
How to SSH to Remote Host using the Priviate/Public Keys Authent
How do you Test Getter and Setter Interface in Java using Mockit
Using Java’s Big Integer to Compute the Large Sum of One-h
- Comment list
-
- Comment add