Depois de criar uma incorporação, que pode ser feita publicamente, privadamente, com incorporação assinada ou através da API, pode interagir com esses iFrames através de JavaScript. Pode tornar a sua página mais dinâmica com base no estado do item incorporado e até fazer alterações ao item incorporado a partir da sua página Web.
Tenha em atenção que o Looker não controla a ordem em que os navegadores enviam eventos para aplicações Web. Isto significa que a ordem dos eventos não é garantida em todos os navegadores ou plataformas. Certifique-se de que escreve o JavaScript adequadamente para ter em conta o processamento de eventos de diferentes navegadores.
Pode usar JavaScript de uma das seguintes formas para conteúdo incorporado do Looker:
- Usar o SDK (Software Development Kit) de incorporação do Looker, descrito na página de documentação do SDK de incorporação
- Usando eventos JavaScript, descritos na secção Aceder a eventos em JavaScript nesta página
Preparação
Antes de poder interagir com o iFrame incorporado, siga estes passos:
- Adicione um ID ao iFrame.
- Adicione o domínio de incorporação ao atributo
src
do iFrame. - Adicione o domínio de incorporação à lista de autorizações.
Adicionar um ID ao iFrame
Mais tarde, quando extrair dados do iFrame, tem de validar se as informações com que está a trabalhar provêm efetivamente do iFrame do Looker. Para facilitar este processo, certifique-se de que adiciona um ID ao seu iFrame, se ainda não o tiver feito. No exemplo seguinte, define o ID como looker
adicionando id="looker"
ao iFrame:
<iframe id="looker" src="https://instance_name.looker.com/embed/dashboards/1"></iframe>
Adicionar o domínio de incorporação ao atributo src
do iFrame
No atributo src
do iFrame, inclua o domínio onde o iFrame está a ser usado. No exemplo seguinte, pode especificar myownpersonaldomain.com
como o domínio adicionando ?embed_domain=https://myownpersonaldomain.com"
ao final do URL no atributo src
:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com">
</iframe>
Se estiver a usar a incorporação com assinatura, certifique-se de que adiciona o parâmetro embed_domain
ao URL de incorporação.
Se estiver a usar o SDK de incorporação, adicione sdk=3
ao final do URL de incorporação. O parâmetro sdk=3
indica que o SDK está presente e que o Looker pode tirar partido de funcionalidades adicionais que o SDK oferece, como a transmissão de eventos JavaScript entre o iFrame do Looker e o seu domínio. O SDK não pode adicionar este parâmetro por si só porque faz parte do URL assinado. Por exemplo:
<iframe
id="looker"
src="https://instance_name.looker.com/embed/dashboards/1?embed_domain=https://myownpersonaldomain.com&sdk=2">
</iframe>
Adicionar o domínio de incorporação à lista de autorizações
Por último, tem de adicionar o domínio onde o iFrame está a ser usado à lista de autorizações na página Incorporar do painel de administração do Looker seguindo estes passos:
No campo Lista de autorizações de domínios incorporados, introduza o domínio onde o iFrame está a ser usado e, de seguida, prima a tecla Tab para que o domínio apareça numa caixa dentro do campo.
Clique em Atualizar.
Pode usar o caráter universal *
na lista de autorizações para criar um padrão de domínio. Por exemplo, https://*.myownpersonaldomain.com
permitiria https://analytics.myownpersonaldomain.com
e https://data.myownpersonaldomain.com
.
Se estiver a usar a incorporação sem cookies com o Looker 23.8 ou posterior, o domínio de incorporação pode ser especificado quando a sessão sem cookies é adquirida. Esta é uma alternativa à adição do domínio de incorporação à lista de autorizações através do painel Administração > Incorporar. Reveja as práticas recomendadas de segurança se decidir tirar partido desta funcionalidade.
A obter dados do iFrame
Após concluir os passos de preparação, pode aceder aos eventos transmitidos entre o iFrame do Looker e o seu domínio ao ouvir os eventos postMessage
.
O iFrame incorporado pode criar alguns tipos de eventos, conforme descrito na secção Referência do tipo de evento nesta página.
Aceder a eventos em JavaScript
Segue-se um exemplo de como ouvir estes eventos em JavaScript e, em seguida, registar os eventos na consola:
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));
}
}
});
Segue-se um exemplo de como ouvir estes eventos no jQuery e, em seguida, registá-los na consola:
$(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));
}
}
});
Tabela de resumo do tipo de evento
A tabela seguinte resume os tipos de eventos. Selecione um tipo de evento para ver os detalhes sobre esse evento.
Tipo de evento | Causa do evento |
---|---|
dashboard:loaded |
Nos painéis de controlo em que os mosaicos não estão definidos para execução automática, um painel de controlo e os respetivos elementos foram carregados, mas as consultas ainda não estão a ser executadas. |
dashboard:run:start |
Um painel de controlo começou a ser carregado e os respetivos mosaicos começaram a ser carregados e a consultar dados. |
dashboard:run:complete |
Um painel de controlo terminou a execução e todos os mosaicos terminaram o carregamento e a consulta. |
dashboard:download |
A transferência de um PDF de um painel de controlo foi iniciada. |
dashboard:edit:start |
Adicionado 22.20
Um painel de controlo foi mudado para o modo de edição. O evento dashboard:save:complete é acionado quando o painel de controlo é guardado com êxito. |
dashboard:edit:cancel |
Adicionado 22,20 € Foi terminado o modo de edição de um painel de controlo sem guardar. |
dashboard:save:complete |
Um painel de controlo foi editado e guardado. |
dashboard:delete:complete |
Um painel de controlo foi eliminado. |
dashboard:tile:start |
Um mosaico começou a carregar ou a consultar dados. |
dashboard:tile:complete |
Um mosaico terminou a execução da consulta. |
dashboard:tile:download |
Os dados de um mosaico começaram a ser transferidos. |
dashboard:tile:explore |
Um utilizador clicou na opção Explorar a partir daqui num mosaico do painel de controlo. |
dashboard:tile:merge |
Adicionado 25,14 Um utilizador clicou no botão ou no item de menu Editar consulta unida. |
dashboard:tile:view |
Um utilizador clicou na opção Ver aspeto original num mosaico do painel de controlo. |
dashboard:filters:changed |
Os filtros de um painel de controlo foram aplicados ou alterados. |
look:ready |
Um Look começou a carregar dados de consultas, independentemente de a consulta ser executada ou não. |
look:run:start |
Um Look começou a carregar dados de consultas e a consulta começou a ser executada. |
look:run:complete |
Um Look terminou de executar a consulta. |
look:edit:start |
Adicionado a 25/10
Um visual foi mudado para o modo de edição. O evento look:save:complete é acionado quando o visual é guardado. |
look:edit:cancel |
Adicionado a 25/10 Saiu do modo de edição de um visual sem guardar. |
look:save:complete |
Um Look foi editado e guardado. |
look:delete:complete |
Um Look foi movido para a pasta Lixo. |
drillmenu:click |
Um utilizador clicou num menu de detalhe num painel de controlo criado com o link parâmetro LookML. |
drillmodal:download |
Um utilizador abriu uma caixa de diálogo de detalhe a partir de um mosaico do painel de controlo e clicou na opção Transferir. |
drillmodal:explore |
Um utilizador clicou na opção Explorar a partir daqui numa caixa de diálogo de detalhe. |
explore:ready |
Uma exploração começou a carregar dados de consultas, independentemente de a consulta ser executada ou não. |
explore:run:start |
Uma exploração começou a carregar dados de consultas e a consulta começou a ser executada. |
explore:run:complete |
Uma análise detalhada terminou de executar a consulta. |
explore:state:changed |
O URL de uma página Explorar foi alterado como resultado das ações do utilizador. |
page:changed |
Um utilizador navegou para uma nova página no iFrame. |
page:properties:changed |
A altura de um iFrame do painel de controlo foi alterada. |
session:tokens |
O cliente do Looker requer tokens para continuar. |
session:expired |
Adicionado a 25/10 A sessão do utilizador expirou. |
session:status |
Envia informações sobre o estado de uma sessão. |
env:client:dialog |
Foi aberta uma caixa de diálogo que pode estar parcialmente fora da vista, como uma caixa de diálogo de detalhe. Este evento permite que a aplicação de alojamento desloque a caixa de diálogo para a vista. |
Referência do tipo de evento
O iFrame incorporado pode criar muitos tipos diferentes de eventos:
dashboard:loaded
Nos painéis de controlo em que os mosaicos não estão definidos para execução automática, este evento é criado depois de um painel de controlo e os respetivos elementos terem sido carregados, mas antes de as consultas serem executadas.
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"
}
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
status |
String | Indica se o painel de controlo e os respetivos elementos foram carregados com êxito. |
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.options |
Objeto | As propriedades e os valores do esquema do painel de controlo, do componente do esquema do painel de controlo e do elemento do painel de controlo. Todas as propriedades devolvidas no objeto options podem receber valores atualizados através do evento dashboard:options:set . |
dashboard:run:start
Este evento é criado quando um painel de controlo começa a ser carregado, quando os respetivos mosaicos começam a ser carregados e a consultar dados.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:run:complete
Este evento é criado quando um painel de controlo termina a execução e todos os mosaicos terminam o carregamento e a consulta. Este evento é criado independentemente de todos os mosaicos serem carregados com êxito ou não.
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"
}
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
status |
String | Indica se o painel de controlo e os respetivos elementos foram executados com êxito. Se o painel de controlo e os respetivos elementos tiverem sido executados com êxito, status devolve "complete" ; caso contrário, status devolve "error" . Se o painel de controlo em execução tiver sido parado, quer na interface do utilizador quer com a ação dashboard:stop , status devolve "stopped" . |
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objeto | As propriedades e os valores do esquema do painel de controlo, do componente do esquema do painel de controlo e do elemento do painel de controlo. Todas as propriedades devolvidas no objeto options podem receber valores atualizados através da ação dashboard:options:set . |
dashboard.tileStatuses |
Matriz de objetos | Uma matriz de objetos que fornecem os estados dos mosaicos. As propriedades do objeto são:
|
dashboard:download
Este evento é criado quando a transferência de um PDF de um painel de controlo é iniciada.
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"
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
fileFormat |
String | O formato do painel de controlo transferido (apenas "pdf" neste momento). |
dashboard:edit:start
Adicionado 22.20 Este evento é criado quando um painel de controlo é ativado no modo de edição.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:edit:cancel
Adicionado a 22.20 Este evento é criado quando se sai de um painel de controlo que está no modo de edição sem guardar.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:save:complete
Este evento é criado quando um painel de controlo é editado e, em seguida, guardado.
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"
}
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.options |
Objeto | As propriedades e os valores do esquema do painel de controlo, do componente do esquema do painel de controlo e do elemento do painel de controlo. Todas as propriedades devolvidas no objeto options podem receber valores atualizados através do evento dashboard:options:set . |
dashboard:delete:complete
Este evento é criado quando um painel de controlo é eliminado.
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"
}
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.options |
Objeto | As propriedades e os valores do esquema do painel de controlo, do componente do esquema do painel de controlo e do elemento do painel de controlo. Todas as propriedades devolvidas no objeto options podem receber valores atualizados através do evento dashboard:options:set . |
dashboard:tile:start
Este evento é criado quando um mosaico começa a carregar ou a consultar dados.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Número inteiro | O número de ID do evento e não do mosaico. |
tile.title |
String | O título do mosaico, conforme apresentado na parte superior do mosaico. |
tile.listen |
Objeto | Os filtros do painel de controlo global que este mosaico está a detetar. Este objeto tem o formato: {"Filter Label": "Filter Field", ...} |
dashboard:tile:complete
Este evento é criado quando um mosaico termina de executar a consulta.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
status |
String | Indica se a consulta de mosaicos foi concluída com êxito. Os valores possíveis são "complete" ou "error" . |
truncated |
Booleano | Indica se os resultados da consulta do mosaico foram truncados porque a consulta devolveu mais linhas do que o limite de linhas da consulta. O limite de linhas pode ser um limite de linhas especificado pelo utilizador ou o limite de linhas predefinido do Looker de 5000. |
tile.id |
Número inteiro | O número de ID do evento e não do mosaico. |
tile.title |
String | O título do mosaico, conforme apresentado na parte superior do mosaico. |
tile.listen |
Objeto | Os filtros do painel de controlo global que este mosaico está a detetar. Este objeto tem o formato: {"Filter Label": "Filter Field", ...} |
tile.errors |
Matriz de objetos | Preenchido quando a propriedade status é "error" . Uma matriz de objetos que fornece detalhes do erro, incluindo o texto da mensagem de erro, uma descrição mais detalhada do erro e a consulta SQL do mosaico que produziu o erro. |
dashboard:tile:download
Este evento é criado quando os dados de um mosaico começam a ser transferidos.
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"
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Número inteiro | O número de ID do evento e não do mosaico. |
tile.title |
String | O título do mosaico, conforme apresentado na parte superior do mosaico. |
tile.listen |
Objeto | Os filtros do painel de controlo global que este mosaico está a detetar. Este objeto tem o formato: {"Filter Label": "Filter Field", ...} |
fileFormat |
String | O formato do mosaico transferido (apenas "pdf" neste momento). |
dashboard:tile:explore
Este evento é criado quando um utilizador clica na opção Explorar a partir daqui num mosaico do painel de controlo.
Este evento é cancelável, o que significa que a aplicação de incorporação pode devolver {cancel: true}
e o Looker não prossegue com o evento de acionamento.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
label |
String | A etiqueta do botão. |
url |
String | O URL relativo (apenas o caminho) da exploração a ser vista. |
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Número inteiro | O número de ID do evento e não do mosaico. |
tile.title |
String | O título do mosaico, conforme apresentado na parte superior do mosaico. |
tile.listen |
Objeto | Os filtros do painel de controlo global que este mosaico está a detetar. Este objeto tem o formato: {"Filter Label": "Filter Field", ...} |
dashboard:tile:view
Este evento é criado quando um utilizador clica na opção Ver visual original num mosaico do painel de controlo.
Este evento é cancelável, o que significa que a aplicação de incorporação pode devolver {cancel: true}
e o Looker não prossegue com o evento de acionamento.
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"
}
}
Atributo | Formato | Descrição |
---|---|---|
label |
String | A etiqueta do botão. |
url |
String | O URL relativo (apenas o caminho) do Look a ser visualizado. |
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
tile.id |
Número inteiro | O número de ID do evento e não do mosaico. |
tile.title |
String | O título do mosaico, conforme apresentado na parte superior do mosaico. |
tile.listen |
Objeto | Os filtros do painel de controlo global que este mosaico está a detetar. Este objeto tem o formato: {"Filter Label": "Filter Field", ...} |
dashboard:tile:merge
Added 25.14 Este evento é gerado quando o utilizador clica no botão Editar consulta unida ou no item de menu Editar consulta unida. O comportamento predefinido deste botão é abrir uma nova janela de nível superior que permite editar a consulta de união.
Este evento é cancelável, o que significa que a aplicação de incorporação pode devolver {cancel: true}
e o Looker não prossegue com o evento de acionamento. Este evento permite que a aplicação de incorporação abra a edição da consulta de união num iFrame em vez de numa janela de nível superior. A aplicação de incorporação não deve tentar carregar o URL no iFrame que acionou o evento. Em alternativa, deve criar um novo iFrame.
javascript
type: dashboard:tile:merge,
label: 'Edit Merged Query',
dashboard_id: '13',
dashboard_modified: false,
tile_id: '218',
tile_title: 'Untitled',
url: '/embed/merge/edit?did=218&dbnx=1',
absoluteUrl: 'https://.../embed/merge/edit?did=218&dbnx=1',
target: '_blank',
Atributo | Formato | Descrição |
---|---|---|
label |
de string | A etiqueta do botão. |
dashboard_id |
de string | O ID do painel de controlo ao qual o mosaico de consulta unida pertence. |
dashboard_modified |
booleano | Quando true , este atributo indica que o painel de controlo foi modificado. As atualizações ao painel de controlo podem ser perdidas se a edição da consulta de união prosseguir. A aplicação de incorporação pode cancelar a edição da consulta de união ou avisar o utilizador de que pode ter alterações não guardadas se continuar. |
tile_id |
de string | O ID do mosaico de consulta unida. |
tile_title |
de string | O título do mosaico. |
url |
de string | O URL da consulta unida. Este atributo pode ser usado com o SDK incorporado para criar um novo iFrame para a consulta unida. |
absoluteUrl |
de string | O URL completo da consulta unida. Este atributo pode ser usado como o src do elemento iframe. São necessários atributos adicionais. |
target |
de string | O ID a usar para o nome da janela a abrir. |
dashboard:filters:changed
Este evento é criado quando os filtros de um painel de controlo são aplicados ou alterados.
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"
}
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo. |
dashboard.title |
String | O título, conforme apresentado na parte superior do painel de controlo. |
dashboard.canEdit |
Booleano |
Adicionado a 22.20
Quando true , o utilizador pode editar o painel de controlo. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho). |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard.options |
Objeto | As propriedades e os valores do esquema do painel de controlo, do componente do esquema do painel de controlo e do elemento do painel de controlo. Todas as propriedades devolvidas no objeto options podem receber valores atualizados através do evento dashboard:options:set . |
look:ready
Este evento é criado quando um Look começa a carregar dados de consultas, quer a consulta seja executada ou não.
type: "look:ready",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Atributo | Formato | Descrição |
---|---|---|
look.url |
String | O URL do Look relativo (apenas o caminho) |
look.absoluteUrl |
String | O URL completo do Look |
look:run:start
Este evento é criado quando uma análise detalhada começa a carregar dados de consulta e a consulta começa a ser executada.
type: "look:run:start",
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Atributo | Formato | Descrição |
---|---|---|
look.url |
String | O URL do Look relativo (apenas o caminho) |
look.absoluteUrl |
String | O URL completo do Look |
look:run:complete
Este evento é criado quando um Look termina a execução da consulta.
type: look:run:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Atributo | Formato | Descrição |
---|---|---|
look.url |
String | O URL do Look relativo (apenas o caminho) |
look.absoluteUrl |
String | O URL completo do Look |
look:edit:start
Adicionado a 25/10 Este evento é acionado quando um visual é mudado para o modo de edição.
type: "look:edit:start",
look: {
id: 46,
title: "My Look",
url: "/embed/looks/46",
absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Atributo | Formato | Descrição |
---|---|---|
look.id |
String | O ID do Look. |
look.title |
String | O título do Look. |
url |
String | O URL de visualização relativo (apenas o caminho). |
absoluteUrl |
String | O URL completo do Look. |
look:edit:cancel
Adicionado a 25/10 Este evento é acionado quando um aspeto que está no modo de edição sai do modo de edição sem guardar.
type: "look:edit:cancel",
look: {
id: 46,
title: "My Look",
url: "/embed/looks/46",
absoluteUrl: "https://instance_name.looker.com/embed/looks/46",
}
Atributo | Formato | Descrição |
---|---|---|
look.id |
String | O ID do Look. |
look.title |
String | O título do Look. |
url |
String | O URL de visualização relativo (apenas o caminho). |
absoluteUrl |
String | O URL completo do Look. |
look:save:complete
Este evento é criado quando um visual é editado e guardado. Este evento é criado quando um utilizador realiza uma das seguintes tarefas:
- Clica no botão Editar para editar o visual e, de seguida, clica em Guardar
- Guardar um visual com a opção de menu Guardar > Guardar como…
- Move um visual de uma pasta para outra
Este evento não é criado se o relatório detalhado for guardado com a opção de menu Guardar > No painel de controlo existente ou Editar definições.
type: look:save:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
folderid: 123
}
Atributo | Formato | Descrição |
---|---|---|
look.url |
String | O URL do Look relativo (apenas o caminho) |
look.absoluteUrl |
String | O URL completo do Look |
look.folderid |
Número inteiro | O ID da pasta onde o Look está armazenado |
look:delete:complete
Este evento é criado quando um Look é movido para a pasta Lixo.
type: look:delete:complete
look: {
url: "/embed/looks/...",
absoluteUrl: "https://instance_name.looker.com/embed/looks/...",
}
Atributo | Formato | Descrição |
---|---|---|
look.url |
String | O URL do Look relativo (apenas o caminho) |
look.absoluteUrl |
String | O URL completo do Look |
drillmenu:click
Este evento é criado quando um utilizador clica num menu de detalhe num painel de controlo criado com o link
parâmetro LookML. Por exemplo, o seguinte LookML cria um menu de detalhe no qual um utilizador pode ver dados filtrados pela dimensão 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"
}
}
Quando o filtro state
está definido como Illinois
, o evento drillmenu:click
devolve o seguinte ao anfitrião do iFrame:
type: "drillmenu:click",
label: "Filter by Illinois",
link_type: "url",
modal: false,
target: '_self',
url: "#filter::state=Illinois"
context: ' '
Este evento é cancelável, o que significa que a aplicação de incorporação pode devolver {cancel: true}
e o Looker não prossegue com o evento de acionamento.
Atributo | Formato | Descrição |
---|---|---|
label |
String | A etiqueta do link, conforme apresentado no menu de detalhe |
link_type |
String | O tipo de objeto no destino do link |
modal |
Booleano | Se a caixa de diálogo de detalhe vai ser usada em vez da navegação no navegador |
target |
String | É _self se o destino do link substituir o iFrame atual, _blank se o destino do link abrir uma nova janela |
url |
String | O URL do destino do link |
context |
String | Atributo interno usado por alguns tipos de visualizações |
A aplicação de sandbox ao iFrame impede que os cliques no menu detalhado sejam abertos numa nova janela. Use estes valores de sandbox na etiqueta iFrame:
sandbox = "allow-same-origin allow-scripts"
drillmodal:download
Este evento é criado quando um utilizador abre uma caixa de diálogo de detalhe a partir de um mosaico do painel de controlo e clica na opção Transferir.
{
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"
}
Atributo | Formato | Descrição |
---|---|---|
dashboard.id |
Número/string | O ID do painel de controlo ao qual o mosaico pertence. |
dashboard.title |
String | O título do painel de controlo, conforme apresentado na parte superior do painel de controlo ao qual o mosaico pertence. |
dashboard.url |
String | O URL do painel de controlo relativo (apenas o caminho) ao qual o mosaico pertence. |
dashboard.absoluteUrl |
String | O URL completo do painel de controlo ao qual o mosaico pertence. |
dashboard.dashboard_filters |
Objeto | Os filtros aplicados ao painel de controlo ao qual o mosaico pertence. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
drillExploreUrl |
String | O URL relativo de Explorar (apenas o caminho) a transferir. |
fileFormat |
String | O formato de ficheiro da transferência de dados. |
drillmodal:explore
Este evento é criado quando um utilizador clica na opção Explorar a partir daqui numa caixa de diálogo de detalhe.
Este evento é cancelável, o que significa que a aplicação de incorporação pode devolver {cancel: true}
e o Looker não prossegue com o evento de acionamento.
type: "drillmodal:explore",
label: "Explore From Here",
url: "/embed/explore/model/view..."
Atributo | Formato | Descrição |
---|---|---|
label |
String | A etiqueta do botão, conforme apresentado no menu detalhado |
url |
String | O URL de exploração relativo (apenas o caminho) a ser visualizado |
explore:ready
Este evento é criado quando uma exploração começa a carregar dados de consultas, quer a consulta seja executada ou não.
type: "explore:ready",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
Atributo | Formato | Descrição |
---|---|---|
explore.url |
String | O URL relativo de exploração (apenas o caminho) |
explore.absoluteUrl |
String | O URL completo de exploração |
explore:run:start
Este evento é criado quando uma análise detalhada começa a carregar dados de consultas e a consulta começa a ser executada.
type: "explore:run:start",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
Atributo | Formato | Descrição |
---|---|---|
explore.url |
String | O URL relativo de exploração (apenas o caminho) |
explore.absoluteUrl |
String | O URL completo de exploração |
explore:run:complete
Este evento é criado quando uma análise detalhada termina de executar a consulta.
type: "explore:run:complete",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/...",
}
}
Atributo | Formato | Descrição |
---|---|---|
explore.url |
String | O URL relativo de exploração (apenas o caminho) |
explore.absoluteUrl |
String | O URL completo de exploração |
explore:state:changed
Este evento é criado quando um URL da página Explorar é alterado como resultado das ações do utilizador.
type: "explore:state:changed",
explore: {
url: "/embed/explore/...",
absoluteUrl: "https://instance_name.looker.com/embed/explore/..."
}
Atributo | Formato | Descrição |
---|---|---|
explore.url |
String | O URL relativo de exploração (apenas o caminho) |
explore.absoluteUrl |
String | O URL completo de exploração |
page:changed
Este evento é criado quando um utilizador navega para uma nova página no iFrame.
type: "page:changed",
page: {
type: "dashboard",
url: "/embed/dashboards/...",
absoluteUrl: "https://instance_name.looker.com/embed/dashboards/..."
}
Atributo | Formato | Descrição |
---|---|---|
page.type |
String | O tipo de página para a qual acabou de navegar, como "dashboard" , "look" ou "explore" |
page.url |
String | O URL relativo (apenas o caminho) da página para a qual acabou de navegar |
page.absoluteUrl |
String | O URL completo da página para a qual a navegação acabou de ser feita |
page:properties:changed
Este evento é criado quando a altura de um iFrame do painel de controlo é alterada. Não está disponível para Looks nem Explores, porque esses itens ajustam automaticamente a respetiva altura ao tamanho do iFrame.
type: "page:properties:changed",
height: 1000
Atributo | Formato | Descrição |
---|---|---|
height |
Número inteiro | A altura do iFrame do painel de controlo em píxeis |
session:tokens
Este evento indica que o cliente do Looker requer tokens para continuar. Este evento é criado imediatamente após a criação do iFrame e, posteriormente, de forma periódica durante a sessão.
{
"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
}
Atributo | Formato | Descrição |
---|---|---|
authentication_token |
String | Token de autenticação. Incluído quando o iFrame é criado. Não está incluído numa resposta a um pedido de geração de tokens ou se a sessão tiver expirado. |
authentication_token_ttl |
Número | Tempo de vida do token de autenticação em segundos. Incluído quando o iFrame é criado. Não está incluído numa resposta a um pedido de geração de tokens ou se a sessão tiver expirado. |
api_token |
String | Chave da API. Não incluído se a sessão tiver expirado. |
api_token_ttl |
Número | Tempo de vida do token de API em segundos. Não incluído se a sessão tiver expirado. |
navigation_token |
String | Token de navegação. Não incluído se a sessão tiver expirado. |
navigation_token_ttl |
Número | Tempo de vida do token de navegação em segundos. Não incluído se a sessão tiver expirado. |
session_references_token_ttl |
Número | Tempo de vida da sessão em segundos. O valor é 0 quando a sessão expira. Para recuperar, a aplicação de incorporação tem de adquirir uma nova sessão. |
session:expired
Adicionado a 25/10 Este evento é acionado quando a sessão do utilizador incorporado expira.
type: "session:expired",
Este evento não tem um payload.
session:status
O evento é gerado quando a aplicação Looker incorporada processa pedidos de tokens de sessão.
{
"type": "session:status",
"session_ttl": 0,
"expired": true,
"interrupted": false
}
Atributo | Formato | Descrição |
---|---|---|
session_ttl |
Número | Tempo de vida da sessão em segundos. |
expired |
Booleano | Quando true , indica que a sessão expirou. |
interrupted |
Booleano | Quando true , indica que não foi dada resposta a um pedido de tokens de sessão. Isto pode indicar que um servidor está temporariamente indisponível. |
recoverable |
Booleano | Apenas preenchido quando interrupted é true . Indica se a sessão pode ou não ser recuperada. Um valor de false significa provavelmente que existe um problema com a aplicação de incorporação. |
env:client:dialog
O evento é gerado quando é aberta uma caixa de diálogo que pode estar parcialmente fora da vista, como uma caixa de diálogo de detalhe. Este evento permite que a aplicação de alojamento desloque a caixa de diálogo para a vista com a ação env:host:scroll
.
{
type: "env:client:dialog",
dialogType: 'drilling',
placement: 'cover',
open: true
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | env:client:dialog indica que uma caixa de diálogo foi aberta ou fechada. Apenas a caixa de diálogo de detalhe é suportada, mas podem ser adicionadas outras caixas de diálogo no futuro. É possível que a parte superior da caixa de diálogo de detalhe não esteja visível, uma vez que a caixa de diálogo cobre a área de visualização do iFrame. Este evento permite que a aplicação anfitriã desloque a parte superior da caixa de diálogo para a vista. |
dialogType |
String | O tipo de caixa de diálogo. Apenas a abertura ou o fecho do tipo de caixa de diálogo "drilling" aciona este evento. |
placement |
String | O posicionamento da caixa de diálogo. As caixas de diálogo do tipo "drilling" usam sempre um placement de "cover". |
open |
Booleano | Indica se a caixa de diálogo está aberta ou se foi feito o deslocamento da página. |
Fazer alterações ao iFrame
Depois de preparar o iframe para a obtenção de dados, pode fazer alterações ao iframe com os seguintes passos:
Escrever o seu pedido em JSON
Pode fazer várias alterações ao iFrame, que envia no formato JSON. As opções disponíveis são descritas na secção Referência de ações desta página. Não se esqueça de usar JSON.stringify
para transformar a sua ação em JSON, da seguinte forma:
var my_request = JSON.stringify(
{
type: "dashboard:run"
}
);
Publicar o pedido na propriedade contentWindow
do iFrame
Por fim, publique a sua mensagem no contentWindow
da iFrame, da seguinte forma:
var my_iframe = document.getElementById("my_iframe_id");
my_iframe.contentWindow.postMessage(my_request, 'https://instance_name.looker.com');
Tabela de resumo das ações
A tabela seguinte resume as ações. Selecione uma ação para ver os detalhes sobre essa ação.
Ação | Descrição da ação |
---|---|
page:load |
Carrega uma nova página no iFrame, substituindo a página existente. |
dashboard:load |
Carrega um novo painel de controlo no iFrame, substituindo um painel de controlo existente. |
dashboard:run |
Executa o painel de controlo no iFrame. |
dashboard:edit |
Adicionado a 22.20 Muda o painel de controlo para o modo de edição. |
dashboard:filters:update |
Atualiza um filtro do painel de controlo existente no iFrame. |
dashboard:options:set |
Escreve novos valores no esquema do painel de controlo e nas propriedades dos elementos do painel de controlo. |
dashboard:schedule_modal:open |
Abre o programador, que permite aos utilizadores enviar conteúdo do Looker para vários destinos. |
dashboard:stop |
Interrompe um painel de controlo que está a ser executado ou a recarregar dados. |
look:run |
Executa o Look no iFrame. |
look:filters:update |
Atualiza um filtro de aparência existente no iFrame. |
explore:run |
Executa a análise detalhada no iFrame. |
explore:filters:update |
Atualiza ou remove um filtro de exploração existente no iFrame. |
session:tokens:request |
Envia tokens em resposta a um evento session:tokens:request . |
env:host:scroll |
Envia informações sobre a posição de deslocamento atual do iFrame anfitrião para a aplicação Looker incorporada. |
Referência de ação
Seguem-se as ações disponíveis que pode publicar no iFrame incorporado:
page:load
Use esta ação para navegar para novo conteúdo no iFrame, substituindo o conteúdo existente. Esta ação é semelhante à ação dashboard:load
, mas é mais flexível, uma vez que é possível especificar parâmetros adicionais no URL.
Existem diferenças no comportamento que devem ser consideradas antes de usar page:load
. dashboard:load
impede a navegação se o painel de controlo atual estiver a ser editado. page:load
não impede a navegação. A aplicação anfitriã pode determinar se um painel de controlo ou um visual está a ser editado através do acompanhamento de dashboard:edit:start
, look:edit:start
e dos respetivos eventos de fim de edição. Por este motivo, recomendamos a utilização do SDK de incorporação. O SDK incorporado monitoriza se um painel de controlo ou um Look está a ser editado. Assim, é possível consultar a ligação para ver se o conteúdo está a ser editado antes da navegação.
{
type: 'page:load',
url: '/embed/dashboard/32?state=california,
pushHistory: false
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo page:load indica que quer carregar novo conteúdo no iFrame. |
url |
String | O URL do conteúdo a carregar. |
pushHistory |
Booleano | Se true , o conteúdo carregado cria uma nova entrada no histórico do navegador, e o utilizador pode usar o botão anterior do navegador para voltar ao conteúdo anterior. Se false , o conteúdo atual é substituído e não é possível usar a navegação do navegador para voltar ao mesmo. |
dashboard:load
Use esta ação para carregar um novo painel de controlo no iFrame, substituindo um painel de controlo existente. O novo painel de controlo começa a executar consultas como se tivesse sido aberta uma nova página do painel de controlo.
{
type: "dashboard:load",
id: "101",
pushHistory: false
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:load indica que quer carregar um novo painel de controlo no iFrame. |
id |
String | O ID do painel de controlo a carregar. |
pushHistory |
Booleano | Se true , o painel de controlo carregado cria uma nova entrada no histórico do navegador e o utilizador pode usar o botão anterior do navegador para regressar ao painel de controlo anterior. Se false , o painel de controlo atual é substituído e não é possível usar a navegação do navegador para voltar a ele. |
dashboard:run
Use esta ação para executar o painel de controlo no iFrame. Esta é a mesma ação que clicar no botão Executar ou Recarregar dados no painel de controlo.
{
type: "dashboard:run"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:run indica que quer executar o painel de controlo. |
dashboard:edit
Adicionado a 22.20 Use esta ação para mudar um painel de controlo existente na iFrame para o modo de edição. Esta é a mesma ação que selecionar Editar painel de controlo no menu do painel de controlo.
{
type: "dashboard:edit"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:edit indica que quer mudar o painel de controlo para o modo de edição. |
dashboard:filters:update
Use esta ação para atualizar um filtro do painel de controlo existente no iFrame. Não pode adicionar um novo filtro ao painel de controlo através deste método.
{
type: "dashboard:filters:update",
filters: {
"Sale date": "Last 28 days",
"Sale amount": "Greater than 100"
}
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:filters:update indica que quer atualizar os filtros usados pelo painel de controlo. |
filters |
Objeto | Os novos filtros que quer aplicar ao painel de controlo. Este objeto tem o formato: {"Filter name 1": "value 1", "Filter name 2": "value 2", ...} |
dashboard:options:set
Esta ação está disponível após a ocorrência do evento dashboard:run:complete
.
O incorporador cria a mensagem e envia-a para o iFrame, mas o painel de controlo só responde após a ocorrência de dashboard:run:complete
. A ação dashboard:options:set
escreve novos valores no esquema do painel de controlo e nas propriedades dos elementos do painel de controlo. Só é possível atualizar as propriedades devolvidas no atributo options
do evento dashboard:run:complete
através de dashboard:options:set
. Todas as propriedades definidas que não foram devolvidas anteriormente pelo atributo options
do evento dashboard:run:complete
são ignoradas.
{
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"
}
}
}
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:options:set indica que quer escrever novos valores no esquema do painel de controlo e nas propriedades dos elementos do painel de controlo. |
layouts |
Objeto | As propriedades do esquema do painel de controlo devolvidas pelo atributo options no evento dashboard:run:complete . Estes vão estar num formato semelhante ao seguinte:
|
layouts.dashboard_layout_components |
Objeto | Um ou mais objetos dashboard layout component devolvidos pelo atributo options no evento dashboard:run:complete . Estes vão estar num formato semelhante ao seguinte:
|
elements |
Objeto | Um ou mais objetos dashboard element devolvidos pelo atributo options no evento dashboard:run:complete . Estes vão estar num formato semelhante ao seguinte:id: { title: "string", title_hidden: boolean, vis_config: { type: "string", title: "string" }} |
dashboard:schedule_modal:open
Use esta ação para abrir o agendador, que permite aos utilizadores enviar conteúdo do Looker para vários destinos.
{
type: "dashboard:schedule_modal:open"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:schedule_modal:open indica que quer abrir a caixa de diálogo Agendar. |
dashboard:stop
Use esta ação para parar um painel de controlo que esteja a ser executado ou a recarregar dados. Esta ação é igual a clicar no botão Cancelar no painel de controlo. Um painel de controlo que deixa de usar dashboard:stop
envia um evento dashboard:run:complete
com status:
definido como "stopped"
.
{
type: "dashboard:stop"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo dashboard:stop indica que quer parar o painel de controlo em execução. |
look:run
Use esta ação para executar a consulta na qual a análise detalhada se baseia no iFrame. Esta ação é semelhante a clicar no botão Executar no Look, com a exceção de que o look:run
consulta sempre a base de dados diretamente e não obtém dados da cache do Looker.
{
type: "look:run"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo look:run indica que quer executar a análise detalhada. |
look:filters:update
Use esta ação para atualizar um filtro de visualização existente no iFrame. Não pode adicionar um novo filtro ao relatório detalhado através deste método.
{
type: "look:filters:update",
filters: {
"orders.created_at": "90 days",
"products.department": "sweaters"
}
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo look:filters:update indica que quer atualizar os filtros usados pelo relatório detalhado. |
filters |
Objeto | Os novos filtros que quer aplicar ao visual. Este objeto tem o formato: {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} |
explore:run
Use esta ação para executar a funcionalidade Explorar no iFrame. Esta ação é semelhante a premir o botão Executar na análise detalhada, com a exceção de que o explore:run
consulta sempre a base de dados diretamente e não obtém dados da cache do Looker.
{
type: "explore:run"
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo explore:run indica que quer executar a análise detalhada. |
explore:filters:update
Use esta ação para atualizar ou remover um filtro Explorar existente no iFrame. A inclusão de um novo filtro que faça referência a um campo válido adiciona o novo filtro à funcionalidade Explorar.
{
type: "explore:filters:update",
filters: {
"orders.created_at": "90 days",
"orders.status": "complete"
}
deleteFilters: ["products.department"]
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo explore:filters:update indica que quer atualizar os filtros usados pela funcionalidade Explorar. |
filters |
Objeto | Os novos filtros que quer aplicar à página Explorar. Se filters incluir um filtro que não exista na funcionalidade Explorar, mas que faça referência a um campo válido, esse filtro é adicionado à funcionalidade Explorar. Este objeto tem o formato {"view_name.field_name_1": "value 1", "view_name.field_name_1": "value 2", ...} . |
deleteFilters |
Matriz | Os filtros existentes que quer remover da funcionalidade Explorar. A matriz tem o formato: ["view_name.field_name_1", "view_name.field_name_2", ...] |
session:tokens:request
Use esta ação para enviar tokens em resposta a um pedido session:tokens:request
.
{
type: "session:tokens:request",
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo session:tokens:request indica que quer enviar tokens em resposta a um evento session:tokens:request . |
env:host:scroll
Use esta ação para enviar informações sobre a posição de deslocamento atual do iFrame do anfitrião para a aplicação Looker incorporada.
{
type: "env:host:scroll",
offsetTop: 10,
offsetLeft: 10,
scrollX: 5,
scrollY: 5
}
Atributo | Formato | Descrição |
---|---|---|
type |
String | A utilização do tipo env:host:scroll indica que quer enviar informações sobre a posição de deslocamento atual do iFrame anfitrião para a aplicação Looker incorporada. |
offsetTop |
Número | A parte superior do iFrame. |
offsetLeft |
Número | O deslocamento à esquerda do iFrame. |
scrollX |
Número | A posição scrollX do anfitrião da aplicação. |
scrollY |
Número | A posição scrollY do anfitrião da aplicação. |