Home of the Berewic server
Manually bonding to non-addressable resources
Alistair Mann al@berewic.com
Alice wishes to join to Bob's IRC channel. The channel has been plagued by poor quality contributors so Bob looked for a method of bonding future users. Alas though, ircd has no support for bonding so instead he's chosen to manually bond contributors. Manual, in this context, should be understood to include automatic in-band behaviour with a bot.
The principles behind manually bonding applies to subreddits, youtube chats or almost any system where the underlying tech does not support bonding, and there is an admin who can enforce against access.
- Alice issues
/join #bobschannel
- Bob, or his bot, devoices her and sends her a private message including the channel BTA details
- Alice gives Bob's BTA details to her own BTA at
alice-bta/request-proposals
- Alice's BTA obtains Bob's BTA's proposals and offers them to Alice, perhaps with her balances, so she can decide which proposal to accept
- Alice clicks on a proposal to accept which ...
... connects to alice-bta/proposals/N
where N
identifies the proposal Alice accepted
- Alice's BTA obtains her buyer-address and reconnects to Bob's BTA to obtain his caclculation of the p2sh address
- Alice's BTA connects back to itself to upload the filled-in proposal, which sees her BTA double-check the details and p2sh address, funds it, and informs her it was accepted
- Alice checks with Bob using the p2sh address as reference
- Bob checks
bob-bta/bonds/N
- If the p2sh address doesn't match a proposal, the page gets a
404 Not Found
which it interprets for him as "not a proposal issued by Bob"
- If the p2sh address does match a proposal but there are no funds then the page gets a
202 Accepted
which is interpreted for him as "bond not arrived yet"
- If insufficient funds have arrived, return
402 Payment Required
- If the funds have arrived, the
200 OK
is interpreted as Alice successfully bonding. The page gives Bob the details of her approval - including the end date of the bond
- Bob uses the end date of the bond to calculate the end date of her subscription. For instance, if she bonded for 5 weeks, he calculates 4 weeks is how long she can be voiced in the channel: that gives him a week to assess her behaviour in the final few seconds of her four week term.
- Bob arranges Alice is devoiced after those 4 weeks - either by a bot that effects it, or a note in his diary to do it himself.
- Bob gives Alice voice and informs her that she has been approved
Alice can now contribute to the channel.
[ Homepage ]