atelier20161119-impression-pdf-android-run
                Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| atelier20161119-impression-pdf-android-run [2016/12/15 19:06] – wap | atelier20161119-impression-pdf-android-run [2016/12/15 19:28] (Version actuelle) – wap | ||
|---|---|---|---|
| Ligne 26: | Ligne 26: | ||
| * Sur le serveur: | * Sur le serveur: | ||
| - | * CUPS (Common Unix Printing Sytem) | + |      | 
| - | 	* Un serveur web (Apache par exemple) avec le module " | + |     * Un serveur web (Apache par exemple) avec le module " | 
| - | 	* incron: permet d' | + |     * incron: permet d' | 
| - | * Un script Bash fait maison ;-) | + | * Un script Bash fait maison ;-) | 
| * Sur Android: | * Sur Android: | ||
| - | * Un (bête) client webdav | + |      | 
| ===== La recette ===== | ===== La recette ===== | ||
| Ligne 37: | Ligne 37: | ||
| Quel va être le parcours du PDF ? | Quel va être le parcours du PDF ? | ||
| - | . Envoyé depuis Android vers le serveur web à l'aide du protocole webdav | + | - Envoyé depuis Android vers le serveur web à l'aide du protocole webdav | 
| - | 	. Incron détectera qu'un nouveau fichier vient d' | + |    | 
| - | 	. Le script maison vérifie qu'il s'agit bien d'un PDF et l' | + |    | 
| ===== Mise en place ===== | ===== Mise en place ===== | ||
| Ligne 45: | Ligne 45: | ||
| ==== Installation du serveur web ==== | ==== Installation du serveur web ==== | ||
| - | * Installer Apache et CUPS: | + |    | 
| - | ---- | + | <code bash> | 
| sudo apt-get install apache2 cups | sudo apt-get install apache2 cups | ||
| - | ---- | + | </ | 
| - | * Activer le module webdav: | + | * Activer le module webdav: | 
| - | ---- | + | <code bash> | 
| sudo a2enmod dav | sudo a2enmod dav | ||
| sudo a2enmod dav_fs | sudo a2enmod dav_fs | ||
| - | ---- | + | </ | 
| ==== Configuration du serveur web (1/3) ==== | ==== Configuration du serveur web (1/3) ==== | ||
| - | Dossier de destination:: | + | === Dossier de destination  | 
| Le dossier qui recevra les fichiers PDF sera ici / | Le dossier qui recevra les fichiers PDF sera ici / | ||
| - | ---- | + | <code bash> | 
| sudo mkdir -p / | sudo mkdir -p / | ||
| sudo chown -R www-data: | sudo chown -R www-data: | ||
| - | ---- | + | </ | 
| ==== Configuration du serveur web (2/3) ==== | ==== Configuration du serveur web (2/3) ==== | ||
| - | Configurer Apache et le module webdav:: | + | === Configurer Apache et le module webdav  | 
| Il faut aussi l' | Il faut aussi l' | ||
| - | ---- | + | <code bash> | 
| Alias /webdav / | Alias /webdav / | ||
| Ligne 80: | Ligne 80: | ||
| allow from 192.168.2 | allow from 192.168.2 | ||
| </ | </ | ||
| - | ---- | + | </ | 
| ==== Côté serveur web: configuration (3/3) ==== | ==== Côté serveur web: configuration (3/3) ==== | ||
| Ligne 87: | Ligne 86: | ||
| Il faut ensuite activer le module webdav et recharger la configuration de Apache: | Il faut ensuite activer le module webdav et recharger la configuration de Apache: | ||
| - | ---- | + | <code bash> | 
| sudo a2ensite webdav | sudo a2ensite webdav | ||
| sudo service apache2 reload | sudo service apache2 reload | ||
| - | ---- | + | </ | 
| ==== Configuration de CUPS (1/2) ==== | ==== Configuration de CUPS (1/2) ==== | ||
| - | Port d' | + | === Port d' | 
| Permettre d' | Permettre d' | ||
| Remplacer la ligne: | Remplacer la ligne: | ||
| - | ---- | + | <code bash> | 
| Listen localhost: | Listen localhost: | ||
| - | ---- | + | </ | 
| par: | par: | ||
| - | ---- | + | <code bash> | 
| Listen 631 | Listen 631 | ||
| - | ---- | + | </ | 
| ==== Configuration de CUPS (2/2) ==== | ==== Configuration de CUPS (2/2) ==== | ||
| Ligne 114: | Ligne 113: | ||
| Permettre d' | Permettre d' | ||
| - | ---- | + | <code bash> | 
| sudo cupsctl --remote-admin | sudo cupsctl --remote-admin | ||
| - | ---- | + | </ | 
| Finalement, on redémarre CUPS: | Finalement, on redémarre CUPS: | ||
| - | ---- | + | <code bash> | 
| sudo systemctl restart cups | sudo systemctl restart cups | ||
| - | ---- | + | </ | 
| ==== Ajouter l' | ==== Ajouter l' | ||
| Ligne 131: | Ligne 130: | ||
| Une fois le bon driver installé, reste à ajouter l' | Une fois le bon driver installé, reste à ajouter l' | ||
| - | * Ouvrir l'URL http://<ip_serveur_web>:631 | + |    | 
| - | * Choisir " | + |   * Choisir " | 
| - | * Suivre les instructions de l' | + |   * Suivre les instructions de l' | 
| ==== Incron ==== | ==== Incron ==== | ||
| - | * Installer incron et permettre à root de l' | + |    | 
| - | ---- | + | |
| + | <code bash> | ||
| sudo su | sudo su | ||
| # apt-get install incron | # apt-get install incron | ||
| # echo root > / | # echo root > / | ||
| - | ---- | + | </ | 
| - | * Activer la surveillance du dossier de destination: | + | |
| - | ---- | + |    | 
| + | |||
| + | <code bash> | ||
| sudo incrontab -e | sudo incrontab -e | ||
| - | ---- | + | </ | 
| - | * Et ajouter: | + | |
| - | ---- | + |    | 
| + | |||
| + | <code bash> | ||
| / | / | ||
| - | ---- | + | </ | 
| ==== Le script bash ==== | ==== Le script bash ==== | ||
| Du côté serveur, il ne reste plus qu'à copier le script bash suivant dans le dossier spécifié à l' | Du côté serveur, il ne reste plus qu'à copier le script bash suivant dans le dossier spécifié à l' | ||
| - | [source,bash] | + | < | 
| - | ---- | + | |
| #!/bin/bash | #!/bin/bash | ||
| # Petit script pour imprimer un pdf en ligne de commande (trop fort GNU/Linux) | # Petit script pour imprimer un pdf en ligne de commande (trop fort GNU/Linux) | ||
| Ligne 166: | Ligne 169: | ||
| 	rm " | 	rm " | ||
| fi | fi | ||
| - | ---- | + | </ | 
| ===== Côté Android ===== | ===== Côté Android ===== | ||
| Ligne 179: | Ligne 182: | ||
| Il est possible d' | Il est possible d' | ||
| - | * en implémentant une authentification pour l' | + |    | 
| - | * imprimer des images en faisant une conversion à la volée (mogrify) | + | * imprimer des images en faisant une conversion à la volée (mogrify) | 
| - | * imprimer des documents odt en faisant une conversion à la volée (mais nécessite l' | + |   * imprimer des documents odt en faisant une conversion à la volée (mais nécessite l' | 
| ===== Merci ===== | ===== Merci ===== | ||
atelier20161119-impression-pdf-android-run.1481828784.txt.gz · Dernière modification : 2016/12/15 19:06 de wap