Unit ID
l7F90r6maJC0P9MeqdsYCt1sKl3zvQk5XJC7Obte2dM=
Received
13.09.2021 12:08:53
Confirmation delay (full node)
2 minutes 48 seconds
Confirmation delay (light node)
4 minutes 33 seconds
Messages
Definition
Definition: [ "autonomous agent", { "init": "{ $_Registre = 'MGIC6DY2L6I4F5MEB3LSBGUCSTNLIJTV'; // Retorna el valor d'una entrada del _Registre $__dada = $refdada => data_feed [[ oracles = $_Registre, feed_name = $refdada, ifnone = 0 ]]; if ( $__dada( '_Portal' ) != trigger.address AND $__dada( '_Getons' ) != trigger.address ) bounce( 'Accés interdit' ); // Dades funcionals $args = trigger.data; $adr__ = trigger.initial_address; $id_unitat = trigger.output[[ asset != base ]].asset; $dades = $args.dades otherwise {}; $proces = $args.proces; $ref = $args.ref; $val = $args.val; $cicle_actual = $args.cicle_actual; // Obté valor argument requesta especificat o rebota $__arg = $arg => $args[ $arg ] otherwise bounce( "Cal proporcionar el valor de: " || $arg ); $geto = $__arg( 'geto' ); $adr = $__arg( 'adr' ); if ( $args.geto_unitat != $geto AND $args.geto_unitat != 'Estels' ) //bounce( "El getó utilitzat no coincideix amb el de la requesta" ); bounce( "El getó utilitzat " || $args.geto_unitat || " no coincideix amb el de la requesta " || $args.geto ); // L'adreça objecte ha de constar com activa per a Estels i per al getó if ( ! $__dada( 'activacio_' || $geto || '_' || $adr ) OR ! $__dada( 'activacio_Estels_' || $adr ) ) bounce( "Destinatària no activa" ); if ( $proces == 'avis_estels' OR $proces == 'avis_geto' ) { $operacio = 'drecera'; $ordinal_avisos_actual = $__dada( 'ordinal_avis_' || $geto ) otherwise 0; $nou_ord_avisos = $ordinal_avisos_actual + 1; $ord_avis = 'avis_' || $geto || '_' || $nou_ord_avisos; $ref_avis = 'avis_' || $geto || '_' || $adr; $dades[ $ref_avis ] = $ord_avis; $dades[ $ord_avis || '_cicle' ] = $cicle_actual; $dades[ $ord_avis || '_data' ] = timestamp; $dades[ $ord_avis || '_text' ] = $__arg( 'text' ); $dades[ 'ordinal_avis_' || $geto ] = $nou_ord_avisos; } if ( $proces == 'bloqueig_estels' OR $proces == 'bloqueig_geto' ) { $operacio = $args.operacio; $idprop = $args.idprop; $nova_idprop = $args.nova_idprop; $geto_bloqueig = $__dada( $idprop || '_geto' ) otherwise $geto; $text_bloqueig = $__dada( $idprop || '_text' ) otherwise $__arg( 'text' ); $adr_bloqueig = $__dada( $idprop || '_destinataria' ) otherwise $adr; $ref_bloqueig = 'bloqueig_' || $geto_bloqueig || '_' || $adr_bloqueig; $bloqueig_permes = $geto == 'Estels' OR $__dada( $geto || '_bloqueig_permes' ) == 1; if ( ! $bloqueig_permes ) bounce( 'Aquest getó no ho permet'); // Destinatària no ha d'estar bloquejada if ( !! $__dada( $ref_bloqueig ) AND ! $__dada( 'desbloqueig_' || $ref_bloqueig )) bounce( 'Destinatària bloquejada'); if ( $operacio == 'proposta' ) { $dades[ $nova_idprop || '_geto' ] = $geto; $dades[ $nova_idprop || '_adr' ] = $adr_bloqueig; $dades[ $nova_idprop || '_text' ] = $__arg( 'text' ); } if ( $operacio == 'confirmacio' OR $operacio == 'drecera' ) { $ordinal_bloquejos_actual = $__dada( 'ordinal_bloqueig_' || $geto ) otherwise 0; $nou_ord_bloquejos = $ordinal_bloquejos_actual + 1; $ord_bloqueig = 'bloqueig_' || $geto || '_' || $nou_ord_bloquejos; $dades[ $ref_bloqueig ] = $ord_bloqueig; $dades[ $ord_bloqueig || '_cicle' ] = $cicle_actual; $dades[ $ord_bloqueig || '_data' ] = timestamp; $dades[ $ord_bloqueig || '_text' ] = $text_bloqueig; $dades[ $ord_bloqueig || '_adr' ] = $adr_bloqueig; $dades[ 'ordinal_bloqueig_' || $geto ] = $nou_ord_bloquejos; } } if ( $proces == 'desbloqueig_estels' OR $proces == 'desbloqueig_geto' ) { $operacio = $args.operacio; $idprop = $args.idprop; $nova_idprop = $args.nova_idprop; $geto_bloqueig = $__dada( $idprop || '_geto' ) otherwise $geto; $adr_bloqueig = $__dada( $idprop || '_adr' ) otherwise $adr; $ref_bloqueig = 'bloqueig_' || $geto_bloqueig || '_' || $adr_bloqueig; $bloqueig_permes = $geto == 'Estels' OR $__dada( $geto || '_bloqueig_permes' ) == 1; if ( ! $bloqueig_permes ) bounce( 'Aquest getó no ho permet'); // Destinatària ha d'estar bloquejada if ( ! $__dada( $ref_bloqueig ) OR !! $__dada( 'desbloqueig_' || $ref_bloqueig )) bounce( 'Destinatària no bloquejada'); if ( $operacio == 'proposta' ) $dades[ $nova_idprop || '_bloqueig' ] = $ref_bloqueig; if ( $operacio == 'confirmacio' OR $operacio == 'drecera' ) { $ordinal_desbloquejos_actual = $__dada( 'ordinal_desbloqueig_' || $geto ) otherwise 0; $nou_ord_desbloquejos = $ordinal_desbloquejos_actual + 1; $ord_desbloqueig = 'desbloqueig_' || $geto || '_' || $nou_ord_desbloquejos; $ref_desbloqueig = 'desbloqueig_' || $ref_bloqueig; $dades[ $ref_desbloqueig ] = $ord_desbloqueig; $dades[ $ord_desbloqueig || '_cicle' ] = $cicle_actual; $dades[ $ord_desbloqueig || '_data' ] = timestamp; $dades[ 'ordinal_desbloqueig_' || $geto ] = $nou_ord_desbloquejos; } } $registre = {}; $registre.dades = $dades; }", "messages": [ { "app": "data", "payload": "{ $registre }" }, { "app": "payment", "payload": { "asset": "base", "outputs": [ { "address": "{ $args._Registre }", "amount": "{ $__dada( 'Provisio' ) }" } ] } }, { "app": "state", "state": "{ response[ 'proces' ] = $proces; response[ 'operacio' ] = $operacio; }" } ] } ]
Technical information
Fees:
6,053 bytes
(452 headers, 5601 payload)
Level:2322385
Witnessed level:2322378
Main chain index:2310246
Latest included mc index:2310245
Status:stable/confirmed/final