MultiSend is a rebuild of what used to be called Stake For Charity (s4c). MultiSend allows a user to automatically send a percent of their stake reward to as many addresses as you would like up to 100% of the stake generated. The MultiSend transaction is sent when the staked coins mature (30 confirmations) and will not exceed the total stake generated.
Multisend RPC[]
As of version 1.0.9 S4C has been replaced in the client with Multisend. Currently there is no GUI for this feature and is viewed either by RPC call (daemon) or debug console (Qt)
Usage Commands[]
- multisend <command>
- print - displays the current MultiSend vector
- clear - deletes the current MultiSend vector
- enable/activate - activates the current MultiSend vector
- disable/deactivate - disables the current MultiSend vector
- delete <Address #> - deletes an address from the MultiSend vector
- disable <address> - prevents a specific address from sending MultiSend transactions
- enableall - enables all addresses to be eligible to send MultiSend transactions
- To create or add vectors
- multisend <HyperStake Address> <percent>
- This will add a new address to the MultiSend vector. Percent is a whole number 1 to 100. Total percentange of all vectors may not exceed 100.
Example Usage[]
This is assuming using the Debug Console in the Qt client.
First, let's set up our first vector. Input this into the debug console:
multisend p7mrbNinXaK9nvw8fVuhpSTQ9NFcELjMeS 10
<command> <target HYP address to send % to> <% to send>
This would send 100 HYP of a 1000 HYP stake to p7mrbNinXaK9nvw8fVuhpSTQ9NFcELjMeS. The following is the output of this command:
[ { "MultiSend Activated?" : false }, "MultiSend Addresses to Send To:", { "Address 0" : "p7mrbNinXaK9nvw8fVuhpSTQ9NFcELjMeS", "Percent" : 10 } ]
This confirms the correct entry of a MultiSend vector. Note, adding a vector does not enable MultiSend. Now that we have our vector set, it is time to enable MultiSend by entering this command:
multisend enable
Which gives this output:
MultiSend Activated
Now we have our first vector set, lets add one more vector and then confirm our settings. First, add another vector:
multisend pRbwpBsgumVu2pUA4u2BajC9NU5HEQ7Xuq 10
Next lets print the status of our MultiSend and our vectors by entering this command:
multisend print
Which outputs:
[ { "MultiSend Activated?" : true }, "MultiSend Addresses to Send To:", { "Address 0" : "p7mrbNinXaK9nvw8fVuhpSTQ9NFcELjMeS", "Percent" : 10, "Address 1" : "pRbwpBsgumVu2pUA4u2BajC9NU5HEQ7Xuq", "Percent" : 10 } ]
Which shows us that MultiSend is activated and lists our two target HYP address and the % of each stake to send. MultiSend vectors and activation is written to the wallet.dat file so the settings will persist after client restarts. This also means that if you no longer wish to use MultiSend, you must manually disable it by using this command:
multisend disable
GUI mockup[]
||============================================================|| || HYP-centered || ||============================================================|| || {*} {x%}{x%} [__][__][__] Staking bounty (?) || || {*} {x%}{x%} [__][__][__] HYP development (?) || || {*} {x%}{x%} [__][__][__] Faucet #1 (?) || || {*} {x%}{x%} [__][__][__] Faucet #2 (?) || || {*} {x%}{x%} [__][__][__] HyperShield (?) || || {*} {x%}{x%} [__][__][__] HyperPool (?) || ||============================================================|| || NGO || ||============================================================|| || {*} {x%}{x%} [__][__][__] Red Cross (?) || || {*} {x%}{x%} [__][__][__] Reporters without Borders (?) || || {*} {x%}{x%} [__][__][__] Transparency international (?) || ||============================================================|| || Causes of the month || ||============================================================|| || {*} {x%}{x%} [__][__][__] ALS (Icebucket Challenge) (?) || || {*} {x%}{x%} [__][__][__] MintCoin Fund for Ebola (?) || || {*} {x%}{x%} [__][__][__] Presstab's birthday (?) || ||============================================================|| || Custom || ||============================================================|| || {*} {x%}{x%} [__][__][__] (enter address) (?) || || New custom address + || ----------------------------------------------------------------
The "(?)" button leads to a pop-up window which explains the charity and mention, if necessary, that such charity also donate to another charity (daisy-chain charity). For instance "1% of the faucet goes to Red Cross".
For Faucets, the (?) will explain that the faucets are meant to be self-replenishing.
For "(enter address)", people would have a "save" option to permanently save this address, like in the address book. Example: one want to give specifically for the translation in Portuguese, he enters the right address (of course, a bounty address for this must have been generated first).
The drop-down menu [__][__][__] allows for triggers, conditionnal actions (like max amount = 1000 HYP, ùax duration = 30 days..)
"New custom address" is a button for adding as many addresses as you want. HyperSend gives some creative examples of how to make the best use of custom addresses.
Finally, one can donate to several charities ({*}) and even decide of the amount. Base: 1%, min: 0.25% max: 100+100%. Why 100% + 100% Because it is possible to liquidate a part of the principal also. If you use arrow keys, pressing the up arrow while it is already at 100% of the stake will start to increase the percentage of the principal. In a similar way, pressing the down arrow while it is already at 0% of the principal will start to decrease the percentage of the stake.
"Fidelity program": "Dear HYPster. This is now 14 days you've been staking on a daily basis. Ain't it good to receive daily coins? We propose you to give 1% (or more) of these daily gains to one or more cause(s) of your choice. This will be completely transparent for you, the wallet will handle everything. You can always turn it off later, but remember that a small deed can go a long way both for the cause and for the valuation of HYP."