Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Il est possible de permettre à l’utilisateur de recevoir par messagerie un lien lui permettant de modifier la valeur de son consentement.

Par défaut, ce lien pointe directement vers l’iframe de consentement : l’utilisateur cliquant sur le lien se verra rediriger vers l’URL de l’iframe, https://core.fairandsmart.com/api/consents/<serial>?t=<token>, qui s’affichera sans éléments de contexte.

À partir de la version 20.11.01 (backend core v.5.2.0), il est possible de passer un lien arbitraire permettant d'éventuellement contextualiser l’iframe de consentement, par exemple en renvoyant directement vers la page sur laquelle l’iframe est présentée.

les snippets sont volontairement gardés au plus simple (pas de contrôle d’erreur, de gestion des sessions etc … ).

Principe de fonctionnement

On part du principe que l’utilisateur se voit présenter le formulaire via une iframe sur la page https://mon-site/consentement .

L’idée est que le lien présent dans l’email envoyé à l’utilisateur prenne la valeur https://mon-site/consentement ; ainsi quand il cliquera dessus il aboutira sur la page lui permettant de modifier son consentement.

Si l’identifiant d’utilisateur - paramètre userid - est réutilisé d’un appel sur l’autre, le formulaire s’affichera avec les réponses précédemment données.

Cinématique

Une fois l’intégration réalisée, la cinématique se déroule ainsi :

  • l’utilisateur se rend sur la page présentant l’iframe de consentement ;

  • le backend lui présente un formulaire paramétré de manière à :

    • lui envoyer un email ;

    • contenant le lien vers la page présentant l’iframe de consentement ;

  • l’utilisateur soumet son consentement ;

  • l’utilisateur reçoit un email contenant un lien pointant vers la page présentant l’iframe de consentement ;

  • l’utilisateur clique sur le lien et abouti à la page présentant l’iframe de consentement.

Obtention d’une URL de formulaire de consentement

En se basant sur l' https://fairandsmart.atlassian.net/wiki/spaces/BDC/pages/960724997/Int+gration+d+un+mod+le+de+consentement#Obtention-d%E2%80%99une-URL-de-formulaire-de-consentement ; on modifie le code de manière à renseigner email et URL :

function getFormUrl($uuid, $email, $token)
{
    $api_url = "https://core.fairandsmart.com/api";
    $organisation_id = "XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX";
    $model_id_or_alias = "YYYYYYYY-YYYY-YYYY-YYYY-YYYYYYYYYYYY";
    
    $host = $_SERVER['HTTP_HOST'];
    $port = "";
    $proto = isset($_SERVER['HTTPS']) ? "https" : "http";

    $context = [
        "userid" => $uuid,
        "country" => "FR",
        "language" => "fr",
        "optoutEmail" => $email,
        "optoutEmailLink" => "https://mon-site/consentement",
    ];

    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $api_url . "/organisations/" . $organisation_id . "/consents/" . $model_id_or_alias . "/endpoint");
    curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($context));
    curl_setopt($curl, CURLOPT_HTTPHEADER, array("Authorization: Bearer $token", "Content-Type: application/json"));
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($curl);
    curl_close($curl);
}

Coté HTML :

<html lang="fr">
<body>
    <iframe src="<?php echo getFormUrl(getUserId(), getUserEmail(), getToken()) ?>" width="100%" name="consent"></iframe>
</body>
</html>

Le code des méthodes getUserId(), getUserEmail(), getToken() n’est pas explicité, mais peut par exemple récupérer les paramètres dans l’URL ($_GET), dans la session ($_SESSION), etc …

  • No labels