この記事は、Zoom Client SDK の Web SDK を試してみた手順のメモです。
●Introduction - Client SDKs
https://marketplace.zoom.us/docs/sdk/native-sdks/introduction
●Web - Client SDKs - Zoom Software Development Kit (Zoom SDK) - Zoom Developer - Technical Documentation and Reference
https://marketplace.zoom.us/docs/sdk/native-sdks/web
Zoom Client SDK の Web SDK の概要
公式ページの記載を引用して見てみます。
The Web SDK enables the development of video applications powered by Zoom’s core framework inside an HTML5 web client through a highly optimized WebAssembly module.
As an extension of the Zoom browser client, this SDK is intended for implementations where the end user has a low-bandwidth environment, is behind a network firewall, or has restrictions on their machine which would prevent them from installing the Zoom Desktop or Mobile Clients.引用元: 公式ドキュメントより
説明はいろいろと書いていますが、この SDK を使うと、ブラウザ上で Zoomクライアントを立ち上げることができるもののようです。
Web SDK をとりあえず試す
公式ドキュメントの「Quick install」を見ると、以下手順でサクッと試せるようです。
パッケージのインストール
まずは、任意のディレクトリでパッケージのインストールを行います。
この手順を試す時、最初は Node.js のバージョンを 12 にしていて途中の手順でエラーが出ました。その後、バージョンを 14 にして試してエラーが出なくなったので、補足しておきます。
npm i @zoomus/websdk
2つのキーの取得について
公式ドキュメントによると Web SDK を使う際に API Key と Secret を取得する必要があるようです。
Zoom のApp Marketplaceにアクセスしてログインをし、画面右上の「Develop」のメニューから「Build App」を選択します。
その後の手順については以下の記事などを参照して、JWT の「API Key」と「API Secret」の 2つを取得してください。以下は、Zoom API についての記事ですが、取得するキーは今回の Zoom SDK を用いる場合と同じでした。
●Zoom APIをPostmanで試す | ヤマムギ
https://www.yamamanx.com/zoom-api-postman/
サンプルアプリのソースの取得
そして、公式ドキュメントの Sample Apps の部分に書かれた以下の手順を進めていきます。
まずは最初の2つのコマンドを実行して、ソースを取得し、取得したソースのサブフォルダへと移動します。
git clone https://github.com/zoom/sample-app-web.git --branch master --depth 1
cd sample-app-web/Local
サンプルアプリのソースの書きかえ(キーの設定)
ここで、取得したソースの中の一部を書きかえます。具体的には、先ほど準備した 2つのキーを設定します。
取得したソースの「Local」フォルダ内のさらに下に「js」フォルダがあり、その中に「index.js」というファイルがあります。ソースの取得元の情報でいうと、以下の URL の「13行目」と「19行目」です。
●sample-app-web/index.js at master · zoom/sample-app-web
https://github.com/zoom/sample-app-web/blob/master/Local/js/index.js
具体的には以下の部分で、const API_KEY = "YOUR_API_KEY";
の部分と const API_SECRET = "YOUR_API_SECRET";
の部分の式の右側に、先ほど取得しておいたキーを設定します。
それが完了したら、以下のコマンドを順次実行していきます。
npm install
npm run start
ブラウザでミーティング設定画面を開く
上記のコマンドを入力すると、以下のような文字などが出力されます。
ローカルでポート番号「9999」でアクセスできる状態になったようです。
「0.0.0.0」や「localhost」にポート番号 9999 を指定して、ブラウザでアクセスしてみてください。
そうすると、以下の画面が表示されるので「Meeting Number」と「Meeting Password」のそれぞれに、参加したい Zoomミーティングの ID とパスワードを入力してください。
また、言語設定が「English」となっている部分は「Japanese 日本語」という選択肢があるので、プルダウンから選択して変更します。
その後、画面のメニュー右端にある「Join」ボタンを押しましょう。
そうすると、以下のように自分が用意したブラウザ上のアプリから Zoom ミーティングに参加できます。
この時、「Meeting Number」の数字の中に半角スペースが入るとうまくいかないようなので、ご注意ください。うまく接続できたら、別タブが開き、以下のように Zoomミーティングへ参加した際の画面が表示されます。
Zoomミーティングに入った後は、ブラウザ上の UI で画面共有の操作なども行うことができます。
おわりに
今回の内容は単にブラウザ上でZoomミーティング へ参加しただけで、これだけだと、Zoom 標準のブラウザからのミーティング参加機能と同じですが、ソースコードに手を入れれば何らか拡張とかもできるかと思ってます。
詳細は確認できてないので、引き続き情報をチェックしてみようと思います。また、今回使った「Client SDK」以外の SDK(例えば、「Fully Customizable SDK」)も見てみようと思います。
●Introduction - Client SDKs
https://marketplace.zoom.us/docs/sdk/native-sdks/introduction
●Introduction - Fully Customizable SDKs
https://marketplace.zoom.us/docs/sdk/custom/introduction