diff --git a/configuracio/bot_plus.php b/configuracio/bot_plus.php deleted file mode 100644 index b42bc11..0000000 --- a/configuracio/bot_plus.php +++ /dev/null @@ -1,605 +0,0 @@ -lfile("/var/log/mastodon_bot.log"); -$log->lfile("".$log_fitxer.""); - -if ( ($log_detall == "DETALLAT") || ($log_detall == "COMPLET") ) { - $log -> lwrite ("INICIE ".$bot_nom." ".$bot_versio.""); - $log -> lwrite ("Entre a ".$lloc." per a iniciar el procés."); -} else { - $log -> lwrite ("INICIE ".$bot_nom." ".$bot_versio.""); -} -// guarda la opció de visib_tut a un fitxer - // Escriu la opció de visib_tut al fitxer (cal per reiniciar les opcions de visib_tut de les publicacions) - $vis_escr = fopen($lloc . "/fitxers/compte_vis.txt", "w") or die("No puc obrir el contador!"); - if ($log_detall == "DETALLAT") { $log -> lwrite ($lloc . "/fitxers/compte_vis.txt "); } - fwrite($vis_escr, $visib_tut); - fclose($vis_escr); - - -// bucle de microsites -$pt = 0; -$f = 0; -// Nombre segons les fonts. (1,2 o 3 màxim definides a cfg primer) -for ($f = 0; $f<$fitxers_nombre; $f++) { - if ($f == 0) { $fitxer = $fitxer0; } - if ($f == 1) { $fitxer = $fitxer1; } - if ($f == 2) { $fitxer = $fitxer2; } - if ($f == 3) { $fitxer = $fitxer3; } - // Obtenim la font XML/RSS 2.0 - $feed = new ExportRSS($fitxer , "2.0"); - $channel = $feed->get_channel_data(); - // fer detecció de la errada i enviar un correu si falla. -/** - if($act_correu == 1) { - $msg = "Errada en obtindre font RSS".>$f.""; - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } -**/ - // variables per a fer la matriu del que arriba del fitxer XML/RSS 2.0 - $i = 0; - $j = 0; - $n = 0; - $llista = array(); - foreach ($feed->get_data() as $item) { - $id = $i; - $titol = $item['title']; - $data = $item['date']; - $descripcio = $item['description']; - $enllac = $item['link']; -// prepare els filtres per generar la matriu -// filtre les URL que continguen estes paraules -// (str_contains($enllac,"programes")) || - if ( (str_contains($enllac, $p0)) || - (str_contains($enllac, $p1)) || - (str_contains($enllac, $p2)) || - (str_contains($enllac, $p3)) || - (str_contains($enllac, $p4)) || - (str_contains($enllac, $p5)) || - (str_contains($enllac, $p6)) || - (str_contains($enllac, $p7)) || - (str_contains($enllac, $p8)) || - (str_contains($enllac, $p9)) || - (str_contains($enllac, $p10)) || - (str_contains($enllac, $p11)) || - (str_contains($enllac, $p12)) || - (str_contains($enllac, $p13)) || - (str_contains($enllac, $p14)) || - (str_contains($enllac, $p15)) || - (str_contains($enllac, $p16)) ) { - if ( (strpos($enllac,$np0) == false)||(strpos($enllac,$np1)) ) { - $tria = 1; - $n++; - } else { - $tria = 0; - } - } else { $tria = 0; } - //genere la matriu amb les dades filtrades - if ($tria == 1) { - $llista[] = array( - "id"=>$id, - "num"=>$n, - "titol"=>(string) $item["title"], - "descripcio"=>(string) $item["description"], - "enllac"=>(string) $item["link"], - "pub"=>(string) $item["date"] - ); - $j++; - } - $i++; - } - // cronometre - $temps1 = microtime(true); - if ( ($log_detall == "DETALLAT") || ($log_detall == "COMPLET") ) { - $log -> lwrite ("Generada la matriu de RSS".$f.""); - $duradaa = $temps1 - $temps; - if($duradaa < 60) { $duradaa = round($duradaa,4); $nomt = "segons"; } - else { $duradaa = date("i:s",$duradaa); $nomt = "minuts"; } - $log -> lwrite("Temps matriu: ".$duradaa." ".$nomt.""); - } - if ($log_detall == "COMPLET") { - $log -> lwrite ("La matriu RSS".$f." conté ".$j." registres."); - } else { - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite ("Generada la matriu de RSS".$f.""); - } - } - - if (count($llista) === 0) { - $log->lwrite("ERRADA: no he pugut generar la matriu de la font RSS. Acabe esta execució."); - $errada_tecnica = shell_exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_erradatecnica.php ".$lloc.""); - $log -> lwrite ("FINAL!! ".$bot_nom." ".$bot_versio.""); - exit; - } - -// a voltes (?!) el fitxer registre queda buit. No sé el motiu. -// per evitar-ho verifique el tamany i si és 0 o menor de max_linies inclou les darreres de la matriu llevat de la primera -$reg_tam = filesize("".$lloc."/fitxers/dates.txt"); -$reg_lin = count(file("".$lloc."/fitxers/dates.txt")); - -if (($reg_tam == 0) || ($reg_lin < ($max_linies-$max_linies_ad)) ) { -$log -> lwrite ("ALERTA! El fitxer de dates te ".$reg_lin." linies. Cal posar dates abans de la comparació."); -$recuperar = 1; -} else { $recuperar = 0; } -// if (($reg_tam == 0) || ($reg_lin < ($max_linies-$max_linies_ad)) ) { - if ($recuperar == 1) { -// $log -> lwrite ("ALERTA! El fitxer de dates te ".$reg_lin." linies. Cal posar dates abans de la comparació."); -// per recuperar dades de les diferents fonts rss ? - $reg_lin = count(file("".$lloc."/fitxers/dates.txt")); - if ($reg_lin < ($max_linies-10)) { - $c = 1; - // guarda les dates de les publicació de la matriu en el dates.txt - // utilitze $j que és el comptador de les dades de la matriu ja filtrada si no fa registres buits - for( $c = 1; $c<$j ; $c++ ) { - $escriu_magatzem = fopen($lloc . "/fitxers/dates.txt", "a") or die("No puc escriure al registre!"); - fwrite($escriu_magatzem, strtotime($llista[$c]['pub'])." ".$llista[$c]['pub']."\n"); - fclose($escriu_magatzem); - //$log -> lwrite ("Escrita linia ".$c." data ".strtotime($llista[$c]['pub'])." ".$llista[$c]['pub']." "); - } -// } - // recuperar la còpia de seguretat - $copia_seguretat_rec = shell_exec("cat ".$lloc."/fitxers/dates.bak >> ".$lloc."/fitxers/dates.txt"); -// $copia_seguretat_rec_url = shell_exec("cat ".$lloc."/fitxers/urls_pub.bak >> ".$lloc."/fitxers/urls_pub.txt"); - } - } else { -// $log -> lwrite ("El fitxer registre OK."); -// $log -> lwrite("INFO: comprovar: ".(($resposta_comprovar == 0)?"correcte":"ERRADA")." - url_hist: ".((($url_hist!=null) )?"correcte":"ERRADA").""); - if ( ($log_detall == "DETALLAT") || ($log_detall == "COMPLET") ) { -// echo "El fitxer de registre té un tamany de ".$reg_tam." bytes."; - $log -> lwrite ("El fitxer de registre té tamany de ".$reg_tam." bytes."); - } - } - -$url_tam = filesize("".$lloc."/fitxers/urls_pub.txt"); -$url_lin = count(file("".$lloc."/fitxers/urls_pub.txt")); -$url_tam_b = filesize("".$lloc."/fitxers/urls_pub.bak"); -$url_lin_b = count(file("".$lloc."/fitxers/urls_pub.bak")); - - if ( ($url_tam == 0) || ($url_lin < (($max_linies+$max_linies_ad)-10)) ) { - $log -> lwrite ("ALERTA! El fitxer de url te ".$url_lin." linies. Cal posar-ne més."); - if ($url_lin_b >= $url_lin) { - $copia_seguretat_rec_url = shell_exec("cat ".$lloc."/fitxers/urls_pub.bak >> ".$lloc."/fitxers/urls_pub.txt"); - $c = 1; - // guarda les dates de les publicació de la matriu en el dates.txt - // utilitze $j que és el comptador de les dades de la matriu ja filtrada si no fa registres buits - for( $c = 1; $c<$j ; $c++ ) { - $escriu_url = fopen($lloc . "/fitxers/urls_pub.txt", "a") or die("No puc escriure al registre!"); - fwrite($escriu_url, $llista[$c]['enllac']."\n"); - fclose($escriu_url); - //$log -> lwrite ("Escrita linia ".$c." data ".strtotime($llista[$c]['pub'])." ".$llista[$c]['pub']." "); - } - } else { - if ( ($log_detall == "DETALLAT") || ($log_detall == "COMPLET") ) { - $log -> lwrite ("El fitxer de urls té un tamany de ".$url_tam." bytes."); - } - } - } -// generar cadena comprovar amb les dates recuperades -// $comprovar = shell_exec("cat ".$lloc."/fitxers/dates.txt"); - $comprovar = exec("cat ".$lloc."/fitxers/dates.txt",$eixida_comprovar,$resposta_comprovar); - $comprovar = implode(" ",$eixida_comprovar); -// $comp_bo = is_string($comprovar); -// $log -> lwrite("valor comp_bo: ".$comp_bo.""); - $url_hist = shell_exec("cat ".$lloc."/fitxers/urls_pub.txt"); - $url_hist = preg_replace('/[^A-Za-z0-9\-]/','',$url_hist); - $url_hist = preg_replace('/https/',' ',$url_hist); -//// $log -> lwrite("INFO: comprovar: ".((($comprovar !== null)||($comprovar !== false))?"correcte":"ERRADA")." - url_hist: ".((($url_hist!=null) )?"correcte":"ERRADA").""); -//// $log -> lwrite("INFO: comprovar: ".((($resposta_comprovar == 0)&&($comp_bo == 1))?"correcte":"ERRADA")." - url_hist: ".((($url_hist!=null) )?"correcte":"ERRADA").""); -// $log -> lwrite("INFO: comprovar: ".(($resposta_comprovar == 0)?"correcte":"ERRADA")." - url_hist: ".(($url_hist!=null)?"correcte":"ERRADA").""); - - $reg_fit = "".$lloc."/fitxers/dates.txt"; - $reg_lin = count(file($reg_fit)); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite ("Abans ".$reg_fit." té ".$reg_lin." linies."); - } - -// cadena per trobar la data de les darreres publicades -// si troba la cadena amb strpos NO publica, si no la troba, PUBLICA - $c = 0; - $n = $j-1; - $w = 0; - $p = 0; - $verifica = 0; - for( $c = 0; $c<$n ; $c++ ) { - -// cadena numerica de temps per comparar - $rss_ara = strtotime($llista[$c]['pub']); - $rssu_ara = $llista[$c]['enllac']; - $rssu_ara = preg_replace('/[^A-Za-z0-9\-]/','',$rssu_ara); - $rssu_ara = preg_replace('/https/',' ',$rssu_ara); - $rsst_ara = $llista[$c]['titol']." ".$llista[$c]['descripcio']." ".$llista[$c]['enllac']." "; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "rss_ara: ".$rss_ara."\n"; - $log -> lwrite ("Contingut de rss_ara: ".$rss_ara); - } -// $verifica = strpos($comprovar,$rss_ara); - $verifica = strpos($comprovar,$rss_ara); - $mira_url = strpos($url_hist,$rssu_ara); - if ( ($log_detall == "COMPLET") ) { -// echo "Contingut de verifica num: ".$c." - ".$verifica."\n"; - $log -> lwrite ("Contingut de verifica num: ".$c." - ".$verifica); - $log -> lwrite ("Contingut de mira_url num: ".$c."|".$rssu_ara."|".$mira_url); - } - // Obre el fitxer del compte per trobar el nombre guardat i generar new_count (si no fa error) - $compt_lle = fopen($lloc . "/fitxers/compte_pub.txt", "r") or die("No puc obrir el contador!"); - $compt_dar = fread($compt_lle,filesize($lloc . "/fitxers/compte_pub.txt")); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "
Últim registre: " . $compt_dar; - $log -> lwrite ("Últim registre: " . $compt_dar . " (5)"); - } - fclose($compt_lle); - $compt_nou = $compt_dar; - // Defineix la visib_tut segons el contador - $count_factor = $compt_nou/$public_freq; - -// incloure aqui filtre d'un mes per publicar (ara on està fa falsos positius(?) - if (($verifica !== false) || ($mira_url !== false)) { -// if ($verifica !== false) { - // posar aqui la generació de count_factor? -// echo "No publica num : ".$c." ".$llista[$c]['titol']."\n"; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite ("No publica num: ".$c." ".$llista[$c]['titol']); - } - if($act_etiquetes == 1) { - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite("Etiqueta triada: ".MstEtiquetes($rsst_ara)." "); - } - } - } else { -// echo "PUBLICA -> (rss".$f.") nº:".$c." ".$llista[$c]['titol']."\n"; - $log -> lwrite ("PUBLICA (rss".$f.") num: ".$c." ".$llista[$c]['titol']); - //guarda la data de la publicació en el dates.txt - $escriu_magatzem = fopen($lloc . "/fitxers/dates.txt", "a") or die("No puc escriure la data!"); - fwrite($escriu_magatzem, strtotime($llista[$c]['pub'])." ". $llista[$c]['pub']."\n"); - fclose($escriu_magatzem); - //guarda la URL de la publicació en el urls_pub.txt - $escriu_url = fopen($lloc . "/fitxers/urls_pub.txt", "a") or die("No puc escriure la url!"); - fwrite($escriu_url, $llista[$c]['enllac']."\n"); - fclose($escriu_url); - // genera la publicació (activació d'etiquetes o no) - if ($act_etiquetes == 1) { - $publicacio = $llista[$c]['titol']." \n".$llista[$c]['descripcio']." ".MstEtiquetes($rsst_ara)." \n".$llista[$c]['enllac'].""; - $log -> lwrite("Etiqueta triada: ".MstEtiquetes($rsst_ara).""); - } else { - $publicacio = $llista[$c]['titol']."\n".$llista[$c]['descripcio']."\n".$llista[$c]['enllac'].""; - $log -> lwrite("Etiqueta proposada: ".MstEtiquetes($rsst_ara).""); - } - // Defineix la visib_tut segons el nombre indicat en la configuració - // Obre el fitxer del compte per trobar el nombre guardat - $compt_nou=$compt_dar+1; -// echo "
Nou registre: " . $compt_nou; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite ("Nou registre: " .$compt_nou . " (6)"); - } - // Escriu el nou nombre al fitxer - $compt_esc = fopen($lloc . "/fitxers/compte_pub.txt", "w") or die("No puc obrir el contador!"); - if ( ($log_detall == "DETALLAT") ) { - $log -> lwrite ($lloc . "/fitxers/compte_pub.txt"); - } - fwrite($compt_esc, $compt_nou); - fclose($compt_esc); - // Defineix la visib_tut segons el contador - $count_factor = $compt_nou/$public_freq; - if ( ($log_detall == "DETALLAT") ) { - $log -> lwrite ("count_factor: " .$count_factor. " (8)"); - $log -> lwrite ("resultat filtre: ".is_int($count_factor)." (9)"); - } - // reinicia la opció de visib_tut des del fitxer de txt - $vis_ll = fopen($lloc . "/fitxers/compte_vis.txt", "r") or die("No puc obrir el contador!"); - $vis_lect = fread($vis_ll,filesize($lloc . "/fitxers/compte_vis.txt")); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "
Visibilitat des del fitxer: " . $vis_lect; - $log -> lwrite ("Visibilitat des del fitxer: " . $vis_lect . " (10)"); - } - fclose($vis_ll); - - // recupera segons la configuració - $visib_tut = $vis_lect; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite("Variable visib_tut cfg: ".$visib_tut.""); - } - if(is_int($count_factor)){ - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "
Visibilitat: " . $visib_tut ."\n"; - $log -> lwrite ("Visibilitat: " .$visib_tut . " (11)"); - } - }else{ - $visib_tut="unlisted"; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "
Visibilitat: " . $visib_tut ."\n"; - $log -> lwrite ("Visibilitat: " .$visib_tut . " (12)"); - } - } - - if( (strtotime("now") - $rss_ara) < 1900800 ) { - - // Publica a Mastodon - // passat per cfg -// $headers = [ -// "Authorization: Bearer " . $token -// ]; - - $dades_tut = array( - "status" => $publicacio, - "language" => $llengua, - "visibility" => $visib_tut - ); - - PublicaMissatge($base_url,$headers,$dades_tut); - - $p++; - $pt++; - sleep($espera_tut+30); - - } - $w++; - // final if 1 mes - } - //final publicació (else) - } - - // dronometre - $temps2 = microtime(true); - $duradab = $temps2 - $temps1; - if ($p >= 1) { - // escriu la data de la darrera publicació - $data_tam = filesize($lloc."/fitxers/data_pub.txt"); -// echo "data_tam: ".$data_tam."\n"; - $data_esc = fopen($lloc . "/fitxers/data_pub.txt", "w+") or die("No puc obrir el contador!"); - $data_ant = fread($data_esc,filesize("".$lloc ."/fitxers/data_pub.txt")); - $data_nova = strtotime("now"); - - fwrite($data_esc, $data_nova); - fclose($data_esc); - $log -> lwrite("data_pub actualitzada: ".$data_nova ); -// TriaOpcio($data_nova); -// $log -> lwrite("prova de TriaOpcio: ".TriaOpcio($data_nova)."" ); - -// $log -> lwrite("data_pub actualitzada: ".$data_nova." | ".date("d-m-Y H:i:s",$data_nova) ); - -/** - // Torna a llegir el fitxer data_pub (moure davat execució?) - $data_lle = fopen($lloc . "/fitxers/data_pub.txt", "r") or die("No puc obrir la darrera data!"); - $data_ant = fread($data_lle,filesize($lloc . "/fitxers/data_pub.txt")); - $data_com = strtotime($espera_coment); - $data_ara = strtotime("now"); - $data_dif = ($data_com - $data_ara); - $data_ina = ($data_ara - $data_ant); - fclose($data_lle); -**/ - // per tallar l'execució si dura més de 10 minuts i evita solapar execucions - if ($duradab > 540) { exit; } - if($duradab < 60) { $duradab = round($duradab,4); $nomt = "segons"; } - else { $duradab = date("i:s",$duradab); $nomt = "minuts"; } - $log->lwrite("He publicat ".$p." ".(($p<>1)?"novetats":"novetat")." (rss".$f.") en ".$duradab." ".$nomt."." ); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// $log -> lwrite("Temps publicació: ".$duradab." ".($duradab < 60)? "segons.":"minuts.")."" ); - $log -> lwrite("Temps publicació: ".$duradab." ".$nomt."." ); - } - } else { -// echo "NO he publicat res (rss".$f .").\n"; - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite ("NO he publicat res (rss".$f.")."); - } - } - -// final for multimicrosite -} -/** -// dronometre -$temps2 = microtime(true); -$duradab = $temps2 - $temps1; - -$log->lwrite("Temps RSS".$f." i publicació: ".round($duradab,4).""); -**/ -//retalle a un màxim de $max_linies -$registre = "".$lloc."/fitxers/dates.txt"; -$linies = count(file($registre)); -$urls_reg = "".$lloc."/fitxers/urls_pub.txt"; -$lin_urls = count(file($urls_reg)); - -if ( ($linies > $max_linies) || ($lin_urls > ($max_linies+$max_linies_ad)) || ($pt >= 1) ){ -// actualitze el fitxer de registre -// per a que siguen les primeres cal canviar tail per head -// retalla dates - $neteja = shell_exec("tail -".$max_linies." ".$lloc."/fitxers/dates.txt | sort | uniq | tee ".$lloc."/fitxers/dates.txt"); -// $neteja = exec("tail -".$max_linies." ".$lloc."/fitxers/dates.txt | sort | uniq | tee ".$lloc."/fitxers/dates.txt", $eixida_n, $resposta_n); - if ( ($neteja == null)||($neteja == false) ) { -// $log -> lwrite("ALERTA: Ha fallat la neteja de dates.txt"); - $log -> lwrite("INFO: neteja: ".(($neteja != null)?"correcte":"ERRADA").""); - $msg = "INFO: neteja: ".(($neteja != null)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } -// còpia de seguretat dates - $dat_a = shell_exec("wc -l ".$lloc."/fitxers/dates.txt | awk '{print $1}'"); -// $dat_a = exec("wc -l ".$lloc."/fitxers/dates.txt | awk '{print $1}'", $eixida_dat_a, $resposta_dat_a); - if ($dat_a == null) { - $log -> lwrite("INFO: dat_a: ".(($dat_a != null)?"correcte":"ERRADA").""); - } - $dat_an = explode("\n", $dat_a); - $dat_b = shell_exec("wc -l ".$lloc."/fitxers/dates.bak | awk '{print $1}'"); -// $dat_b = exec("wc -l ".$lloc."/fitxers/dates.bak | awk '{print $1}'", $eixida_dat_b, $resposta_dat_b); - if ($dat_b == null) { - $log -> lwrite("INFO: dat_b: ".(($dat_b != null)?"correcte":"ERRADA").""); - } - $dat_bn = explode("\n", $dat_b); -// $log->lwrite("".$dat_an[0].":".$dat_bn[0].""); - if ($dat_an >= $dat_bn) { -// $copia_seguretat_dat = shell_exec("sort ".$lloc."/fitxers/dates.txt > ".$lloc."/fitxers/dates.bak"); - $copia_seguretat_dat = exec("cat ".$lloc."/fitxers/dates.txt > ".$lloc."/fitxers/dates.bak", $eixida_cs, $resposta_cs); -// if (($copia_seguretat_dat !=null) || ($copia_seguretat_dat !=false)) { -// $log -> lwrite("INFO: copia_seguretat_dat contesta: ".( (($copia_seguretat_dat != null)||($copia_seguretat_dat != false))?"correcte":"ERRADA").""); - if ($resposta_cs !=0) { - $log -> lwrite("INFO: copia_seguretat_dat: ".( (($resposta_cs == 0))?"correcte":"ERRADA").""); - } - } -// retalla urls -// $net_url = exec("tail -".($max_linies + $max_linies_ad)." ".$lloc."/fitxers/urls_pub.txt | tee ".$lloc."/fitxers/urls_pub.txt", $eixida_nu,$resposta_nu); - $net_url = shell_exec("tail -".($max_linies + $max_linies_ad)." ".$lloc."/fitxers/urls_pub.txt | tee ".$lloc."/fitxers/urls_pub.txt"); - if ( ($net_url == null)||($net_url == false) ){ - $log -> lwrite("INFO: net_url: ".(($net_url != null)?"correcte":"ERRADA").""); - $msg = "INFO: net_url: ".(($net_url != null)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } -//fer còpia de seguretat urls - $urls_a = shell_exec("wc -l ".$lloc."/fitxers/urls_pub.txt | awk '{print $1}'"); -// $urls_a = exec("wc -l ".$lloc."/fitxers/urls_pub.txt | awk '{print $1}'",$eixida_urls_a,$resposta_urls_a); - if ($urls_a == null) { - $log -> lwrite("INFO: urls_a: ".((($urls_a !=null)||($urls_a != false)) ?"correcte":"ERRADA").""); - } - $urls_an = explode("\n", $urls_a); - $urls_b = shell_exec("wc -l ".$lloc."/fitxers/urls_pub.bak | awk '{print $1}'"); -// $urls_b = exec("wc -l ".$lloc."/fitxers/urls_pub.bak | awk '{print $1}'",$eixida_urls_a,$resposta_urls_b); - if ($urls_b == null) { - $log -> lwrite("INFO: urls_b: ".((($urls_b !=null)||($urls_b != false)) ?"correcte":"ERRADA").""); - } - $urls_bn = explode("\n", $urls_b); - if ($urls_an >= $urls_bn) { -// $copia_seguretat_url = shell_exec("cat ".$lloc."/fitxers/urls_pub.txt > ".$lloc."/fitxers/urls_pub.bak"); - $copia_seguretat_url = exec("cat ".$lloc."/fitxers/urls_pub.txt > ".$lloc."/fitxers/urls_pub.bak", $eixida_csu, $resposta_csu); - if ($resposta_csu !=0) { - $log -> lwrite("INFO: copia_seguretat_url: ".(($resposta_csu == 0)?"correcte":"ERRADA").""); - } - } -} else { - echo "El fitxers de dates i urls OK.\n"; -// $log -> lwrite ("Els fitxer de dates ".$cop_seg_dat." i el de urls ".$cop_seg_url."."); -} - // cronometre - $temps3 = microtime(true); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $duradad = $temps3 - $temps2; - $log -> lwrite("Temps retall registre: ".round($duradad,4)." segons."); - } -// $neteja = shell_exec("tail -". $w ." " . $lloc . "/fitxers/dates.txt | tee ".$lloc."/fitxers/dates.txt"); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { -// echo "Retalle el registre.\n"; - $log -> lwrite ("Retalle el registre."); - if ( ($log_detall == "COMPLET") ) { -// echo "El fitxer de registre té ".$linies." línies, el retalle i deixe les ".$max_linies." darreres dates\n"; - $log -> lwrite ("El fitxer de registre té ".$linies." línies, el retalle i deixe les ".$max_linies." darreres dates."); - } - } - -// per donar la benvinguda als nous seguidors - if ($act_bencom == 1) { -// $log -> lwrite("Arranque benvinguda."); -// $gracies = shell_exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_benvinguda.php ".$lloc.""); - $gracies = exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_benvinguda.php ".$lloc."", $eixida_gr, $resposta_gr); - // per verificar que exec funciona correctament - if ($resposta_gr != 0) { - $log -> lwrite("INFO: benvinguda: ".(($resposta_gr == 0)?"correcte":"ERRADA").""); - $msg = "INFO: benvinguda: ".(($resposta_gr == 0)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } - } - $temps4 = microtime(true); - - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $duradae = $temps4 - $temps3; - if ($duradae < 60) { $duradae = round($duradae,4); $nomt = "segons"; } - else { $duradae = date("i:s",$duradae); $nomt = "minuts"; } - $log -> lwrite("Temps benvinguda: ".$duradae." ".$nomt.""); - } -// contestar a les mencions -if ($act_mencio == 1) { -// $resp_mencio = shell_exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_mencions.php ".$lloc); - $resp_mencio = exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_mencions.php ".$lloc."", $eixida_menc, $resposta_menc); -// per verificar que exit ha funcionat - if ($resposta_menc !=0) { - $log -> lwrite("INFO: mencions: ".(($resposta_menc == 0)?"correcte":"ERRADA").""); - $msg = "INFO: mencions: ".(($resposta_menc == 0)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } -} - -// fer comentrais segons el temps d'inactivitat -// calcul del temps d'inactivitat aqui(?) - -// activar comentari (private) als seguidors després d'un temps d'inactivitat -// llegir data de la darrera publicació - $data_lle = fopen($lloc . "/fitxers/data_pub.txt", "r") or die("No puc obrir la darrera data!"); - $data_ant = fread($data_lle,filesize($lloc . "/fitxers/data_pub.txt")); - $data_com = strtotime($espera_coment); - $data_ara = strtotime("now"); - $data_dif = ($data_com - $data_ara); - $data_ina = ($data_ara - $data_ant); - fclose($data_lle); - -// per verificar dades enviades a bot_plus_comentaris -// $log->lwrite("".$lloc."|".$data_ina."|".$data_dif.""); -if ($act_coment == 1) { -// $log -> lwrite("Estan activats els comentaris."); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $log -> lwrite("La publicació és ".$visib_com.""); - } -// $com = shell_exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_comentaris.php ".$lloc." ".$data_ina." ".$data_dif.""); - $com = exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_comentaris.php ".$lloc." ".$data_ina." ".$data_dif."", $eixida_com, $resposta_com); -// per verificar que exec ha funcionat - if ($resposta_com != 0) { - $log -> lwrite("INFO: comentaris: ".(($resposta_com == 0)?"correcte":"ERRADA").""); - $msg = "INFO: comentaris: ".(($resposta_com == 0)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } -} - // cronometre - $temps5 = microtime(true); - if ( ($log_detall == "COMPLET") || ($log_detall == "DETALLAT") ) { - $duradac = $temps5 - $temps4; - if($duradac < 60) { $duradac=round($duradac,4); $nomt="segons"; } - else { $duradac=date("i:s",$duradac); $nomt="minuts"; } - $log -> lwrite("Temps comentari: ".$duradac." ".$nomt."."); - } - -if ($act_impuls == 1) { - $com = exec("/usr/bin/php -f ".$lloc."/utils/bot_plus_impulsos.php ".$lloc." ", $eixida_imp, $resposta_imp); - // per verificar que exec ha funcionat - if ($resposta_imp != 0) { - $log -> lwrite("INFO: impulsos: ".(($resposta_imp == 0)?"correcte":"ERRADA").""); - $msg = "INFO: impulsos: ".(($resposta_imp == 0)?"correcte":"ERRADA").""; - if($act_correu == 1) { - enviaCorreu($elmeucompte,"| ".$bot_nom." v".$bot_versio." |",$msg,$elremitent); - } - } -} - -$log -> lwrite("He fet ".$pt." ".(($pt<>1)?"publicacions":"publicació")." en total."); -$temps6 = microtime(true); -$durada = $temps6 - $temps; -//$log -> lwrite("Temps total: ".date("i:s",$durada)." minuts | ".round($durada,4)." segons "); -$log -> lwrite("Temps total: ".(($durada>60)?date("i:s",$durada)." minuts | ".round($durada,4)." segons ":"".round($durada,4)." segons ").""); -//echo "FINAL\n"; -$log -> lwrite ("FINAL!! ".$bot_nom." ".$bot_versio.""); -echo "Final manual. \n"; -//final -if ($durada > 570) { - exit; -} -?>