Unit ID
t29K53Yp5pAKYTOrorItmQ+IVktJZpCgeOzYZGo4HGg=
Received
15.08.2019 13:43:03
Confirmation delay (full node)
3 minutes 24 seconds
Confirmation delay (light node)
5 minutes 48 seconds
Messages
Definition
Definition: [ "autonomous agent", { "bounce_fees": { "base": 30000 }, "init": "{ // bounce_fees might cover premium so make min premium a bit expensive // varaibles to be filled on front end bu insurance service maker... $mcr = 110000; // minium capital requirement to activate this service... $expiration = 86400 * 360; // 12 months of cover $selected_arbiter = ''; // Address of selected arbiter to make final decision $min_premium = 100; // min premium to pay by single user one time to get certain amount of coverage $coverage_times = 12; // Premium amount multiply with this value, so here it could be 100 * 12 = 1200 $author_address = 'T77QBAHR4CN2G6KJ3BHMJLAAPU2WG2KG'; $old_investment = 0; }", "messages": { "cases": [ { "if": "{trigger.data.investor AND var['close_investment'] == false}", "messages": { "cases": [ { "if": "{balance[base] >= $mcr}", "messages": [ { "app": "state", "state": "{ var['close_investments'] = true; // close further investments var['investments_locked'] = false; // only locked when a user buy insurance var['start_service'] = true; // Let users buy services var['capitalLocked'] = 0; $old_investment = var['investor_'||trigger.address]; var['investor_'||trigger.address] = trigger.output[[asset=base]] + $old_investment; // how much invested... }" } ] }, { "if": "{balance[base] < $mcr}", "messages": [ { "app": "state", "state": "{ var['close_investments'] = false; // let further investments come var['investments_locked'] = false; // only locked when a user buy insurance so no service started here var['start_service'] = false; // Don't let users buy anything because minimum capital requirement is not fullfilled var['capitalLocked'] = 0; $old_investment = var['investor_'||trigger.address]; var['investor_'||trigger.address] = trigger.output[[asset=base]]; // how much invested... }" } ] } ] } }, { "if": "{trigger.data.insured AND trigger.output[[asset=base]] >= $min_premium AND var['start_service'] == true}", "messages": { "cases": [ { "if": "{($mcr - var['capitalLocked']) > (trigger.output[[asset=base]] * $coverage_times)}", "messages": [ { "app": "state", "state": "{ var['insured_' || trigger.address] = trigger.output[[asset=base]] * $coverage_times; var['capitalLocked'] = var['capitalLocked'] + (trigger.output[[asset=base]] * $coverage_times); response['accepted_request'] = 'Your request to get insured is accepted, Your coverage is ' || (trigger.output[[asset=base]] * $coverage_times) || ' and you paid - ' || trigger.output[[asset=base]]; }" } ] }, { "if": "{($mcr - var['capitalLocked']) < (trigger.output[[asset=base]] * $coverage_times)}", "messages": [ { "app": "state", "state": "{ response['unaccepted_request'] = 'Your request to get insured is not accepted, because the capital left is not enough to give you the right coverage, The capital left to be used is just ' || ($mcr - var['capitalLocked']); }" } ] } ] } } ] } } ]
Technical information
Fees:
3,293 bytes
(353 headers, 2940 payload)
Level:1000930
Witnessed level:1000923
Main chain index:999748
Latest included mc index:999747
Status:stable/confirmed/final