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:08] – 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) | + | * CUPS (Common Unix Printing Sytem) |
- | - Un serveur web (Apache par exemple) avec le module " | + | |
- | - incron: permet d' | + | |
- | - Un script Bash fait maison ;-) | + | |
* Sur Android: | * Sur Android: | ||
- | - Un (bête) client webdav | + | * 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.1481828894.txt.gz · Dernière modification : 2016/12/15 19:08 de wap