Projet

Général

Profil

Development #32184

déclencheur "webservice" sur les actions globales

Ajouté par Frédéric Péters il y a environ 5 ans. Mis à jour il y a presque 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
11 avril 2019
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Avoir WorkflowGlobalActionWebserviceTrigger qui fonctionnerait comme les "saut sur déclencheur", c'est-à-dire ouvrirait un accès webservice sur le formdata, attendrait un POST, en prendrait éventuellement les données, et exécuterait les actions définies.


Fichiers

Révisions associées

Révision 2513ad66 (diff)
Ajouté par Frédéric Péters il y a presque 5 ans

misc: move workflow custom directories getter to workflow class (#32184)

Révision c57cc62a (diff)
Ajouté par Frédéric Péters il y a presque 5 ans

workflows: add possibility to trigger global actions with a webservice (#32184)

Révision 3e46abdc (diff)
Ajouté par Frédéric Péters il y a presque 5 ans

workflows: add support for POSTing data to global hook (#32184)

Historique

#1

Mis à jour par Frédéric Péters il y a environ 5 ans

Le _q_traverse dans ApiFormPage est plutôt dommage mais pas d'autre option adéquate (au choix ancrer cette fonctionnalité sous une autre URL, plutôt moche, ou faire une vue pure django pour cette fonctionnalité, et là ça demande encore du travail d'infra plus générale).

À part ça rien de vraiment particulier dans ce patch.

#2

Mis à jour par Frédéric Péters il y a environ 5 ans

Et une info de contexte, l'objectif est de permettre le "+1" sur une demande d'un autre usager, dans le cadre de démarche de signalement, affichage des signalement à proximité.

#3

Mis à jour par Benjamin Dauvergne il y a environ 5 ans

  • Statut changé de Solution proposée à Solution validée

Frédéric Péters a écrit :

Et une info de contexte, l'objectif est de permettre le "+1" sur une demande d'un autre usager, dans le cadre de démarche de signalement, affichage des signalement à proximité.

Les X, Y, Z et W c'est du debug où c'est là pour rester ?

Sinon rien à dire sur le patch, mais je me demande comment on va faire pour empêcher une même personne de faire +1 plusieurs fois (et si ça finit par on va stocker ailleurs, je ne suis pas certain que des triggers nous aident particulièrement, mais j'attends de voir la suite).

#4

Mis à jour par Frédéric Péters il y a environ 5 ans

Les X, Y, Z et W c'est du debug ou c'est là pour rester ?

C'était juste du debug temporaire, retiré.

Sinon rien à dire sur le patch, mais je me demande comment on va faire pour empêcher une même personne de faire +1 plusieurs fois (et si ça finit par on va stocker ailleurs, je ne suis pas certain que des triggers nous aident particulièrement, mais j'attends de voir la suite).

Rien de prévu, la même personne peut déjà faire dix fois la même demande (et ça emmerde davantage les services).

Perso je vois les +1 comme un truc offrant une action à l'usager, sur l'idée qu'il est plus satisfaisant de quitter la démarche sur cette note positive d'avoir fait quelque chose que sur un message qui dirait juste "il y a déjà quelque chose signalé, veuillez fermer cette page, merci".

Pour le traitement réel par les agents derrière, sur les volumes actuels, je ne pense pas qu'il y ait grosse utilité à prioriser les demandes en fonction des +1. (même si c'est un truc que le workflow peut prévoir).

#5

Mis à jour par Frédéric Péters il y a environ 5 ans

Oubliée tout à l'heure, la possibilité d'enregistrer les données.

#7

Mis à jour par Thomas Noël il y a presque 5 ans

Frédéric Péters a écrit :

Oubliée tout à l'heure, la possibilité d'enregistrer les données.

Je pense que c'est plutôt un « if get_request().is_json(): » qu'il faut faire (parce que l'attribut json il existe toujours, si j'ai tout bien lu)

#8

Mis à jour par Thomas Noël il y a presque 5 ans

0001-misc-move-workflow-custom-directories-getter-to-work.patch : ack

0002-workflows-add-possibility-to-trigger-global-actions-.patch : ça me semble ok, juste quelques remarques/questions :
  • pourquoi nommer l'url "hooks/xxx" et pas "hook/xxx" (au singulier, comme le "trigger/xxx" sur les sauts) ?
  • si j'étais un pénible je dirais qu'il manque un paragraphe de doc dans help/fr/api-workflow.page mais je ne suis pas pénible
#9

Mis à jour par Frédéric Péters il y a presque 5 ans

  • Statut changé de Solution proposée à Résolu (à déployer)

pourquoi nommer l'url "hooks/xxx" et pas "hook/xxx" (au singulier, comme le "trigger/xxx" sur les sauts) ?

Pas de raison particulière et pas envie d'en inventer une a posteriori; juste que sur le coup, je préfère.

si j'étais un pénible je dirais qu'il manque un paragraphe de doc dans help/fr/api-workflow.page mais je ne suis pas pénible

Ouaip, j'ai ajouté quelques mots.

commit c57cc62ac9d75aa092fbdb259bb95b6ea8babe17
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Thu Apr 11 10:48:03 2019 +0200

    workflows: add possibility to trigger global actions with a webservice (#32184)

commit 2513ad6665aa0cdbfb951f92ebf04ee835909a65
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Thu Apr 11 10:47:18 2019 +0200

    misc: move workflow custom directories getter to workflow class (#32184)
#10

Mis à jour par Frédéric Péters il y a presque 5 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#11

Mis à jour par Frédéric Péters il y a presque 5 ans

0001-workflows-add-support-for-POSTing-data-to-global-hoo.patch

Et j'avais oublié de pousser ce morceau-ci, c'est désormais fait.

Formats disponibles : Atom PDF