🛠️ 運用設計書

Zoom Memo Automation システム運用ガイド

利用シーン別構成 - 必要な情報に素早くアクセス

📊

現在の運用状況を知りたいとき

システム稼働状況、API接続状況、処理実績の確認方法

🚨

エラーの要因と対応策を知りたいとき

エラーコード一覧、緊急度別対応、よくあるトラブル解決

🔧

メンテナンス方法を知りたいとき

定期メンテナンス、設定変更、システム更新手順

🆘

緊急時対応を知りたいとき

システム停止時、障害切り分け、緊急復旧手順

📈

パフォーマンス問題を調査したいとき

処理時間分析、ボトルネック特定、最適化ポイント

🔐

セキュリティインシデントが発生したとき

APIキー漏洩、不正アクセス、セキュリティ監査対応

🔄

システム変更を実施したいとき

変更管理プロセス、テスト実行、ロールバック手順

📋

運用レポートを作成したいとき

運用実績データ取得、レポート作成、KPI分析

🆕

新メンバーがシステムを理解したいとき

システム概要、基本操作、学習リソース

📚

詳細仕様・設定情報を確認したいとき

システム構成、設定値、API仕様、関連ドキュメント

📊 現在の運用状況を知りたいとき

🔍 システム稼働状況の確認手順

1. 基本ヘルスチェック(所要時間:2分)
  • Vercel Functions稼働確認
  • API接続状況確認(Zoom/Google/Slack)
  • 最新の実行ログ確認
curl "https://zoom-memo-automation.vercel.app/api/health-check"

期待される応答:

{"status": "healthy", "timestamp": "2025-08-08T...", "services": {...}}

📈 処理実績・パフォーマンス確認

実行ログの確認場所
ログ種別 確認場所 確認方法
実行ログ Google Drive
99.zoom_memo_recording/{年}/{月}/logs/
JSON形式、Slack通知からリンクアクセス可能
システムログ Vercel Dashboard Functions → Logs → 最新7日間
対話記録 Cipher Database
data/cipher.db
Claude Code MCP経由でアクセス

⚡ パフォーマンス指標

正常稼働の目安
  • 処理時間:228秒未満(300秒制限の76%以内)正常
  • API応答時間:各API 10秒未満正常
  • エラー発生率:5%未満正常
  • Slack通知成功率:95%以上正常
⚠️ 注意が必要な状況
  • 処理時間が250秒を超える場合
  • API接続エラーが連続3回発生
  • 1日に10回以上のエラー通知

🚨 エラーの要因と対応策を知りたいとき

🚨 緊急対応が必要なエラー(即座に対応)

  • ZM001: Zoom API認証失敗 → 環境変数確認
  • GD001: Google Drive API認証失敗 → 認証情報確認
  • SY002: システム処理タイムアウト → 処理時間最適化
  • SY003: 環境変数未設定 → Vercel環境変数確認

📋 エラーコード分類システム(50種類)

分類 コード範囲 主な原因 初期対応
ZM (Zoom API) ZM001-ZM010 認証エラー、レート制限、録画アクセス 環境変数・OAuth設定確認
GD (Google Drive) GD001-GD010 認証エラー、容量不足、権限問題 サービスアカウント・権限確認
AI (Gemini AI) AI001-AI010 レート制限、処理タイムアウト、形式エラー API制限・ファイル形式確認
SL (Slack API) SL001-SL010 Bot認証、チャンネル権限、メッセージ形式 Bot設定・権限確認
SY (System) SY001-SY010 メモリ不足、タイムアウト、設定エラー Vercel制限・環境変数確認

🔄 よくあるエラーと解決方法

ZM002: Zoom APIレート制限超過

症状: 429 Too Many Requests エラー

対応:

  1. 15分間待機してから再実行
  2. 監視間隔を延長(現在30分 → 60分に変更)
  3. 複数同時処理を避ける
# 監視間隔変更(Vercel環境変数) CHECK_INTERVAL_MINUTES=60
AI007: Gemini処理タイムアウト

症状: 97秒でタイムアウト、文字起こし未完了

対応:

  1. 音声ファイルサイズ確認(推奨:100MB未満)
  2. 録画時間確認(推奨:60分未満)
  3. 必要に応じて音声分割処理を検討
SL003: Slackメッセージ投稿失敗

症状: Slackにメッセージが投稿されない

対応:

  1. Botがチャンネルに参加しているか確認
  2. Bot Scopesに chat:write 権限があるか確認
  3. チャンネルIDが正しいか確認(Cから始まる)

📞 エスカレーション判断基準

🔴 即座にエスカレーション
  • システム全体が2時間以上停止
  • データ損失の可能性
  • セキュリティインシデントの疑い
  • 複数のAPIで同時認証エラー
🟡 1営業日以内にエスカレーション
  • 特定機能が24時間以上利用不可
  • パフォーマンス著しく低下
  • エラー発生率が20%を超過

🔧 メンテナンス方法を知りたいとき

📅 定期メンテナンススケジュール

頻度 メンテナンス項目 実施方法 所要時間
毎日 システム稼働確認 ヘルスチェックAPI実行 5分
週次 エラーログ確認・分析 Google Drive logs フォルダ確認 15分
月次 依存関係更新確認 package.json 脆弱性スキャン 30分
四半期 API制限・料金確認 各サービスコンソール確認 60分

⚙️ 環境変数・設定変更手順

Vercel環境変数の変更
  • Vercel Dashboard → Project Settings → Environment Variables
  • 変更対象の環境変数を特定
  • 新しい値を設定(本番環境:Production)
  • 保存後、自動的に再デプロイ実行
  • 変更後のヘルスチェック実施
⚠️ 注意事項
  • APIキー変更時は事前に新キーの動作確認を実施
  • 変更前の値をバックアップとして記録
  • 営業時間外での変更を推奨

🔄 システム更新・デプロイ手順

通常のコード更新(所要時間:15分)
  • 変更内容をGitHubにプッシュ
  • Vercel自動デプロイ開始確認
  • デプロイ完了確認(通常15-30秒)
  • ヘルスチェックで稼働確認
  • 主要機能のテスト実行
# Claude Code での標準デプロイフロー git add . git commit -m "fix: 具体的な変更内容" git push origin main sleep 30 curl "https://zoom-memo-automation.vercel.app/api/health-check"
重要な変更時の詳細検証
  • PT001本番スルーテスト実行
  • 各API接続テスト実行
  • ExecutionLogger動作確認
  • Slack通知テスト実行
  • エラーハンドリングテスト
# 包括的テスト実行 curl "https://zoom-memo-automation.vercel.app/api/production-throughput-test" curl "https://zoom-memo-automation.vercel.app/api/test-zoom?test=auth" curl "https://zoom-memo-automation.vercel.app/api/monitor-recordings-gdrive-test?test=TC205b"

📦 依存関係更新方法

月次パッケージ更新チェック
  1. package.json の依存関係確認
  2. セキュリティ脆弱性スキャン実行
  3. メジャーバージョン更新は個別検証
  4. テスト環境での動作確認後に本番適用
主要依存関係
パッケージ 現在バージョン 更新頻度 注意事項
@google/generative-ai ^0.2.0 月次 API変更に注意
googleapis ^126.0.0 四半期 認証方式変更に注意
axios ^1.6.0 月次 セキュリティパッチ優先
@slack/web-api ^6.9.0 月次 API変更に注意

🆘 緊急時対応を知りたいとき

🚨 システム完全停止時の対応(所要時間:10分)

  1. 影響範囲確認:Vercel Dashboard でFunctions状態確認
  2. 原因切り分け:最新のデプロイメント・環境変数変更確認
  3. 緊急復旧:前回正常動作版へのロールバック
  4. サービス復旧確認:ヘルスチェック・基本機能テスト
  5. 関係者通知:復旧状況をSlackで報告

🔍 障害切り分け手順フローチャート

1. 症状確認

□ ヘルスチェック失敗 → Vercelデプロイメント確認

□ 特定API呼び出し失敗 → 個別API認証確認

□ 処理タイムアウト → パフォーマンス問題調査

□ 部分的機能停止 → 機能別切り分け

2. 原因特定

□ 最近のコード変更 → コミット履歴確認

□ 環境変数変更 → Vercel設定確認

□ 外部API問題 → 各サービス障害情報確認

□ Vercel制限到達 → リソース使用量確認

⏪ 緊急復旧手順

A. Vercelロールバック(推奨:5分)
  • Vercel Dashboard → Deployments
  • 前回正常動作のデプロイメント特定
  • "Promote to Production" 実行
  • 復旧確認テスト実行
B. Gitロールバック(代替手段:10分)
  • 前回正常コミットのハッシュ特定
  • リバートコミット作成・プッシュ
  • 自動デプロイ完了待機
  • 復旧確認テスト実行
# Gitロールバック例 git log --oneline -10 # 正常コミット特定 git revert [コミットハッシュ] --no-edit git push origin main

📞 関係者連絡・報告手順

🔴 緊急度:High(即座に連絡)
  • システム完全停止:2時間以上の機能停止
  • データ損失・セキュリティ問題
  • 複数サービス同時障害

連絡先:システム部門管理者、関係者Slackチャンネル

🟡 緊急度:Medium(4時間以内に連絡)
  • 特定機能の停止
  • パフォーマンス大幅低下
  • 頻発するエラー
📝 報告テンプレート
【システム障害報告】Zoom Memo Automation ■ 発生時刻:YYYY/MM/DD HH:mm ■ 影響範囲:[全機能停止 / 特定機能停止 / パフォーマンス低下] ■ 症状:[具体的な症状] ■ 推定原因:[デプロイ / 環境変数 / 外部API / 不明] ■ 対応状況:[実施済み対応] ■ 復旧予定:[見込み時刻] ■ 担当者:[名前]

🔄 復旧後の確認事項

復旧確認チェックリスト
  • ヘルスチェック成功確認
  • 各API接続テスト実行
  • PT001本番スルーテスト実行
  • 最新の実行ログ確認
  • Slack通知テスト実行
  • 24時間後の安定稼働確認
📋 事後対応(ポストモーテム)
  1. 障害原因の詳細分析
  2. 再発防止策の検討・実装
  3. 対応手順の改善
  4. 関係者向け報告書作成
  5. 運用手順書の更新

📈 パフォーマンス問題を調査したいとき

⏱️ 処理時間分析方法

現在のベンチマーク(PT001テスト結果)
処理ステップ 正常時間 警告しきい値 主要ボトルネック
Zoom API接続 3-5秒 10秒 OAuth認証・ネットワーク遅延
録画データ取得 10-20秒 30秒 ファイルサイズ・ネットワーク帯域
音声文字起こし 60-90秒 120秒 Gemini AIレスポンス・音声品質
要約生成 5-15秒 20秒 文字数・AI処理負荷
Google Drive保存 5-10秒 15秒 ファイルサイズ・アップロード帯域
Slack通知 1-3秒 5秒 メッセージサイズ・API応答
全体処理時間 228秒 250秒 Vercel 300秒制限

🔍 ボトルネック特定手順

1. 実行ログ分析(ExecutionLogger)
  • Google Drive logs フォルダから最新ログ確認
  • 各ステップの実行時間を抽出
  • 異常に時間がかかるステップを特定
  • エラー・リトライ発生箇所を確認
# PT001テストで詳細な時間測定実行 curl "https://zoom-memo-automation.vercel.app/api/production-throughput-test" # レスポンス例(時間情報抽出) { "executionTiming": { "totalTime": "228800ms", "steps": [ {"step": "Zoom API接続", "elapsed": 4200}, {"step": "音声要約処理", "elapsed": 87300}, ... ] } }

⚡ パフォーマンス最適化のポイント

🎯 優先度:高(即座に実施可能)
  • 音声ファイルサイズ制限:100MB未満に制限
  • 録画時間制限:60分未満を推奨
  • Geminiモデル選択:処理速度重視でgemini-2.0-flashを検討
  • 並列処理最適化:Google Drive保存とSlack通知の並列化
🔧 中長期的改善(開発が必要)
  • 音声分割処理:大容量ファイルの自動分割
  • キューシステム:長時間処理の非同期化
  • キャッシュ機能:重複処理の回避
  • Vercel Pro移行:制限緩和とパフォーマンス向上

📊 リソース使用量確認

Vercel制限の確認
制限項目 Hobbyプラン制限 現在使用量 対応策
実行時間 300秒 228秒(76%) 処理最適化・分割処理
Functions数 12個 7個(58%) 統合済み・余裕あり
メモリ使用量 1024MB 監視要 バッファサイズ最適化
帯域使用量 100GB/月 監視要 ファイルサイズ制限

🔐 セキュリティインシデントが発生したとき

🚨 APIキー漏洩時の緊急対応(所要時間:20分)

  1. 影響範囲確認:漏洩したキーの種類・公開範囲を特定
  2. 即座にキー無効化:各サービスコンソールでキー削除
  3. 新キー生成:代替キーを生成・動作確認
  4. システム更新:Vercel環境変数に新キー設定
  5. サービス復旧確認:全機能の正常動作確認
  6. セキュリティ監査:他のキーの安全性確認

🔑 APIキー管理・再生成手順

サービス キー種類 再生成場所 影響範囲 復旧時間
Zoom API Key/Secret Zoom Marketplace → App → Credentials 録画取得機能停止 10分
Google AI API Key Google AI Studio → API Keys 文字起こし・要約停止 5分
Google Drive Service Account Google Cloud Console → IAM ファイル保存・ログ記録停止 15分
Slack Bot Token Slack App → OAuth & Permissions 通知機能停止 5分

🕵️ 不正アクセス検知時の対応

1. 初期対応(30分以内)
  • 不正アクセスのログ・証跡確認
  • 影響を受けた可能性のあるデータ範囲特定
  • 関連APIキーの即座無効化
  • システムアクセスログの保全
  • 関係者への緊急連絡
🔴 確認すべき不正アクセスの兆候
  • 異常な時間帯でのAPI呼び出し
  • 通常と異なる地理的位置からのアクセス
  • 大量のAPI呼び出し(通常の10倍以上)
  • 認証失敗の連続発生
  • 未知のIPアドレスからのアクセス
# Vercelアクセスログの確認 # Vercel Dashboard → Functions → Logs → Filters # 検索キーワード例 status:401 OR status:403 unusual_activity rate_limit_exceeded

🔍 セキュリティ監査の実施

月次セキュリティチェック
  • すべてのAPIキーの最終使用日確認
  • 不要になったキー・トークンの削除
  • アクセスログの異常パターン確認
  • 依存関係の脆弱性スキャン
  • 環境変数の設定値確認
セキュリティ設定チェックリスト
項目 確認内容 正常状態
Vercel Headers セキュリティヘッダー設定 X-Content-Type-Options, X-Frame-Options設定済み
HTTPS強制 HTTP通信の無効化 すべてHTTPSリダイレクト
環境変数 機密情報の適切な管理 コードにベタ書きなし
アクセス制限 必要最小権限の原則 各サービスで最小権限設定

🔒 予防的セキュリティ対策

📋 定期的に実施すべき対策
  • キーローテーション:四半期ごとのAPIキー更新
  • 権限監査:各サービスの必要最小権限確認
  • ログ監視:異常パターンの自動検知設定
  • バックアップ確認:設定情報の定期バックアップ
  • 脆弱性スキャン:依存関係の定期確認

🔄 システム変更を実施したいとき

📋 変更管理プロセス

変更前の準備(所要時間:30分)
  • 変更内容の詳細記録
  • 影響範囲の分析・評価
  • ロールバック手順の準備
  • テスト計画の策定
  • 関係者への変更通知
変更タイプ 承認レベル テスト要件 実施タイミング
緊急修正 システム管理者 基本機能確認 即座(24時間以内報告)
機能追加 部門承認 包括的テスト 営業時間外
設定変更 システム管理者 影響範囲確認 営業時間外推奨
依存関係更新 システム管理者 回帰テスト 営業時間外

🧪 テスト実行プロセス

段階的テスト手順
  • Phase 1: 基本機能テスト(ヘルスチェック)
  • Phase 2: API接続テスト(Zoom/Google/Slack)
  • Phase 3: 統合テスト(TC203-205)
  • Phase 4: 本番スルーテスト(PT001)
  • Phase 5: 24時間稼働監視
# 段階的テスト実行スクリプト # Phase 1: ヘルスチェック curl "https://zoom-memo-automation.vercel.app/api/health-check" # Phase 2: API接続確認 curl "https://zoom-memo-automation.vercel.app/api/test-zoom?test=auth" # Phase 3: 統合テスト curl "https://zoom-memo-automation.vercel.app/api/monitor-recordings-gdrive-test?test=TC205" # Phase 4: 本番スルーテスト curl "https://zoom-memo-automation.vercel.app/api/production-throughput-test"

⏪ ロールバック手順

🚨 即座ロールバック条件
  • 基本機能テスト失敗
  • 重大なエラーの連続発生
  • パフォーマンス50%以上低下
  • セキュリティ問題の発覚
A. Vercelデプロイメントロールバック(推奨)
  • Vercel Dashboard → Deployments
  • 前回正常動作版を選択
  • "Promote to Production" 実行
  • 正常性確認テスト実行
B. 環境変数ロールバック
  • 変更前の値をバックアップから復旧
  • Vercel環境変数を更新
  • 自動再デプロイ完了待機
  • 正常性確認テスト実行

📝 変更管理テンプレート

【システム変更申請】Zoom Memo Automation ■ 変更予定日時:YYYY/MM/DD HH:mm - HH:mm ■ 変更タイプ:[緊急修正 / 機能追加 / 設定変更 / 依存関係更新] ■ 変更理由:[具体的な理由・背景] ■ 変更内容: - [詳細な変更内容] ■ 影響範囲: - [影響を受ける機能・システム] ■ テスト計画: - [実施予定のテスト項目] ■ ロールバック手順: - [問題発生時の戻し手順] ■ 担当者:[名前] ■ 承認者:[承認者名]

📋 運用レポートを作成したいとき

📊 運用実績データの取得方法

データソース一覧
データ種類 取得場所 データ形式 取得方法
実行ログ Google Drive
99.zoom_memo_recording/*/logs/
JSON Drive API または 手動ダウンロード
システムログ Vercel Dashboard テキスト 管理画面エクスポート
エラー統計 ExecutionLogger JSON(構造化) ログファイル集計
API使用状況 各サービスコンソール CSV/JSON 使用量レポート機能

📈 KPI・メトリクス定義

システム可用性指標
  • 稼働率:(正常稼働時間 / 総稼働時間) × 100
  • 目標:99.5%以上(月間ダウンタイム 3.6時間以内)
  • 測定方法:ヘルスチェック成功率
処理パフォーマンス指標
  • 平均処理時間:録画処理開始から完了まで
  • 目標:240秒以内(300秒制限の80%以内)
  • 測定方法:ExecutionLoggerの時間データ
品質指標
  • エラー発生率:(エラー発生数 / 総処理数) × 100
  • 目標:5%以内
  • 測定方法:エラーログ集計
利用状況指標
  • 月間処理件数:録画処理完了数
  • API使用量:各サービスの使用状況
  • ストレージ使用量:Google Drive使用容量

📑 レポート作成テンプレート

【Zoom Memo Automation 運用レポート】 ■ 対象期間:YYYY/MM/DD - YYYY/MM/DD ■ 全体サマリ - システム稼働率:XX.X% - 総処理件数:XXX件 - 平均処理時間:XXX秒 - エラー発生率:X.X% ■ 処理実績 - 録画処理成功:XXX件 - 録画処理失敗:XX件 - 平均ファイルサイズ:XXX MB - 最大処理時間:XXX秒 ■ エラー分析 - ZM(Zoom API)エラー:XX件 - GD(Google Drive)エラー:XX件 - AI(Gemini AI)エラー:XX件 - SL(Slack API)エラー:XX件 - SY(System)エラー:XX件 ■ パフォーマンス分析 - 処理時間分布: - 120秒未満:XXX件 (XX%) - 120-240秒:XXX件 (XX%) - 240秒以上:XX件 (X%) ■ リソース使用状況 - Vercel実行時間:XXX時間/月 - Google Drive容量:XX.X GB - API使用量: - Zoom API:XXX calls - Google AI:XXX requests - Slack API:XXX messages ■ 主要トピック - [重要な出来事・障害・改善事項] ■ 改善提案 - [パフォーマンス改善・運用効率化の提案] ■ 次期予定 - [予定されている変更・メンテナンス]

📊 データ分析のポイント

⚠️ 注意して監視すべき傾向
  • 処理時間の増加傾向:240秒を超える処理の増加
  • 特定エラーの頻発:同じエラーコードの集中発生
  • API制限への接近:各サービスの使用量上限
  • ストレージ容量:Google Drive使用量の推移
  • 時間帯別負荷:特定時間での処理集中
改善提案の観点
  • コスト最適化:API使用量・ストレージ容量の効率化
  • パフォーマンス:処理時間短縮・応答性向上
  • 信頼性:エラー発生率低下・可用性向上
  • 運用効率:監視・メンテナンス作業の自動化
  • スケーラビリティ:処理能力・利用者数の拡張性

🆕 新メンバーがシステムを理解したいとき

🎯 システム概要・運用方針

システムの目的

Zoom Memo Automationは、Zoom会議の録画データを自動的に文字起こし・要約し、構造化された議事録として関係者に通知するシステムです。

🔄 処理フロー(5ステップ)
  1. 監視:Zoom Cloud Recordingを定期監視(30分間隔)
  2. 取得:新しい録画データのダウンロード
  3. 処理:Google Gemini AIで文字起こし・8項目構造化要約
  4. 保存:Google Driveへファイル保存・共有リンク生成
  5. 通知:Slackで要約結果・録画リンクを共有
運用方針
  • 自動化重視:手動操作を最小限に抑制
  • 信頼性確保:エラーハンドリング・ログ記録を徹底
  • コスト効率:Vercel Hobbyプランでの最適運用
  • セキュリティ:APIキー適切管理・最小権限原則

🏗️ 各コンポーネントの役割

コンポーネント 役割 技術 設定場所
Vercel Functions サーバーレス実行環境 Node.js 18.x vercel.json
Zoom API 録画データ取得 Server-to-Server OAuth Zoom Marketplace
Google Gemini AI 文字起こし・要約生成 Gemini 2.5 Pro Google AI Studio
Google Drive ファイル保存・共有 Service Account Google Cloud Console
Slack API 通知・結果共有 Bot API Slack App Management
ExecutionLogger 実行ログ・エラー記録 JSON構造化ログ 1.src/utils/executionLogger.js

🛠️ 基本的な操作方法

1. システム状況確認(日次)
  • ヘルスチェック実行
  • 最新の処理ログ確認
  • Slackチャンネルでの通知確認
  • エラーアラートの有無確認
# 基本的な確認コマンド # システム稼働確認 curl "https://zoom-memo-automation.vercel.app/api/health-check" # API接続確認 curl "https://zoom-memo-automation.vercel.app/api/test-zoom?test=auth" # 直近の録画確認 curl "https://zoom-memo-automation.vercel.app/api/test-zoom?test=recordings"
2. トラブルシューティング基礎
  • エラーコードの読み方理解
  • Vercelログの確認方法
  • Google Drive実行ログアクセス
  • 基本的な解決方法の実践
3. 緊急時対応の基本
  • システム停止時の初動対応
  • エスカレーション判断基準
  • 関係者連絡方法
  • ロールバック操作の理解

📚 学習リソース一覧

内部ドキュメント
ドキュメント 内容 優先度 読了目安
機能設計書 システム機能・要件定義 2時間
環境設計書 システム構成・技術仕様 1.5時間
テスト仕様書 テスト方法・検証手順 1時間
CLAUDE.md 開発履歴・制約事項 30分
外部リソース
  • Vercel Documentation:Serverless Functions・デプロイメント
  • Zoom API Reference:Server-to-Server OAuth・Cloud Recording
  • Google AI Documentation:Gemini API・Audio Processing
  • Slack API Documentation:Bot API・Block Kit
推奨学習順序
  1. Week 1:システム概要理解・基本操作習得
  2. Week 2:各コンポーネント詳細・設定理解
  3. Week 3:トラブルシューティング・実践演習
  4. Week 4:運用手順・メンテナンス実習

📚 詳細仕様・設定情報を確認したいとき

🏗️ システム構成詳細

アーキテクチャ概要
    [GitHub Repository]
           ↓ (Push)
    [Vercel Auto Deploy]
           ↓
    [Serverless Functions] ── [Environment Variables]
           ↓
    [API Endpoints] 7個
    ├── /api/health-check.js
    ├── /api/production-throughput-test.js
    ├── /api/monitor-recordings.js
    ├── /api/monitor-recordings-gdrive-test.js
    ├── /api/test-zoom.js
    ├── /api/claude-status.js
    └── /api/claude-webhook.js
           ↓
    [External APIs]
    ├── Zoom API (Server-to-Server OAuth)
    ├── Google Gemini AI (API Key)
    ├── Google Drive (Service Account)
    └── Slack API (Bot Token)
                    

⚙️ 設定値一覧

Vercel環境変数(必須)
変数名 説明 形式
ZOOM_API_KEY Zoom OAuth Client ID 英数字 abc123def456...
ZOOM_API_SECRET Zoom OAuth Client Secret 英数字 xyz789uvw012...
ZOOM_ACCOUNT_ID Zoom Account ID 英数字 abc-def-ghi-123
GOOGLE_AI_API_KEY Google AI Studio API Key 文字列 AIza...(39文字)
SLACK_BOT_TOKEN Slack Bot User OAuth Token xoxb-で始まる xoxb-123-456-xyz
SLACK_CHANNEL_ID Slack Channel ID Cで始まる C1234567890
GOOGLE_DRIVE_CREDENTIALS Service Account JSON JSON文字列 {"type":"service_account"...}
GOOGLE_DRIVE_ORG_DOMAIN 組織ドメイン ドメイン名 grtx.jp
オプション設定
変数名 デフォルト値 説明
CHECK_INTERVAL_MINUTES 30 録画監視間隔(分)
MAX_PROCESS_RECORDINGS 1 同時処理録画数制限
GOOGLE_AI_MODEL gemini-2.5-pro 使用AIモデル
DISABLE_SLACK_NOTIFICATIONS false Slack通知無効化

🔌 API仕様・制限事項

各サービスAPI制限
サービス 制限項目 制限値 対応策
Zoom API レート制限 10 requests/秒 間隔制御・リトライ
ファイルサイズ 制限なし ダウンロード時間考慮
保存期間 アカウント設定依存 定期処理で取得
Google AI レート制限 60 requests/分 リトライ・モデル切替
ファイルサイズ 2GB 音声ファイル分割検討
処理時間 実質120秒程度 タイムアウト対策
Google Drive アップロード 5TB/日 通常運用で問題なし
API制限 1000 requests/100秒 バッチ処理最適化
Slack API メッセージ制限 1 message/秒 通知タイミング制御
ファイルサイズ 1GB Direct共有リンク使用
Vercel 実行時間 300秒(Hobby) 処理時間最適化必須
Functions数 12個(Hobby) エンドポイント統合済み
メモリ 1024MB バッファ処理最適化

📁 関連ドキュメントリンク

内部ドキュメント
  • 機能設計書:0.docs/functional-design.html
  • 環境設計書:0.docs/environment-design.html
  • テスト仕様書:0.docs/test-specification.html
  • 開発ダッシュボード:0.docs/index.html
  • プロジェクトガイドライン:CLAUDE.md
  • Zoom設定手順:0.docs/zoom-marketplace-setup-detailed.md
設定ファイル
  • Vercel設定:vercel.json
  • Node.js依存関係:package.json
  • システム設定:1.src/config/index.js
  • エラーコード定義:1.src/utils/errorCodes.js
外部ドキュメント
  • Vercel:https://vercel.com/docs
  • Zoom API:https://developers.zoom.us/docs/api/
  • Google AI:https://ai.google.dev/docs
  • Google Drive API:https://developers.google.com/drive
  • Slack API:https://api.slack.com/

🗂️ ファイル・フォルダ構造

zoom-memo-automation/ ├── 0.docs/ # ドキュメント │ ├── index.html # ダッシュボード │ ├── functional-design.html # 機能設計書 │ ├── environment-design.html # 環境設計書 │ ├── operations-design.html # 運用設計書(本書) │ └── test-specification.html # テスト仕様書 │ ├── 1.src/ # ソースコード │ ├── config/index.js # システム設定 │ ├── services/ # サービス層(9ファイル) │ └── utils/ # ユーティリティ(6ファイル) │ ├── 2.tests/ # テストデータ・ツール ├── 3.operations/ # 運用スクリプト・バックアップ ├── api/ # Vercel Functions(7ファイル) ├── data/ # Cipher対話記録DB │ ├── package.json # Node.js設定 ├── vercel.json # Vercel設定 ├── CLAUDE.md # プロジェクトガイドライン └── README.md # プロジェクト概要
最終更新: | 自動更新: 有効 | 利用シーン別運用ガイド完成: 2025-08-08