Nikko Posté(e) le 13 juillet 2016 Signaler Posté(e) le 13 juillet 2016 @pepite Voici le script un peu modifié pour tenir compte uniquement du timestamp des backups, et supprimer le plus ancien: --[[ %% properties %% events %% globals --]] -- Flag dryrun; Si true, la requete sur api pour effacer le backup n'est pas effectuée local dryrun = true local backups = api.get('/settings/backups') -- Vérification de présence Backup if (backups and type(backups == 'table') and #backups > 0) then print(#backups .. ' Backups présents') for i in ipairs(backups) do fibaro:debug('ID: '..backups[i]['id']..' | TIMESTAMP: '..backups[i]['timestamp']..' | DESCRIPTION: '..backups[i]['description']) end else print('Pas de backup ou erreur lors de la récupération de la liste') fibaro:abort() end -- Pour chaque Backup on stock le timestamp de la date de réalisation dans une table -- On classe ensuite les timestamps par ordre croissant local timestamp = {} for i in ipairs(backups) do table.insert(timestamp, backups[i]['timestamp']) end table.sort(timestamp) -- Le 1er timestamp de la table est le plus petit donc le plus vieux en epochtime -- Dans la table de backup on recherche le backup ayant ce timestamp local id = false for i in ipairs(backups) do if (tonumber(backups[i]['timestamp']) == tonumber(timestamp[1])) then id = backups[i]['id'] end end if id then print("ID du backup le plus ancien: "..id) else print("Erreur lors de la récupération de l'ID") fibaro:abort() end -- Requete via API pour effacer le backup le plus vieux if not dryrun then local url = 'http://127.0.0.1:11111/api/settings/backups?id='..id local httpClient = net.HTTPClient() httpClient:request(url , { success = function(response) if tonumber(response.status) == 200 then print("Backup deleted at " .. os.date()) else print("Error " .. response.status) end end, error = function(err) print('error = ' .. err) end, options = { method = 'DELETE', headers = { ["content-type"] = 'application/x-www-form-urlencoded;' }, data = 'id='..id } }); end Il y a certainement plus simple|propre mais c'est une solution qui semble fonctionnelle. A voir si ça peut (te) servir 2
Lazer Posté(e) le 13 juillet 2016 Signaler Posté(e) le 13 juillet 2016 Excellent Les scripts de backups et suppression de backups auto mériteraient un topic àeux tous seuls
Sakkhho Posté(e) le 13 juillet 2016 Signaler Posté(e) le 13 juillet 2016 Avec un bon tuto ! Je suis d accord
jojo Posté(e) le 13 juillet 2016 Signaler Posté(e) le 13 juillet 2016 je te l'avais dit Nikko, tu n'y coupera pas au tuto (je te rassure, tu as déjàfait le plus dur, il ne reste que du copier/coller)
Nikko Posté(e) le 14 juillet 2016 Signaler Posté(e) le 14 juillet 2016 Bonjour, Voilà j'ai ouvert un topic avec les 2 scènes: http://www.domotique-fibaro.fr/index.php/topic/8641-backup-via-scene-lua/ A cause de vous j'ai loupé le défilé à la TV 2
Messages recommandés