| 1 | [ |
| 2 | "autonomous agent", |
| 3 | { |
| 4 | "init": "{ |
| 5 | $args = trigger.data; |
| 6 | $_Portal = $args._Portal; |
| 7 | $refcons = $args.refcons; |
| 8 | |
| 9 | $__dada = $refval => { |
| 10 | data_feed[[ oracles = $args._Registre, feed_name = $refval, ifnone = false ]] |
| 11 | }; |
| 12 | }", |
| 13 | "messages": [ |
| 14 | { |
| 15 | "app": "state", |
| 16 | "state": "{ |
| 17 | $geto = |
| 18 | $args.geto otherwise $__dada( 'geto_' || $args.idgeto ); |
| 19 | |
| 20 | $__dades_avis = () => { |
| 21 | $ref_avis = 'avis_' || $geto || '_' || $args.adr; |
| 22 | $ord_avis = $__dada( $ref_avis ); |
| 23 | $cicle_avis = $__dada( $ord_avis || '_cicle' ); |
| 24 | $data_avis = $__dada( $ord_avis || '_data' ); |
| 25 | $text_avis = $__dada( $ord_avis || '_text' ); |
| 26 | $origen = $__dada( 'Origen' ); |
| 27 | $interval = $__dada( 'Interval' ); |
| 28 | $cicle_actual = 1 + floor( ( timestamp - $origen ) / $interval ); |
| 29 | $avis_es_actual = ( $cicle_avis + 1 ) > $cicle_actual; |
| 30 | if ( !! $ord_avis ) { |
| 31 | response[ 'Cicle actual' ] = $cicle_actual; |
| 32 | response[ 'Data' ] = timestamp_to_string( $data_avis, 'date' ); |
| 33 | if ( $avis_es_actual ) { |
| 34 | response[ 'Hora' ] = timestamp_to_string( $data_avis, 'time' ); |
| 35 | response[ 'Cicle avís' ] = $cicle_avis; |
| 36 | response[ 'Darrer cicle visible' ] = $cicle_avis + 1; |
| 37 | response[ 'Avís' ] = $text_avis; |
| 38 | } else { |
| 39 | response[ 'Darrer Avís' ] = $text_avis; |
| 40 | response[ 'Darrer cicle visible' ] = $cicle_avis + 1; |
| 41 | } |
| 42 | } else |
| 43 | response[ 'No hi ha cap avís per a' ] = $args.adr; |
| 44 | }; |
| 45 | |
| 46 | $__dades_bloqueig = () => { |
| 47 | $ref_bloqueig = 'bloqueig_' || $geto || '_' || $args.adr; |
| 48 | $ord_bloqueig = $__dada( $ref_bloqueig ); |
| 49 | if ( !! $ord_bloqueig ) { |
| 50 | $cicle_bloqueig = $__dada( $ord_bloqueig || '_cicle' ); |
| 51 | $data_bloqueig = $__dada( $ord_bloqueig || '_data' ); |
| 52 | $ref_desbloqueig = 'desbloqueig_' || $ref_bloqueig; |
| 53 | $ord_desbloqueig = $__dada( $ref_desbloqueig ); |
| 54 | $cicle_desbloqueig = $__dada( $ord_desbloqueig || '_cicle' ); |
| 55 | $data_desbloqueig = $__dada( $ord_desbloqueig || '_data' ); |
| 56 | response[ 'Text' ] = $__dada( $ord_bloqueig || '_text' ); |
| 57 | response[ 'Cicle inici bloqueig' ] = $cicle_bloqueig; |
| 58 | response[ 'Hora' ] = timestamp_to_string( $data_bloqueig, 'time' ); |
| 59 | response[ 'Data' ] = timestamp_to_string( $data_bloqueig, 'date' ); |
| 60 | if ( !! $ord_desbloqueig ) { |
| 61 | response[ 'Desbloquejat' ] = $ref_desbloqueig; |
| 62 | response[ 'Cicle desbloqueig' ] = $cicle_desbloqueig; |
| 63 | response[ 'Hora' ] = timestamp_to_string( $data_desbloqueig, 'time' ); |
| 64 | response[ 'Data' ] = timestamp_to_string( $data_desbloqueig, 'date' ); |
| 65 | } |
| 66 | } else { |
| 67 | response[ 'Getó ' || $geto ] = 'Adreça ' || $args.adr || ' no bloquejada'; |
| 68 | } |
| 69 | }; |
| 70 | |
| 71 | response[ 'consulta' ] = $refcons; |
| 72 | |
| 73 | if ( $refcons == 'Dades_Geto' ) { |
| 74 | |
| 75 | if( ! $__dada( $geto || '_estat' ) ) bounce( 'Getó desconegut' ); |
| 76 | |
| 77 | $resp = $geto ? 'getó amb nom ' || $geto : 'getó amb id ' || $args.idgeto; |
| 78 | response[ 'Dades' ] = $resp; |
| 79 | |
| 80 | $ord_geto = $__dada( $geto ); |
| 81 | response[ 'Ordinal' ] = $ord_geto; |
| 82 | |
| 83 | if ( ! $ord_geto ) |
| 84 | response[ "No hi consta cap" ] = $resp; |
| 85 | |
| 86 | $data_implementacio = $__dada( $geto || '_data' ); |
| 87 | response[ 'Data implementació' ] = |
| 88 | timestamp_to_string( $data_implementacio, 'date' ); |
| 89 | |
| 90 | response[ 'Total emissions' ] = |
| 91 | $__dada( 'total_emesos_' || $geto ) otherwise 0; |
| 92 | |
| 93 | response[ 'Total Estels convertits' ] = |
| 94 | $__dada( 'total_estels_convertits_' || $geto ) otherwise 0; |
| 95 | |
| 96 | $refs = [ |
| 97 | 'id', 'estat', '_Capsa', 'topall', 'factor_conversio', |
| 98 | 'taxa_conversio', 'derivacio', 'import_activacio', |
| 99 | 'import_subscripcio', 'import_renovacio','cicles_diposit', |
| 100 | 'activacions_restringides', 'subscripcions_restringides', |
| 101 | 'recepcions_restringides', 'conversions_restringides', |
| 102 | 'contribucions_permeses', 'bonificacions_permeses', |
| 103 | 'atribucions_permeses', 'redefinible', |
| 104 | 'llistats_editables', 'bloqueig_permes', |
| 105 | '_AUT_A', '_AUT_B', '_AUT_C' |
| 106 | ]; |
| 107 | |
| 108 | $__resposta = $r => { |
| 109 | response[ $r ] = $__dada( $geto || '_' || $r ); |
| 110 | }; |
| 111 | |
| 112 | $resps = map( $refs, 24, $__resposta ); |
| 113 | } |
| 114 | |
| 115 | if ( $refcons == 'Avis' ) { |
| 116 | $__dades_avis(); |
| 117 | } |
| 118 | |
| 119 | if ( $refcons == 'Bloqueig' ) { |
| 120 | $__dades_bloqueig(); |
| 121 | } |
| 122 | |
| 123 | if ( $refcons == 'Capacitacio' ) { |
| 124 | $ref_capacitacio = $geto || '_' || $args.accio || '_' || $args.adr; |
| 125 | $capacitada = $__dada( $ref_capacitacio ) otherwise ''; |
| 126 | $secc = !! $capacitada ? ' ' : ' NO '; |
| 127 | response[ 'Ref' ] = $ref_capacitacio; |
| 128 | response[ 'Capacitacio' ] = 'Adreça' || $secc || 'capacitada per a ' || $args.accio || 'ns'; |
| 129 | } |
| 130 | |
| 131 | if ( $refcons == 'Geto_Pendent' ) { |
| 132 | $getons_pendents = var[ $_Portal ][ 'getons_pendents' ]; |
| 133 | response[ "Getó pendent d'inscripció" ] = $getons_pendents[ $geto ]; |
| 134 | } |
| 135 | |
| 136 | if ( $refcons == 'Emissions_Geto' ) { |
| 137 | $total_estels = $__dada( 'total_estels_convertits_' || $geto ) otherwise 0; |
| 138 | $total_geto = $__dada( 'total_emesos_' || $geto ) otherwise 0; |
| 139 | response[ 'Total Estels convertits en' || $geto ] = $total_estels || ' Estels'; |
| 140 | response[ 'Total ' || $geto || ' emesos'] = $total_geto || ' ' || $geto; |
| 141 | } |
| 142 | |
| 143 | if ( $refcons == 'Dades_Atribucio' ) { |
| 144 | $ord_atribucio = $__dada( $args.ref ); |
| 145 | $data_atribucio = $__dada( $ord_atribucio || '_data' ); |
| 146 | response[ 'Ref' ] = $args.ref; |
| 147 | response[ 'Ordinal' ] = $ord_atribucio; |
| 148 | response[ 'Quantitat' ] = $__dada( $ord_atribucio || '_qt' ); |
| 149 | response[ 'Geto' ] = $__dada( $ord_atribucio || '_geto' ); |
| 150 | response[ 'Rebedora' ] = $__dada( $ord_atribucio || '_rebedora' ); |
| 151 | response[ 'Requeriment' ] = $__dada( $ord_atribucio || '_unitat' ); |
| 152 | response[ 'Data' ] = timestamp_to_string( $data_atribucio, 'date' ); |
| 153 | } |
| 154 | |
| 155 | if ( $refcons == 'Romanent_Geto' ) { |
| 156 | $idgeto = $__dada( $geto || '_id' ); |
| 157 | $_Capsa = $__dada( $geto || '__Capsa' ); |
| 158 | response[ 'Id ' || $geto ] = $idgeto; |
| 159 | response[ 'Romanent en ' || $geto ] = balance[ $_Capsa ][ $idgeto ]; |
| 160 | } |
| 161 | }" |
| 162 | } |
| 163 | ] |
| 164 | } |
| 165 | ] |