😂
Google Meet APIを使ってできること(結論: 無料プランだと録画取得できませんでした...)
こちらのポストを見て初めてGoogle MeetのAPIがあることを知りました。
これはLLMとかなり相性が良さそうだったので、使ってみました。
(文字起こし、録画の取得はLLMと相性が良さそうなのでAPIを使ってみたかったのですが、無料プランではできなかったですmm)
公式ドキュメント
※リリースノートを見ると、2023年11月2日にプレビューで公開され、2024年2月15日にGAとなったようです。
APIでできること
- 会議スペースを作成して、ビデオでユーザーをつなぐ
- 会議室または会議をリソース名で取得する
- 参加者と参加者セッションのリストを取得する
- 会議のアーティファクト(録画、文字起こし、文字起こしのエントリ)を取得する
要は、会議の作成・変更はもちろん、会議終了後に録画や文字起こしを取得できるようです。
セットアップ
- APIを有効にする
- GCPで
APIとサービス
→認証情報
タブに移動 - アプリケーションの種類を
デスクトップアプリ
にし、アプリ名を入力して作成
- クレデンシャル情報のjsonをダウンロードし、手元に
credentials.json
として保存 - 以下のコードを実行 ※最新の情報は公式ドキュメントを確認してください。
from __future__ import print_function
import os.path
from google.auth.transport.requests import Request
from google.oauth2.credentials import Credentials
from google_auth_oauthlib.flow import InstalledAppFlow
from google.apps import meet_v2
# If modifying these scopes, delete the file token.json.
SCOPES = ['https://www.googleapis.com/auth/meetings.space.created']
def main():
"""Shows basic usage of the Google Meet API.
"""
creds = None
# The file token.json stores the user's access and refresh tokens, and is
# created automatically when the authorization flow completes for the first
# time.
if os.path.exists('token.json'):
creds = Credentials.from_authorized_user_file('token.json', SCOPES)
# If there are no (valid) credentials available, let the user log in.
if not creds or not creds.valid:
if creds and creds.expired and creds.refresh_token:
creds.refresh(Request())
else:
flow = InstalledAppFlow.from_client_secrets_file(
'credentials.json', SCOPES)
creds = flow.run_local_server(port=0)
# Save the credentials for the next run
with open('token.json', 'w') as token:
token.write(creds.to_json())
try:
client = meet_v2.SpacesServiceClient(credentials=creds)
request = meet_v2.CreateSpaceRequest()
response = client.create_space(request=request)
print(f'Space created: {response.meeting_uri}')
except Exception as error:
# TODO(developer) - Handle errors from Meet API.
print(f'An error occurred: {error}')
if __name__ == '__main__':
main()
- Googleのログイン画面が立ち上がるため、アカウントを選択してログイン
- 会議が作成されているのが確認できればOK
Space created: https://meet.google.com/xxx-xxxx-xxx
録画を取得する
こちらのドキュメントを実装しようと思いましたが、以下のプランに入っていないと録画を保存できず、無料プランの私は実行できませんでしたmm
ビデオ会議を録画する機能は、以下の Google Workspace エディションでご利用いただけます。
Business Plus
Business Standard
Essentials
Education Plus。「教職員向け」または「生徒向け」のライセンスが割り当てられているユーザーが利用できます。
Enterprise Essentials
Enterprise Plus
Enterprise Standard
Enterprise Starter
Google One(保存容量が 2 TB 以上のプラン)のメンバー
Teaching and Learning Upgrade。「Teaching and Learning Upgrade」のライセンスが割り当てられているユーザーが利用できます。
Workspace Individual
さいごに
有料プランになった時 or 何か使える機会が来たら試してみようと思います。
Discussion