2023-05-24 10:40:54 +02:00
< ? php
$tc = microtime ( true );
// Comprova els arguments, en cas de no existir ho avisa.
//if ( (!empty($_SERVER["argv"][1])) && (!empty($_SERVER["argv"][2])) && (!empty($_SERVER["argv"][3])) ){
if ( ( ! empty ( $_SERVER [ " argv " ][ 1 ])) ) {
$argument = $_SERVER [ " argv " ][ 1 ];
$data_ina = $_SERVER [ " argv " ][ 2 ];
$data_dif = $_SERVER [ " argv " ][ 3 ];
} else {
// Presenta l'errada
echo " NO HE REBUT les variables " ;
// exit;
}
$lloc = $argument ;
// ara podrá carregar la configuració i el logger
include ( " " . $lloc . " /configuracio/bot_plus_cfg.php " );
include ( " " . $lloc . " /utils/bot_plus_funcions.php " );
require_once ( " " . $lloc . " /lib/logger.php " );
// inicia el log
$log = new Logging ();
$log -> lfile ( '' . $log_fitxer . '' );
// per quan trasllade aqui la decisió de fer el comentari des de bot_plus
$log -> lwrite ( " Estan activats els comentaris. " );
2024-08-21 20:51:39 +02:00
if ( $control_memoria_utils == 1 ) {
$log -> lwrite ( mostra_us_memoria () . " " . mostra_pic_memoria () );
}
2023-05-24 10:40:54 +02:00
$arrancat = 0 ;
2024-08-21 20:51:39 +02:00
2023-05-24 10:40:54 +02:00
if ( $data_ina >= $data_dif ) {
$log -> lwrite ( " Arranque comentaris: " . $data_ina . " ( " . gmdate ( " H:i:s " , ( $data_ina )) . " h) " );
$arrancat = 1 ;
// obtindre els perfils dels seguidors cal curl
// GET https://mastodon.example/api/v1/accounts/:id/followers HTTP/1.1
$instancia = " mastodont.cat " ;
$creador = " https://mastodont.cat/@bonobo " ;
$inscrit = " 1/12/2022 " ;
// activar comentari (private) als seguidors d'inactivitat
// llegir data de la darrera publicació
2024-08-21 20:51:39 +02:00
$com_lle = fopen ( $lloc . " /fitxers/comentari_pub.txt " , " r " ) or die ( " No puc obrir la darrera data! " );
$com_ant = fread ( $com_lle , filesize ( $lloc . " /fitxers/comentari_pub.txt " ));
2023-05-24 10:40:54 +02:00
fclose ( $com_lle );
2024-08-21 20:51:39 +02:00
$compte_lle = fopen ( $lloc . " /fitxers/compte_pub.txt " , " r " ) or die ( " No puc obrir la darrera data! " );
$compte_ant = fread ( $compte_lle , filesize ( $lloc . " /fitxers/compte_pub.txt " ));
fclose ( $compte_lle );
$espera_coment2 = ( strtotime ( $espera_coment2 ) - 120 );
2023-05-24 10:40:54 +02:00
$com_ara2 = strtotime ( " now " );
2024-08-21 20:51:39 +02:00
$com_ara3 = ( $com_ara2 + rand ( 0 , 10 ));
2023-05-24 10:40:54 +02:00
// echo "com_ant: ".$com_ant."\n";
// echo "com_com: ".$espera_coment."\n";
// echo "com_ara: ".$com_ara."\n";
2024-08-21 20:51:39 +02:00
$com_dif = ( $espera_coment2 - $com_ara2 ) - 120 ;
2023-05-24 10:40:54 +02:00
// echo "com_dif: ".$com_dif."\n";
$com_ina = ( $com_ara2 - $com_ant );
2024-08-21 20:51:39 +02:00
2023-05-24 10:40:54 +02:00
if ( $com_ina > $com_dif ) {
// echo "Active - temps superat = ".($com_ina > $com_dif)."\n";
// publique sequencialment un missatge per inactivitat
//cal triar un nombre pel divisor. Només si la divisió dona numero sencer es publicarà. (1 tots, 2 la meitat, 3 un de cada tres, ...)
2024-08-21 20:51:39 +02:00
$data_ina_mod = $data_ina + ( rand ( - 1 , 1 ));
2023-05-24 10:40:54 +02:00
$publicacio = null ;
2024-08-21 20:51:39 +02:00
$decisio = TriaOpcio ( $com_ara2 );
// if ( is_int($com_ara2/7)) {
if ( ( $decisio == 1 ) ) {
2023-05-24 10:40:54 +02:00
// $dic = "Soc ".$bot_nom.". Continue actiu, :cli_user: amb la versió ".$bot_versio." i vaig registrar-me el ".$inscrit.".\nAra fa ".date("H:i:s",($data_ina_mod-HoraGmt()))." hores que no hi han novetats per publicar de ".$web_of." 🖥️ .\n#SocUnBot 🤖";
2024-08-21 20:51:39 +02:00
$directori = $lloc . " /fitxers/ " ;
$compta_fitxers = count ( glob ( $directori . " * " ));
$fitxers = shell_exec ( " du -h -s " . $directori );
$fit_mat = str_split ( $fitxers , 4 );
2023-05-24 10:40:54 +02:00
//echo "There were $compta_fitxers";
$dic = " Fa " . gmdate ( " H:i:s " , $data_ina_mod ) . " hores que no publique tuts d'actualitat de " . $web_of . " . \n " .
" Als meus fitxers, " . $compta_fitxers . " en tinc, guarde " . $fit_mat [ 0 ] . " de dades. \n " .
" #SocUnBot \n " .
$bot_nom . " v " . $bot_versio . " \n " ;
2024-08-21 20:51:39 +02:00
// } elseif ( is_int($com_ara2/5)) {
} elseif ( ( $decisio == 2 ) ) {
$dic = " :cli_user: Continue actiu des del " . $inscrit . " i n'he publicat " . $compte_ant . " tuts d'actualitat. \n Ara fa " . gmdate ( " H:i:s " ,( $data_ina_mod )) . " hores que no hi ha novetats per publicar. 🖥️ \n " . $bot_nom . " v " . $bot_versio . " \n #SocUnBot 🤖 " ;
// } elseif ( is_int($com_ara2/3)) {
} elseif ( ( $decisio == 3 ) ) {
2023-05-24 10:40:54 +02:00
// $dic = "La darrera publicació la vaig fer fa ".date("H:i:s",($data_ina_mod-HoraGmt()))."\n".$bot_nom." ".$bot_versio." :cli_user:.\n#SocUnBot 🤖";
$sensors = shell_exec ( " sensors " );
$faig_ma = explode ( " \n " , $sensors );
$dic = " La darrera publicació la vaig fer fa " . gmdate ( " H:i:s " ,( $data_ina_mod )) . " \n " .
" Esta és la temperatura dels meus processadors :cli_user:. \n " .
$faig_ma [ 3 ] . " \n " .
$faig_ma [ 4 ] . " \n " .
" #SocUnBot \n " .
$bot_nom . " v " . $bot_versio . " \n " ;
2024-08-21 20:51:39 +02:00
// } elseif ( is_int($com_ara2/2)) {
} elseif ( ( $decisio == 4 ) || ( $decisio == 5 ) || ( $decisio == 6 ) || ( $decisio == 7 ) || ( $decisio == 8 ) ) {
2023-05-24 10:40:54 +02:00
// $dic = " ".$bot_nom." ".$bot_versio."\n".date("H:i:s",($data_ina_mod-HoraGmt()))." sense publicar novetats de ".$web_of." 🖥️ .\n#SocUnBot 🤖";
$prev_oratge = shell_exec ( " ansiweather_mst -a false -l Aigües,ES -H true -s true -d true " );
2024-08-21 20:51:39 +02:00
$faig_m = explode ( " - " , $prev_oratge );
$dic = " Fa " . gmdate ( " H:i:s " ,( $data_ina_mod )) . " que no he publicat cap tut d'actualitat. \n " .
" Esta és la previsió de l'oratge #AraMateix a la localitat on està el meu servidor (l'Alacantí). :cli_user: \n " .
2023-05-24 10:40:54 +02:00
$faig_m [ 0 ] . " \n " .
$faig_m [ 1 ] . " \n " .
$faig_m [ 2 ] . " \n " .
$faig_m [ 3 ] . " \n " .
$faig_m [ 4 ] . " \n " .
$faig_m [ 5 ] . " \n " .
$faig_m [ 6 ] . " \n " .
$faig_m [ 7 ] . " \n " .
// $faig_m[8]."\n".
" #SocUnBot #Oratge \n " .
$bot_nom . " v " . $bot_versio . " \n " ;
} else {
// $dic = "ping 🖥️ .\nTemps d'inactivitat:".date("H:i",$data_ina)."\n #SocUnBot ";
2024-08-21 20:51:39 +02:00
$dic = " ping 🖥️ . \n " . $bot_nom . " v " . $bot_versio . " \n #SocUnBot " ;
2023-05-24 10:40:54 +02:00
}
$publicacio = $dic ;
// echo "publicació: ".$publicacio."\n";
if ( $publicacio != null ) {
$dades_tut = array (
" status " => $publicacio ,
" language " => $llengua ,
" visibility " => $visib_com
);
// echo print_r($status_data);
PublicaMissatge ( $base_url , $headers , $dades_tut );
// echo "matriu resposta: \n";
// echo print_r($comentari_resposta)."\n";
// guarde la data de publicació de comentari
// actualitze strtotime del comentari publicat
2024-08-21 20:51:39 +02:00
$com_t = fopen ( " " . $lloc . " /fitxers/comentari_pub.txt " , " w " ) or die ( " No puc obrir la darrera data! " );
// $com_tem = fread($com_t,filesize("".$lloc."/fitxers/comentari_pub.txt"));
2023-05-24 10:40:54 +02:00
$nou_tem = strtotime ( " now " );
// echo "nou_tem: ".$nou_tem."\n";
fwrite ( $com_t , $nou_tem );
fclose ( $com_t );
// echo "comentari (bis): ".$publicacio."";
$log -> lwrite ( $publicacio );
} else {
// echo "No active ";
// echo "No publique per pausa interna.";
$log -> lwrite ( " No publique per pausa interna. " );
// no fer res
}
} else {
//echo "Inactiu el comentari: ".$com_ina." | ".date("H:i:s",($com_ina-3600))." h | ".$com_dif." \n";
// llegir el temps de publicació de comentari i calcular el que resta per pausa interna
if ( $arrancat == 1 ) {
2024-08-21 20:51:39 +02:00
$log -> lwrite ( " Pausa entre els comentaris: " . $com_ina . " ( " . gmdate ( " H:i:s " ,( $com_ina )) . " h) | " . $com_dif . " ( " . gmdate ( " H:i:s " ,( $com_dif ) ) . " ) " );
2023-05-24 10:40:54 +02:00
}
}
// final condició temps inactivitat
}
//if ( (($data_dif - $data_ina) <= 3900)&&(($data_dif - $data_ina) < $espera_coment2) ) {
if ( (( $data_dif - $data_ina ) <= 3840 ) ) {
// diferenciar entre pausa de publicació (externa) i el temps d'espera entre comentaris. (PER FER)
// $log->lwrite("A ".date("H:i:s",($data_dif-$data_ina)-HoraGmt())." hores d'arrancar els comentaris.");
if ( $arrancat == 0 ) {
2024-08-21 20:51:39 +02:00
$tempspendent = $data_dif - $data_ina ;
// $log->lwrite("A ".gmdate("H:i:s",($data_dif-$data_ina))." hores d'arrancar els comentaris.");
if ( gmdate ( " H " , $tempspendent ) == 1 ) {
$log -> lwrite ( " A " . ( ( gmdate ( " H " , $tempspendent )) == 1 ? " " . gmdate ( " H " , $tempspendent ) . " hora, " : " " . gmdate ( " H " , $tempspendent ) . " hores, " ) .
( ( gmdate ( " i " , $tempspendent )) == 1 ? " " . ( gmdate ( " i " , $tempspendent )) . " minut, " : " " . ( gmdate ( " i " , $tempspendent )) . " minuts i " ) .
( ( gmdate ( " s " , $tempspendent )) == 1 ? " " . ( gmdate ( " s " , $tempspendent )) . " segon, " : " " . ( gmdate ( " s " , $tempspendent )) . " segons " ) .
" d'arrancar els comentaris. " );
} else {
$log -> lwrite ( " A " . ( ( gmdate ( " i " , $tempspendent )) == 1 ? " " . ( gmdate ( " i " , $tempspendent )) . " minut, " : " " . ( gmdate ( " i " , $tempspendent )) . " minuts i " ) .
( ( gmdate ( " s " , $tempspendent )) == 1 ? " " . ( gmdate ( " s " , $tempspendent )) . " segon, " : " " . ( gmdate ( " s " , $tempspendent )) . " segons " ) .
" d'arrancar els comentaris. " );
}
2023-05-24 10:40:54 +02:00
}
}
2024-08-21 20:51:39 +02:00
//$log -> lwrite("INFO: comentaris: ".(($resposta_com == 0)?"correcte":"ERRADA")."");
2023-05-24 10:40:54 +02:00
$tcf = microtime ( true );
$dc = $tcf - $tc ;
//echo "\nTemps comentari dins: ".round($dc,4)." ";
2024-08-21 20:51:39 +02:00
$log -> lwrite ( " Temps comentari: " . round ( $dc , 4 ) . " segons " );
if ( $control_memoria_utils == 1 ) {
$log -> lwrite ( mostra_us_memoria () . " " . mostra_pic_memoria () );
}
2023-05-24 10:40:54 +02:00
?>