Aller au contenu

Messages recommandés

Posté(e) (modifié)

Synology Download Station

v1.1

 

 

Voici un petit module virtuel pour piloter simplement l'application Download Station sur un NAS Synology.

 

large.screenshot-virtual-device-download

 

Ayant une bande passante très limitée sur mon ADSL, ce VD me permet de mettre en pause les téléchargements quand on est présents à la maison, et de les relancer le reste du temps (absence, nuit).

 

Ce VD a été réalisé très rapidement sur la base du VD Surveillance Station. Néanmoins, il utilise une variable globale différente pour stocker son SID, car cela permet aux VD d'utiliser des comptes différents sur le NAS.

 

 

Fonctionnalités :

 

  • Labels Download et Upload : affichage des débits en cours (rafraichissement toutes les 60 secondes par défaut)
  • Bouton Pause : pause de tous les fichiers en cours de téléchargement ou en attente.
  • Bouton Resume : relance tous les fichiers en pause
  • Labels Finished, ..., Other : affichage du statut des fichiers dans la file d'attente
  • Label Debug : affiche le statut (OK ou Failed) de la dernière commande effectuée. Ce label est effacé automatiquement après 2 minutes.


 

Installation :
 

  • Importer le fichier vfib ci-joint.
     
  • Importer les icônes, puis récupérer leurs ID respectifs :

    large.downloadstation.png.ff4c3608e88f08large.downloadstation-play.png.37c397c15large.downloadstation-pause.png.f3c53f82large.downloadstation-stop.png.1a9d49de1
     
  • Configurer l'adresse IP et le port TCP du NAS dans l'onglet Avancé :

    large.screenshot-virtual-device-download
     
  • Dans la Main Loop (boucle principale), configurer les paramètres suivants :
    -- User configurable variables
    local login = "user"
    local password = "password"
    local refresh = 60 -- seconds
    local icons = { -- Virtual Device Icons ID
    	["Normal"] = 0,
    	["Play"]   = 0,
    	["Pause"]  = 0,
    	["Stop"]   = 0
    }

     

 

Utilisation :

 

  • Voici un exemple d'utilisation avec GEA, pour déclenchement/arrêt la nuit et lorsqu'il n'y a plus personne à la maison (utilisation des boutons "Pause" et "Resume") :
    -- Synology Download Station
    GEA.add({{"Global", "Vacances", "0"}, {"Global", "Absence", "1"}, {"Label!", id["VD_DOWNSTATION"], "Labelpaused", "0"}}, 5*60, "", {{"VirtualDevice", id["VD_DOWNSTATION"], 4}}) -- Resume
    GEA.add({{"Global", "Dodo", "1"}, {"Label!", id["VD_DOWNSTATION"], "Labelpaused", "0"}}, 5*60, "", {{"VirtualDevice", id["VD_DOWNSTATION"], 4}}) -- Resume
    GEA.add({{"Global", "Absence", "0"}}, 30, "", {{"VirtualDevice", id["VD_DOWNSTATION"], 3}}) -- Pause
    GEA.add({{"Global", "Dodo", "0"}}, 30, "", {{"VirtualDevice", id["VD_DOWNSTATION"], 3}}) -- Pause
    Autre exemple afin de télécharger les tâches une par une séquentiellement (ne pas utiliser simultanément à l'exemple précédent) (utilisation du bouton "Download Single") :
    GEA.add({{"Label!", id["VD_DOWNSTATION"], "Labelfinishing", "0"}}, 3*30, "Download Station : task status : finishing", {{"Email", 4, "GEA Download Station"}})
    GEA.add({{"Label", id["VD_DOWNSTATION"], "Labeldownloading", "0"}, {"Label", id["VD_DOWNSTATION"], "Labelextracting", "0"}, {"Label", id["VD_DOWNSTATION"], "Labelwaiting", "0"}, {"Label", id["VD_DOWNSTATION"], "Labelfinishing", "0"}, {"Label!", id["VD_DOWNSTATION"], "Labelpaused", "0"}}, 15*60, "", {{"VirtualDevice", id["VD_DOWNSTATION"], 5}}) -- Download single
    Évidemment il faut adapter à votre configuration.
     
  • Et pour le monitorer avec le Watchdog :
    local watchdog = {
    	{type = "VD", id = 125, match = {text="Total memory in use", interval=7*60}, no_match = {text="", type="ERROR"}, restart=true, notification = {"push", "email"}},
    }

 

 

Changelog :
 

  • v1.0  : November 2016 : version initiale
  • v1.1  : June 2017 :
    • correctifs mineurs
    • Ajout du label "finishing"
    • Ajout du bouton "Download single"

 

 

Téléchargement :
 

Download_Station_v1.0.vfib

 

Download_Station_v1.1.vfib

Modifié par Lazer
  • Upvote 7
Posté(e)

Ah ! Intéressant ça, je prends ! ;) 

 

je souhaite réaliser un VD pour éjecter le hdd de sauvegarde branché en usb, sans avoir à passer par le webadmin du syno...

 

je vais m'inspirer de ce que tu as fait...

 

merci !

Posté(e)

L'idée me plait bien !

J'avoue n'avoir jamais pensé à regarder combien le download station me coutait en bande passante, et je suis comme toi en simple ADSL...

 

Merci pour ce partage !

Posté(e)

Ce module n'existe pas sous Jeedom ? Pfff, c'est pas sérieux, ça doit être un logiciel domotique pour geek :P

 

Maintenant je peux mettre plein d'ISO Linux en fil d'attente et ne plus me préoccuper des téléchargements :D

  • Upvote 2
Posté(e)

et toc ...

 

Décidément, tant de choses gratuites sur Fibaro mais payantes sur Jeedom :P (gros troll velu, même pas la peine de sauter dessus)

  • Upvote 1
Posté(e)
Il y a 14 heures, Lazer a dit :

et toc ...

 

Décidément, tant de choses gratuites sur Fibaro mais payantes sur Jeedom :P (gros troll velu, même pas la peine de sauter dessus)

ce n'est pas le prix qui compte, mais le service qui a derrière, et je connais le niveau de service concernant les VD publiés ici

  • Upvote 1
Posté(e)

Si ils ne te répondent pas, il te reste la solution du reverse engineering : te balader dans l'interface Web, en mode développeur sur ton navigateur (F12) pour voir les requêtes HTTP passer.

Posté(e)

mais il me semble que tu m'avais déjà parlé de ça un jour, et j'avoue avoir été un peu perdu dans les résultats obtenus.

Mais je suis prêt à retenter...

 

Mais incroyable de pas trouver cette documentation sur le net quand même !!

Posté(e)

j'ai trouvé ça, par rapport à mon projet, mais je vois pas en quoi ça peut m'aider...

  "SYNO.Core.ExternalDevice.Storage.USB": {
            "maxVersion": 1,
            "minVersion": 1,
            "path": "entry.cgi",
            "requestFormat": "JSON"
        },
        "SYN
×
×
  • Créer...