1. Zuhause
  2. Dokumente
  3. Entwicklerdokumentation
  4. Plugins / Bibliotheken
  5. XcooBee Cookie Kit

XcooBee Cookie Kit

Herunterladen und verwenden

Veröffentlicht als Open Source unter Apache-2.0 Lizenz

https://www.npmjs.com/package/xcoobee-cookie-kit-web

Was ist der Unterschied

Das XCK ist ein aktives Cookie- und Zustimmungsverwaltungsframework für Ihre Site. Dies unterscheidet sich von einem Textfeld, das nur auf Cookie-Benachrichtigungen basiert.

Die meisten aktuellen GDPR-Hinweise für Cookies für Websites sind genau das: Overlays, die Informationen anzeigen, aber die Erstellung von Cookies und die Lebenszyklen nicht aktiv verwalten. Sie sind weiterhin für den korrekten Umgang mit Cookies und Fingerabdrücken verantwortlich. Im Gegensatz dazu ist das XcooBee Cookie Kit ein echter Cookie-Zustimmungs- und Lebenszyklus-Manager. Es wird Ihnen helfen, die Prämissen der DSGVO und der europäischen E-Richtlinie korrekt umzusetzen.

Super-Schnellstart-Beispiel

  1. Laden Sie die Bibliothek mithilfe des Skript-Tags vom CDN:
<script id="xcoobee-cookie-kit" src="https://app.xcoobee.net/scripts/kit/xcoobee-cookie-kit.min.js"></script>
  1. Setzen Sie Ihre verwalteten Cookies mit Tag in Ihrem HTML-DOM wie folgt:
 abhchkshsdh  Dunkelblau 
  1. Initialisieren Sie das Cookie-Kit, um die Dinge am Ende des Renderns Ihrer Seite zu verwalten:
<script>
  function blankCh(){};

  XcooBee.kit.initialize({
    checkByDefaultTypes: ["application","usage"],
    cookieHandler: "blankCh",
    position: "right_bottom",
    privacyUrl: "#privacyUrl",
    requestDataTypes: ["application", "usage", "statistics"],
    termsUrl: "#termsUrl",
    textMessage: "Welcome to our site. We manage cookies responsibly and listen to our users. You can check and uncheck which types are OK."    
  });
</script>

Sehen Parameterreferenz für alle Dinge, die Sie tun können.

Erledigt !!

Dies war ein supereinfaches Beispiel. Das XCK wird von hier aus Aufgaben im Zusammenhang mit der DSGVO und der E-Direktive übernehmen. Natürlich gibt es später noch viele weitere und ausführlichere Beispiele.

Video

Cookie Kit Tutorial

Was ist der XCK?

Ziel des XcooBee Cookie Kits (XCK) ist es, Websites zu ermöglichen, ihre Cookie-Einwilligung effektiver und mit weniger Ärger für ihre Benutzer zu verwalten. Das XCK kann mit dem XcooBee-Netzwerk zusammenarbeiten, um das Gesamtmanagement für Benutzer und Unternehmen zu verbessern. Dies ist jedoch nicht erforderlich. Wenn der XCK unabhängig von XcooBee arbeitet, sind einige Verwaltungsfunktionen nicht verfügbar.

Mit dem XCK können Sie Ihrer Website ganz einfach ein Cookie-Zustimmungsmanagement hinzufügen. Es behandelt alle Benutzerinteraktionen, um die Zustimmung zu erhalten, und teilt der Website mit, welche Cookies für jeden Benutzer verwendet werden können, während dieser Ihre Website besucht. Ebenso kann Ihre Website jetzt informiert werden, wenn Benutzer ihre Einwilligung ändern, auch wenn sie sie nicht besuchen.

Das XCK ist eine der transparentesten und reibungslosesten Möglichkeiten, Cookies auf Ihrer Website zu verwalten. Es wird die Benutzererfahrung nicht anzeigen, wenn sie nicht benötigt wird. Gleichzeitig werden die europäischen elektronischen Richtlinien und die damit verbundenen DSGVO-Vorschriften eingehalten.

Websitebesitzer können problemlos auf Datenanfragen reagieren und bei Bedarf über das XcooBee-Netzwerk über datenschutzbezogene Anfragen berichten.

Für das XCK ist keine XcooBee-Verbindung erforderlich, damit Ihre Website funktioniert. Sie haben weiterhin Zugriff auf die meisten Einwilligungen von Benutzern, haben jedoch keine zentrale Einsichts- und Einwilligungsverwaltung.

Das XCK reagiert und lässt sich problemlos an verschiedene Bildschirme anpassen, einschließlich mobiler Anwendungen.

Schnellstart zu erreichen Tag-Beispiele.

Features

Mit dem Cookie-Kit können Sie:

  • Verwenden Sie die XcooBee-Vorklassifizierung von Cookies, um vereinfachte und klare Details zur Verwendung von Cookies anzuzeigen
  • Teilen Sie Ihre Cookie-Richtlinien
  • Teilen Sie Ihre Nutzungsbedingungen mit
  • Teilen Sie Ihre Datenschutzrichtlinie
  • Bestimmen der Interaktionen zwischen Cookie-Setter und Unsetter
  • Integration in Backend-Services für Cookie-Benachrichtigungen
  • Stellen Sie transparent fest, ob eine Benachrichtigung erforderlich ist
  • Benutzern erlauben, die Zustimmung für Cookies zu entfernen / hinzuzufügen
  • Stellen Sie das Timing und die Position der Informationsanzeige ein
  • Reagieren Sie ordnungsgemäß auf Einwilligungen und Entfernungsanfragen des Benutzers

Mit dem Abonnement von XcooBee können Sie auch:

  • Dokumentieren Sie Ihre Interaktionen mit der Cookie-Zustimmung
  • Einwilligung des Benutzers per Fernverwaltung
  • Dokumentieren Sie die richtige Antwortzeit auf Benutzeranforderungen
  • Stellen Sie zusätzliche Stil- und Logoelemente ein
  • ermöglicht Benutzern die Verwendung von Crowd Cookie Intelligence

Einfache Cookie-Klassifizierung

Das XCK verwendet ein Klassifizierungssystem für Cookies, anstatt jedes einzelne Cookie mit seinem Ursprung aufzulisten. Durch das Einordnen von Cookies in logische Gruppen macht das XCK das technische Fachwissen zur Unterscheidung einzelner Cookies überflüssig. Benutzer können eine einfachere Entscheidung treffen, basierend auf der beabsichtigten Verwendung des Cookies anstelle des Domainnamens oder anderer technischer Kriterien.

Das XcooBee-Klassifizierungssystem ordnet Cookies allgemein einem der folgenden Typen zu:

  • Erforderliche oder Anwendungs-Cookies
  • Personalisierungs-Cookies
  • Statistik-Cookies
  • Werbe- und Marketing-Cookies

Für weitere Informationen, besuchen Sie bitte XcooBee Cookie-Klassifizierung.

Beispielanwendungen

Wir haben drei Beispielanwendungen aufgenommen, die das XCK verwenden, damit Sie es selbst in Aktion sehen können.

Einzelseitenanwendung

Unsere Café-Anwendung demonstriert die Verwendung von XCK in einer Anwendung mit nur einer Seite. Sie können auf einem Webserver wie IIS oder Apache entpacken und bereitstellen. Die Dateien befinden sich in Beispiele / cafe-spa.zip. Überprüfen Sie die index.html Datei für Anweisungen / Erklärungen.

Cookie Kit Einfache HTML App

Beispielanforderungs- / Antwort-App basierend auf NodeJs & Express

Unsere Pizza-Anwendung demonstriert die Verwendung des XCK in einer anforderungs- / antwortbasierten Anwendung. Sie können es entpacken und direkt auf Ihrem System bereitstellen. Für einige müssen NodeJS auf Ihrem System installiert sein. Überprüfen Sie die README.md Datei mit Anweisungen / Erklärungen in jeder der Beispielanwendungen Single Page (SPA), Express und ReactJS:

Beispielanwendung für das Cookie-Kit

Beispiel für eine ReactJS-basierte Anwendung

Ein Klon unserer Cafe-App, um die Verwendung des XCK mit React zu demonstrieren. Wir verwenden hierfür den speziellen React Build des XCK, und Sie sollten den überprüfen React-Cookie-Kit auf npm js.

Beispiel für eine Cookie-Kit-Reaktion

Wie funktioniert das

Der Keks

the cookie

Das XCK zeigt ein schwebendes Cookie-Symbol auf dem Bildschirm in einer Ecke Ihrer Wahl an. Dies ist der Ausgangspunkt für die Benutzerinteraktion. Durch Klicken auf das Cookie-Symbol öffnen Benutzer ein Popup-Einwilligungsdialogfeld, in dem sie mit Ihrer Site interagieren können.

Wenn das XCK feststellt, dass eine Benutzereinwilligung erforderlich ist, fährt es mit dem nächsten Schritt fort und öffnet das XCK-Popup-Dialogfeld:

Der Popup-Dialog

showing XCK cookie popup

Das XCK kann automatisch feststellen, wann ein vollständiger Zustimmungsdialog oder nur das Cookie benötigt wird. So wird der Besuch vor Ort angenehmer und reibungsloser.

Bei Verwendung des XCK haben Sie:

  • a) Stellen Sie zunächst fest, welche Cookies Sie derzeit auf Ihrer Website verwenden
  • b) Wählen Sie dann den XcooBee-Cookie-Typ (Klassifizierung) aus, der am besten zu jedem Cookie passt
  • c) Zeigen Sie Ihren Site-Besuchern das Popup des XCK-Zustimmungsdialogs an, um um Erlaubnis zu bitten
  • d) Nachdem Sie die Zustimmung für eine Art von Cookie erhalten haben, setzen Sie die Cookies in dieser Gruppe für Ihren Benutzer mithilfe eines Handlers in Client-JavaScript oder eines Ziel-URL-Musters über die Serversyntax (PHP, JSP, .net usw.) oder beides.

Wenn die Cookie-Zustimmung bereits eingeholt wurde, zeigt das XCK kein weiteres Popup an. Sie können den Status über JavaScript abfragen, um die Cookies erneut zu setzen, oder dies auf der Backend-Seite verfolgen, wenn Sie die Anwendung vom Typ Request / Response verwenden.

Beispiel gehen durch

Nehmen wir ein Beispiel für eine JSP-gesteuerte Einkaufsseite, die vier Cookies verwendet. Hier ist ein Beispielprozess zur Implementierung einer ordnungsgemäßen Verwaltung der Cookie-Einwilligung mithilfe des XCK:

ein Sie stellen fest, dass Sie die folgenden vier Cookies auf Ihrer Website verwenden.

  1. Ihr JSP-Sitzungscookie
  2. Ein Benutzer-Cookie, um das Thema des Benutzers zu verfolgen
  3. Ein Site-Statistik-Cookie von Ihrem Webserver
  4. Ein globales Statistik-Cookie von Google Analytics

b Sie klassifizieren die Cookies in die folgenden Typen

Anwendung: JSP-Sitzungscookie

Personalisierung: Benutzer-Cookie

Statistik: lokales Webserver-Cookie und Google Analytics-Cookie

c Du initialisieren und rendern das XCK-Skript zum Anzeigen des Popups für die Benutzereinwilligung.

d Der Benutzer trifft eine Auswahl und klickt auf OK.

e Das XCK ruft den JavaScript-Handlerprozess Ihrer Site auf, der die Cookies setzt oder entfernt.

Cookie-Impulse

Das Cookie-Kit verwendet eine Shortcut-Bewertungsmethode, um zu überprüfen, ob es bereits die Zustimmung des Benutzers zu Cookies erhalten hat. Dies optimiert die Einstellung von Cookies. Wenn dies erfolgreich ist, wird das Cookie-Symbol, das in einer bestimmten Ecke platziert wird, durch Impulse ersetzt. Es gibt verschiedene Farbimpulse, um anzuzeigen, dass eine Verknüpfungsauswahl erfolgt ist.

Grün: Benutzer explizite Genehmigung

green cookie pulse

Der grüne Impuls zeigt an, dass der Benutzer diese Site bereits besucht hat und die Cookie-Zustimmungseinstellungen der Site bekannt sind und erneut angewendet werden können.

Blau: Präferenzbasierte Genehmigung

blue cookie pulse

Der blaue Impuls zeigt an, dass der Benutzer, obwohl er diese Site noch nicht besucht hat, Einwilligungseinstellungen für neue Sites festgelegt hat, die angewendet werden können. Dies ist nur möglich, wenn Benutzer und Website Mitglieder des XcooBee-Netzwerks sind.

Gelb: Crowd Intelligence-basierte Genehmigung

yellow cookie pulse

Der gelbe Impuls zeigt an, dass der Benutzer sich für die Teilnahme am XcooBee Crowd AI-Programm für Cookies entschieden hat. Das XcooBee-Netzwerk verwendet eine Crowd-basierte Analyse und setzt die Cookies basierend auf dem Feedback der Website-Besucher. Dies ist nur möglich, wenn Benutzer und Website Mitglieder des XcooBee-Netzwerks sind.

Rot: Verwenden der Website-Einstellungen

red cookie pulse

Der rote Impuls zeigt an, dass wir keine Informationen direkt vom Benutzer haben. In einem solchen Fall kann der Websitebesitzer die Websiteeinstellung für Cookies anstelle der Benutzereinstellungen verwenden. Dies ist nur möglich, wenn sich Website und Benutzer außerhalb der EU befinden.

Installieren

Sie aktivieren das XCK, indem Sie es über in Ihre Site einbetten Stichworte. Darüber hinaus geben Sie während des Aufrufs zusätzliche Parameter für das Skript-Tag an.

Einige davon sind:

  • Position der Symbolschaltfläche
  • Begriffe URL
  • URL der Cookie-Richtlinie
  • Ablaufzeit für das Widget
  • Textnachricht
  • Cookie-Handling-Funktion
  • Site-Standardeinstellungen
  • Ziel-URL

Wenn Sie XcooBee abonnieren, können Sie auch Folgendes angeben:

  • Ihre Kampagnenreferenz
  • Firmenlogo
  • cssAutoLoad

EIN Kampagnen-ID wird benötigt, damit das XCK mit XcooBee kommunizieren und die Verwaltung von Zustimmungen ermöglichen kann. Bitte besuche XcooBee wenn Sie ein Konto erstellen müssen. Ohne sie arbeitet das XCK im Offline-Modus.

Betriebsarten

Der XCK arbeitet in zwei Modi. Zum einen im getrennten Modus, bei dem XCK und Ihre Website ohne Verwendung des XcooBee-Netzwerks direkt interagieren. Zweitens im verbundenen Modus, in dem XCK mit dem XcooBee-Netzwerk interagiert, um Unternehmen die Dokumentation und Verwaltung der Cookie-Zustimmung zu ermöglichen und den Benutzern zusätzliche Tools zur Verwaltung und Vereinfachung der Cookie-Behandlung bereitzustellen.

Im Folgenden erklären wir, wie jeder Modus funktioniert.

Getrennter Modus

diagram showing XCK in disconnected mode

Im getrennten Modus

  1. Ihre Website lädt und rendert ihren Inhalt, ohne Cookies zu setzen
  2. Lädt den XCK mit Ihren Parametern
  3. Das XCK verwaltet die Benutzerinteraktion für die Zustimmung zu Cookies
  4. teilt Ihrer Site mit, welche Cookie-Typen festgelegt werden können.

Ihre Site setzt dann die Cookies gemäß den Benutzereinstellungen.

Verbundener Modus

alt text

Der verbundene Modus ist im Prozess ähnlich, mit Unterschieden in jedem Schritt, um zusätzliche Tools widerzuspiegeln:

Im verbundenen Modus

  1. Ihre Website lädt und rendert ihren Inhalt, ohne Cookies zu setzen
  2. Lädt das XCK mit Ihren Parametern einschließlich Ihrer Kampagnenreferenzen
  3. Das XCK verwaltet die Benutzerinteraktion für die Zustimmung zu Cookies. Für XcooBee-Benutzer verhandelt das XCK transparent mit Ihrer Site basierend auf den Benutzereinstellungen. XcooBee-Benutzer können ohne Unterbrechung auf Websites surfen.
  4. XCK teilt Ihrer Site mit, welche Cookie-Typen festgelegt werden können. Ihre Site setzt dann die Cookies gemäß den Benutzereinstellungen.
  5. Als Websitebesitzer können Sie alle Einwilligungen für verwaltete Cookies überprüfen. Melden Sie Compliance-Probleme und ergreifen Sie Maßnahmen, wenn Benutzer ihre Einwilligung ändern, auch wenn Sie Ihre Website nicht besuchen. Ihre Website-Besucher (Benutzer) können die Cookie-Zustimmung aktiv zentral verwalten und transparent auf Ihrer Website surfen, ohne störende Popups zu verursachen.

Verwendung des XcooBee Cookie Kits

In diesem Abschnitt wird erläutert, wie Sie das XCK auf Ihrer Site verwenden.

Verwendung des Cookie-Kits in Single Page Application (SPA)

Bei Verwendung eines SPA können Sie einen JavaScript-Handler angeben, der das Ergebnis der Benutzerinteraktion zur Cookie-Zustimmung erhalten kann. Danach müssen Sie die Skripte laden und / oder die Cookies direkt basierend auf der Interaktion des Benutzers setzen.

Da sich dies ändern kann, müssen Sie auch in der Lage sein, die Cookies zu entfernen, wenn Benutzer ihre Meinung ändern.

In beiden Fällen ruft das XCK Ihre Handlerfunktion auf, nachdem der Benutzer seine Interaktion mit XCK abgeschlossen hat.

XCK ruft Ihren JavaScript-Handler mit einem JavaScript-Objekt auf. Die Benutzereinstellungen werden im Argument aufgelistet.

Sie können finden ein Beispiel für ein SPA auf Github.

Hier ist ein Beispielobjekt.

{"Anwendung": wahr, "Verwendung": wahr, "Statistik": falsch, "Werbung": falsch}

Somit lautet die Anrufsignatur: handlerFunction (cookieObject).

Zum Beispiel, wenn Ihre Handlerfunktion benannt ist cookieHandler und das Funktionsargumentobjekt wird benannt userCookiePreferences Dies wäre die Signatur Ihrer Funktion:

cookieHandler (userCookiePreferences);

Beispiel für eine CookieHandler-Funktion:

Funktion cookieHandler (ZustimmungSeinstellungen) {if (Einwilligung.Anwendung) {// erforderliche Cookies hier setzen // ...} else {// erforderliche Cookies hier entfernen // ...}; if (ZustimmungSettings.usage) {// Benutzer-Personalisierungs-Cookies hier setzen // ...} else {// Benutzer-Personalisierungs-Cookies hier entfernen // ...}; if (ZustimmungSettings.statistics) {// Setze Site-Statistiken, die hier Cookies sammeln // ...} else {// entferne Site-Statistiken, die hier Cookies sammeln // ...}; if (ZustimmungSettings.advertising) {// hier Werbe- und Marketing- und Tracking-Cookies setzen // ...} else {// hier Werbung und Marketing- und Tracking-Cookies entfernen // ...}; }}

Sehen Sie mehr voll entwickeltes Beispiel später in diesem Dokument.

Verwendung des Cookie Kits mit Anforderungs- / Antwortsystemen wie PHP, Node, JSP, .net, CFML usw.

Das XCK kann die Erteilung und Aufhebung der Zustimmung von Cookies durch Benutzer zu Ihrer Website auch per Webhook-Post (HTTP POST) mitteilen. Sie benötigen einen über das Internet zugänglichen Endpunkt gemäß Definition von Ziel-URL Das kann diese Nachrichten verarbeiten und die Cookies nach Cookie-Typ setzen / deaktivieren.

Abhängig von Ihrer Situation können Sie jedoch möglicherweise alle Interaktionen in JavaScript ohne erneutes Laden oder Aufrufen des Backends verarbeiten (siehe Beispiel unten).

Der HTTP-POST wird verwendet INHALTSTYP = Anwendung / json

Der Body-Inhalt ist ein JSON-Objekt mit der Benutzerauswahl von Cookie-Typen. Es werden nur die Cookie-Typen berücksichtigt, für die Sie um Zustimmung gebeten haben.

{"Zeit": "2018-10-31T16: 40: 28", "Code": 200, "Ergebnis": {"Anwendung": wahr, "Verwendung": falsch, "Statistik": wahr}}

Wo:

Zeit => Datum der Entscheidung im UTC-Code => 200 für Erfolgsergebnis => der JSON mit Informationen zu Cookie-Typen

Ein Beispielprozess zur Behandlung der Cookie-Zustimmung über eine Anfrage / Antwort und a Handler-Seite Muster könnte so aussehen. Ihre Handler-Seite ist höchstwahrscheinlich ein Code, der in allen Seitenrendering-Aufrufen enthalten sein muss. Sie müssen es auch unabhängig aufrufen können.

  1. Ihr System startet ohne Cookies
  2. Wenn keine Cookies definiert sind, rufen Sie das XCK auf
  3. Das XCK holt die Zustimmung des Benutzers ein und ruft die an Handler-Seite identifiziert in Ziel-URL Parameter
  4. Handler-Seite Speichert die Benutzerentscheidung und kennzeichnet, dass der Benutzer eine Entscheidung getroffen hat
  5. für jeden nachfolgenden Anruf wird die Handler-Seite prüft, ob eine Benutzerentscheidung verfügbar ist, und legt die Cookie-Typen fest

Ihre Handler-Seite wird wahrscheinlich diese Art von Logik verwenden

  • Bestimmen Sie, ob dies ein regulärer Anruf (im Lieferumfang enthalten) oder ein Anruf von XCK ist, um die Benutzerentscheidung zu speichern
  • wenn regulärer Anruf
    • Bestimmen Sie, ob wir eine Entscheidung über den Typ des Benutzer-Cookies haben
    • Wenn wir keine Entscheidung haben -> Laden Sie XCK durch Einfügen Tags in HTML, um dem Benutzer die Cookie-Auswahl zu präsentieren
    • wenn wir User-Cookie-Entscheidung haben -> Cookies für jeden erlaubten Typ laden
  • wenn von XCK aufgerufen
    • Benutzer-Cookie-Entscheidung speichern

    Sie können auch unsere überprüfen Beispielanwendung Express / NodeJs auf Github.

Beispiel für die Verwendung mit einer PHP-Seite in Kombination mit einem Cookie-Kit

In diesem Beispiel wird davon ausgegangen, dass auf einer Website die PHP-Engine zum Rendern von Webseiten ausgeführt wird. Im Rahmen dieses Prozesses lädt die Website das XCK, um die Zustimmung der Benutzer zu verwalten. Sie verwalten die Cookie-Erstellung über JavaScript.

Der Managementprozess bricht in diesen Fluss ein:

ein. Die PHP-Seite schreibt die Werte für jeden Cookie-Typ in den HTML / Javascript-Stream

b. JS-Handler-Code einschließen (Beispiel unten)

c. Laden Sie XCK

ein Pipe PHP-Variablen mit Skript-Tags in HTML

In diesem Beispiel wird davon ausgegangen, dass Sie über JS verfügen Tags für alle Cookies, die Sie zum Erstellen und Speichern in entsprechenden PHP-Variablen benötigen:

$cookie_scripts_application => die erforderlichen Anwendungscookies, zB zum Beispiel:  $cookie_scripts_user => die Benutzer-Personalisierungs-Cookies zum Beispiel:  $cookie_scripts_statistics => die Site-Statistik-Cookies zum Beispiel:  $cookie_scripts_advertising => die Website, die Cookies bewirbt, zum Beispiel: 

Sie würden jedes dieser Elemente als HTML-Codierung ausgeben

<script>
// define cookie script management scope in JS
var myCookieScripts = {};

// most likely we can set this directly since these would be required
myCookieScripts.application = "<?php echo htmlentities(preg_replace( "/\r|\n/", "", $cookie_scripts_application )); ?>";

myCookieScripts.user = "<?php echo htmlentities(preg_replace( "/\r|\n/", "", $cookie_scripts_user )); ?>";

myCookieScripts.statistics = "<?php echo htmlentities(preg_replace( "/\r|\n/", "", $cookie_scripts_statistics )); ?>";

myCookieScripts.advertising = "<?php echo htmlentities(preg_replace( "/\r|\n/", "", $cookie_scripts_advertising )); ?>";
</script>

b Schreiben Sie einen JS-Handler

Sie müssen Ihren Handler in JS definieren. Wir bieten einige Hilfsfunktionen, mit denen Sie Ihre Cookies setzen und Ihre Skripte laden können.

  /**
   * parse html encoded script directives
   * @param {string} htmlData - string with script tags to be loaded
   * @return {object} the fully parsed html elements
   */
  function xckParseHtml(htmlData) {
    //parse encoded via text area
    var txt = document.createElement("textarea");
    txt.innerHTML = htmlData;

    // now add this as html to our mirror doc
    var el=document.createElement("html");
    el.innerHTML = txt.innerText;
    return el;
  }

  /**
   * Load Javascript. Can load from remote file or code.
   * @param {object} loadScripts - The HTMLCollection of scripts to be loaded
   */
  function xckLoadJs(loadScripts) {
    var i = 0;
    if (loadScripts.length > 0){
      for (i = 0; i < loadScripts.length; i++) {
        var item = loadScripts[i];
        var script = document.createElement("script");

        if (item.src === "") {
          script.text = item.text;
        } else {
          // load from file
          script.async = true; // we always load async
          script.src = item.src;
          script.onload = function () {
            console.log(`cookie script from ${item.src} is ready!`);
          };

          // other elements
          if (item.integrity !== "") {
            script.integrity = item.integrity;
          }
          if (item.crossOrigin !== "") {
            script.crossOrigin = item.crossOrigin;
          }
        }

        // now append to document for execution
        document.body.appendChild(script);
      }
    }
  }

  /**
   * This will be invoked by XCK when user clicks OK button
   * @param {object} consentSettings - The collection containing user decisions
   */
  function myCookieHandler(consentSettings) {
    // parse cookie scripts passed from PHP

    if (consentSettings.application) {
      // parse cookie scripts passed from PHP
      let myEl = xckParseHtml(myCookieScripts.application);
      let appScripts = myEl.getElementsByTagName("script");
      // set required cookies here
      xckLoadJs(appScripts);
    } else {
      // remove required cookie here
      // ...
    };

    if (consentSettings.usage) {
      // parse cookie scripts passed from PHP
      let myEl = xckParseHtml(myCookieScripts.user);
      let userScripts = myEl.getElementsByTagName("script");
      // set required cookies here
      xckLoadJs(userScripts);
    } else {
      // remove user personalization cookies here
      // ...
    };

    if (consentSettings.statistics) {
      // parse cookie scripts passed from PHP
      let myEl = xckParseHtml(myCookieScripts.statistics);
      let statScripts = myEl.getElementsByTagName("script");
      // set required cookies here
      xckLoadJs(statScripts);
    } else {
      // remove site statistics gathering cookies here
      // ...
    };

    if (consentSettings.advertising) {
      // parse cookie scripts passed from PHP
      let myEl = xckParseHtml(myCookieScripts.advertising);
      let adsScripts = myEl.getElementsByTagName("script");
      // set required cookies here
      xckLoadJs(adsScripts);
    } else {
      // remove advertising and marketing and tracking cookies here
      // ...
    };
  }

c Laden Sie das XcooBee Cookie Kit

Wenn Sie den XCK-Dialog starten möchten, schließen Sie, wie in einigen Bereichen beschrieben, die ein Tags in Ihrem HTML-Stream.

<script id="xcoobee-cookie-kit" src="https://app.xcoobee.net/scripts/kit/xcoobee-cookie-kit.min.js"></script>
<script>
  XcooBee.kit.initialize({
    checkByDefaultTypes: ["application"],
    cookieHandler: "myCookieHandler",
    position: "right_bottom",
    privacyUrl: "http://mysite.com/privacy",
    requestDataTypes: ["application", "usage", "statistics"],
    termsUrl: "http://mysite.com/terms",
    textMessage: "Welcome to our shopping site. We use cookies to deliver a better service to you. Please let us know if this is OK."
  });
</script>

Verwendung des XCK mit XcooBee-Abonnement und Hochsicherheitsdatenaustausch

Wenn Sie ein XcooBee-Abonnement haben, kann Ihre Website auch Aktualisierungen bezüglich der erteilten Einwilligung erhalten, wenn der Benutzer nicht direkt über das XcooBee-Netzwerk online ist. Diese Kommunikation erfolgt über Webhooks und eine höhere Verschlüsselungsstufe.

Als Alternative zum direkten HTTP-POST ermöglicht Ihr Abonnement für das XcooBee-Netzwerk auch die Abfrage von Ereignissen, sodass Sie das XCK für Websites verwenden können, auf die nicht direkt über das Internet zugegriffen werden kann, z. B. für Intranetsites oder Websites, die sich in der Entwicklung befinden.

Sie müssen in der Lage sein, Nachrichten von XcooBee zu verarbeiten, die PGP-Verschlüsselung zusätzlich zu HTTPS / TLS verwenden.
Das Nachrichtenmuster ist das gleiche wie im vorherigen Abschnitt beschrieben.

Sie können eines der XcooBee-SDKs verwenden, um diese Interaktion zu vereinfachen:

Die Verwendung des XcooBee-Netzwerks ist keine erforderliche Interaktion. Benutzer aktualisieren ihre Cookie-Einstellungen bei jedem Besuch transparent mit Ihrer Website.

Verwaltete Cookies und Skripte

Die meisten Cookie-Benachrichtigungen implementieren kein Lebenszyklusmanagement. Wenn Sie als Programmierer nicht das richtige Verhalten für Benutzerinteraktionsereignisse implementieren, besteht Ihr GDPR-Audit dennoch nicht und Ihr Unternehmen haftet möglicherweise für Compliance-Fehler. Der XCK bietet Ihnen eine sehr einfache Alternative, mit der Sie problemlos konform bleiben.

Die Verwendung von verwalteten Cookies und Skripten ist der einfachste Weg, Cookies mit dem XCK zu deklarieren und zu verwalten. Mit diesem Ansatz kann der XCK den Lebenszyklus Ihrer Cookies von der Erstellung bis zur Zerstörung verwalten. Es sind nur minimale Anwendungsänderungen erforderlich. Solange Ihre Anwendung ein HTML-Tag schreiben kann, können Sie verwaltete Cookies und Skripte erstellen.

Die Funktionen werden durch zwei zusätzliche HTML-Tag-Erweiterungen implementiert, die Sie verwenden können:

Sie benötigen sowohl ein öffnendes als auch ein schließendes Tag.
Sie sollten alle Ihre Tags deklarieren, bevor Sie das XCK aufrufen initialisieren() Funktion.

xbee-cookie tag

Das Mit tag können Sie ein einzelnes verwaltetes Cookie deklarieren.

Es ist eine Deklaration für Cookies, die Sie an einer beliebigen Stelle im HTML-DOM hinzufügen können, an der Sie Cookies setzen möchten.
Der XCK verwaltet den Lebenszyklus einschließlich des automatischen Entfernens.
Wenn möglich, sollten Tags in eine Zeile geschrieben werden:

Supercookie-Wert

Der Wert des Cookies liegt zwischen dem Öffnen und Schließen von Tags (innerHTML).

Attribute:

  name => der Name des Cookies, für das Sie eine Kategorie festlegen möchten => eine der Cookie-Kategorien: Anwendung, Verwendung, Statistik, Werbetage => optional: Die Anzahl der Tage zum Setzen des Cookies, sofern nicht angegeben, läuft mit der Sitzung ab

Beispiele:

 Dies ist ein Wert des Cookies  toller Keks 

xbee-script tag

Wenn Sie Cookies über Remote-Skripte setzen oder Skripte von Drittanbietern laden müssen, die einige Cookies setzen, können Sie diese am einfachsten verwalten, indem Sie die verwenden Etikett.

Das xbee-script-Tag funktioniert wie das HTML-script-Tag, verfügt jedoch über zwei zusätzliche Attribute. Auf diese Weise können Sie vorhandene einfach konvertieren Tags in Stichworte.

Der Tag-Inhalt ist Javascript, das später ausgeführt wird, nachdem wir die Zustimmung der Benutzer erhalten haben. Sie können auch Remote-Skripte über angeben src Attribut wie gewohnt. Sie müssen ein schließendes Tag als einzeiliges automatisches Schließen hinzufügen ist nicht erlaubt:

Verwenden Sie stattdessen diese

Zusätzliche Attribute:

  action => eine von "set" oder "unset", Sie können Bereinigungsskripte mit der Attributkategorie "unset" bereitstellen => eine der Cookie-Kategorien: Anwendung, Verwendung, Statistik, Werbung

Beispiel:

   (Funktion (i, s, o, g, r, a, m) {i ['GoogleAnalyticsObject'] = r; i [r] = i [r] || Funktion () {(i [r] .q = i [r] .q || []). push (Argumente)}, i [r] .l = 1 * neues Datum (); a = s.createElement (o), m = s.getElementsByTagName (o) [ 0]; a.async = 1; a.src = g; m.parentNode.insertBefore (a, m)}) (Fenster, Dokument, 'Skript', 'https: //www.google-analytics.com/analytics .js ',' ga '); ga ('create', 'UA-XXXXX-Y', 'auto'); ga ('send', 'pageview'); 

Da Skripte, die aus verschiedenen Domänen geladen werden, Cookies erstellen können, auf die XDK aufgrund derselben Ursprungsrichtlinie in Browsern nicht direkt zugreifen kann, können Sie mit dem XDK Bereinigungsskripte erstellen, die für jede Domäne ausgeführt werden können.

In diesem Fall ist die Aktion Attribut von nicht gesetzt kann verwendet werden, um Skripte zu kennzeichnen, die Cookies bereinigen, wenn Benutzer die Einwilligung entfernen.

Beispiel:

  
          
  

Merken:

Sie werden ein offenes brauchen UND SCHLIESSEN TAG AUCH, WENN SIE NUR SRC ATTRIBUTE VERWENDEN.

Vollständige Parameterreferenz

Das XCK wird mit einer Reihe von Parametern initialisiert, die das Verhalten des XCK auf Ihrer Site bestimmen. Dies kann Rendering-Speicherort, Zeitüberschreitungen, Ereignishandler, CSS usw. umfassen.

Das Folgende ist eine Liste von Parametern, die der XCK verarbeiten kann:

checkByDefaultTypes Array

Dies ist eine Reihe von Zeichenfolgen von Cookie-Typen, die standardmäßig auf Ihren Websites verwendet werden. Dies ist eine oder mehrere von [Anwendung | Nutzung | Statistik | Werbung]. Der Standardwert ist ein leeres Array.

Beispiel:

checkByDefaultTypes: ["Anwendung"]

cookieHandler Zeichenfolge UPC Funktion

Wenn Sie eine Einzelseitenanwendung oder eine JavaScript-basierte Lösung zum Setzen von Cookies verwenden, müssen Sie eine Cookie-Handler-Funktion angeben, z handleCookies ( ). Das XCK ruft diese Funktion nach Bedarf mit den Einstellungen oder Standardeinstellungen des Benutzers auf. Diese Funktion sollte die Cookies basierend auf den vom Benutzer zugelassenen Kategorien entweder entfernen oder setzen.

Dies hängt zusammen mit Ziel-URL. Einer von cookieHandler UPC Ziel-URL muss angegeben werden, damit XCK gestartet werden kann.

Weitere Informationen finden Sie im Abschnitt Verwendung des XcooBee Cookie Kits in diesem Dokument.

cookieHandler: handleCookies

displayOnlyForEU Boolescher Wert

Auf diese Weise kann das XCK den Anrufkontext für das XCK schnell auswerten, wenn sich die Benutzer außerhalb der EU befinden. Wenn das XCK feststellt, dass es außerhalb der EU geladen wird (28-Nationen-Block) und keine Benutzervorgaben oder andere Richtlinien vorliegen, kann das XCK mithilfe der checkByDefaultTypes Rahmen. Dabei wird der Benutzer durch rotes Pulsieren informiert. Der besuchende Benutzer kann die Entscheidungen jederzeit ändern. Standard ist: false.

Ablaufzeit ganze Zahl

Dies ist die Zeit in Sekunden, in der das schwebende Cookie-Symbol angezeigt wird. Nach Ablauf der Ablaufzeit wird das schwebende Cookie-Symbol aus der Anzeige entfernt. Diese Zeit wird jedes Mal zurückgesetzt, wenn auf das Symbol geklickt wird und ein Popup-Dialogfeld angezeigt wird.

Bei Null wird das Symbol nicht entfernt.

Der Standardwert ist Null.

Ablaufzeit: 0

hideBrandTag Boolescher Wert

Dadurch wird das von XcooBee betriebene Markentag entfernt. Obwohl wir uns freuen würden, wenn unsere Arbeit korrekt dargestellt würde, verstehen wir, dass es notwendig ist, dies zu kontrollieren. Wenn Sie ein kommerzielles Unternehmen sind, empfehlen wir Ihnen, XcooBee zu abonnieren, damit wir auch in Zukunft Open-Source-Projekte wie dieses unterstützen können. Standard: false

hideOnComplete: true

hideOnComplete Boolescher Wert

Das XCK kann vollständig ausgeblendet werden, sobald der Benutzer die Auswahl des Cookie-Typs getroffen hat, oder die Auswahl kann automatisch bestimmt werden. Um das sofortige Entfernen des Cookie-Symbols zu ermöglichen, setzen Sie dies auf true. Standard: false

hideOnComplete: true

Position Zeichenfolge

Der Positionsparameter ist einer von [leftunten | linksoben | rechtsunten | rechtsoben] und gibt die Position an, von der aus der XCK sein Fenster oder schwebendes Cookie-Symbol anzeigt. Standard: left_bottom

Position: "left_bottom"

privacyUrl Zeichenfolge erforderlich

Dies ist die Seite, auf die der Benutzer geleitet wird, um Ihre Datenschutzrichtlinie zu überprüfen. Das Cookie-Kit wird nicht ohne Daten für die Datenschutzrichtlinie gestartet.

privacyUrl: "https://mysite.com/privacy"

requestDataTypes Array

Dies ist eine Reihe von Zeichenfolgen, die auf Ihren Websites verwendet werden und für die Sie vor dem Erstellen die Zustimmung der Benutzer einholen möchten. Dies ist eine oder mehrere von [Anwendung | Nutzung | Statistik | Werbung]. Der Standardwert ist Anwendung.

requestDataTypes: ["application"]

Ziel-URL Zeichenfolge

Wenn Sie eine auf der Request / Response-Technologie basierende Site verwenden, z. B. PHP, JSP, CFML, und die Cookies in Ihrem Code setzen, ruft der XCK über HTTP POST die von Ihnen angegebene targetUrl und einen Body-Parameter mit JSON-Payload mit dem auf Benutzereinstellungen für Cookies.

Beispiel Body Payload:

{"Zeit": "2018-10-11T15: 40: 28", "Code": 200, "Ergebnis": {"Anwendung": wahr, "Verwendung": falsch, "Statistik": falsch}}

Sie müssen dann Cookies nach Cookie-Typ entsprechend setzen. Wir empfehlen die Verwendung von HTTPS / TLS-Verbindungen, um die ordnungsgemäße Sicherheit zu gewährleisten.

Dies hängt zusammen mit cookieHandler. Einer von cookieHandler UPC Ziel-URL muss angegeben werden, damit XCK gestartet werden kann.

Weitere Informationen finden Sie im Abschnitt Verwendung des XcooBee Cookie Kits in diesem Dokument.

targetUrl: "https://mysite.com/setCookies"

TermsUrl Zeichenfolge erforderlich

Dies ist die Seite, auf die der Benutzer geleitet wird, um Ihre Nutzungsbedingungen zu überprüfen. Das Cookie-Kit wird nicht ohne gültige Nutzungsbedingungen gestartet.

TermsUrl: "https://mysite.com/terms"

Testmodus Boolescher Wert

Der XCK kann im Testmodus ausgeführt werden. Wenn dies der Fall ist, wird ein kleines angezeigt zurücksetzen Schaltfläche unter dem schwebenden Hauptkeks. Sie können damit den lokalen Datenspeicher löschen. Dies beschleunigt Entwicklungsaufgaben, da Sie keine Daten manuell löschen oder private Browserfenster öffnen / schließen müssen. Standard: false

testMode: true

Textnachricht Zeichenfolge erforderlich

Dies ist die Meldung, die wir dem Benutzer anzeigen, wenn er nach Cookie-Einstellungen fragt. Diese Nachricht kann als Zeichenfolge oder als JSON formatiert werden. Bei Verwendung von JSON können Sie die Nachricht in verschiedenen Sprachen angeben. Das XCK versucht, die Standardsprache basierend auf den Browsereinstellungen zu bestimmen und auf US-Englisch zurückzugreifen, wenn es keine Bestimmung vornehmen kann. Das Cookie-Kit wird nicht ohne eine Zustimmungsnachricht gestartet, die den Benutzern angezeigt wird.

Beispiel für die Texteingabe in einer Sprache:

textMessage: "Diese Site verwendet Cookies. Bitte wählen Sie die Cookie-Typen aus, die Sie verwenden möchten, und klicken Sie dann auf OK."

Beispiel für eine Texteingabe in mehreren Sprachen:

{"en-us": "englischer Text", "de-de": "deutscher Text", "es-419": "spanischer Text", "fr-fr": "französischer Text",}

Initialisierungsparameter mit XcooBee-Abonnement

Kampagnenreferenz

Dadurch wird Ihre Kampagnen-ID mit dem XCK verbunden. Der XcooBee-Kampagnenassistent generiert es für Sie.

Das XCK kann Ihr Firmenlogo anzeigen. Ihre Cookie-Kampagnenoptionen können ein Logo hochladen und dem XCK zur Verfügung stellen.
Dieser Parameter ist nur verfügbar, wenn Sie XcooBee abonnieren.

CSS-Überschreibung

Wenn Sie Ihr eigenes CSS verwenden möchten, legt der XcooBee-Codegenerator dies basierend auf Ihrer Auswahl für Ihre Cookie-Kampagne fest. Ihr Kampagnenassistent führt Sie durch den Vorgang.

WICHTIG

Ihr Kampagnenname in der XcooBee-Kampagnenkonsole muss mit Ihrem Domainnamen übereinstimmen (erster Teil der URL, z https://mysite.com), für die Sie das Cookie-Kit verwenden. Ist dies nicht der Fall, werden vom XcooBee-Netzwerk Fehler zurückgegeben.

Wenn Ihre Website beispielsweise unter dieser URL "http://www.mysite.com/product/hello" ausgeführt wird, lautet die Domain http://www.mysite.com. Dies muss Ihr Kampagnenname in XcooBee sein.

Programm-Hooks

Sie können öffentliche Methoden des XCK verwenden, um Parameterinformationen festzulegen und abzurufen. Diese finden Sie unter der XcooBee.kit Objekt.

setManagedCookie ([Kategorie: Zeichenfolge], [Cookie-Name: Zeichenfolge], [CookieValue: Zeichenfolge], [Tage: Ganzzahl])

Erstellen Sie vollständig GDPR-konforme Cookies mit dem setManagedCookie () Methode. Sie verlagern die gesamte Interaktion und das Life-Cylce-Management des Cookies auf das XCK. Das XCK stellt sicher, dass der Benutzer die richtige Zustimmung für das Cookie einholt, bevor es gesetzt wird, und entfernt die Cookies auch, wenn der Benutzer die Zustimmung entfernt.
Dies ist das JavaScript-Äquivalent zur Verwendung von Tag in Ihrem HTML. Wenn Sie verwaltete Cookies verwenden, sind Sie automatisch mit allen GDPR-Interaktionen kompatibel.

Optionen:

  Kategorie => Erforderlich: Eine von: Anwendung, Verwendung, Statistik, Werbung CookieName => Erforderlich: Name Ihres Cookie-CookiesWert => Erforderlich: Der Wert Ihrer Cookie-Tage => Optional: Tage bis zur Perist, Standard ist 0 = Sitzung

Beispiel:

XcooBee.kit.setManagedCookie ("Verwendung", "myUserColor", "grün");

setParam ([Parameter: Zeichenfolge], [Wert: Objekt])

Verwenden Sie die setParam () Methode zum Festlegen eines gültigen Parameters für das XCK. Zum Beispiel um die Ziel-URL Parameter auf einen anderen Wert. Wo Parameter [Zeichenfolge] ist einer der gültigen Parameter und Wert [beliebig] sind Daten für den Parameter.

XcooBee.kit.setParam ("targetUrl", "https://newsite.com/cookieProcessor");

Wenn Sie eine verwenden cookieHandler JavaScript-Funktion, die nicht im globalen Bereich verfügbar gemacht wird, müssen Sie dem XCK über a mitteilen setParam Anruf. Sie sollten dies nach dem Laden des XCK, aber vor dem Aufruf tun XcooBee.kit.initialize ().

XcooBee.kit.setParam ("cookieHandler", myCookieHandlerFunction);

Alternativ können Sie mit der richtigen Funktionsreferenz initialisieren.

<script>
  XcooBee.kit.initialize({
    requestDataTypes: ["application", "usage"],
    checkByDefaultTypes: ["application"],
    cookieHandler: myCookieHandlerFunction,
   ...
  });
</script>

Dies kann nützlich sein, wenn Sie bestimmte Funktionen zur Laufzeit deaktivieren möchten, z hideOnComplete Mit param kann das XCK ausgeblendet werden, nachdem der Benutzer die Cookie-Auswahl bestätigt hat.

getParam ([Parameter: Zeichenfolge]) Objekt

Ruft den Wert des aktiv verwendeten Parameters vom XCK ab.

Beispiel:

let termSite = XcooBee.kit.getParam ("termUrl");

getConsentStatus () Zeichenfolge

Gibt den aktuellen Status der XCK-Interaktion mit dem Benutzer zurück. Derzeit ist dies einer von [offen | vollständig | geschlossen].

öffnen => Benutzer wird momentan um Zustimmung gebeten

Komplett => Wir haben Einwilligungsinformationen vom Benutzer erhalten

geschlossen => Der Benutzer hat nicht geantwortet und die Cookie-Einwilligung ist danach abgelaufen Ablaufzeit

let ZustimmungStatus = XcooBee.kit.getConsentStatus ();

getCookieTypes () Objekt

Dies gibt die Entscheidung der Benutzer bezüglich der Zustimmung für jeden Cookie-Typ zurück. Es wird immer ein vollständiges Objekt mit allen Typen oder ein leeres Objekt zurückgegeben {}.
Nur nach verfügbar getConsentStatus () = "vollständig" Wenn Sie dies aufrufen, bevor wir eine Antwort vom Benutzer erhalten, geben wir ein leeres Objekt zurück.

Beispielaufruf:

let cookieTypes = XcooBee.kit.getCookieTypes ();

Beispiel für ein Rückgabeobjekt:

{"Anwendung": wahr, "Verwendung": wahr, "Statistik": falsch, "Werbung": falsch}

Beispiele für Skript-Tags

Sie werden das XCK einbetten / installieren, indem Sie Ihrer Site ein Skript-Tag hinzufügen. Hier ist ein Beispiel, wie dies aussehen könnte.

Sie müssen dies zwischendurch im HTML-Code Ihrer Site platzieren und <body> Stichworte. Wir empfehlen dies als letztes Skriptelement.

<script id="xcoobee-cookie-kit" src="https://app.xcoobee.net/scripts/kit/xcoobee-cookie-kit.min.js"></script>
<script>
  XcooBee.kit.initialize({
    requestDataTypes: ["application", "usage"],
    checkByDefaultTypes: ["application"],
    cookieHandler: myCookieHandler,
    expirationTime: 0,
    position: "left_bottom",
    privacyUrl: "https://mysite.com/privacy",
    termsUrl: "https://mysite.com/terms",
    textMessage: "This site uses cookies to make your experience better. Please let us know which type of cookies we may use."
  });

</script>

Hier ist ein Beispiel für Parameter- und Wertetypen für die Initialisierung:

<script id="xcoobee-cookie-kit" src="{URL}/scripts/kit/xcoobee-cookie-kit.min.js"></script>
<script>
  XcooBee.kit.initialize({
    campaignReference: <String>,
    checkByDefaultTypes: <Array>[application|usage|statistics|advertising]
    cookieHandler: <Function>,
    expirationTime: <Number> (in seconds),
    position: <String> ("left_bottom", "left_top", "right_bottom", "right_top"),
    privacyUrl: <String>,
    requestDataTypes: <Array>[application|usage|statistics|advertising],
    targetUrl: <String>,
    termsUrl: <String>,
    testMode: <Boolean>,
    textMessage: <String>, <Object>
  });

</script>

CSS-Referenz

 Alle Anzeigeelemente können überschrieben werden, wir können jedoch keine nicht standardmäßigen CSS-Werte unterstützen.

Browser-Unterstützung

Internet Explorer 11+, Google Chrome, Mozilla Firefox, Opera, Edge.

Unterstützung

Bitte benutzen Sie die Github Probleme Seite

Fandest du diesen Artikel hilfreich? Ja Nein

Wie können wir helfen?