ユーザー一覧
| ニックネーム | 操作 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| 読み込み中… | |||||||||||
招待コード発行
一括招待発行(CSV)
形式: user,role,ttl_days(ヘッダー行不要・最大2000行)
例: alice,member,30
bob,admin,90
| 行 | ユーザー | ロール | 結果 | トークン / エラー |
|---|
ゲスト招待発行
単一ルームに限定された短期 TTL の guest ロール招待を発行します。最大 30 日 (720 時間)、email 不要。
ルーム招待リンク発行
発行済みルーム招待
| コード | ロール | 使用回数 | 有効期限 | パスコード | 状態 | 操作 |
|---|---|---|---|---|---|---|
| 右のルーム ID を入力して「更新」を押してください。 | ||||||
グループ作成
グループ一覧
| グループID | 名前 | 説明 | 操作 |
|---|---|---|---|
| 読み込み中… | |||
フィルター設定
NGワード追加
NGワード一覧
| 単語 | カテゴリ | 登録日時 | 操作 |
|---|---|---|---|
| 読み込み中… | |||
一括インポート(CSV)
形式: word,category(ヘッダー行不要・最大500行)
例: 不適切な言葉,ハラスメント
危険行為,安全
プリセット適用
読み込み中…
検出ログ(直近50件)
| 検出日時 | ルーム | ユーザー(匿名) | ワードハッシュ | モード |
|---|---|---|---|---|
| 読み込み中… | ||||
テナント作成
テナント一覧
| テナントID | テナント名 | パートナーID | ステータス | プラン | 操作 |
|---|---|---|---|---|---|
| 読み込み中… | |||||
パートナー作成
パートナー一覧
| ID | パートナー名 | スラッグ | ステータス | 操作 |
|---|---|---|---|---|
| 読み込み中… | ||||
承認待ちユーザー
| メールアドレス | 申請日時 | 確認済み日時 | 操作 |
|---|---|---|---|
| 読み込み中… | |||
ルーム一覧
| ステータス | ルーム名 | 可視性 | テナント | 作成者 | 参加者数 | 操作 |
|---|---|---|---|---|---|---|
| 読み込み中… | ||||||
月次使用量サマリ
| 年月 | 通話時間(分) | AI トークン消費量 |
|---|---|---|
| 読み込み中… | ||
※ 通話時間は録音済みルームの完了時間から集計しています。AI トークン消費量は Phase 2 で本実装予定です。
AI エージェント応答時間(発話終端 → AI 音声出力開始直前)
| プロバイダ | 件数 | 平均 (ms) | 中央値 P50 (ms) | P95 (ms) | P99 (ms) | SLO 判定 |
|---|---|---|---|---|---|---|
| 読み込み中… | ||||||
指標の見方
• 平均: 全応答時間の平均値。外れ値に影響されやすい
• 中央値(P50): 「典型的な応答速度」。件数に関わらず比較的安定した値
• P95: 遅い5%を除いた上限値。n≥20 件以上で信頼性が高まる
• P99: 最悪ケースに近い値。n≥100 件以上で信頼性が高まる
※ 件数が少ない場合、P95・P99 は最大値と一致することがあり「参考値」と表示されます
計測区間
🟢 START: ユーザーが話し終わった瞬間(VAD が発話終端を検出した時点)
🔴 END: AI が音声出力を開始する直前(SpeechCreated: source='generate_reply' イベント)
→ ネットワーク往復 + AI パイプライン全体を計測(発話時間・無音待機は含まない)
プロバイダー別パイプライン:
• Gemini Live(デフォルト): 音声認識 → 翻訳 → LLM 応答生成 → TTS 音声生成開始まで
• Deepgram(フォールバック): 音声認識 → STT final transcript 到達まで(TTS なし)
SLO target = 3000ms(中央値 P50 基準)。P50 が target を超えると ⚠️ を表示します。
録音設定
会話ログ (SRT) は Gemini による話者分離方式で生成されます。GEMINI_API_KEY(Tier 1 有料)が必要です。
生成時間は録音時間 × 話者数に比例します(目安: 2〜3 名 × 1 時間 ≈ 3〜6 分、10 名 × 1 時間 ≈ 10〜15 分)。
生成中は録音一覧に ⏳ が表示され、完成すると自動で 📄 ボタンに切り替わります。
録音一覧
| ルーム | ステータス | 開始時刻 | 終了時刻 | 録音時間 | 作成者 | 操作 |
|---|---|---|---|---|---|---|
| 読み込み中… | ||||||
※ ▶ 再生ボタンはサーバー経由でストリーミング再生します。⬇ ダウンロードボタンは都度 1 時間有効な署名付き URL を発行してファイルを保存します。
読み込み中…
監査ログ検索
監査ログ一覧
| 日時 | 操作者ロール | アクション | 対象種別 | 対象 ID |
|---|---|---|---|---|
| 検索してください | ||||
ログクリーンアップ
AIエージェント クラッシュログ
| 日時 | エラーコード | ルームID | 理由 | リトライ | 致命的 |
|---|---|---|---|---|---|
| 更新ボタンで読み込む | |||||
サブスクリプション状態
- プラン
- —
- ステータス
- —
- 次回更新日
- —
プラン購入
Stripe Checkout でサブスクリプションを開始します。
顧客ポータル
プランの変更・解約・請求履歴の確認は顧客ポータルで行えます。
議事録閲覧
ルーム ID を入力すると、そのルームの発話セグメント一覧と最新の通話後サマリを表示します。
tenant_admin / tenant_owner ロールが必要です。
通話後サマリ
ルーム ID を読み込んでください。
発話セグメント一覧
| # | 発話者 (仮名) | テキスト | 記録日時 |
|---|---|---|---|
| ルーム ID を読み込んでください。 | |||
行動分析イベント
AI エージェントが記録したルームセッション・参加者・文字起こし・サマリイベントを確認できます。
tenant_admin / tenant_owner ロールが必要です。
イベント集計
「読み込み」を押してください。
イベント一覧
| 日時 | イベント種別 | ルーム | 発生者 (仮名) | ペイロード |
|---|---|---|---|---|
| 「読み込み」を押してください。 | ||||
AI使用量 (Gemini API)
※ コスト概算は Gemini 公開単価に基づく近似値です。実際の請求額は Google Cloud コンソールでご確認ください。
種別内訳
| 種別 | 呼び出し数 | 入力トークン | 出力トークン | 概算コスト (USD) |
|---|
ユーザー別内訳
| ユーザー | 呼び出し数 | 入力トークン | 出力トークン | 概算コスト (USD) |
|---|
日別推移
| 日付 | 呼び出し数 | 入力トークン | 出力トークン | 概算コスト (USD) |
|---|
ドキュメント
| 名前 | ステータス | チャンク数 | 登録日時 | 操作 |
|---|
グループ
| グループ名 | キャッシュ状態 | 作成モデル | 有効期限 | 操作 |
|---|
グループ詳細
ドキュメントを追加
| ドキュメント名 | 操作 |
|---|
ルームへスコープ設定
| ルーム ID | 操作 |
|---|
制限ネットワーク向けプリセット (TURN-over-TLS 443)
社内 VPN・DPI・光電話 (SIP ALG)・Fortigate 等で音声がつながらない拠点があるテナント向けの 1 クリック設定です。適用すると全接続が TLS 443 経由の TURN リレーに固定されます (TURN 強制 = ON / ICE 経路 = relay / TCP フォールバック = ON)。
通常は空欄のまま「プリセット適用」を押してください (運用側が用意した TURN サーバーを認証情報込みで自動使用)。自社 TURN サーバを使う場合のみ turns:HOST:443?transport=tcp 形式で入力します。
現在のネットワーク設定
個別編集 (詳細設定)
通常はプリセットで十分です。個別の要件がある場合のみ変更してください。
true にすると全接続がリレー固定になり遅延がわずかに増えます。直接接続で音声が確立しない拠点があるテナントのみ ON。ON にすると ICE 経路は自動的に relay に固定されます。
直接接続 (UDP) に失敗したクライアントが TURN リレーで自動再接続できるようになります。通常は true のままにしてください。
Starlink 等の高遅延回線を使う拠点があるテナント向け。
支店 LAN から本社 VPN を経由せず直接インターネットへ出る (split-tunnel) 構成のテナント向け。
空欄 = 運用側が用意した TURN サーバーを認証情報込みで自動使用 (推奨)。自社 TURN を使う場合のみ turns:HOST:443?transport=tcp 形式で入力。空欄で保存するとテナント上書きを解除しシステムデフォルトに戻ります。
URL を空欄にして保存すると認証情報もクリアされます。
対応プロトコル / ポート一覧
Fortigate / Palo Alto / Cisco 等の firewall ポリシー設計時に参照してください。Fortigate split-tunnel ガイド
| サービス | プロトコル | ポート | 用途 |
|---|---|---|---|
| BONX FUSION app | TCP (HTTPS) | 443 (本番) / 3000 (dev) | API + 招待コード + LiveKit JWT 発行 |
| LiveKit SFU | TCP / UDP | 443 (TLS) + 7881 (TCP fallback) + 50000-60000 (UDP RTP) | WebRTC signaling + メディア |
| TURN over TLS | TCP (TLS) | 443 (推奨) または 5349 | UDP block / DPI 環境のリレー。実際の接続先ホストは上の「現在のネットワーク設定」の TURN サーバ URL を参照 |
| TURN over UDP | UDP | 3478 | 通常時のリレー |
| Logto OIDC | TCP (HTTPS) | 443 (Cloud) / 3001-3002 (OSS local) | SSO 認証 + Management API |
| STUN | UDP | 3478 / 19302 (Google) | NAT 越え (host 候補生成) |
最小許可セット (Fortigate split-tunnel): *.livekit.cloud:443/tcp + *.bonx.example:443/tcp + turn.example.com:443/tcp + 上記 UDP メディア ports
外部到達性診断
サーバ自身から指定 URL に GET 試行 + 外部 egress IP を取得します。サーバ自身からの接続成立は外部公開を保証しませんが (NAT punching の制約)、起動状態 + IP の確認に有用。確実な検証は別ネットワークからの curl を併用してください。
Firewall コマンド生成
OS を選ぶと GET /api/admin/firewall-rules から必要ポートの apply / rollback コマンドを取得します。サーバはコマンドを実行しません — 表示されたコマンドを管理者権限で手動実行してください。同等のローカル CLI: bash scripts/dev/firewall-helper.sh --os <os>
関連ドキュメント
SMTP 設定
▶ Google (Gmail) SMTP の設定例とアプリパスワードの取得手順
⚠️ Gmail は通常のパスワードでは送信できません。アプリパスワードが必要です。
- Google アカウントで 2段階認証を有効化(未設定の場合)
→ myaccount.google.com で 2段階認証を設定 - アプリパスワードの発行ページを開く
→ myaccount.google.com/apppasswords - 「アプリ名」欄に任意の名前(例:
BONX Fusion)を入力して 「作成」 をクリック - 表示された 16桁のパスワード(例:
abcd efgh ijkl mnop)をコピー - 下の「パスワード」欄に スペースなし で貼り付け(例:
abcdefghijklmnop)
SMTP 設定値
| ホスト (SMTP サーバー) | smtp.gmail.com |
| ポート | 465(SSL/TLS・推奨)または 587(STARTTLS) |
| SSL/TLS チェック | ポート 465 → チェックあり(推奨)、ポート 587 → チェックなし |
| ユーザー名 | Gmail アドレス(例: yourname@gmail.com) |
| パスワード | アプリパスワード(16桁・スペースなし) ← 通常の Gmail パスワードは不可 |
| 送信元アドレス | Gmail アドレス(例: yourname@gmail.com) |
※ 「535-5.7.8 Username and Password not accepted」エラーが出る場合はアプリパスワードを使っているか確認してください。
テスト送信
設定を保存後、実際にメールを送信して動作確認できます。
サーバー時刻 (C)
読み込み中…
NTP サーバー・タイムゾーン設定 (A・B)
OS 別 NTP 設定コマンド (A)
設定した NTP サーバーを OS に反映するためのコマンドです。サーバーはこれらのコマンドを実行しません。管理者権限で手動実行してください。
設定を保存後に表示されます。
退会状態
読み込み中…
退会を申請するオーナー専用
退会申請後、猶予期間(既定 30 日、1〜365 日まで指定可)の間は通常通り利用できます。猶予期間終了後にすべてのテナントデータが自動削除されます。
退会申請を取り消すオーナー専用
猶予期間中の退会申請を取り消し、テナントを通常状態に戻します。
データをエクスポートオーナー専用
テナントの全データ(ユーザー / グループ / 議事録 / 録音 / 課金履歴等)を JSON 形式でダウンロードします。GDPR 第 20 条 (データポータビリティ権) 対応。
サーバー起動状態
status.sh と同等の起動確認を API 経由で実行します。
| サービス | 状態 | 詳細 | エンドポイント | 応答時間 |
|---|---|---|---|---|
| 「状態を確認」ボタンで取得してください | ||||
PM2 プロセス状態
PM2 (ecosystem.config.cjs / ecosystem.dev.config.cjs) で管理している Node.js プロセスの一覧です。「状態を確認」ボタンでまとめて取得します。
| プロセス名 | 状態 | PID | 稼働時間 | 再起動回数 | メモリ |
|---|---|---|---|---|---|
| 「状態を確認」ボタンで取得してください | |||||
管理画面 & ドキュメント
Logto (認証 IdP)
| リンク | 説明 |
|---|---|
| http://localhost:3002 | Logto 管理コンソール (ローカル OSS) |
| docs.logto.io/ja | Logto 公式ドキュメント(日本語) |
MinIO (S3 互換ストレージ・録音)
| リンク | 説明 |
|---|---|
| http://localhost:9001 | MinIO 管理コンソール (デフォルト: minioadmin / minioadmin) |
| min.io/docs | MinIO 公式ドキュメント |
LiveKit (WebRTC SFU)
| リンク | 説明 |
|---|---|
| cloud.livekit.io | LiveKit Cloud ダッシュボード |
| docs.livekit.io | LiveKit 公式ドキュメント |
LiveKit Egress (録音 Worker)
| リンク | 説明 |
|---|---|
| github.com/livekit/egress | LiveKit Egress GitHub リポジトリ |
| docs.livekit.io/egress/ | Egress 公式ドキュメント |