こんにちは。CData Software Japan リードエンジニアの杉本です。
以前の記事で Zoom API について解説したところ、アクセス数的にかなり好評でした! やはり、Zoom APIを活用して、連携や分析を行うニーズはこの状況において大きく増しているようですね。
https://www.cdata.com/jp/blog/2020-08-17-085924
今回はそんな Zoom APIを使った活用例の一つとして、Power BI から Zoom API に接続し、ミーティングデータを可視化する方法を紹介したいと思います。
実現方法
Power BI から Zoom API への接続には CData で公開している API Drver for ODBC と Zoom API Profile を使用します。
API Driverは各種APIに接続するためのProfileとセットで使うことで、CData Driverを経由して様々なAPIに接続できるようになる Driverです。
https://www.cdata.com/jp/apidriver/
現在 100種類近くのAPI Profileを公開しており、その中に今回取り上げるZoom APIも含まれています。
https://www.cdata.com/jp/apidriver/#profiles
なお、今回はPower BIを使いましたが、CData Driverは様々なBIツールから利用できるので、以下にあるようなお好みのBIツールで試すことができます。
https://www.cdata.com/jp/kb/tech/rest-article-list.rst
手順
それでは手順を解説していきましょう。
必要なもの
Power BIやZoom アカウントは予め取得しておいてください。
- Zoom アカウント
- Power BI Desktop
- CData API ODBC Driver
- CData API Driver 用 Zoom API Profile
Zoom API Profile を使うための準備
まず、Zoom API に接続するためのOAuth用の設定を行います。詳しくは こちら のヘルプにも記載しています。
以下のページに移動し、Zoom API用のOAuthアプリを作成します。
https://marketplace.zoom.us/develop/create
今回は社内利用の想定のため、Account-Level appでマーケットプレイスには公開しない、以下の設定で作成しました。
アプリを作成すると、Client Id と Client Secretが取得できるので、これを控えておきます。
デスクトップマシンから接続するので、Redirect URL for OAuthとWhitelist URLに「http://localhost:33333」と登録します。
あとはアプリのスコープとして以下の5つを設定すれば準備完了です。
- account:read:admin
- meeting:read:admin
- user:read:admin
- webinar:read:admin
- account:master
API Driver と Zoom API Profileのダウンロード・インストール
続いて以下のページから「API Driver for ODBC」と「Zoom API Profile」をダウンロードします。
https://www.cdata.com/jp/apidriver/
「API Driver for ODBC」のインストーラーを実行して、セットアップが完了すると、以下のような接続設定画面が表示されるので、必要な値を設定します。
- Profile:ダウンロードしたZoom API Profie「Zoom.apip」のファイルパスを入力します。
- Callback URL:アプリのRedirect URLに登録した「http://localhost:33333」を指定します。
- Initiate OAuth:GETANDREFRESHを指定します。
- OAuth Client Id:Zoom OAuthアプリのClient Idを入力します。
- OAuth Client Secret:Zoom OAuthアプリのClient Secret を入力します。
すべての値を入力後、「接続のテスト」ボタンをクリックすると、ブラウザが立ち上がり、Zoom APIアクセス許可を求める画面が表示されるので、内容を確認の上「認可」をクリックしましょう。
以下のように接続テストに成功したメッセージが表示されればOKです。
Power BI から Zoom APIに接続する
準備が整ったので、Power BIからZoom APIに接続してみます。
Power BI Desktopを立ち上げて、「データを取得」をクリックし
一覧の中からODBCを選択します。
先程登録したODBC DSNを選択(デフォルトはCData API Sourceですが、私の環境では任意の名称で作成していました)して、
Windowsの現在の資格情報で接続を行います。
接続したら、早速ミーティングデータを取得したいところですが、Zoomのミーティングを取得するためには、まず紐付いているユーザーのIDを明らかにする必要があります。
以下からUsersを選択して、データを取り込み、UsersのIDを確認しましょう。
ミーティングデータの取得
続いて実際のミーティングデータを取得します。
再度ODBCからデータの取得を選択肢、今度はSQL ステートメントで以下のように取得するためのクエリを記述します。
SELECT * FROM Meetings WHERE UserId = 'XXXXXXX'
この時に先程取得しておいたユーザーのIdをWhere句で指定すればOKです。
これでミーティングデータ一覧を取得できました。
あとはPower BIの機能を利用して分析することができます。以下はミーティングの時間を日付ごとに集計しただけですが、年月日マスタなどをリレーションさせることで、どのくらいの頻度でミーティングが行われているか? などの分析も実施できるでしょう。
なお、過去のミーティングの結果、参加者数などを取得したい場合は「PastMeetings」テーブルを使用します。ただし、このテーブルにアクセスする場合、対象のミーティングIDが必要となるので注意しましょう。
http://cdn.cdata.com/help/FAF/api/zoom/pg_zoomviews-pastmeetings.htm
関連コンテンツ