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 リポジトリから最新のアップデートを取得してください。package.json ファイルは、0.0.16 以降の Looker バージョンを指定する必要があります。

Looker URL の自動拡張

Lookerbot により、Slack で共有する Looker コンテンツの URL を自動的に展開できます。Lookerbot が Slack チャンネル内で共有 URL を自動的に拡張できるようにするには、Lookerbot をその Slack チャンネルに追加する必要があります。(ボット構成では、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 から取得するようにコマンドを設定したとします。デベロッパーは、スラッシュ コマンドの構成時にこのデータを表すために「orders」を使用しています。このコマンドを呼び出すには、次の方法があります。

  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 統合の詳細については、次のリソースをご覧ください。