Slack 向け Lookerbot の使用

このページでは、Looker が Slack で Looker データを共有するために提供する統合の一つである Lookerbot の使用方法の概要を説明します。

Slack 用 Lookerbot は Looker と統合されているため、Slack から直接データをクエリできます。これにより、組織の既存のワークフローの外部で作業しなくても、データを簡単に共有し、データドリブンな質問に回答できます。

このページでは、次の Slack-Lookerbot ワークフローについて説明します。

Lookerbot の使用を開始する

Slack で Lookerbot を使用するには、Looker のオープンソース GitHub リポジトリの技術的な設定の手順に沿って Lookerbot アプリケーションを構成する必要があります。

2021 年 2 月、Lookerbot とデータ アクションのやり取りに影響する一部の API エンドポイントは Slack でサポートされなくなりました。Looker の Lookerbot GitHub リポジトリから最新のアップデートを pull してください。package.json ファイルは、0.0.16 以降の Looker バージョンを指定する必要があります。

Looker の URL を自動的に拡張する

Lookerbot は、Slack で共有した Looker コンテンツの URL を自動的に展開できます。Slack チャンネル内で共有された URL を Lookerbot が自動的に展開できるようにするには、その Slack チャンネルに Lookerbot を追加する必要があります。(ボットの構成で LOOKER_SLACKBOT_EXPAND_URLS 環境変数を true に設定することも必要です。環境変数の詳細については、Lookerbot の技術的な設定の手順をご覧ください)。

Looker URL を拡張する機能は、Slack のダイレクト メッセージでは使用できません。これは、Looker で使用されているレガシー展開 API 機能でプライベート/パブリック チャネルとダイレクト メッセージを区別するためです。

Lookerbot を Slack のパブリック チャンネルまたはプライベート チャンネルに招待するには、次のようにします。

  1. チャンネルの名前をクリックして、チャンネル設定を開きます。
  2. [インテグレーション] タブを選択します。
  3. [App] で Lookerbot アプリの名前を選択します。

Lookerbot が招待されている Slack チャンネルの Explore または Look から URL を貼り付けると、Lookerbot が URL とそのコンテンツを自動的に展開します。Looker コンテンツに関連付けられたビジュアリゼーションがある場合、Lookerbot はそのビジュアリゼーションの画像を表示します。Looker コンテンツがデータテーブルの場合、Lookerbot はデータをテキストとして表示します。

カスタム スラッシュ コマンドを使用して Looker クエリを実行して投稿する

カスタムのスラッシュコマンドを作成して使用することもできます。実行すると、Looker で保存されているデータのクエリが実行され、結果が Slack に投稿されます。カスタムスラッシュ コマンドは Lookerbot のセットアップ時に作成されますが、Slack のすべてのユーザーが Slack で実行できます。

スラッシュ コマンドは Lookerbot を操作するために必要ではありません。Lookerbot のすべての機能を使用するには、bot に直接メッセージを送信するか、Lookerbot が存在する Slack チャンネルで次のようにメンションします。@lookerbot help

Slack ワークスペースで Slack 統合が有効になっている場合、Lookerbot で /looker スラッシュ コマンドを使用できません。@looker または /looker の代わりに、@lookerbot または /lookerbot を使用。

Lookerbot 用に作成されたコマンドを確認するには:

  • Lookerbot のメンションにカーソルを合わせます。使用可能なコマンドがポップアップ ウィンドウに表示されます。
  • Slack ワークスペースの [App] セクションで Lookerbot アプリを選択します。アプリページの [概要] タブを選択します。使用可能なコマンドは、[コマンド] の下に表示されます。

スラッシュ コマンドの使用方法

コマンドを使用する方法は 3 つあります。たとえば、ユーザーまたは組織内のデベロッパーが、特定の商品の注文数を追跡する Looker からデータを取得するコマンドを設定したとします。デベロッパーは、スラッシュ コマンドを構成する際に、このデータを「注文」で表しています。このコマンドを呼び出すには、次の方法があります。

  1. Lookerbot のメンションの後にコマンドのテキスト コンポーネントを続ける。これは、Lookerbot が存在するすべてのチャンネルで行えます。次に例を示します。

    @lookerbot orders

  2. スラッシュ コマンドを使用する。コマンドのリストでコマンドをクリックするか、(スラッシュの後に)コマンド名を入力して、コマンドを使用します。これは、スラッシュ コマンドが設定時に構成されている場合に行うことができます。

    /lookerbot orders

  3. Lookerbot にダイレクト メッセージを送信する。Lookerbot に直接メッセージを送信する場合は、コマンドの前に /lookerbot を付ける必要はありません。この場合、DM は単純に orders になります。

フィルタでスラッシュ コマンドを使用する

自分自身または組織内のデベロッパーが、単一の要素とダッシュボード フィルタを使用してダッシュボードにクエリを実行するスラッシュ コマンドを作成した場合は、その Looker コンテンツを取得するコマンドを実行して Slack からフィルタ値を追加できます。フィルタは省略可能です。値が指定されていない場合、クエリはフィルタなしで実行されます。

たとえば、米国の特定の都市をフィルタするカスタマー マップのビジュアリゼーションを持つダッシュボードがあり、カスタム スラッシュ コマンドがこのダッシュボード データを呼び出すように構成されているとします。 次のように、ニューヨークでフィルタされた customer map in コマンドを実行できます。

特定の地域のユーザー数を表すさまざまなサイズのポイントを持つニューヨークのマップを使用したデータ ビジュアリゼーションの Slackbot レスポンス。

データ形式

コマンドから返されるデータの種類は、基盤となる Explore、Look、ダッシュボード要素のビジュアリゼーション タイプによって異なります。返される形式は次の 3 つです。

  • テキスト: 基になるコンテンツがテーブルである場合、データはテキストとして返されます。たとえば、ユーザーが構成されたコマンド top customer this month を実行すると、Slackbot はテキスト形式のトップレコードを返します。

    今月の上位の顧客に対する Slackbot のレスポンスでは、Looker クエリへのリンクと、ユーザー名、ユーザーの年齢、ユーザーの状態、注文数の値が返されます。
  • 単一値のビジュアリゼーション: 基になるコンテンツが単一値のビジュアリゼーションである場合、データはテキスト値として返されます。たとえば、ユーザーが構成されたコマンド orders last week を実行すると、Slackbot は前週の合計カウントを返します。

    先週の注文のコマンドに対する Slackbot のレスポンス。Looker クエリへのリンクと注文の総数「228」を返している。
  • ビジュアリゼーション: 基になるコンテンツがビジュアリゼーションの場合、データはビジュアリゼーションの画像として返されます。たとえば、ユーザーが構成したコマンド movie budgets を値 Brad Pitt で実行した場合、Slackbot は、Looker クエリへのリンクと、ブラッド ピットの映画の初回公開年(1990 年から 2015 年)の平均予算の変化(0 ~ 1 億 6,000 万円)の傾向を示す折れ線グラフのビジュアリゼーションを返します。

参考情報

Looker の他の Slack 統合については、次のリソースをご覧ください。