meetbot.dev

01 · meeting bot api

本日提供中

ミーティングボット、 API。

$0.30/hr flat. Per-speaker audio, captions, chat — to your bucket. POST a Google Meet, Microsoft Teams, or Zoom URL; get clean recordings back via signed webhook.

概要

なぜこれが存在するか。

これが今日我々が出荷しているものです。ミーティング URL を受け取ってジョブ ID を返す単一の REST エンドポイント。その背後では:Bun + Drizzle のオーケストレータが Docker コンテナ内で Puppeteer 駆動の Chrome ボットを dispatch し、ボットは通常のゲストタイルとしてミーティングに参加し、WebRTC SSRC マッピングから話者ごとの音声をキャプチャし、字幕をスクレイプ (または存在する場合は Meet データチャネルを読み取り) し、アカウント作成時に指定した S3 互換バケットにすべてアップロードします。

ホストがミーティングを離れたとき、ボットがキックされたとき、またはミーティングが終了したとき、マニフェストパスとともに署名済み webhook が 1 つ届きます。プロプライエタリなコンテナ形式はありません。「ダウンロードのために我々のポータルにログイン」もありません。ファイルはあなたのバケット、あなたの保持ポリシー、あなたの KMS キーの下に住みます。我々はミーティング 1 件ではなくミーティング分単位で課金します — 17 分の通話は 8.5 セントです。

Anti-bot は他の誰も話さないものです。Google の 2026 年 4 月の dual-queue admit 画面をクリアするため、Workspace ボットアカウントのローテーションプールを動かしています。各リトライは Trigger.dev タスク設定の階層エスカレーション経由でよりステルスな Chrome フィンガープリントを使います — 自前のリトライループも、fetch の周りの脆弱な for-loop もありません。ボットコンテナは単一目的でエフェメラルです。

受け取れるもの

コントラクト、 明文化。

item

audio.{speaker}.webm

参加者ごとに 1 つの Opus トラック。WebRTC SSRC をキーとし、ミーティングロスターから名前タグ付け。ミックスなし。

item

tab.video.webm

x11grab 経由の VP9 タブキャプチャ。視聴者が見るもの、共有画面を含む。設定可能なビットレート。

item

captions.jsonl

改行区切り JSON、確定発話 1 件につき 1 行、speakerId + start/end ms 付き。

item

chat.jsonl

受信ミーティングチャットメッセージ、送信者属性とタイムスタンプ付き。Meet/Teams/Zoom で同じ形。

item

manifest.json

全ファイルのインデックス、参加者ロスター、ミーティングメタデータ、終了時の sub-code、アーティファクトごとのコンテンツハッシュ。

item

POST {your-hook}

マニフェストがアップロードされたときの署名済み webhook (本文に対する HMAC-SHA256)。非 2xx ではキュー経由で指数バックオフでリトライします。