La configuration du serveur doit être régulièrement à jour pour que le service continue à fonctionner. Cette page explique les différentes variables de configuration ainsi que quelques tutos pour mettre à jour le serveur selon des cas de figure.
Toutes les variables de configuration sont présentes dans le fichier config.json
à la racine du serveur.
À ce jour, le programme remorque se trouve à l'endroit suivant sur le serveur OVH de l'Atelier : /srv/remorque/
.
baseurl
: URL publique de la racine du serveur. Est nécessaire pour la génération des liens (par exemple celui d'annulation dans le mail de confirmation).port
: port d'exposition du serveur.captchaSecret
: token secret reCAPTCHA à utiliser pour vérifier la donnée captcha (en générer un depuis Google Developers)Remorque authentifie les utilisateurs en interrogeant l'API Paheko. Pour cela, le programme nécessite les variables suivantes :
url
: URL de l'API Pahekousername
: nom d'utilisateur du compte APIpassword
: mot de passeactivityAdhesionId
: identifiant de l'activité qui atteste de l'adhésion en cours de l'utilisateur. Du côté de l'Atelier Solidaire, cette variable doit être changée dès nouvelle exercice d'adhésion (pour l'instant chaque 1er janvier).activityRemorqueId
: identifiant de l'activité qui atteste que l'utilisateur a le droit d'utiliser la remorque.les services correspondent aux différents véhicules proposés à la réservation. Il y un service par véhicule. Il sont listés dans la variable services
. Un service se définie à l'aide des variables suivantes :
id
: un identifiant textuel pour le service (ex : remorque
)name
: le nom du véhiculegoogleCalendarId
: identifiant du calendrier Google où seront enregistrés les évènements de réservation. Pour trouver cette identifiant, il faut se rendre dans les Paramètres et partage
de l'agenda puis dans la section Intégrer l'agenda
codePrivateKey
: code secret utilisé pour retrouver automatiquement le code mensuel de la boîte à clés associée au véhicule.pahekoActivityId
:mailConfirmationSubject
: objet du mail de confirmation une fois la réservation confirmée.mailConfirmationContent
: contenu du mail de confirmation. Attention, cela doit être une liste des lignes composant du mail. Au format HTML.Les réservations sont directement envoyés à l'agenda Google. Pour cela, le programme doit connaître de nombreuses informations sur le compte Google associé.
googleCredentials
: ensemble de variables OAuth2 utilisées pour authentifier l'utilisateur Google derrière les réservations. Elles peuvent être récupérées depuis le ficher credentials.json
téléchargeable dans l'onglet Credentials
sur la plateforme Google Cloud (une fois l'API Google Calendar activée).Informations d'authentification classique pour le serveur SMTP à utiliser pour l'envoi des mails.
Pour ajouter un véhicule, il faut d'abord crée un agenda google et le partager avec le compte google lié à l'API Google Calendar. Pour l'Atelier, il s'agit du mail service-account-remorque@remorque.iam.gserviceaccount.com
. Ce partage doit autoriser les droits Apporter des modifications et gérer le partage
.
Ensuite, il faut ajouter une entrée dans le champ service
du fichier config.json
(cf. section Service plus haut).
La réservation des remorques passe par une étape de vérification des droits de l'adhérent utilisateur. Pour cela, le programme interroge le serveur Paheko (logiciel de gestion de l'association). La vérification consiste à regarder si l'adhérent utilisateur est inscrit (et à jour) à deux activités :
activityAdhesionId
)activityRemorqueId
)On doit ainsi inscrire dans le fichier de configuration l'identifiant unique de ces deux activités. À l'Atelier Solidaire, lors d'un nouvel exercice, ces deux activités changent : ils faut ainsi inscrire dans le fichier de configuration les nouveaux identifiants.
Trouver l'identifiant d'une activité
Les activités sont listées dans l'onglet « Activités & cotisations » sous l'onglet « Membres ».
Ensuite, en cliquant sur une activité, on peut récupérer son identifiant dans son URL : tout à la fin, à côté de id=
. C'est ce numéro qui doit être utilisé dans le fichier config.json
du programme remorque.
Le contenu des mails se modifient dans le fichier de configuration. Les mails sont au format HTML. Vous pouvez utiliser les variables suivantes (inscrite sous la forme {VARIABLE}
) :
{NAME}
: Nom de l'adhérent derrière la réservation{HOUR_START}
: Heure de début de la réservation{HOUR_END}
: Heure de fin de la réservation{DATE_START}
: Date de début de la réservation{DATE_END}
: Date de fin de la réservation{LINK_CANCEL}
: Lien d'annulation de la réservation{CODE}
: Code de la boîte à clé, calculé par le programme à partir du code confidentiel et la date de la réservation.