Événements JavaScript intégrés

Une fois que vous avez créé une intégration (cela peut être fait publiquement, en privé, via une intégration signée ou via l'API), vous pouvez interagir avec ces iFrame à l'aide de JavaScript. Vous pouvez rendre votre page plus dynamique, en fonction de l'état de l'élément intégré, ou même modifier l'élément intégré à partir de votre page Web.

Sachez que Looker ne contrôle pas l'ordre dans lequel les navigateurs envoient les événements aux applications Web. Cela signifie que l'ordre des événements n'est pas garanti sur tous les navigateurs ou plates-formes. Veillez à écrire votre code JavaScript de façon appropriée pour prendre en compte la gestion des événements de différents navigateurs.

Vous pouvez exploiter JavaScript de deux façons pour le contenu intégré de Looker:

  • Utilisation du kit de développement logiciel (SDK, Software Development Kit) intégré de Looker, décrit sur la page de documentation du SDK Embed.
  • Utiliser des événements JavaScript, décrits dans la section Accéder aux événements dans JavaScript de cette page

Préparation

Avant de pouvoir interagir avec l'iFrame intégré, vous devez:

Ajouter un ID à l'iFrame

Par la suite, vous devrez vérifier que les informations avec lesquelles vous travaillez proviennent bien de l'iFrame de Looker. Pour vous faciliter la tâche, veillez à ajouter un identifiant à l'iFrame, si ce n'est pas déjà fait. Dans l'exemple suivant, nous avons ajouté id="looker":

<iframe id="looker" src="https://instance_name.looker.com/embed/dashboards/1"></iframe>

Ajouter le domaine d'intégration à l'attribut iFrame src

Dans le fichier src de l'iFrame, ajoutez le domaine où l'iFrame est utilisé. Dans l'exemple suivant, nous avons ajouté ?embed_domain=https://mywebsite.com":

<iframe
  id="looker"
  src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://mywebsite.com">
</iframe>

Si vous utilisez une intégration signée, veillez à ajouter embed_domain à l'URL d'intégration.

N'incluez pas de barre oblique finale (/) dans embed_domain.

Ajouter le domaine d'intégration à la liste d'autorisation

Enfin, vous devez ajouter le domaine dans lequel l'iFrame est utilisé à la liste d'autorisation sur la page Intégrer du panneau d'administration de Looker.

  1. Indiquez le domaine sur lequel l'iFrame est utilisé. Après l'avoir saisi, n'oubliez pas d'appuyer sur la touche Tabulation pour que le domaine s'affiche dans un champ. N'incluez pas de barre oblique finale (/) dans l'URL du domaine.
  2. Sélectionnez le bouton Update (Mettre à jour).

Vous pouvez utiliser le caractère générique * de la liste d'autorisation pour créer un format de domaine. Par exemple, https://*.mycompany.com autorise à la fois https://analytics.mycompany.com et https://data.mycompany.com.

Si vous utilisez l'intégration sans cookie avec Looker 23.8 ou version ultérieure, le domaine d'intégration peut être spécifié lors de l'acquisition de la session sans cookie. Vous pouvez également l'ajouter à la liste d'autorisation via le panneau Administration > Intégrer. Si vous souhaitez bénéficier de cette fonctionnalité, consultez les bonnes pratiques concernant la sécurité.

Récupérer des données à partir de l'iFrame

Une fois les étapes de préparation terminées, vous pouvez accéder aux événements transmis entre l'iFrame Looker et votre domaine en écoutant les événements postMessage.

Assurez-vous que les événements proviennent de l'iFrame et du domaine Looker, afin d'éviter les messages malveillants.

L'iFrame intégré peut créer plusieurs types d'événements, comme indiqué dans la section Référence des types d'événements de cette page.

Accéder aux événements en JavaScript

Voici un exemple d'écoute de ces événements en JavaScript natif, puis de journalisation dans la console:

window.addEventListener("message", function(event) {
  if (event.source === document.getElementById("looker").contentWindow) {
    if (event.origin === "https://instance_name.looker.com") {
      console.log(JSON.parse(event.data));
    }
  }
});

Voici un exemple d'écoute de ces événements dans jQuery, puis de journalisation de ces événements dans la console:

$(window).on("message", function(event) {
  if (event.originalEvent.source === $("#looker")[0].contentWindow) {
    if (event.origin === "https://instance_name.looker.com") {
      console.log(JSON.parse(event.data));
    }
  }
});

Tableau récapitulatif des types d'événements

Le tableau suivant récapitule les types d'événements. Sélectionnez un type d'événement pour afficher les détails le concernant.

Event Type Cause de l'événement
dashboard:loaded Dans les tableaux de bord où les vignettes ne sont pas configurées pour s'exécuter automatiquement, un tableau de bord et ses éléments ont été chargés, mais les requêtes ne sont pas encore en cours d'exécution.
dashboard:run:start Le chargement d'un tableau de bord a commencé, et ses vignettes ont commencé à se charger et à envoyer des requêtes de données.
dashboard:run:complete L'exécution d'un tableau de bord est terminée, et le chargement et l'interrogation de toutes les vignettes sont terminés.
dashboard:download Le téléchargement du PDF d'un tableau de bord a commencé.
dashboard:edit:start ADDED 22.20 Un tableau de bord est passé en mode Édition. L'événement dashboard:save:complete sera déclenché une fois le tableau de bord enregistré.
dashboard:edit:cancel ADDED 22.20 Un tableau de bord en mode Édition a été quitté sans être enregistré.
dashboard:save:complete Un tableau de bord a été modifié et enregistré.
dashboard:delete:complete Un tableau de bord a été supprimé.
dashboard:tile:start Une carte a commencé à charger ou à interroger des données.
dashboard:tile:complete Une carte a fini d'exécuter la requête.
dashboard:tile:download Le téléchargement des données d'une carte a commencé.
dashboard:tile:explore Un utilisateur a cliqué sur l'option Explorer à partir d'ici dans une vignette de tableau de bord.
dashboard:tile:view Un utilisateur a cliqué sur l'option Afficher le Look d'origine dans une vignette de tableau de bord.
dashboard:filters:changed Les filtres d'un tableau de bord ont été appliqués ou modifiés.
look:ready Un Look a commencé à charger des données de requête, que celle-ci soit exécutée ou non.
look:run:start Une présentation a commencé à charger des données de requête et celle-ci a commencé à s'exécuter.
look:run:complete Un Look a fini d'exécuter la requête.
look:save:complete Un Look a été modifié et enregistré.
look:delete:complete Un Look a été déplacé dans le dossier Corbeille.
drillmenu:click Un utilisateur a cliqué sur un menu d'exploration dans un tableau de bord créé avec le paramètre LookML link.
drillmodal:download Un utilisateur a ouvert une boîte de dialogue d'analyse à partir d'une vignette de tableau de bord et cliqué sur l'option Télécharger.
drillmodal:explore Un utilisateur a cliqué sur l'option Explorer à partir de ce lieu dans une boîte de dialogue d'analyse détaillée.
explore:ready Une exploration a commencé à charger des données de requête, que celle-ci soit exécutée ou non.
explore:run:start Une exploration a commencé à charger des données de requête et la requête a commencé à s'exécuter.
explore:run:complete Une exploration a fini d'exécuter la requête.
explore:state:changed L'URL d'une page d'exploration a changé à la suite des actions de l'utilisateur.
page:changed Un utilisateur a accédé à une nouvelle page dans l'iFrame.
page:properties:changed La hauteur de l'iFrame d'un tableau de bord a changé.
session:tokens Le client Looker a besoin de jetons pour continuer.
session:status Envoie des informations sur l'état d'une session.
env:client:dialog Une boîte de dialogue (par exemple, une boîte de dialogue d'analyse détaillée) s'est ouverte. Elle n'est peut-être pas visible entièrement. Cet événement permet à l'application d'hébergement de faire défiler la boîte de dialogue pour l'afficher.

Référence de type d'événement

L'iFrame intégré peut créer de nombreux types d'événements différents:

dashboard:loaded

Dans les tableaux de bord où les vignettes ne sont pas configurées pour s'exécuter automatiquement, cet événement est créé après le chargement d'un tableau de bord et de ses éléments, mais avant l'exécution des requêtes.


type: "dashboard:loaded",
status: "complete",
dashboard: {
  id: 1,
  title: "Business Pulse",
  canEdit: true,
  dashboard_filters: {
    "date": "Last 6 Years",
    "state": ""
  },
  absoluteUrl: "https://self-signed.looker.com:9999/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
  url: "/embed/dashboards/1?embed_domain=https%3A%2F%2Fself-signed.looker.com%3A9999&date=Last+6+Years&state=",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Attribut Format Description
status Chaîne Indique si le tableau de bord et ses éléments ont bien été chargés.
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Propriétés et valeurs associées à la mise en page du tableau de bord, au composant de mise en page du tableau de bord et à l'élément du tableau de bord Toutes les propriétés renvoyées dans l'objet options peuvent recevoir des valeurs mises à jour à l'aide de l'événement dashboard:options:set.

dashboard:run:start

Cet événement est créé lorsque le chargement d'un tableau de bord a commencé, lorsque ses vignettes commencent à se charger et à envoyer des requêtes de données.

type: "dashboard:run:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:run:complete

Cet événement est créé lorsque l'exécution d'un tableau de bord est terminée, et que le chargement et l'interrogation de toutes les vignettes sont terminés. Cet événement est créé, que toutes les cartes se chargent correctement ou non.

type: "dashboard:run:complete",
status: "complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://my.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Attribut Format Description
status Chaîne Indique si le tableau de bord et ses éléments ont bien été exécutés. Si le tableau de bord et ses éléments ont bien été exécutés, status renvoie "complete". Sinon, status renvoie "error". Si le tableau de bord en cours d'exécution a été arrêté, que ce soit à partir de l'interface utilisateur ou de l'action dashboard:stop, status renvoie "stopped".
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objet Propriétés et valeurs associées à la mise en page du tableau de bord, au composant de mise en page du tableau de bord et à l'élément du tableau de bord Toutes les propriétés renvoyées dans l'objet options peuvent recevoir des valeurs mises à jour à l'aide de l'action dashboard:options:set.
dashboard.tileStatuses Tableau d'objets Tableau d'objets indiquant l'état des cartes. Les propriétés d'un objet sont les suivantes:

  • tileId : numéro d'identification de la carte.
  • status : si la requête de carte a bien été exécutée, status renvoie "complete". Sinon, status renvoie "error".
  • errors : renseigné lorsque la propriété status est définie sur "error". Tableau d'objets fournissant des détails sur l'erreur, y compris le texte du message d'erreur, une description plus détaillée de l'erreur et la requête SQL de la carte qui a généré l'erreur.

dashboard:download

Cet événement est créé lorsque le téléchargement du PDF d'un tableau de bord a commencé.

type: "dashboard:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
fileFormat: "pdf"
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
fileFormat Chaîne Format du tableau de bord téléchargé (uniquement "pdf" pour le moment).

dashboard:edit:start

ADDED 22.20 Cet événement est créé lorsqu'un tableau de bord passe en mode Édition.

type: "dashboard:edit:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:edit:cancel

ADDED 22.20 Cet événement est créé lorsqu'un tableau de bord en mode Édition quitte le mode Édition sans enregistrer.

type: "dashboard:edit:cancel",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:save:complete

Cet événement est créé lorsqu'un tableau de bord est modifié, puis enregistré.

type: "dashboard:save:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  url: "/embed/dashboards/...",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Propriétés et valeurs associées à la mise en page du tableau de bord, au composant de mise en page du tableau de bord et à l'élément du tableau de bord Toutes les propriétés renvoyées dans l'objet options peuvent recevoir des valeurs mises à jour à l'aide de l'événement dashboard:options:set.

dashboard:delete:complete

Cet événement est créé lorsqu'un tableau de bord est supprimé.

type: "dashboard:delete:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  url: "/embed/dashboards/...",
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.options Objet Propriétés et valeurs associées à la mise en page du tableau de bord, au composant de mise en page du tableau de bord et à l'élément du tableau de bord Toutes les propriétés renvoyées dans l'objet options peuvent recevoir des valeurs mises à jour à l'aide de l'événement dashboard:options:set.

dashboard:tile:start

Cet événement est créé lorsqu'une carte commence à charger ou à interroger des données.

type: "dashboard:tile:start",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Integer L'ID de l'événement, et non celui de la tuile.
tile.title Chaîne Titre de la vignette, tel qu'il est indiqué en haut de la vignette.
tile.listen Objet Le tableau de bord global filtre cette vignette. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}

dashboard:tile:complete

Cet événement est créé lorsqu'une carte a fini d'exécuter la requête.

type: "dashboard:tile:complete",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
status: "complete",
truncated: false,
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
status Chaîne Indique si la requête de vignette a abouti. Les valeurs possibles sont "complete" ou "error".
truncated Booléen Indique si les résultats de la requête de vignette ont été tronqués à la suite du renvoi de lignes par la requête qui a dépassé le nombre maximal de lignes autorisé. Le nombre maximal de lignes peut être spécifié par l'utilisateur ou le nombre maximal de lignes par défaut de Looker (5 000).
tile.id Integer L'ID de l'événement, et non celui de la tuile.
tile.title Chaîne Titre de la vignette, tel qu'il est indiqué en haut de la vignette.
tile.listen Objet Le tableau de bord global filtre cette vignette. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}
tile.errors Tableau d'objets Renseigné lorsque la propriété status est "error". Tableau d'objets fournissant des détails sur l'erreur, y compris le texte du message d'erreur, une description plus détaillée de l'erreur et la requête SQL de la carte qui a généré l'erreur.

dashboard:tile:download

Cet événement est créé lorsque le téléchargement des données d'une carte a commencé.

type: "dashboard:tile:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales"
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
fileFormat: "pdf"
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Integer L'ID de l'événement, et non celui de la tuile.
tile.title Chaîne Titre de la vignette, tel qu'il est indiqué en haut de la vignette.
tile.listen Objet Le tableau de bord global filtre cette vignette. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}
fileFormat Chaîne Format de la carte téléchargée (uniquement "pdf" pour le moment).

dashboard:tile:explore

Cet événement est créé lorsqu'un utilisateur clique sur l'option Explorer à partir d'ici dans une vignette du tableau de bord.

type: "dashboard:tile:explore",
label: 'Explore From Here',
url: '/embed/explore/model/view...',
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Attribut Format Description
label Chaîne Libellé du bouton
url Chaîne URL relative (uniquement le chemin) de l'exploration à afficher.
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Integer L'ID de l'événement, et non celui de la tuile.
tile.title Chaîne Titre de la vignette, tel qu'il est indiqué en haut de la vignette.
tile.listen Objet Le tableau de bord global filtre cette vignette. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}

dashboard:tile:view

Cet événement est créé lorsqu'un utilisateur clique sur l'option Afficher le Look d'origine dans une vignette du tableau de bord.

type: "dashboard:tile:view",
label: 'View Original Look',
url: '/embed/look/...',
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
tile: {
  id: 123,
  title: "Quarterly Sales",
  listen: {
    "Date": "order.date",
    "Total Orders": "order.count"
  }
}
Attribut Format Description
label Chaîne Libellé du bouton
url Chaîne URL relative (uniquement le chemin) du Look à afficher.
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
tile.id Integer L'ID de l'événement, et non celui de la tuile.
tile.title Chaîne Titre de la vignette, tel qu'il est indiqué en haut de la vignette.
tile.listen Objet Le tableau de bord global filtre cette vignette. Cet objet a le format suivant: {"Filter Label": "Filter Field", ...}

dashboard:filters:changed

Cet événement est créé lorsque les filtres d'un tableau de bord sont appliqués ou modifiés.

type: "dashboard:filters:changed",
dashboard: {
  id: 23,
  title: "My Dashboard",
  canEdit: true,
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/...",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
  options: {
    layouts: [
      {
        id: 1,
        dashboard_id: 1,
        type: "newspaper",
        active: true,
        column_width: null,
        width: null,
        deleted: false,
        dashboard_layout_components: [
          {
            id: 1,
            dashboard_layout_id: 1,
            dashboard_element_id: 1,
            row: 0,
            column: 0,
            width: 8,
            height: 4,
            deleted: false
          },
          {
            id: 2,
            dashboard_layout_id: 1,
            dashboard_element_id: 2,
            row: 0,
            column: 8,
            width: 8,
            height: 4,
            deleted: false
          }
        ]
      }
    ],
    elements: {
      1: {
        title: "Total Orders",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          font_size: "medium",
          title: "Total Orders"
        }
      },
      2: {
        title: "Average Order Profit",
        title_hidden: false,
        vis_config: {
          type: "single_value",
          title: "Average Order Profit"
        }
      }
    }
  }
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord.
dashboard.title Chaîne Titre, tel qu'il est indiqué en haut du tableau de bord.
dashboard.canEdit Booléen ADDED 22.20 Lorsque la valeur est true, l'utilisateur peut modifier le tableau de bord.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin d'accès).
dashboard.absoluteUrl Chaîne URL complète du tableau de bord.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
dashboard.options Objet Propriétés et valeurs associées à la mise en page du tableau de bord, au composant de mise en page du tableau de bord et à l'élément du tableau de bord Toutes les propriétés renvoyées dans l'objet options peuvent recevoir des valeurs mises à jour à l'aide de l'événement dashboard:options:set.

look:ready

Cet événement est créé lorsqu'un Look commence à charger des données de requête, que celle-ci soit exécutée ou non.

type: "look:ready",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne L'URL du Look relatif (uniquement le chemin)
look.absoluteUrl Chaîne URL du Look complet

look:run:start

Cet événement est créé lorsqu'un Look commence à charger des données de requête et que la requête commence à s'exécuter.

type: "look:run:start",
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne L'URL du Look relatif (uniquement le chemin)
look.absoluteUrl Chaîne URL du Look complet

look:run:complete

Cet événement est créé lorsqu'un Look a fini d'exécuter la requête.

type: look:run:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne L'URL du Look relatif (uniquement le chemin)
look.absoluteUrl Chaîne URL du Look complet

look:save:complete

Cet événement est créé lorsqu'un Look est modifié et enregistré. Cet événement est créé lorsqu'un utilisateur effectue l'une des tâches suivantes:

Cet événement n'est pas créé si le Look est enregistré avec l'option de menu Enregistrer > Dans un tableau de bord existant ou Modifier les paramètres.

type: look:save:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  spaceId: 123
  }
}
Attribut Format Description
look.url Chaîne L'URL du Look relatif (uniquement le chemin)
look.absoluteUrl Chaîne URL du Look complet
look.spaceID Integer ID du dossier dans lequel la présentation est stockée

look:delete:complete

Cet événement est créé lorsqu'un Look est déplacé dans le dossier Corbeille.

type: look:delete:complete
look: {
  url: "/embed/looks/...",
  absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
  }
}
Attribut Format Description
look.url Chaîne L'URL du Look relatif (uniquement le chemin)
look.absoluteUrl Chaîne URL du Look complet

drillmenu:click

Cet événement est créé lorsqu'un utilisateur clique sur le menu d'analyse d'un tableau de bord créé avec le paramètre LookML link. Par exemple, le code LookML suivant crée un menu d'exploration dans lequel un utilisateur peut afficher les données filtrées en fonction de la dimension state:


dimension: state {
  type: string
  sql: ${TABLE}.state ;;
  link: {
    label: "Filter by {{ state | encode_uri }}"
    url: "filter::q={{ state | encode_uri }}"
    icon_url: "https://google.com/favicon.ico"
  }
}

Lorsque le filtre state est défini sur Illinois, l'événement drillmenu:click renvoie les éléments suivants à l'hôte de l'iFrame:

type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Attribut Format Description
label Chaîne Libellé du lien, tel qu'il est indiqué dans le menu d'analyse
link_type Chaîne Type d'objet à la destination du lien
modal Booléen Indique si la boîte de dialogue d'analyse sera utilisée à la place de la navigation dans le navigateur
target Chaîne _self si la destination du lien remplace l'iFrame actuel, _blank si la destination du lien ouvre une nouvelle fenêtre
url Chaîne URL de destination du lien
context Chaîne Attribut interne utilisé par certains types de visualisations

Mise en bac à sable de l'iFrame empêche l'ouverture des clics du menu d'analyse dans une nouvelle fenêtre. Utilisez les valeurs de bac à sable suivantes dans la balise iFrame:

sandbox = "allow-same-origin allow-scripts"

drillmodal:download

Cet événement est créé lorsqu'un utilisateur ouvre une boîte de dialogue d'analyse détaillée à partir d'une vignette de tableau de bord et clique sur l'option Télécharger.

{
type: "drillmodal:download",
dashboard: {
  id: 23,
  title: "My Dashboard",
  url: "/embed/dashboards/…",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/…",
  dashboard_filters: {
    "Date": "Last 28 days",
    "Total Orders": "Greater than 100"
  }
}
drillExploreUrl: "/embed...",
fileFormat: "pdf"
}
Attribut Format Description
dashboard.id Nombre/Chaîne ID du tableau de bord auquel la vignette appartient.
dashboard.title Chaîne Titre du tableau de bord, tel qu'il est indiqué en haut du tableau de bord auquel la vignette appartient.
dashboard.url Chaîne URL du tableau de bord relatif (uniquement le chemin) auquel la vignette appartient.
dashboard.absoluteUrl Chaîne URL complète du tableau de bord auquel la vignette appartient.
dashboard.dashboard_filters Objet Filtres appliqués au tableau de bord auquel la vignette appartient. Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}
drillExploreUrl Chaîne URL d'exploration relative (uniquement le chemin) à télécharger.
fileFormat Chaîne Format de fichier du téléchargement des données.

drillmodal:explore

Cet événement est créé lorsqu'un utilisateur clique sur l'option Explorer à partir d'ici dans une boîte de dialogue d'analyse.

type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Attribut Format Description
label Chaîne Libellé du bouton tel qu'il est indiqué dans le menu d'analyse
url Chaîne URL d'exploration relative (uniquement le chemin) à afficher

explore:ready

Cet événement est créé lorsqu'une exploration commence à charger des données de requête, que celle-ci soit exécutée ou non.

type: "explore:ready",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL d'exploration relative (uniquement le chemin)
explore.absoluteUrl Chaîne URL d'exploration complète

explore:run:start

Cet événement est créé lorsqu'une exploration commence à charger des données de requête et que la requête commence à s'exécuter.

type: "explore:run:start",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL d'exploration relative (uniquement le chemin)
explore.absoluteUrl Chaîne URL d'exploration complète

explore:run:complete

Cet événement est créé lorsqu'une exploration a terminé d'exécuter la requête.

type: "explore:run:complete",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
  }
}
Attribut Format Description
explore.url Chaîne URL d'exploration relative (uniquement le chemin)
explore.absoluteUrl Chaîne URL d'exploration complète

explore:state:changed

Cet événement est créé lorsqu'une URL de page d'exploration est modifiée à la suite des actions de l'utilisateur.

type: "explore:state:changed",
explore: {
  url: "/embed/explore/...",
  absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Attribut Format Description
explore.url Chaîne URL d'exploration relative (uniquement le chemin)
explore.absoluteUrl Chaîne URL d'exploration complète

page:changed

Cet événement est créé lorsqu'un utilisateur accède à une nouvelle page dans l'iFrame.

type: "page:changed",
page: {
  type: "dashboard",
  url: "/embed/dashboards/...",
  absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Attribut Format Description
page.type Chaîne Type de page vers laquelle l'utilisateur vient d'accéder (par exemple, "dashboard", "look" ou "explore")
page.url Chaîne l'URL relative (juste le chemin) de la page vers laquelle l'utilisateur a accédé
page.absoluteUrl Chaîne URL complète de la page à laquelle vous venez d'accéder

page:properties:changed

Cet événement est créé lorsque la hauteur de l'iFrame d'un tableau de bord est modifiée. Elle n'est pas disponible pour les Looks ni les explorations, car la hauteur de ces éléments est ajustée automatiquement en fonction de la taille de l'iFrame.

type: "page:properties:changed",
height: 1000
Attribut Format Description
height Integer Hauteur de l'iFrame du tableau de bord en pixels

session:tokens

Cet événement indique que le client Looker a besoin des jetons pour continuer. Cet événement est créé immédiatement lors de la création de l'iFrame, puis périodiquement pendant la durée de la session.

{
  "type": "session:tokens",
  "api_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoiYXBpX3Rva2VuIiwicmFuZG9taXplciI6IkxjYnpOeDNTVjNOb3o3UVlqTVJjNmhlMkdodjh1a2UwWUhiZWNRMHVCYm1KIn0.CBv1__QGc_H7bKNe31SHMMQCsc5ya1xOiEv1UDWAyxM",
  "api_token_ttl": 463,
  "navigation_token": "eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL3NlbGYtc2lnbmVkLmxvb2tlci5jb206OTk5OSIsImV4cCI6MTY3MDYyNjMzMCwic3ViIjoiYVdrNWFGUzM4RnRwNzFFWXhuS3ZaMXdKRmV3ZjB2VzYtTV9zLWtCcHE1dXIiLCJ0b2tlbl90eXBlIjoibmF2aWdhdGlvbl90b2tlbiIsInJhbmRvbWl6ZXIiOiJHVVNlc00tdTRPRDlNdktodFJDU2pEcVFhUkJNeTh5dm42Q1FDUXhuLTNxMiJ9.sWo7LUEI5LeragVmeDamUR7u2myXpFJ0aqK_IIALUqI",
  "navigation_token_ttl": 463,
  "session_reference_token_ttl": 2924
}
Attribut Format Description
authentication_token Chaîne Jeton d'authentification. Inclus lorsque l'iFrame est créé. Non inclus dans une réponse à une requête de génération de jetons ou si la session a expiré.
authentication_token_ttl Nombre Durée de vie du jeton d'authentification, en secondes. Inclus lorsque l'iFrame est créé. Non inclus dans une réponse à une requête de génération de jetons ou si la session a expiré.
api_token Chaîne le jeton d'API. Non incluse si la session a expiré.
api_token_ttl Nombre La valeur TTL (Time To Live) du jeton d'API est exprimée en secondes. Non incluse si la session a expiré.
navigation_token Chaîne Jeton de navigation. Non incluse si la session a expiré.
navigation_token_ttl Nombre La valeur TTL (Time To Live) du jeton de navigation est exprimée en secondes. Non incluse si la session a expiré.
session_references_token_ttl Nombre La valeur TTL (Time To Live) de la session est exprimée en secondes. La valeur sera 0 lorsque la session aura expiré. Pour la récupération, l'application de représentation vectorielle continue doit acquérir une nouvelle session.

session:status

L'événement est généré lorsque l'application Looker intégrée traite les requêtes de jetons de session.

{
  "type": "session:status",
  "session_ttl": 0,
  "expired": true,
  "interrupted": false
}
Attribut Format Description
session_ttl Nombre La valeur TTL (Time To Live) de la session est exprimée en secondes.
expired Booléen Lorsque true, indique que la session a expiré.
interrupted Booléen Lorsque true, indique qu'une demande de jetons de session n'a pas reçu de réponse. Cela peut indiquer qu'un serveur est temporairement indisponible.
recoverable Booléen Valeur true renseignée uniquement en cas d'interruption. Indique si la session peut être récupérée ou non. La valeur false signifie probablement qu'il y a un problème avec l'application de représentation vectorielle continue.

env:client:dialog

L'événement est généré lorsqu'une boîte de dialogue a été ouverte et peut partiellement être invisible, par exemple une boîte de dialogue d'analyse détaillée. Cet événement permet à l'application d'hébergement de faire défiler la boîte de dialogue pour l'afficher avec l'action env:host:scroll.

{
  type: "env:client:dialog",
  dialogType: 'drilling',
  placement: 'cover',
  open: true
}
Attribut Format Description
type Chaîne env:client:dialog indique qu'une boîte de dialogue a été ouverte ou fermée. Actuellement, seule la boîte de dialogue d'analyse est prise en charge, mais d'autres boîtes de dialogue pourront être ajoutées ultérieurement. Il est possible que le haut de la boîte de dialogue d'analyse ne soit pas visible, car elle recouvre la fenêtre d'affichage de l'iFrame. Cet événement permet à l'application hôte de faire défiler la partie supérieure de la boîte de dialogue pour l'afficher.
dialogType Chaîne Type de boîte de dialogue. Actuellement, seule l'ouverture ou la fermeture de la boîte de dialogue "forage" déclenche cet événement.
placement Chaîne Positionnement de la boîte de dialogue. Les boîtes de dialogue de type "forage" utilisent toujours un placement défini sur "cover".
open Booléen Indique si la boîte de dialogue est ouverte ou que l'utilisateur la fait défiler.

Modifier l'iFrame

Une fois que vous avez préparé votre iFrame pour la récupération des données, vous pouvez le modifier en procédant comme suit:

  1. Rédigez votre requête au format JSON.
  2. Envoyez la requête au fichier contentWindow de l'iFrame.

Écrire votre requête au format JSON

Vous pouvez apporter plusieurs modifications à l'iFrame, puis les envoyer au format JSON. Les options disponibles sont décrites dans la section Documentation de référence sur les actions de cette page. N'oubliez pas d'utiliser JSON.stringify pour transformer votre action en JSON, comme ceci:

var my_request = JSON.stringify(
  {
    type: "dashboard:run"
  }
);

Publier la requête dans la propriété contentWindow de l'iFrame

Enfin, publiez votre message dans l'élément contentWindow de l'iFrame, comme suit:

var my_iframe = document.getElementById("my_iframe_id");

my_iframe.contentWindow.postMessage(my_request, 'https://instance_name.looker.com');

Tableau récapitulatif des actions

Le tableau suivant récapitule les actions. Sélectionnez une action pour en afficher les détails.

Action Description de l'action
dashboard:load Charge un nouveau tableau de bord dans l'iFrame, remplaçant un tableau de bord existant.
dashboard:run Exécute le tableau de bord dans l'iFrame.
dashboard:edit ADDED 22.20 Fait passer le tableau de bord en mode Édition.
dashboard:filters:update Met à jour un filtre de tableau de bord existant dans l'iFrame.
dashboard:options:set Écrit de nouvelles valeurs dans les propriétés de mise en page et d'élément du tableau de bord.
dashboard:schedule_modal:open Ouvre le planificateur, qui permet aux utilisateurs d'envoyer du contenu Looker vers différentes destinations.
dashboard:stop Arrête un tableau de bord en cours d'exécution ou actualise des données.
look:run Exécute le Look dans l'iFrame.
look:filters:update Met à jour un filtre de présentation existant dans l'iFrame.
explore:run Exécute l'exploration dans l'iFrame.
explore:filters:update Met à jour ou supprime un filtre d'exploration existant dans l'iFrame.
session:tokens:request Envoie des jetons en réponse à un événement session:tokens:request.
env:host:scroll Envoie des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.

Référence d'action

Voici les actions que vous pouvez publier dans l'iFrame intégré:

dashboard:load

Cette action permet de charger un nouveau tableau de bord dans l'iFrame en remplaçant un tableau de bord existant. Le nouveau tableau de bord commencera à exécuter les requêtes comme si une nouvelle page de tableau de bord avait été ouverte.

{
  type: "dashboard:load",
  id: "101",
  pushHistory: false
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:load indique que vous souhaitez charger un nouveau tableau de bord dans l'iFrame.
id Chaîne ID du tableau de bord à charger.
pushHistory Booléen Si la valeur est true, le tableau de bord chargé crée une entrée d'historique du navigateur, et l'utilisateur peut utiliser le bouton Retour du navigateur pour revenir au tableau de bord précédent. Si la valeur est false, le tableau de bord actuel est remplacé et la navigation dans le navigateur ne peut pas être utilisée pour y revenir.

dashboard:run

Cette action permet d'exécuter le tableau de bord dans l'iFrame. Cela revient à appuyer sur le bouton Exécuter ou Actualiser les données du tableau de bord.

{
  type: "dashboard:run"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:run indique que vous souhaitez exécuter le tableau de bord.

dashboard:edit

ADDED 22.20 Utilisez cette action pour faire passer un tableau de bord existant dans l'iFrame en mode Édition. Cela revient à sélectionner Modifier le tableau de bord dans le menu du tableau de bord.

{
  type: "dashboard:edit"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:edit indique que vous souhaitez faire passer le tableau de bord en mode Édition.

dashboard:filters:update

Cette action vous permet de mettre à jour un filtre de tableau de bord existant dans l'iFrame. Avec cette méthode, vous ne pouvez pas ajouter de filtre au tableau de bord.

{
  type: "dashboard:filters:update",
  filters: {
    "Sale date": "Last 28 days",
    "Sale amount": "Greater than 100"
  }
}
Attribut Format Description
type Chaîne Utiliser le type dashboard:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par le tableau de bord.
filters Objet Les nouveaux filtres que vous souhaitez appliquer au tableau de bord Cet objet a le format suivant: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...}

dashboard:options:set

Cette action est disponible une fois que l'événement dashboard:run:complete se produit.

L'outil d'intégration crée le message et l'envoie à l'iFrame, mais le tableau de bord ne répond qu'après dashboard:run:complete. L'action dashboard:options:set écrit de nouvelles valeurs dans les propriétés de mise en page et d'élément du tableau de bord. Seules les propriétés renvoyées dans l'attribut options de l'événement dashboard:run:complete peuvent être mises à jour à l'aide de dashboard:options:set. Toutes les propriétés définies qui n'ont pas été précédemment renvoyées par l'attribut options de l'événement dashboard:run:complete sont ignorées.

{
  type: "dashboard:options:set",
  layouts: [
    {
      id: 1,
      dashboard_id: 1,
      type: "newspaper",
      active: true,
      column_width: null,
      width: null,
      deleted: false,
      dashboard_layout_components: [
        {
          id: 1,
          dashboard_layout_id: 1,
          dashboard_element_id: 1,
          row: 0,
          column: 0,
          width: 8,
          height: 4,
          deleted: false
        },
        {
          id: 2,
          dashboard_layout_id: 1,
          dashboard_element_id: 2,
          row: 0,
          column: 8,
          width: 8,
          height: 4,
          deleted: false
        }
      ]
    }
  ],
  elements: {
    1: {
      title: "Total Orders",
      title_hidden: false,
      vis_config: {
        type: "single_value",
        font_size: "medium",
        title: "Total Orders"
      }
    },
    2: {
      title: "Average Order Profit",
      title_hidden: false,
      vis_config: {
        type: "single_value",
        title: "Average Order Profit"
      }
    }
  }
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:options:set indique que vous souhaitez écrire de nouvelles valeurs dans les propriétés de mise en page et d'élément du tableau de bord.
layouts Objet Les propriétés de mise en page du tableau de bord renvoyées par l'attribut options dans l'événement dashboard:run:complete Celles-ci se présentent dans un format semblable à celui-ci:

  • id: "string",
  • dashboard_id: "string",
  • type: "newspaper",
  • active: boolean,
  • column_width: number,
  • width: number
layouts.dashboard_layout_components Objet Un ou plusieurs objets composant de mise en page du tableau de bord renvoyés par l'attribut options dans l'événement dashboard:run:complete Celles-ci se présentent dans un format semblable à celui-ci:

  • id: "string",
  • dashboard_layout_id: "string",
  • dashboard_element_id: "string",
  • row: number,
  • column: number,
  • width: number,
  • height: number,
  • deleted: boolean,
elements Objet Un ou plusieurs objets élément de tableau de bord renvoyés par l'attribut options dans l'événement dashboard:run:complete Celles-ci se présentent dans un format semblable à celui-ci:

id: {

  title: "string",

  title_hidden: boolean,

  vis_config: {

    type: "string", title: "string"

  }

}

dashboard:schedule_modal:open

Utilisez cette action pour ouvrir le planificateur, qui permet aux utilisateurs de diffuser du contenu Looker vers différentes destinations.

{
  type: "dashboard:schedule_modal:open"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:schedule_modal:open indique que vous souhaitez ouvrir la boîte de dialogue Programmer.

dashboard:stop

Utilisez cette action pour arrêter un tableau de bord en cours d'exécution ou actualiser des données. Cela revient à cliquer sur le bouton Annuler du tableau de bord. Un tableau de bord qui n'utilise plus dashboard:stop envoie un événement dashboard:run:complete avec status: défini sur "stopped".

{
  type: "dashboard:stop"
}
Attribut Format Description
type Chaîne L'utilisation du type dashboard:stop indique que vous souhaitez arrêter le tableau de bord en cours d'exécution.

look:run

Utilisez cette action pour exécuter la requête sur laquelle le Look est basé dans l'iFrame. Cela revient à appuyer sur le bouton Exécuter du Look, à la différence que look:run interroge toujours directement la base de données et ne récupère pas les données du cache Looker.

{
  type: "look:run"
}
Attribut Format Description
type Chaîne L'utilisation du type look:run indique que vous souhaitez exécuter le Look.

look:filters:update

Cette action vous permet de mettre à jour un filtre de présentation existant dans l'iFrame. Avec cette méthode, vous ne pouvez pas ajouter de filtre à la présentation.

{
  type: "look:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "products.department": "sweaters"
  }
}
Attribut Format Description
type Chaîne L'utilisation du type look:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par le Look.
filters Objet Les nouveaux filtres que vous souhaitez appliquer à la présentation Cet objet a le format suivant: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}

explore:run

Utilisez cette action pour exécuter l'exploration dans l'iFrame. Cette opération s'apparente à l'appui sur le bouton Exécuter de l'exploration, à la différence que explore:run interroge toujours directement la base de données et ne récupère pas les données du cache Looker.

{
  type: "explore:run"
}
Attribut Format Description
type Chaîne Le type explore:run indique que vous souhaitez exécuter l'exploration.

explore:filters:update

Cette action vous permet de mettre à jour ou de supprimer un filtre "Explorer" dans l'iFrame. Le fait d'inclure un nouveau filtre faisant référence à un champ valide ajoute le nouveau filtre à l'exploration.

{
  type: "explore:filters:update",
  filters: {
    "orders.created_at": "90 days",
    "orders.status": "complete"
  }
  deleteFilters:  ["products.department"]
}
Attribut Format Description
type Chaîne Le type explore:filters:update indique que vous souhaitez mettre à jour les filtres utilisés par l'exploration.
filters Objet Les nouveaux filtres que vous souhaitez appliquer à l'exploration. Si filters inclut un filtre qui n'existe pas encore dans l'exploration, mais qui fait référence à un champ valide, ce filtre sera ajouté à l'exploration. Cet objet a le format suivant: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...}
deleteFilters Tableau Les filtres existants que vous souhaitez supprimer de l'exploration. Le tableau a le format suivant: ["view_name.field_name_1", "view_name.field_name_2", ...]

session:tokens:request

Utilisez cette action pour envoyer des jetons en réponse à une requête session:tokens:request.

{
  type: "session:tokens:request",
}
Attribut Format Description
type Chaîne L'utilisation du type session:tokens:request indique que vous souhaitez envoyer des jetons en réponse à un événement session:tokens:request.

env:host:scroll

Utilisez cette action pour envoyer des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.

{
  type: "env:host:scroll",
  offsetTop: 10,
  offsetLeft: 10,
  scrollX: 5,
  scrollY: 5
}
Attribut Format Description
type Chaîne L'utilisation du type env:host:scroll indique que vous souhaitez envoyer des informations sur la position de défilement actuelle de l'iFrame hôte à l'application Looker intégrée.
offsetTop Nombre Décalage vers le haut de l'iFrame.
offsetLeft Nombre Décalage à gauche de l'iFrame.
scrollX Nombre Position de défilement X de l'hôte de l'application.
scrollY Nombre Position de défilement de l'hôte de l'application.