diff --git a/README.md b/README.md index d6ad7bc..5481d28 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,10 @@ Edita el archivo removeSlackOldFiles.php y añade tu token para que pueda funcio se puede obtener de https://api.slack.com/web en el botón "Generate test tokens". Este token debe bastar, no es necesario crear una aplicación pública. -Luego simplemente ejecuta el script, es necesario que tenga curl instalado (viene en muchas -instalaciones por default). +# Instalación +Para ejecutar este script es necesario tener instalado `php-curl`. En caso de no tenerlo instalado, se puede instalar con este comando: + + sudo apt install php-curl El api de slack solo te devuelve 100 archivos por lo que será necesario si tienes muchos, ejecutar el script tantas veces como sea necesario. @@ -14,3 +16,5 @@ ejecutar el script tantas veces como sea necesario. Use el script bajo su propio riesgo. https://www.elsiglodetorreon.com.mx/blogs/ToRo/2267-eliminar-archivos-viejos-slack-con-php + + diff --git a/removeFilesFromSlack.php b/removeFilesFromSlack.php index e242c6e..09092b5 100644 --- a/removeFilesFromSlack.php +++ b/removeFilesFromSlack.php @@ -1,32 +1,61 @@ $token, "ts_to"=> $tiempo]; //data sent - if(empty($token)||$token=='YOUR_TOKEN_HERE') die($argv[0]." - invalid token\n"); + + $token = "YOUR_TOKEN_HERE"; //token + $datas = ["token" => $token, "ts_to" => $tiempo]; //data sent + + if (empty($token) || $token == 'YOUR_TOKEN_HERE') + die ($argv[0]." - invalid token\n"); + /* open connection */ $ch = curl_init(); + curl_setopt($ch, CURLOPT_POSTFIELDS, $datas); - curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); - curl_setopt($ch, CURLOPT_URL,"https://slack.com/api/files.list?token=".$token."&ts_to=".$tiempo); - $result = curl_exec($ch); $data = json_decode($result); + curl_setopt($ch, CURLOPT_POST, 1); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); + curl_setopt($ch, CURLOPT_URL, "https://slack.com/api/files.list?token=".$token."&ts_to=".$tiempo); + + $result = curl_exec($ch); + $data = json_decode($result); + /* error */ - if(!isset($data->ok) or empty($data->files)) { echo "No existen archivos < ".strftime("%c",$tiempo).".\n"; exit(); } + if (!isset($data->ok) or empty($data->files)) { + echo "No existen archivos < ".strftime("%c", $tiempo).".\n"; + exit(); + } + /* success! */ - echo "=== Encontramos ".sizeof($data->files)." archivos más viejos de ".strftime("%c",$tiempo)."\n\n"; + echo "=== Encontramos ".sizeof($data->files)." archivos más viejos de ".strftime("%c", $tiempo)."\n\n"; + $i=0; - foreach($data->files AS $file) { + + foreach ($data->files AS $file) { $i++; - if($file->created > $tiempo) { echo " archivo más nuevo, no se elimina!\n"; continue; } - echo "- Eliminando ".$i."/".sizeof($data->files)." [".date('d/m/Y',$file->created)."] ".$file->name."... "; - curl_setopt($ch, CURLOPT_POSTFIELDS, ['file'=>$file->id]); + if ($file->created > $tiempo) { + echo "archivo más nuevo, no se elimina!\n"; + continue; + } + + echo "- Eliminando ".$i."/".sizeof($data->files)." [".date('d/m/Y', $file->created)."] ".$file->name."... "; + curl_setopt($ch, CURLOPT_POSTFIELDS, ['file' => $file->id]); curl_setopt($ch, CURLOPT_URL,"https://slack.com/api/files.delete?token=".$token); - $result = curl_exec($ch); $tmp = json_decode($result); - if(isset($tmp->ok)) echo "ok!\n"; - else echo $tmp->error."\n"; + + $result = curl_exec($ch); + $tmp = json_decode($result); + + if (isset($tmp->ok)) + echo "ok!\n"; + else + echo $tmp->error."\n"; sleep(1); + } + curl_close($ch); //EOF + +