Skip to content
joezippy edited this page Sep 20, 2017 · 7 revisions

Welcome to the bmd-paywall wiki!

Below you will find the 2 main use cases for the bmd-paywall, hope you can put it to good use!

Meetups / Conferences / Small Projects / Community events

You have Dash addresses and produce a JSON file as input to the bmd-paywall.py script that you want to pay in Dash. Each time the script is runs (from the command line or CGI) the pmt_freq_ms is compared to the current time to see if the addresses should be re-checked for the depost_max amount. If the addresses are checked and the address meets or exceed the deposit_max the address will not be check again until the pmt_freq_ms exceeds current time. Every time the bmd-paywall.py script runs all addresses which are not flagged as "filled", have there balances check and displayed if they do not meet or exceed the depost_max amount. This keeps someone from withdrawing the funds from the address trying to make the address visible again in an attack scenario. If you want the addresses balances only checked once in 20 years set pmt_freq_ms = sec / yr * 20 (31536000*20)

Basic Income / Extreme Poverty Relief / Disaster Relief

You have Dash addresses and produce a JSON file as input to the bmd-paywall.py script that you want to pay in Dash in small amounts over time. Based on use case above you simply set the pmt_freq_ms to seconds (daily, weekly, monthly, annually) and tell the people to withdraw the coins when they show up, to another address. This means the next time pmt_freq_ms exceeds current time the address will be visible and ready for the next deposit.

Note: The bmd-paywall.py does not transfer any coins by design. That being said the users of the output it produces should trust the machine from where it was run and the creator of the JSON input file.

cgi-bin output example:

cgi-output

cmd output example:

cmd-output

original design doc:

Design

Clone this wiki locally