191 líneas
8,3 KiB
PHP
191 líneas
8,3 KiB
PHP
<?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.");
|
|
if($control_memoria_utils == 1) {
|
|
$log -> lwrite ( mostra_us_memoria()." ".mostra_pic_memoria() );
|
|
}
|
|
|
|
$arrancat = 0;
|
|
|
|
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ó
|
|
$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"));
|
|
fclose($com_lle);
|
|
$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);
|
|
$com_ara2 = strtotime("now");
|
|
$com_ara3 = ($com_ara2 + rand(0,10));
|
|
// echo "com_ant: ".$com_ant."\n";
|
|
// echo "com_com: ".$espera_coment."\n";
|
|
// echo "com_ara: ".$com_ara."\n";
|
|
$com_dif = ($espera_coment2 - $com_ara2) - 120;
|
|
// echo "com_dif: ".$com_dif."\n";
|
|
$com_ina = ($com_ara2 - $com_ant);
|
|
|
|
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, ...)
|
|
$data_ina_mod = $data_ina + (rand(-1,1));
|
|
$publicacio = null;
|
|
$decisio = TriaOpcio($com_ara2);
|
|
|
|
// if ( is_int($com_ara2/7)) {
|
|
if ( ($decisio == 1) ) {
|
|
// $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 🤖";
|
|
$directori = $lloc."/fitxers/";
|
|
$compta_fitxers = count(glob($directori . "*"));
|
|
$fitxers = shell_exec("du -h -s ".$directori);
|
|
$fit_mat = str_split($fitxers, 4);
|
|
//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";
|
|
// } 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.\nAra 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) ) {
|
|
// $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";
|
|
// } elseif ( is_int($com_ara2/2)) {
|
|
} elseif ( ($decisio == 4)||($decisio == 5)||($decisio == 6)||($decisio == 7)|| ($decisio == 8) ) {
|
|
// $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");
|
|
$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".
|
|
$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 ";
|
|
$dic = "ping 🖥️ .\n".$bot_nom." v".$bot_versio."\n#SocUnBot";
|
|
}
|
|
$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
|
|
$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"));
|
|
$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) {
|
|
$log->lwrite("Pausa entre els comentaris: ".$com_ina." (".gmdate("H:i:s",($com_ina))." h) | ".$com_dif." (".gmdate("H:i:s",($com_dif) ).")");
|
|
}
|
|
}
|
|
|
|
// 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) {
|
|
$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.");
|
|
}
|
|
}
|
|
}
|
|
|
|
//$log -> lwrite("INFO: comentaris: ".(($resposta_com == 0)?"correcte":"ERRADA")."");
|
|
|
|
$tcf = microtime(true);
|
|
$dc = $tcf - $tc;
|
|
//echo "\nTemps comentari dins: ".round($dc,4)." ";
|
|
$log->lwrite("Temps comentari: ".round($dc,4)." segons");
|
|
if($control_memoria_utils == 1) {
|
|
$log -> lwrite ( mostra_us_memoria()." ".mostra_pic_memoria() );
|
|
}
|
|
?>
|