Voting with multiple addresses in one shot
I times where most SmartCash owners have split their funds into multiple addresses due to SmartNodes, SmartRewards or whatever reasons... its currently hard to cast votes with your full voting power. I have no doubt that this will become better anytime in the future since there is probably any wallet integration coming for this...
For now i just created a script which lets you vote with your full voting power in one shot!
The install process of the script is pretty simple. Its all explained in its GitHub repo where you can also see the full source code. You can find it here:
This will work everywhere you can run python. I only tested it with macOS and Windows 10 though.
What you should know
In order to use this script you need to configure your wallet to have the local RPC server enabled. This is because the script uses the RPC interface to sign the needed voting messages. Like you would do it manually from your wallets
Sign message tab.
Its also required that your wallet is unlocked for the voting process. You have two options here.
Unlock by yourself
First option is to just unlock your wallet from your desktops debug console before you start the script. Therefor you just need to run
walletpassphrase "your_password" 900 in the debug console. This will unlock your wallet for 15 minutes (900 seconds) which should be enough to vote through all open proposals.
In this case the script does not lock your wallet if its done. Its up to you to run
walletlock in the debug console once your done with the voting.
Let the script unlock when required
If you don't unlock your wallet before running the script it will ask you for your password. In this case the script will only unlock the wallet for the moments it needs to sign the messages. Once a message is signed it gets locked until the next sign is required. It will also lock the wallet if you quit the script.
Also in this case you don't need to worry about your entered password. Everything is open source and you can go through the code to see that its only used to unlock before signing the required message. Its doesn't do anything else with it.
Its up to you
I just want to let you know that this configuration of your wallet in combination with your wallets encryption password which you type into a terminal where a python script is running should be used with much care!
If you really have nooo idea what you are doing... i would recommend to begin with trying to get it and come back later :)
How does it look like?
Once you started the script you will see a screen like this
There you see that it first collects all your addresses which are ready for vote. Then it checks if the wallet is already unlocked. If its not it will ask you for the password.
If it was either unlocked before or you did enter the correct password the following screen will come up
Here you just choose which proposal you want to vote. Next you will be asked for your desired voting type
n then hit
Enter to start the voting.. Then you will see the following screen
Thats it! One shot to vote them all :D
Beer, coffee and further development
If you enjoy it and you are feeling the urge to tip me...go ahead :D