この実装、面倒なら代行します
前回までで、コーディング前のすべての準備と確認が終わりました。
いよいよコーディングしていきます。
今回はPHPで、Zoom APIをたたいて会議室を生成し、そのURLを取得して表示するプログラムのサンプルです。
// 文字列をURL-Safe Base64でエンコードする関数 function urlsafe_base64_encode($str){ return str_replace(array('+', '/', '='), array('-', '_', ''), base64_encode($str)); } $zoom_url = 'https://api.zoom.us/v2/users/メールアドレス/meetings'; $zoom_api_key = API Key; //ご自分のAPI Key $zoom_api_secret = API Secret; //ご自分のAPI Secret $expiration = time() + 20; //Tokenの有効期限(秒) $header = self::urlsafe_base64_encode('{"alg":"HS256","typ":"JWT"}'); $payload = self::urlsafe_base64_encode('{"iss":"' . $zoom_api_key . '","exp":' . $expiration . '}'); $signature = self::urlsafe_base64_encode(hash_hmac('sha256', "$header.$payload", $zoom_api_secret , TRUE)); $token = "$header.$payload.$signature"; // 即時生成の場合 $data_to_zoom_api = array( 'type' => "1", 'topic' => "会議室タイトル", ); // 時刻指定の場合 // $data_to_zoom_api = array( // "topic" => "会議室タイトル", // "type" => "2", // "start_time" => "2020-08-17T18:30:00", // "timezone" => "Asia/Tokyo", // "settings" => array( // "use_pmi" => "false" // ) // ); $options = array( 'http' => array( 'method'=> 'POST', 'header'=> array( 'Content-type: application/json', 'Authorization: Bearer ' . $token, ), 'content' => json_encode($data_to_zoom_api) ) ); $context = stream_context_create($options); $json_result = file_get_contents($zoom_url, false, $context); $json_result = json_decode($json_result, true); $message = $json_result['join_url']; echo $message;
これで、Zoom会議室のURLが表示されてきます。
余談ですが、上のコードには細かく分けると2つの機能が盛り込まれており、1つがToken生成、もう1つがデータの送受信です。
Token生成のところを見るとわかりますが、ZoomのTokenは、API KEYと有効期限をくっつけて(1)、それをAPI Secretでハッシュ値に変換(2)、(1)と(2)の文字列をくっつけたものということです。
いかがでしたか?
それほど難しい処理はしていませんよね。
ぜひご自身のアプリでZoom会議室連携を実装して、サービス品質向上に役立ててください。
WordPressカスタマイズ事例やウェブ制作ノウハウの新着情報、お役立ち情報を
リアルタイムにメルマガ配信!
100ウェブで手がけた制作・開発案件を一部、ご紹介。
クライアントからご相談いただいた内容とその実装におけるポイント、工期、予算について確認いただけます。
【テレワーク実施中 につきお電話転送中】
コール中1秒程度無音状態になりますがそのままお待ちください。
受付時間
平日 10:00~18:00
メールでのお問い合わせでも
1営業日以内にご連絡いたします。