417
edits
Eric.seigne (talk | contribs) (PWA suite au devcamp lyon 2023) Tag: 2017 source edit |
Eric.seigne (talk | contribs) (Ajout PWA) Tag: 2017 source edit |
||
| Line 1: | Line 1: | ||
==Présentation du sujet pour ce GIFF :== | ==Présentation du sujet pour ce GIFF :== | ||
Exposer les solutions techniques pour l'affichage de Dolibarr et les utilisations sur mobile | Exposer les solutions techniques pour l'affichage de Dolibarr et les utilisations sur mobile | ||
| Line 16: | Line 17: | ||
Channel sur Discord : à venir | Channel sur Discord : à venir | ||
==Problématique détaillée :== | ==Problématique détaillée :== | ||
CAP-REL a présenté une implémentation "dolibarr/PWA" de DoliSCAN sous le nom de ScanExpenses en utilisant la même pile technique que DoliSCAN : [https://onsen.io/v2/api/css.html onsenui] + jquery, voir la présentation sur le forum: https://www.dolibarr.fr/forum/t/notes-de-frais-vous-connaissez-doliscan-et-scaninvoices-vous-allez-peut-etre-aimer-scanexpenses/40165 | Nous avons de plus en plus de besoins liés aux périphériques mobiles (smartphone mais pas que) pour lesquels il semble plus efficace de proposer des PWA (Progressive Web Apps) plutôt que des applications natives (android + ios). | ||
CAP-REL a présenté une implémentation "dolibarr/PWA" de DoliSCAN sous le nom de ScanExpenses en utilisant la même pile technique que DoliSCAN : [https://onsen.io/v2/api/css.html onsenui] + jquery, voir la présentation sur le forum: https://www.dolibarr.fr/forum/t/notes-de-frais-vous-connaissez-doliscan-et-scaninvoices-vous-allez-peut-etre-aimer-scanexpenses/40165 puis SmartDLC, SmartInterventions et SmartLivraisons | |||
Lors du devcamp Bordeaux 2023 Vincent Maury présente une solution technique qui s'appuie sur boostrap + (...) voir plus de détails sur le forum [https://www.dolibarr.fr/forum/t/module-poc-webapp-responsive-incluant-bootstrap-qrcode-scanner-photo-draw/42242 https://www.dolibarr.fr/forum/t/module-poc-webapp-responsive-incluannt-bootstrap-qrcode-scanner-photo-draw/42242] | Lors du devcamp Bordeaux 2023 Vincent Maury présente une solution technique qui s'appuie sur boostrap + (...) voir plus de détails sur le forum [https://www.dolibarr.fr/forum/t/module-poc-webapp-responsive-incluant-bootstrap-qrcode-scanner-photo-draw/42242 https://www.dolibarr.fr/forum/t/module-poc-webapp-responsive-incluannt-bootstrap-qrcode-scanner-photo-draw/42242] | ||
| Line 38: | Line 40: | ||
Sujet abordé lors du DevCamp de Lyon 2023, proposition de GIFF en 2 ou 3 étapes | Sujet abordé lors du DevCamp de Lyon 2023, proposition de GIFF en 2 ou 3 étapes | ||
===== Etape 0 "vocabulaire" ===== | |||
* PWA = progressive web app, en bref un accès un peu spécial à une arborescence de votre site web qui se présentera sous la forme d'une application sur votre smartphone. -> https://fr.wikipedia.org/wiki/Progressive_web_app | |||
* .../... | |||
===== Etape 1 ===== | ===== Etape 1 ===== | ||
Ajouter dans le module Builder de dolibarr un onglet "PWA" / "je souhaite que mon module offre un accès PWA" | Ajouter dans le module Builder de dolibarr un onglet "PWA" / "je souhaite que mon module offre un accès via une PWA" | ||
* génération automatique du manifest.json pour permettre d'"installer" la PWA sur le smartphone | * génération automatique du manifest.json pour permettre d'"installer" la PWA sur le smartphone | ||
* génération des pages minimales "PWA" comme le module builder génère actuellement des pages de base "backend dolibarr natif" pour le module et tout objet généré par le module builder | * génération des pages minimales "PWA" comme le module builder génère actuellement des pages de base "backend dolibarr natif" pour le module et tout objet généré par le module builder | ||
* intégration du service worker dans le coeur de dolibarr qui offre ce service aux modules dont l'option PWA est activée | * intégration du service worker dans le coeur de dolibarr qui offre ce service aux modules dont l'option PWA est activée | ||
* apporte un ensemble "css/js" cohérent pour que toute application PWA générée par le module builder puisse partager la même "pile", le choix de la pile en question fait partie de ce GIFF | * apporte un ensemble "css/js" cohérent pour que toute application PWA générée par le module builder puisse partager la même "pile", le choix de la pile en question fait partie de ce GIFF ce choix sera automatiquement intégré aux modules mais pourra être modifié/désactivé/remplacé par une autre pile si le développeur du module le souhaite ... mais nous pensons qu'il serait astucieux de partager cette pile pour que toute application "PWA Dolibarr" ait la même "ergonomie / apparence / ..." | ||
Utiliser l'API actuelle de dolibarr (voir étape 2), les modules générés par le module builder peuvent enrichir l'api pour répondre aux besoins et la création d'un utilisateur dédié permet de restreindre les accès à la partie de l'api visée par l'application. Cette solution est transitoire et permet d'avancer d'une étape. | Utiliser l'API actuelle de dolibarr (voir étape 2), les modules générés par le module builder peuvent enrichir l'api pour répondre aux besoins et la création d'un utilisateur dédié permet de restreindre les accès à la partie de l'api visée par l'application. Cette solution est transitoire et permet d'avancer d'une étape. | ||
| Line 57: | Line 64: | ||
* La clé d'API principale de patron : accès à toute l'API | * La clé d'API principale de patron : accès à toute l'API | ||
* Patron utilise une application de gestion de notes de frais, lorsqu'il s'authentifie sur l'application notes de frais la clé d'API utilisée n'a accès qu'au sous ensemble "notes de frais" de dolibarr. Ainsi lorsque patron change de téléphone, l'ancienne clé d'API est désactivée et une nouvelle clé d'API est générée. Cloisonnement des périmètres. Une clé peut avoir un cycle de vie particulier distinct du cycle de vie de l'utilisateur. | * Patron utilise une application de gestion de notes de frais, lorsqu'il s'authentifie sur l'application notes de frais la clé d'API utilisée n'a accès qu'au sous ensemble "notes de frais" de dolibarr. Ainsi lorsque patron change de téléphone, l'ancienne clé d'API est désactivée et une nouvelle clé d'API est générée. Cloisonnement des périmètres. Une clé peut avoir un cycle de vie particulier distinct du cycle de vie de l'utilisateur. | ||
Illustration: | |||
* Lorsque vous connectez une application à nextcloud, lors de la 1ere authentification l'application et le serveur dialoguent et une fenêtre permet à l'utilisateur de choisir/confirmer les données auxquelles l'application aura accès | |||
[[Category:Groupement d'Intérêt Fonctionnel]] | [[Category:Groupement d'Intérêt Fonctionnel]] | ||
edits