| 1 | [ |
| 2 | "autonomous agent", |
| 3 | { |
| 4 | "init": "{\r |
| 5 | \r |
| 6 | $nom_AA = 'Cicles';\r |
| 7 | $versio = '0.0.1';\r |
| 8 | \r |
| 9 | $AA_PF = trigger.data.AA_PF;\r |
| 10 | $args = trigger.data;\r |
| 11 | \r |
| 12 | \r |
| 13 | |
| 14 | \r |
| 15 | $interval_cicles = var[ $AA_PF ][ 'Interval_Cicles' ];\r |
| 16 | \r |
| 17 | \r |
| 18 | |
| 19 | \r |
| 20 | |
| 21 | if ( ! is_aa( trigger.address ) ) { bounce ( $nom_AA || ': no AA' ); }\r |
| 22 | \r |
| 23 | |
| 24 | $adr_AA = var[ $AA_PF ][ '_AA_' || $args.accio ];\r |
| 25 | $_AA_Transfers = var[ $AA_PF ][ '_AA_Transfers' ];\r |
| 26 | if ( trigger.address != $adr_AA AND trigger.address != $_AA_Transfers ) { bounce ( $nom_AA || ': AA no autoritzat' ); }\r |
| 27 | \r |
| 28 | |
| 29 | |
| 30 | \r |
| 31 | if ( ! var[ 'cicle_actual' ] ) { \r |
| 32 | $nou_cicle = 1; \r |
| 33 | $nova_data = timestamp; \r |
| 34 | $nova_data_cicle_anterior = 0;\r |
| 35 | } else { \r |
| 36 | $cicle_actual = var[ 'cicle_actual' ]; \r |
| 37 | $data_cicle_actual = var[ 'data_cicle_actual' ]; \r |
| 38 | $data_cicle_anterior = var[ 'data_cicle_anterior' ];\r |
| 39 | if ( $interval_cicles < ( timestamp - $data_cicle_actual ) ) {\r |
| 40 | $nou_cicle = $cicle_actual + 1;\r |
| 41 | $nova_data = timestamp;\r |
| 42 | $nova_data_cicle_anterior = $data_cicle_actual; \r |
| 43 | } else {\r |
| 44 | $nou_cicle = $cicle_actual;\r |
| 45 | $nova_data = $data_cicle_actual;\r |
| 46 | $nova_data_cicle_anterior = $data_cicle_anterior; \r |
| 47 | }\r |
| 48 | } \r |
| 49 | }", |
| 50 | "messages": [ |
| 51 | { |
| 52 | "app": "state", |
| 53 | "state": "{\r |
| 54 | var[ 'cicle_actual' ] = $nou_cicle;\r |
| 55 | var[ 'data_cicle_actual' ] = $nova_data;\r |
| 56 | var[ 'data_cicle_anterior' ] = $nova_data_cicle_anterior;\r |
| 57 | }" |
| 58 | } |
| 59 | ] |
| 60 | } |
| 61 | ] |