Documentation en ligne

Rendez-vous

Pour configurer un agenda de type « rendez-vous », il faut définir les plages horaires d'ouverture (par exemple, « les lundis de 9 à 17 heures et le mercredi de 14 à 18 heures ») et un ou plusieurs types de rendez-vous ayant chacun une durée définie.

Il est également possible de créer plusieurs guichets, permettant ainsi de multiplier le nombre de places disponibles pour un même créneau.

Lorsque vous avez défini plusieurs type de rendez-vous (RdV) différents dans un agenda, il peut être utile d'afficher ces types (RdV pour 1 personne, RdV famille...) dans un formulaire. Pour les afficher, dans un champ de type liste au sein d'un formulaire, vous pouvez faire appel à la source de données JSON suivante :

    {{agendas_url}}api/agenda/IDENTIFIANT-AGENDA/meetings/

Exposer les créneaux horaires dans un formulaire

Pour exploiter un agenda de type rendez-vous, il convient d'abord de présenter à l'usager la liste des créneaux horaires disponibles. Pour cela il faut créer dans un formulaire un champ de type liste auquel on donne un nom de variable (par exemple « event ») et que l'on alimente (dans les paramètres avancés du champ) par une « source de données » de type JSON.

Après avoir sélectionné « JSON » dans la liste des sources de données, on indiquera l'URL suivante :

  {{agendas_url}}api/agenda/RENDEZ-VOUS-PASSEPORT/meetings/TYPE-DE-RDV/datetimes/

RENDEZ-VOUS-PASSEPORT est l'identifiant de votre agenda (visible dans les paramètres de l'agenda) et TYPE-DE-RDV est l'identifiant de votre type de rendez-vous (visible au même endroit).

Il est nécessaire de mettre « template-meetings » dans le paramètre « Classes supplémentaires pour les styles CSS » pour avoir un affichage optimisé plutôt qu'une simple liste déroulante des créneaux. 

Dans « Paramètres supplémentaires » , le réglage « Afficher les éléments désactivés » (désactivé par défaut) permet d'afficher, en grisé, les créneaux déjà réservés, un tel créneau n'est pas pour autant réservable.

Lorsque l'usager aura choisi un créneaux et validé le formulaire, il est nécessaire que le workflow soit correctement configuré pour enregistrer la réservation dans l'agenda.

Changer les horaires d'une semaine sur l'autre

Les agendas définissent, de façon récurrente, les horaires d'ouverture pour une semaine type mais il est possible de définir pour chaque guichet (ou globalement pour l'agenda) des périodes pendant lesquelles les horaires normaux ne s'appliquent pas : les « exceptions ». Il peut y avoir des exceptions parce qu'un jour est férié, parce qu'une personne est absente ou simplement parce que les horaires d'ouverture changent durant une période donnée.

Les exceptions permettent de définir une date/heure de début et une date/heure de fin, les créneaux indiqués sont alors indisponibles entre les bornes indiquées. Il est possible de mettre en place des  exceptions :
  • manuellement en saisissant le début et la fin de chaque exception,
  • ou via un fichier (.ics) qui pourra être ajouté ponctuellement ou importé automatiquement toutes les heures si ce fichier est accessible depuis une URL (nota : seules les exceptions dans les 600 jours à venir sont importées).
Chaque guichet dispose d'une source d'exception « Jours fériés » prédéfinie, qui peut être désactivée si nécessaire.

Mettre des couleurs aux rendez-vous

Il est possible de mettre des couleurs aux créneaux réservés dans un agenda. Par défaut, les rendez-vous sont en bleu. Le choix de la couleur attribuée à tel ou tel type de réservation est automatique, il est impossible de la choisir.

exemple de créneaux en couleur

Dans l'appel de réservation, dans le corps de la requête, il faut passer le nouveau paramètre « use_color_for ». Sa valeur doit être une chaîne de caractères et entraînera l'attribution d'une couleur. Si le libellé est inconnu, une couleur de la palette est attribuée, sinon on réutilise la couleur déjà attribuée pour cette chaîne de caractères.

exemple de paramétrage pour la couleur

Il y a 8 couleurs en tout, le neuvième libellé reprend la première couleur.

Une légende s'affiche en bas des vues calendriers, elle indique la correspondance entre libellés et couleurs présentes sur la vue courante.

présentation de la légende

Visualisation des rendez-vous et export .ics

Envoyer le fichier .ics d'un rendez-vous par courriel

Il est possible de joindre à un courriel un fichier .ics d'un rendez-vous. La personne recevant ce courriel dans Outlook n'aura qu'à cliquer sur le fichier .ics pour mettre le rendez-vous dans son agenda. Pour suivre le tutoriel, c'est par là.

Fichier .ics de la liste des rendez-vous

Publik offre une vue sur les agendas directement depuis son backoffice, il suffit d'attribuer les droits de visualisation sur l'agenda concerné aux rôles autorisés. Les personnes autorisées disposeront alors d'une vue calendaire des rendez-vous, vue quotidienne ou mensuelle.

Alternativement, il est possible d'exporter la liste des rendez-vous vers un logiciel d'agenda type Zimbra ou Outlook, à travers une vue « ics » des demandes.

Pour ce faire, il faut construire une adresse sur la forme

{{eservices_url}}api/forms/IDENTIFIANT-DU-FORMULAIRE/ics/IDENTIFIANT-DONNEE-DE-TRAITEMENT

Par exemple : https://demarches.example.fr/api/forms/prise-de-rendez-vous-passeport/ics/rdv_datetime.

L'identifiant du formulaire est ici prise-de-rendez-vous-passeport. rdv_datetime est l'identifiant de la donnée de traitement dans laquelle on a stocké le jour et l'heure du rendez-vous sous forme structurée (identifiant sans préfixe form_var_ donc).

données de traitement

Pour obtenir le jour et l'heure sous forme structurée et pour un rendez-vous dont le créneau aurait été sélectionné dans un champ ayant comme identifiant event, la donnée de traitement rdv_datetime serait alimentée par la variable form_var_event_datetime.

affectation de la valeur à la donnée de traitement

Pour utiliser la durée du rendez-vous, il faut créer une autre donnée de traitement et y stocker la date de fin retournée par le webservice d'agenda : {{reservation_response_end_datetime}} par exemple, si le webservice a pour identifiant reservation, puis appeler

{{eservices_url}}api/forms/IDENTIFIANT-DU-FORMULAIRE/ics/IDENTIFIANT-DONNEE-DE-TRAITEMENT/IDENTIFIANT-AUTRE-DONNEE-DE-TRAITEMENT.

Il manquera encore au programme tiers les autorisations nécessaires pour accéder au webservice, il faudra demander à l'administrateur de Publik d'ajouter, dans une section [api-http-auth-ics] du site-options.cfg, une entrée username = password, pour ouvrir l'accès au webservice et il faudra également ajouter à l'URL un paramètre email correspondant à un usager habilité à accéder aux demandes.

Dernière mise à jour le 11 janvier 2021 10:21 — Éditer