Unit ID
yu8Qo1FHuspSEnW1N1CYtmWcdsW2kO2YiSi3JxoD38o=
Received
14.06.2021 17:25:42
Confirmation delay (full node)
3 minutes 42 seconds
Confirmation delay (light node)
6 minutes 7 seconds
Messages
Definition
Definition: [ "autonomous agent", { "init": "{ $nom_AA = 'Emissions'; //$_Registre = '5WVBJQHTEP54AEYUJGTQKWTXTXZSJQWA'; $_Registre = trigger.data._Registre; // * només x tests // Retorna una dada del Registre $__dada = $refdada => data_feed[[ oracles = $_Registre, feed_name = $refdada, ifnone = '' ]]; //$_Portal = $__dada( '_Portal' ); $_Portal = trigger.address; // * només x tests if ( $_Portal != trigger.address ) bounce ( 'Portal no reconegut' ); //... $args = trigger.data; $adr__ = trigger.initial_address; $unitat = trigger.output[[ asset != base ]].asset; $qt = trigger.output[[ asset = $unitat ]]; $proces = $args.proces; $dades = $args.dades otherwise {}; $refgeto = 'geto_' || $args.nomgeto; // Retorna una dada del getó referenciat $__dada_geto = $refval => $__dada( $refgeto || '_' || $refval ); $topall = $__dada_geto( 'topall' ); if ( $proces == 'emissio' ) { // L'aportació ha de ser en estels $estels = $__dada( 'Estels' ); if ( $unitat != $estels ) bounce ( 'Cal aportar-hi estels' ); // Només les admins... $_AUT_A = $__dada_geto( '_AUT_A' ) otherwise ''; $_AUT_B = $__dada_geto( '_AUT_B' ) otherwise ''; $_AUT_C = $__dada_geto( '_AUT_C' ) otherwise ''; $autoritzacio = $_AUT_A == $adr__ OR $_AUT_B == $adr__ OR $_AUT_C == $adr__; if ( ! $autoritzacio ) bounce ( 'No autoritzada per administrar el getó' ); // La quantitat ha de ser superior a la mínima establerta $minim = $__dada( 'Generacio_Minima' ); if ( $qt < $minim ) bounce ( 'Cal aportar-hi si més no ' || $minim || ' estels' ); // No es pot excedir el topall d'emissions establert $total_emissions = $__dada( 'total_emissions_' || $refgeto ) otherwise 0; $nou_total = $total_emissions + $qt; if ( $topall < $nou_total ) bounce ( 'Topall de ' || $topall || ' excedit.' || ' Total emissions: ' || $total_emissions ); //... $idgeto = $__dada_geto( 'id' ); $_FOP = $__dada_geto( '_FOP' ); $factor_conversio = $__dada_geto( 'factor_conversio' ); $total_emissio = $qt * $factor_conversio; $dades[ 'Total_emissions_' || $refgeto ] = $nou_total; $ref_emissio = 'emissio_' || $args.ordinal; $dades[ $ref_emissio || '_data' ] = timestamp; $dades[ $ref_emissio || '_geto' ] = $refgeto; $dades[ $ref_emissio || '_qt' ] = $qt; $dades[ $ref_emissio || '_emissora' ] = $adr__; $registre = {}; $registre.dades = $dades; } }", "messages": { "cases": [ { "if": "{ $proces == "emissio" }", "messages": [ { "app": "data", "payload": "{ $registre }" }, { "app": "payment", "payload": { "asset": "base", "outputs": [ { "address": "{ $_Registre }", "amount": "{ $__dada( 'Provisio' ) }" } ] } }, { "app": "payment", "payload": { "asset": "{ $idgeto }", "outputs": [ { "address": "{ $_FOP }", "amount": "{ $total_emissio }" } ] } }, { "app": "state", "state": "{ response[ 'Getó' ] = $refgeto; response[ 'Emissió' ] = $args.ordinal; response[ 'Adreça emissora' ] = $adr__; response[ 'FOP destinatari' ] = $_FOP; response[ 'Estels aportats' ] = $qt; response[ 'Factor de conversió' ] = $factor_conversio; response[ 'Unitats emeses' ] = $total_emissio; response[ 'Total emissions getó' ] = $total_emissions; response[ 'Topall' ] = $topall; }" } ] }, { "if": "{ $proces == 'dotacio' }", "messages": [ { "app": "state", "state": "{ var[ 'refgeto_' || $idgeto ] = $refgeto; var[ $refgeto || '_id' ] = $unitat; response[ 'Topall' ] = $qt; response[ 'Id' ] = $idgeto; response[ 'Procés' ] = $proces; }" } ] } ] } } ]
Technical information
Fees:
5,090 bytes
(452 headers, 4638 payload)
Level:2043183
Witnessed level:2043176
Main chain index:2035191
Latest included mc index:2035190
Status:stable/confirmed/final