183 líneas
6,4 KiB
PHP
183 líneas
6,4 KiB
PHP
<?php
|
||
$tc = microtime(true);
|
||
|
||
// Comprova els arguments, en cas de no existir presenta l'ajuda.
|
||
if (!empty($_SERVER["argv"][1])){
|
||
$lloc = $_SERVER["argv"][1];
|
||
} else {
|
||
echo "NO HE REBUT la variable";
|
||
exit;
|
||
}
|
||
// 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.'');
|
||
|
||
$log->lwrite("Arranque tut d'errada tècnica.");
|
||
|
||
// llegeix el nombre de seguidors
|
||
$nerrada_lle = fopen($lloc."/fitxers/errada_cont.txt", "r") or die("No puc obrir el nombre seguidors!");
|
||
$nerrada_ant = fread($nerrada_lle,filesize($lloc."/fitxers/errada_cont.txt"));
|
||
fclose($nerrada_lle);
|
||
|
||
$pub_cent = null;
|
||
$pub_img = null;
|
||
|
||
if(is_int($nerrada_ant/$num_errades) ) {
|
||
|
||
$pub_img = $lloc."/gifis/carta-ajustament-televisio.jpeg";
|
||
$fitxer_tipus = mime_content_type($pub_img);
|
||
|
||
$publica_img = array(
|
||
"file" => $pub_img,
|
||
"type"=> $fitxer_tipus,
|
||
"description" => "Carta d'ajustament del televisor indicant que no hi rep cap senyal."
|
||
);
|
||
|
||
//print_r($publica_img);
|
||
//echo "mostrat matriu publica_img\n";
|
||
//sleep(4);
|
||
|
||
$publ_img = json_encode($publica_img);
|
||
//echo "publ_img: ".$publ_img."\n";
|
||
//echo "mostrat publ_img\n";
|
||
//sleep(4);
|
||
|
||
// publicar
|
||
if ($pub_img != null) {
|
||
|
||
$status_data = array(
|
||
"status" => $pub_cent,
|
||
"text" => $pub_cent,
|
||
"language" => $llengua,
|
||
"visibility" => $visib_com
|
||
);
|
||
|
||
$pub_img = $lloc."/gifis/carta-ajustament-televisio.jpeg";
|
||
$fitxer_tipus = mime_content_type($pub_img);
|
||
$fitxer_prep = curl_file_create($pub_img, $fitxer_tipus, 'file');
|
||
|
||
$publica_img = [ 'file' => $fitxer_prep,
|
||
'description' => 'Carta d´ajustament de televisor amb un avís indicant que no rep cap senyal.',
|
||
'text' => $pub_cent,
|
||
'status' => 'Estem experimentant dificultats tècniques.\En breus minuts podràn seguir les novetat del compte.\Els preguem disculpes.\nMoltes gràcies.' ];
|
||
|
||
// pujada de la imatge
|
||
$ch_status = curl_init();
|
||
curl_setopt($ch_status, CURLOPT_URL, $base_url . "/api/v2/media");
|
||
curl_setopt($ch_status, CURLOPT_POST, 1);
|
||
curl_setopt($ch_status, CURLOPT_POSTFIELDS, $publica_img);
|
||
curl_setopt($ch_status, CURLOPT_RETURNTRANSFER, true);
|
||
curl_setopt($ch_status, CURLOPT_HTTPHEADER, $headers);
|
||
$output_status = json_decode(curl_exec($ch_status),true);
|
||
curl_close ($ch_status);
|
||
// $p++;
|
||
|
||
//echo "\n\nresposta media : \n";
|
||
//print_r ($output_status);
|
||
$imat_mst = $output_status['id'];
|
||
$imat_url = $output_status['url'];
|
||
|
||
//echo "id de la imatge pujada: ".$imat_mst."\n";
|
||
sleep(1);
|
||
// PujaImatges($base_url,$imat_mst,$headers,$bot_status);
|
||
|
||
$bot_status = curl_init();
|
||
curl_setopt($bot_status, CURLOPT_URL, $base_url . "/api/v1/media/".$imat_mst."");
|
||
curl_setopt($bot_status, CURLOPT_RETURNTRANSFER, true);
|
||
curl_setopt($bot_status, CURLOPT_HTTPHEADER, $headers);
|
||
$resposta = (curl_exec($bot_status));
|
||
$resposta_json = json_decode(curl_exec($bot_status));
|
||
curl_close ($bot_status);
|
||
// print_r($resposta);
|
||
$resposta = json_decode($resposta,true);
|
||
// echo "\n\nresposta json_decode\n";
|
||
// print_r($resposta);
|
||
|
||
//echo "obtenció dades media: \n";
|
||
//print_r($resposta_json);
|
||
sleep(1);
|
||
|
||
$im_id = $resposta['id'];
|
||
$im_url = $resposta['url'];
|
||
$im_type = $resposta['type'];
|
||
$im_desc = $resposta['description'];
|
||
//sleep(10);
|
||
$img_bis = $lloc."carta-ajustament-televisio.jpeg";
|
||
$pub_errada = "Per causes alienes a la nostra voluntat, estem experimentant dificultats tècniques.\nEls pregue disculpes.\nContinuen atents al compte.\n".
|
||
"Moltes Gràcies.\n#SocUnBot\n".$bot_nom." v".$bot_versio."";
|
||
$imatge_adj = array('file' => $im_url, 'type' => $im_type, 'description' => $im_desc);
|
||
$imatge_adj_json = json_encode($imatge_adj);
|
||
|
||
$status_data2 = array(
|
||
"status" => $pub_errada,
|
||
"language" => $llengua,
|
||
"visibility" => $visib_com
|
||
);
|
||
|
||
// funció per enviar matriu en matriu
|
||
function http_build_query_for_curl( $arrays, &$new = array(), $prefix = null ) {
|
||
|
||
if ( is_object( $arrays ) ) {
|
||
$arrays = get_object_vars( $arrays );
|
||
}
|
||
foreach ( $arrays AS $key => $value ) {
|
||
$k = isset( $prefix ) ? $prefix . '[' . $key . ']' : $key;
|
||
if ( is_array( $value ) OR is_object( $value ) ) {
|
||
http_build_query_for_curl( $value, $new, $k );
|
||
} else {
|
||
$new[$k] = $value;
|
||
}
|
||
}
|
||
|
||
}
|
||
$pub_errada = "Per causes alienes a la nostra voluntat, estem experimentant dificultats tècniques.\nEls pregue disculpes.\nContinuen atents al compte.\n".
|
||
"Moltes Gràcies.\n#SocUnBot\n".$bot_nom." v".$bot_versio."";
|
||
|
||
$tut_matriu = array(
|
||
"status" => $pub_errada,
|
||
"text" => $pub_cent,
|
||
"language" => $llengua,
|
||
"media_ids[]" => $im_id,
|
||
"visibility" => $errada_vis,
|
||
"sensitive" => true,
|
||
"spoiler_text" => null,
|
||
"in_reply_to_id" => null
|
||
);
|
||
|
||
http_build_query_for_curl( $tut_matriu, $tut_dades );
|
||
|
||
// comentat per no publicar proves funció
|
||
// PublicaMissatge($headers,$base_url,$tut_dades);
|
||
$pub_text_imat = curl_init();
|
||
curl_setopt($pub_text_imat, CURLOPT_URL, $base_url . "/api/v1/statuses");
|
||
curl_setopt($pub_text_imat, CURLOPT_POST, 1);
|
||
curl_setopt($pub_text_imat, CURLOPT_POSTFIELDS, $tut_dades);
|
||
curl_setopt($pub_text_imat, CURLOPT_RETURNTRANSFER, true);
|
||
curl_setopt($pub_text_imat, CURLOPT_HTTPHEADER, $headers);
|
||
$resposta_img_txt = json_decode(curl_exec($pub_text_imat),true);
|
||
curl_close ($pub_text_imat);
|
||
}
|
||
|
||
}
|
||
else {
|
||
$log->lwrite("Esta volta no publique tut. Nº errada: ".$nerrada_ant."");
|
||
}
|
||
|
||
$error_num = fopen($lloc . "/fitxers/errada_cont.txt", "r") or die("No puc obrir el contador!");
|
||
$error_ant = fread($error_num,filesize("".$lloc ."/fitxers/errada_cont.txt"));
|
||
$error_nou = ($error_ant+1);
|
||
$error_num = fopen($lloc . "/fitxers/errada_cont.txt", "w") or die("No puc obrir el contador!");
|
||
fwrite($error_num, $error_nou);
|
||
fclose($error_num);
|
||
|
||
$log -> lwrite ( mostra_us_memoria()." ".mostra_pic_memoria()." - ".__LINE__ );
|
||
$tcf = microtime(true);
|
||
$dc = $tcf - $tc;
|
||
echo "Temps errada tècnica dins: ".round($dc,4)."\n";
|
||
$log->lwrite("Temps errada tècnica dins: ".round($dc,4)."");
|
||
?>
|