Le but est de créer un script pour automatiser l'impression des photos que les clients laissent à la borne.
SOMMAIRE :
- Principe
- Focntionnement du script
- Langages utilisés
- Ressources
- Langages utilisés
- Liens utiles
- Commandes utiles
Le client passe à la borne. Il choisit les photos qu'il veut imprimer. Les photos sont copiées de son support vers le stockage de la borne, dans le chemin relatif suivant :
tirages/[numéroClient]/[formatPapier]/[finitionPapier]/
Avec :
- numeroClient : int (par ex 000558)
- formatPapier : int (une seule possibilité : 152*102)
- finitionPapier : string
- glossy (papier brillant, on imprime)
- mat (autre traitement, à voir dans un second temps)
Voici un exemple de chemin :
tirages/000558/152x102/glossy/fill
IMPORTANT : Nom exacte des dossiers mat/
et glossy/
à vérifier.
- Scan régulier du dossier
tiarges/
- Detection d'un nouveau dossier : attente jusqu'a la fin de la copie des photos !important
- On entre dans
[nouveauDossier]/152x102/
, recherche à l'interieur d'un dossier nomméglossy/
.
- Si le dossier
glossy/
n'existe pas, arrêt script - Sinon, copie de tous les fichiers
.jpg
dansglossy/
versHOTFOLDER/
Dans la mesure du possible, nous voudrions utiliser du batch
.
Cependant, il n'est pas possible de détecter lorsque un nouveau dossier est créé avec du batch. Il faut donc soit passer un script de detection en boucle qui cherche un dossier en fonction de sa date de création (possible en shell, à voir en batch), soit utiliser powershell
.
- Search by date using command-line, Stackoverflow
- Monitor a folder and trigger a command-line action when a file is created
- Batch - ouvrir deux fenêtres avec un seul script
- shutil - lib py
- stat - lib py (pour savoir quand la copie est finie :
stat.S_ISREG(mode)
)
Ouvrir un nouveau terminal dans un dossier spécifique :
start cmd /K "cd [PATH]"
Idéalement, il faudrait que la fonction isItId()
travaille avec les regex.