Projet

Général

Profil

Development #41533

ATAL : endpoint de remontée des derniers commentaires

Ajouté par Emmanuel Cazenave il y a presque 4 ans. Mis à jour il y a presque 4 ans.

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

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Pour arriver à avoir un échange d'informations entre un agent traitant dans Publik et un autre dans ATAL, il faut pouvoir envoyer un commentaire dans ATAL (déjà ok) et remonter les dernier dans Publik (ce qu'il reste à faire)

Et donc une idée posée par Fred :

en approximation un peu lourde alors, avoir une donnée de traitement avec la date connue du dernier commentaire atal, et la passer à l'appel qui retournerait les "nouveaux" commentaires.
on aurait dans le worflow un appel régulier à get_status
et à cet appel, on passerait un paramètre last_seen_comment=date
au retour de get_status
s'il y a des nouveaux commentaires, ils sont inclus dans la réponse.
(ça peut aussi être fait en deux appels, pour pas tout mêler)
et du coup, dans le workflow, après avoir fait le get_status, deux actions,
enregistrement d'un commentaire dans l'historique, conditionné à response_a_eu_un_nouveau_commentaire
modif donnée de traitement, conditionné pareil, et donc date <- response_date_du_nouveau_commentiare.


Fichiers


Demandes liées

Lié à w.c.s. - Development #41538: Template : avoir un équivalent de 'now' mais avec la timezone ou sinon 'utcnow'Rejeté09 avril 2020

Actions

Révisions associées

Révision 47bd83fb (diff)
Ajouté par Emmanuel Cazenave il y a presque 4 ans

atal: factor endpoint parameter (#41533)

Révision 0898474c (diff)
Ajouté par Emmanuel Cazenave il y a presque 4 ans

atal: add 'new-comments' endpoint (#41533)

Historique

#1

Mis à jour par Emmanuel Cazenave il y a presque 4 ans

  • Statut changé de Nouveau à En cours
  • Assigné à mis à Emmanuel Cazenave
#2

Mis à jour par Emmanuel Cazenave il y a presque 4 ans

  • Lié à Development #41538: Template : avoir un équivalent de 'now' mais avec la timezone ou sinon 'utcnow' ajouté
#3

Mis à jour par Emmanuel Cazenave il y a presque 4 ans

#4

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

0001: ok

0002:
  • APIError('Wrong datetime format') tu peux ajouter un http_status=400
  • comme tu as fait un "... or []" dans la ligne au dessus, tu peux supprimer le if responses:

Je comprends qu'il y a une logique de "boucle" pour récupérer les "derniers commentaires depuis la dernière fois".

Pour ça, je proposerais :
  • si aucune last_datetime n'est fournie, considérer que tout est nouveau
  • renvoyer dans le dico final une "last_datetime", celle du dernier commentaire

Ainsi la requête dans l'action webservice du workflow sera être de la forme

.../new_comments?demande_number={{...}}{% if getcomments_response_data_last_datetime %}&last_datetime={{ getcomments_response_data_last_datetime }}{% endif %}

si le webservice a comme identifiant "getcomments". A chaque itération il lira les nouveaux en fonction du son précédent appel.

#5

Mis à jour par Emmanuel Cazenave il y a presque 4 ans

Thomas Noël a écrit :

0001: ok

0002:
  • APIError('Wrong datetime format') tu peux ajouter un http_status=400
  • comme tu as fait un "... or []" dans la ligne au dessus, tu peux supprimer le if responses:

Tenu compte.

Je comprends qu'il y a une logique de "boucle" pour récupérer les "derniers commentaires depuis la dernière fois".

Oui c'est cool, voilà.

Ascenseur émotionnel, tout ceci va probablement servir à rien, ces commentaires semblent être en lecture seule coté ATAL et donc on aura rien à remonter (#41485#note-8) ... mais bon au cas où on sera prêt.

#6

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

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

On va dire escalier émotionnel. Acké, en tout cas.

Juste parce que ça me passe le temps de l'écrire : j'aurai mis des parenthèses dans le if dateobj and issup(dateobj, last_datetime) or last_datetime is None: pour tenter de faire ressortir le "last_datetime is None" final mais ho hé ça va hein.

#7

Mis à jour par Emmanuel Cazenave il y a presque 4 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 0898474c871e409652e67e3a9740e48e48a00df8
Author: Emmanuel Cazenave <ecazenave@entrouvert.com>
Date:   Thu Apr 9 15:34:26 2020 +0200

    atal: add 'new-comments' endpoint (#41533)

commit 47bd83fbb919ecc47b75be46edb896054c4c2fa9
Author: Emmanuel Cazenave <ecazenave@entrouvert.com>
Date:   Thu Apr 9 12:40:44 2020 +0200

    atal: factor endpoint parameter (#41533)
#8

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

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

Formats disponibles : Atom PDF