lfile(''.$log_fitxer.''); $log->lwrite("Estàn activades les respostes a les mencions."); // preparatius i variables comunes $resposta = ConsultaNotificacions($token,$base_url,$limit_m,$headers); $tmc = microtime(true); $dcon = $tmc - $tm; $nr = count($resposta); $menc_mat = array(); $d = 0; for ($d = 0; $d < $nr; $d++) { // triar les variables que volem de la matriu $men_id = $resposta[$d]['id']; $mencio = $resposta[$d]['type']; $men_tp = $resposta[$d]['created_at']; $usu_id = $resposta[$d]['account']['id']; $usu_ac = $resposta[$d]['account']['acct']; // $usu_no = $resposta[$d]['account']['username']; // $usu_dp = $resposta[$d]['account']['display_name']; if ($mencio == "mention") { $mis_id = $resposta[$d]['status']['id']; } else { $mis_id = 0; } $menc_mat[] = array ( 'id' => (int)$men_id, 'mis_id' => (int)$mis_id, 'qui' => $usu_ac, 'mencio' => $mencio, 'quan' => $men_tp ); // } // echo "tipus de menció ".$d.": ".$mencio." i nº ".$men_id." - qui: ".$qui."\n"; // sleep(1); } $nombre_matriu = count($menc_mat); $men_resp = null; //if($nombre_matriu >= 1) { // llegir fitxer per evitar repeticions $mencio_arx = shell_exec("cat ".$lloc."/fitxers/mencions_r.txt"); // verificar que un usuari fa més d'una volta la mateixa acció (?); $e = 0; $nm = 0; $num_seg = 0; $mr = 0; for ($e = 0; $e < $nombre_matriu; $e++) { $m_id = $menc_mat[$e]['id']; $miss_id = $menc_mat[$e]['mis_id']; $usuari= $menc_mat[$e]['qui']; $mencio_t= $menc_mat[$e]['mencio']; $temps = $menc_mat[$e]['quan']; $mencio_arx = shell_exec("cat ".$lloc."/fitxers/mencions_r.txt"); $no_repetir = strpos($mencio_arx,$miss_id); if ($mencio_t == "mention") { // if ( ($mencio_t == "mention") && ($mis_id <>0)) { $no_repetir = strpos($mencio_arx,$miss_id); // echo "no repetir: ".$e."|".$usuari."|".$no_repetir."\n"; // $log->lwrite("no repetir: ".$e."|".$usuari."|".$no_repetir.""); // sleep(2); if( ($no_repetir === false) ) { // echo "menció de : ".$usuari." - ".$mencio_t." - ".$miss_id."\n"; if (is_int($miss_id/7)) { $men_resp = "Ja em disculparàs, @".$usuari." soc un bot :cli_user: amb la versió ".$bot_versio." i encara no converse. \nDe tota manera, moltes gràcies per la teua menció.\n🤖 #SocUnBot"; } elseif (is_int($miss_id/5)) { $men_resp = "Moltes gràcies per la menció, @".$usuari.".:cli_user:\n Soc ".$bot_nom." v".$bot_versio." :cli_user:\n🤖 #SocUnBot"; } elseif (is_int($miss_id/3)) { $men_resp = "He vist que m'has mencionat, @".$usuari." i et done les gràcies.:cli_user:\n Soc ".$bot_nom." v".$bot_versio." :cli_user:\n🤖 #SocUnBot"; } elseif (is_int($miss_id/2)) { $men_resp = "Agraït per la menció, @".$usuari.".:cli_user:\n Soc ".$bot_nom." v".$bot_versio." :cli_user:\n🤖 #SocUnBot"; } else { $men_resp = "Gràcies per mencionar-me, @".$usuari.". Soc ".$bot_nom." i la meua versió és ".$bot_versio." :cli_user:.\n🤖 #SocUnBot"; } $en_resposta = $miss_id; if ( ($men_resp != null) ) { if($act_mencio_resp == 1) { // Publica a Mastodon $dades_tut = array( "status" => $men_resp, "language" => $llengua, "visibility" => $visib_mencs, "in_reply_to_id" => $en_resposta ); //print_r($status_data); //sleep(10); PublicaMissatge($headers,$base_url,$dades_tut); $log->lwrite("NOVA MENCIO: ".$men_resp." : ".$usuari." - id: ".$en_resposta." "); } $decisio = TriaOpcio($en_resposta); if( ($decisio == 1) || ($decisio == 2) || ($decisio == 3) || ($decisio == 4) || ($decisio == 5) || ($decisio == 8) || ($decisio == 9) ) { //if(is_int($en_resposta/2)) { FesRebloc($base_url,$en_resposta,$headers); $heoptat = "he fet impuls"; //print_r($fav_output_status); } elseif( ($decisio == 6) || ($decisio == 7) || ($decisio == 10) ) { FesFavorit($base_url,$en_resposta,$headers); $heoptat = "he fet favorit"; } else { FesFavorit($base_url,$en_resposta,$headers); FesRebloc($base_url,$en_resposta,$headers); $heoptat = "he fet impuls i favorit"; //print_r($reb_output_status); } // escriu la menció al fitxer per no repetir-la $escriu_mencions = fopen($lloc."/fitxers/mencions_r.txt", "a") or die("No puc escriure al registre!"); fwrite($escriu_mencions, $en_resposta."\n"); fclose($escriu_mencions); //echo "".$men_resp." - id: ".$en_resposta." "; $escriu_mencions_detall = fopen($lloc."/fitxers/mencions.txt", "a") or die("No puc escriure al registre!"); fwrite($escriu_mencions_detall, $m_id."-".$en_resposta."-".$usuari."-".$mencio_t."-".$temps."\n"); fclose($escriu_mencions_detall); // echo "He escrit ". $m_id."-".$en_resposta."-".$usu_ac."-".$temps."\n"; $mr++; } $menc_mat_f[] = array( 'id' => (int)$m_id, 'mis_id' => (int)$miss_id, 'qui' => $usuari, 'mencio' => $mencio_t, 'quan' => $temps ); $nm++; // echo "nm: ".$nm."\n"; $log->lwrite("NOVA MENCIO: ".$usuari." - id: ".$en_resposta." ".$mencio_t." ".$heoptat); // final missatge no es nul } //final no repetir } // final bucle for } /** if($nm>=1) { $fes_json = json_encode($menc_mat_f, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES|JSON_OBJECT_AS_ARRAY); $escriu_f_json = fopen($lloc."/fitxers/mencions.json", "a") or die("No puc escriure al registre!"); fwrite($escriu_f_json, $fes_json); fclose($escriu_f_json); } **/ // $menc_json_actual = shell_exec("php /proves/proves_mencions_json.php."); //print_r($output_status); //} //echo $nm."\n"; //final if publicat // } // final condicional per estalviar temps(?) //} //$impuls = shell_exec("php ".$lloc."/proves/proves_mencions_json.php ".$lloc); // fer la matriu de les dades existents al json if ($nm > 0) { //$usa_json = exec("php ".$lloc."/proves/proves_impulsos_json.php ".$lloc , $eix_usa_json, $resp_usa_json); $usa_json = shell_exec("php ".$lloc."/proves/proves_mencions_json.php ".$lloc); } //retalle a un màxim de 40 linies $fit_mencions = $lloc."/fitxers/mencions_r.txt"; $lin_men = count(file($fit_mencions)); if($lin_men > 60) { $net_men0 = shell_exec("tail -60 ".$lloc."/fitxers/mencions_r.txt | tee ".$lloc."/fitxers/mencions_r.txt"); $net_men1 = shell_exec("tail -60 ".$lloc."/fitxers/mencions.txt | tee ".$lloc."/fitxers/mencions.txt"); } $tmf = microtime(true); $dm = $tmf - $tm; //echo "Temps mencions: ".round($dm,4).""; $log->lwrite("Temps mencions: ".round($dm,4).""); // afegir aqui i arrancar els impulsos? ?>