Documentation en ligne

Pré-réservation d'un rendez-vous ou d'un évènement

Il s'agit de réserver temporairement un créneau horaire ou un évènement, laissant ainsi le temps pour l'usager (ou l'agent lors de la saisie backoffice) de compléter le formulaire sans que le rendez-vous ou l'évènement ne soit réservé par une autre personne entre temps.

Paramétrage (exemple pour les rendez-vous)

Pour permettre la pré-réservation temporaire, il faut :

  1. Créer un appel de webservice qui utilise la méthode POST (JSON) avec la même URL que le webservice de réservation  dans le workflow. Dans les « Données à envoyer dans le corps de la requête » indiquez « lock_code » comme variable avec le gabarit {{ session_hash_id }}.
    Dans cet exemple, l'identifiant de l'appel webservice est « rdv_fillslot_preblocage ».


     
  2. Côté formulaire, ajouter une condition de sortie de page sur la page qui permet de choisir le créneau du rendez-vous (ou de l'évènement), et les suivantes.
    Condition : webservice.rdv_fillslot_preblocage.err == 0
    Message d'erreur si condition non statisfaite : Veuillez choisir un nouveau créneau, le pré-blocaque de votre réservation n'a pas pu aboutir.
     
  3. Toujours côté formulaire, dans le champ qui permet d'afficher les créneaux de l'agenda, ajouter le paramètre lock_code à la source de donnée :
    • soit à la fin de l'URL du JSON, exemple : {{ agendas_url }}api/agenda/agenda-de-type-rdv/meetings/{{ form_var_meeting_type_raw }}/datetimes/?lock_code={{ session_hash_id }}
    • soit en sélectionnant directement la source de donnée de l'agenda (la donnée à envoyer en paramètres de l'URL : lock_code : {{ session_hash_id }} étant déjà intégrée)
  4. Côté workflow, dans le webservice de réservation, ajouter des données à envoyer dans le corps de la requête.
    lock_code : {{ session_hash_id }}
    confirm_after_lock : true

Explication


Le paramètre « lock_code » permet deux choses :

  • de valider la disponibilité du créneau : il vérifie que le créneau est toujours accessible à chaque sortie de page ;
  • de poser un verrou temporaire : le créneau sera bloqué pendant 10 minutes. Durant ce laps de temps, le créneau ne sera plus considéré comme disponible, bien que la réservation ne soit pas encore définitive.


Chaque fois que ce paramètre est appelé, le verrouillage existant est prolongé de 10 minutes. Il est donc important de maintenir la condition de sortie de page jusqu'à la fin du formulaire.

Ce nouveau paramètre est également utilisable pour la réservation multiple (réservation de plusieurs places à un évènement + réservation d'une place à plusieurs évènements).

Affichage côté agenda en backoffice

Côté agenda, la pré-réservation indique comme libellé « En cours de réservation ».

Dernière mise à jour le 19 février 2024 10:15 — Éditer