Calendars API
カレンダーを同期してミーティングの録画を自動化する
Calendars APIを使用すると、OutlookおよびGoogle Workspaceのカレンダーを自動的に同期し、スケジュールされたミーティングにbotをdeployできます。
これにより、以下が簡単になります:
- 手動介入なしでミーティングの録画と参加を自動化する
- Google WorkspaceとMicrosoft Outlookの両方のカレンダーに接続する
- カレンダーイベントが変更された際にリアルタイムの更新を受け取る
- どのミーティングを録画するかを決定するビジネスロジックを適用する
このAPIはシンプルなパターンに従っており、カレンダープロバイダーへの接続、イベントの一覧表示と管理、ミーティング発生時の録画botの自動スケジュールが可能です。
主な機能
- マルチカレンダー対応: Google WorkspaceとMicrosoft Outlookの両方のカレンダーに接続
- OAuth認証: OAuthを使用したカレンダープロバイダーとの安全な連携
- リアルタイムWebhook: カレンダーイベントの変更時に即座に通知を受信
- 選択的録画: どのミーティングを録画するかを独自のビジネスルールで決定
- Bot設定: 各ミーティングの録画設定をカスタマイズ
- 定期ミーティング対応: 定期的なミーティングシリーズを効率的に処理
実装プロセス
- 認証設定: OAuth認証情報を使用してカレンダーを接続
- カレンダー選択: 同期するカレンダーを選択
- イベント管理: カレンダーイベントの一覧表示、フィルタリング、処理
- 録画設定: 特定のミーティングにbotをスケジュール
- Webhook処理: リアルタイムのカレンダー更新を受信して処理
- メンテナンス: 認証情報の更新とエラー回復を処理
API の使用方法
Calendars APIはMeeting BaaSプラットフォームの一部であり、以下のendpointを提供します:
- カレンダー連携の作成と管理
- カレンダーイベントの一覧表示とフィルタリング
- 特定のミーティングへの録画botのスケジュール
- リアルタイム更新のためのwebhook管理
このAPIは完全にドキュメント化されており、JSONのpayloadを使用した標準的なRESTオペレーションをサポートしています。認証はMeeting BaaSのAPIキーと、カレンダープロバイダーアクセス用のOAuth tokenを使用して行われます。
API 使用例
以下は、Calendars APIを使用してチームミーティングにbotをスケジュールする例です:
このコードは、Calendars APIを使用してイベントを取得し、録画botをスケジュールする方法を示しています。
import { createBaasClient } from "@meeting-baas/sdk";
const client = createBaasClient({
api_key: "your-api-key",
timeout: 30000 // optional, default: 30000
});
const { success, data, error } = await client.createCalendar({
oauth_client_id: "your-oauth-client-id",
oauth_client_secret: "your-oauth-client-secret",
oauth_refresh_token: "your-oauth-refresh-token",
platform: "Google",
raw_calendar_id: "optional-calendar-id"
});
if (success) {
console.log("Calendar created:", data.calendar.name);
console.log("Calendar UUID:", data.calendar.uuid);
} else {
console.error("Error creating calendar:", error);
}curl -X POST "https://api.meetingbaas.com/calendars/" \
-H "x-meeting-baas-api-key: <token>" \
-H "Content-Type: application/json" \
-d '{
"oauth_client_id": "string",
"oauth_client_secret": "string",
"oauth_refresh_token": "string",
"platform": "Google",
"raw_calendar_id": "string"
}'カレンダーイベントの一覧表示
接続されたカレンダーからイベントを取得する方法を示します:
import { createBaasClient } from "@meeting-baas/sdk";
const client = createBaasClient({
api_key: "your-api-key"
});
// List events from a specific calendar
const { success, data, error } = await client.listCalendarEvents({
calendar_uuid: "your-calendar-uuid",
start_time: "2024-01-01T00:00:00Z",
end_time: "2024-01-31T23:59:59Z"
});
if (success) {
console.log("Events found:", data.events.length);
data.events.forEach(event => {
console.log(`- ${event.summary} (${event.start_time})`);
});
} else {
console.error("Error listing events:", error);
}イベントの録画スケジュール
今後のミーティングにbotを自動スケジュールする:
import { createBaasClient } from "@meeting-baas/sdk";
const client = createBaasClient({
api_key: "your-api-key"
});
// Schedule recording for a specific calendar event
const { success, data, error } = await client.scheduleRecording({
calendar_uuid: "your-calendar-uuid",
event_id: "event-id-from-calendar",
bot_config: {
bot_name: "Meeting Recorder",
recording_mode: "speaker_view",
speech_to_text: {
provider: "Default"
}
}
});
if (success) {
console.log("Recording scheduled:", data.scheduled_recording.id);
} else {
console.error("Error scheduling recording:", error);
}
はじめに
カレンダー連携でミーティングの録画を自動化する準備はできましたか?包括的なドキュメントをご確認ください: