Posts: 23
Joined: Wed Mar 16, 2016 3:12 pm

Delegate Voting Script (Windows)

Sat Apr 30, 2016 10:02 am

This is an Autohotkey script for voting Lisk Delegates. (Windows only)

Many Lisk holders maintain and vote from several accounts and this can make the voting process a bit complicated, especially if someone is security conscious. While my first version of the voting tool aimed to help with this, I wasn't satisifed with the result, the simple GUI that the language I written it (AHK) hasn't allowed some things, so it had some limitations.

Here is a new version. It's cleaner, more secure, easier to use. You can find it on github.

- Use it with up to 8 different accounts
- vote or unvote with two easy clicks
- search the delegates list or filter it not just based on name, but any of the columns data displayed like approval or productivity
- can save and load filtered lists of delegate names. Save as list1.txt and list2.txt, and you can request a recommended delegates list from github that I try to keep up to date, if you don't know who to vote for.

Improvements and changes from previous version
- html based GUI for greater flexibility
- can send votes/unvotes in the same transaction
- much easier to control voting for multiple account users
- allows saving both passhprases to file
- more secure, the passphrases are not saved as clear text but obfuscated
- a more advanced filtering. multiple delegate names have to be separated using "|", however the tool will read lists from file where names are in separate lines (it should also make the conversion on the fly if you copy-paste a list into the search field).

You can fin more about filter options in the Tablesorter docs, the jquery plugin I used for the table.


About the UI
Making it HTML based allows more flexibility but can have some potential difficulties running the tool. AHK uses ActiveX (an enviroment by Microsoft) to display and manipulate web content, and if you have any problem running the tool it has most likely have something to do with your OS security settings. If you experience any problems take a look at ActiveX permissons (Internet explorer/internet options), and UAC settings.

The tool is also dependend on third party resources as the table uses jQuery and Tablesorterfor filtering, sorting and formating. The dependend files (see votingUI.html) have to be included in the same folder.
Most of the basic voting functions should work without the javascript files loading, but some won't and it will be less pretty.
(On a side node, I suck at html/css, so the code is a bit of a mess, and the design is not that great. If you want to make improvements, I'm happily take any help I can get.)

On startup the html gets these various javascript files from their repo and it takes a few seconds, so if you want faster start time you may want to save them into a folder and edit the links in html for local load.

About security
This is important. The tool allows you to save you accounts passphrases. You should only allow this if you are confident that your PC is secure. It won't save it as simple text instead if will obfuscated it, (makes it unreadable) and that can stop anyone to just opening and reading them or simply printing the ini file, but anyone with access to both your settings file and my script can easily recover your passphrases.
Again, as long as your PC is secure, this shouldn't be a problem. For the best security I would suggest keeping the ini file (or the whole tool folder) in an encrypted folder or container, that you only open when you want to vote. It's easy and should be safe.
I would also strongly suggest that you don't trust anyone, including me. Read the source before running anything. AHK syntax is easy to read even if you don't know the language (I also tried to make comments to be easier to understand), and running the source file is very easy, you just have to have Autohotkey ( installed to do it.
Of course if you are a trusting soul I included a compiled version, just run the exe.

One last thing: the tool will only accept lisk node urls with https prefix. Voting sends the passphrase to the node, it shouldn't be done without encryption.

Other notes:
I didn't include some features that have been present in the previous version. (like the ability to vote based on address, and public key) If you really miss one of them let me know, and I'll try to add it.
As this version is much different from the previous one (as a matter of fact it's completely new code. If you prefer the older version, I made a release and kept it on github. 0.2.7

2017-01-23 23_12_50.png
2017-01-23 23_12_50.png (47.13 KiB) Viewed 764 times
2017-01-23 23_09_01.png
2017-01-23 23_09_01.png (82.76 KiB) Viewed 764 times
Last edited by Vega on Tue Jan 24, 2017 11:37 pm, edited 6 times in total.

Posts: 23
Joined: Wed Mar 16, 2016 3:12 pm

Re: Delegate Voting Script (Windows) for testnet

Sat May 14, 2016 7:27 pm

Last edited by Vega on Tue Jan 24, 2017 9:27 pm, edited 3 times in total.

Posts: 23
Joined: Wed Mar 16, 2016 3:12 pm

Re: Delegate Voting Script (Windows) for testnet

Sat May 14, 2016 7:30 pm

Some screenshots for the previous version (0.2.7 and older).

Screenshot 2016-05-14 21.29.02.png
Screenshot 2016-05-14 21.29.02.png (116.17 KiB) Viewed 1113 times
Screenshot 2016-05-14 21.28.58.png
Screenshot 2016-05-14 21.28.58.png (98.64 KiB) Viewed 1113 times
Last edited by Vega on Tue Jan 24, 2017 9:28 pm, edited 1 time in total.

User avatar
Posts: 42
Joined: Thu Apr 21, 2016 10:23 am
Location: The Netherlands
Contact: Website

Re: Delegate Voting Script (Windows) for testnet

Sat May 14, 2016 8:47 pm

Really awesome tool, even more if you could release it for Mac ... ;-)!
liskfaucets. Please read my announcement:

Posts: 23
Joined: Wed Mar 16, 2016 3:12 pm

Re: Delegate Voting Script (Windows)

Tue Jan 24, 2017 9:41 pm

OP updated. Brand new version out. Feeback welcome

User avatar
Posts: 42
Joined: Tue Nov 08, 2016 8:41 am
Location: Sardinia, Italy
Contact: Website Twitter

Re: Delegate Voting Script (Windows)

Tue Mar 21, 2017 4:49 pm

Very useful tool :)
Lisk delegate: dakk - proposal
Lisk monitor - donate cryptos to no-profits in a fully transparent way

Return to “Tools & Scripts”

Who is online

Users browsing this forum: No registered users and 1 guest