🎯 OneComme OSC Router - ユーザーガイド

セットアップ、設定、使用方法の完全ステップバイステップガイド

📋 概要

OneComme OSC Routerは、YouTube、Bilibili、ニコニコからのチャットメッセージをOSC(Open Sound Control)データストリームに変換する強力なプラグインです。このガイドでは、セットアップと使用方法のすべてのステップを説明します。

📌 始める前に

以下のものが必要です:

  • OneCommeがインストールされ、配信プラットフォームのアカウントで設定されていること
  • OSC対応アプリケーション(VRChat、OBS、TouchDesignerなど)
  • OneCommeのインターフェースに関する基本的な知識

このガイドで学べること

📦 インストール

1
プラグインをダウンロード

GitHubリリースページにアクセスし、最新版(v0.8.0以降)をダウンロードしてください。

ダウンロードボタンが表示されたGitHubリリースページ
💡 ヒント: ZIPファイルをダウンロードしてください(ソースコードではありません)。リリースにはすべての依存関係が含まれているため、npm installは不要です!
2
OneCommeプラグインディレクトリに展開

ダウンロードしたZIPファイルをOneCommeのプラグインディレクトリに展開します。フォルダ構造は次のようになります:

OneComme/
└── Plugins/
    └── onecommeOSCrouter/
        ├── plugin.js
        ├── package.json
        ├── web-ui/
        ├── impl/
        ├── tests/
        └── node_modules/

スクリーンショット:OneCommeプラグインディレクトリにあるプラグインフォルダを示すエクスプローラー

スクリーンショット追加:plugin_folder_structure.png

⚠️ 重要: フォルダ名は必ずonecommeOSCrouter(大文字小文字を区別)にしてください。異なる名前では、OneCommeが検出できません。
3
OneCommeを再起動

新しいプラグインを検出するため、OneCommeを完全に閉じて再起動してください。単純な更新では機能しません—完全な再起動が必要です。

  1. OneCommeを閉じる(ファイル → 終了 または Alt+F4)
  2. OneCommeを再起動
  3. コンソールでプラグインのロードメッセージを確認

スクリーンショット:プラグインが正常にロードされたことを示すOneCommeコンソール

手動キャプチャ必要:console_plugin_loaded.png

4
プラグインを有効化

OneCommeのプラグイン設定に移動し、「OneComme OSC Router」を有効化します:

  1. OneComme設定を開く
  2. プラグインタブに移動
  3. リストからOneComme OSC Routerを見つける
  4. 有効化チェックボックスをチェック
  5. 適用/保存をクリック

スクリーンショット:OSC Routerが有効化されたOneCommeプラグイン設定

スクリーンショット追加:enable_plugin.png

✅ 成功! すべてが正しく設定されていれば、プラグインが起動したことがOneCommeコンソールに表示されます。

🚀 初回起動

5
Webインターフェースにアクセス

プラグインが有効化されたら、Webブラウザを開いて次のURLにアクセスします:

http://localhost:19101

OneComme OSC Routerのコントロールパネルが表示されます。

初回ロード時のWebインターフェースの概要タブ
💡 ブックマークしよう! 簡単にアクセスできるよう、http://localhost:19101をブックマークに保存してください。プラグインが有効化されている間、OneComme実行中はいつでもアクセスできます。
6
デフォルト設定を確認

プラグインには、VRChat向けに最適化された適切なデフォルト設定があります:

設定 デフォルト値 説明
OSCホスト 127.0.0.1 ローカルマシン(同じコンピュータ)
OSCポート 19100 標準VRChat OSCポート
Web UIポート 19101 コントロールパネルアクセス
メッセージ形式 バイナリ 標準OSC形式

設定タブをクリックして、必要に応じてこれらを確認・変更してください。

デフォルト設定を示す設定タブ

🖥️ Webインターフェースツアー

Webインターフェースには4つのメインタブがあります。それぞれを見ていきましょう:

📊 概要タブ

リアルタイム監視のためのダッシュボード:

スクリーンショット:統計と接続ステータスが表示された概要タブ

スクリーンショット追加:overview_tab_detailed.png

📜 ルールタブ

メッセージルーティングルールの作成と管理:

ルールリストと管理オプションが表示されたルールタブ

📋 ログタブ

メッセージフローをリアルタイムで監視:

メッセージ履歴とフィルタリングが表示されたログタブ

⚙️ 設定タブ

プラグインの動作を設定:

すべての設定オプションが表示された設定タブ

🎨 カスタムルーティングルールの作成

ルーティングルールを使用すると、特定のタイプのメッセージを異なるOSCエンドポイントに送信できます。ステップバイステップでルールを作成しましょう。

7
ルールビルダーを開く
  1. ルールタブをクリック
  2. 「新規ルール追加」ボタンをクリック
  3. ルールビルダーモーダルが表示されます
ルールビルダーモーダル(空のフォーム)
8
基本ルール情報を設定

基本情報を入力します:

  • ルール名:説明的な名前(例:「高額スーパーチャット」)
  • 説明:このルールが何をするか(オプションですが推奨)
  • エンドポイント:メッセージが送信されるOSCアドレス(例:/chat/superchats
  • 有効:すぐに有効化する場合はチェック
基本情報が入力されたルールビルダー
9
条件を追加

条件は、このルールに一致するメッセージを決定します。例:20ドル以上のスーパーチャットをルーティング

  1. 「条件グループを追加」をクリック
  2. プラットフォーム:YouTubeを選択
  3. メッセージタイプ:superchatを選択
  4. 「条件を追加」をクリック
  5. 設定:
    • フィールド:amount
    • 演算子:greater_than
    • 値:20
条件が設定されたルールビルダー
💡 利用可能な演算子:
  • equals - 完全一致
  • not_equals - 不一致
  • contains - 文字列を含む
  • not_contains - 文字列を含まない
  • greater_than / less_than - 数値比較
  • regex - 正規表現マッチ
  • exists / not_exists - フィールドの存在
10
フィールドマッピングを設定(オプション)

フィールドマッピングを使用すると、OSCメッセージに含めるデータフィールドをカスタマイズできます。指定しない場合、すべてのフィールドが送信されます。

マッピング例:

  • usernamename
  • message_textcomment
  • donation_amountamount
  • currency_codecurrency

スクリーンショット:フィールドマッピングが設定されたルールビルダー

スクリーンショット追加:rule_builder_mappings.png

11
ルールをテスト

保存する前に、サンプルデータでルールをテストします:

  1. 「ルールをテスト」ボタンをクリック
  2. テストパネルにサンプルメッセージが表示されます
  3. ルールに一致するメッセージを確認
  4. 必要に応じて条件を調整

スクリーンショット:一致したメッセージを示すルールテスト結果

スクリーンショット追加:rule_test_results.png

12
保存と有効化

ルールに満足したら:

  1. 「ルールを保存」をクリック
  2. ルールがルールリストに表示されます
  3. スイッチを切り替えていつでも有効/無効化
  4. ルールは自動的にディスクに保存されます
✅ ルール有効! ルールはメッセージを処理しています。ログタブで動作を確認してください。

スクリーンショット:新しく作成されたルールを示すルールリスト

スクリーンショット追加:rule_saved_in_list.png

ルール例

開始に役立つ便利なルール例:

ルール名 目的 条件
VIPメンバーのみ チャンネルメンバーからのメッセージをルーティング is_member equals true
Bilibili高額ギフト 価値の高いBilibiliギフトをハイライト coins greater_than 100
キーワードフィルタ 特定のキーワードをキャッチ comment contains \"VRChat\"
スパムブロック スパムメッセージをフィルタ comment regex \"\\b(spam|bot)\\b\"(NOT論理)

🎮 VRChat統合

プラグインはすぐにVRChat向けに最適化されています。ワールド内でチャットメッセージを表示する方法:

📌 前提条件:
  • VRChatがインストールされ実行中
  • VRChatのOSCシステムに関する基本的な理解
  • OSCメッセージを受信できるアバターまたはワールド

ステップ1:VRChat OSCを有効化

VRChatのアクションメニューで:

  1. Optionsを開く
  2. OSCタブに移動
  3. OSCを有効化
  4. 問題がある場合はReset Configをクリック

スクリーンショット:VRChat OSC設定メニュー

スクリーンショット追加:vrchat_osc_settings.png

ステップ2:接続を確認

プラグインはデフォルトでポート19100(VRChatの標準ポート)にメッセージを送信します。確認方法:

  1. OneCommeで配信を開始
  2. 誰かにチャットメッセージを送ってもらう
  3. プラグインのログタブで送信メッセージを確認
  4. ログで/onecomme/youtube/comment(または類似)を探す

スクリーンショット:VRChatに送信されるメッセージを示すログ

スクリーンショット追加:logs_vrchat_messages.png

ステップ3:アバター/ワールドパラメータを設定

VRChatでメッセージを表示するには、OSCアドレスをリッスンするアバターパラメータまたはワールドスクリプトが必要です。

デフォルトOSCエンドポイント:

💡 アバタークリエイター向け: UdonまたはアバターパラメータでこれらのOSCアドレスをリッスンしてください。メッセージデータはOSCペイロード内でJSONとして送信されます。

VRChat接続のトラブルシューティング

メッセージがVRChatに表示されない場合:

🔧 トラブルシューティング

プラグインが読み込まれない

症状:プラグインがOneCommeのプラグインリストに表示されない

解決策:

  • フォルダ名が正確にonecommeOSCrouter(大文字小文字を区別)であることを確認
  • プラグインフォルダのルートにplugin.jsが存在することを確認
  • node_modulesフォルダが存在することを確認(リリースに含まれているはず)
  • OneCommeの完全な再起動を試す(更新ではなく)
  • OneCommeコンソールでエラーメッセージを確認

Webインターフェースが読み込まれない

症状:http://localhost:19101で「このページに到達できません」と表示される

解決策:

  • OneComme設定でプラグインが有効になっていることを確認
  • 他のアプリケーションがポート19101を使用していないか確認
  • 別のブラウザからアクセスを試す
  • OneCommeコンソールでWebサーバー起動メッセージを確認
  • Windowsファイアウォール設定でブロックされたポートを確認

メッセージが対象アプリケーションに到達しない

症状:ログにメッセージ送信が表示されるが、対象アプリが受信しない

解決策:

  • 対象アプリケーションが正しいポートでリッスンしていることを確認
  • 設定のOSCホスト/ポートが対象アプリと一致することを確認
  • バイナリと文字列のメッセージ形式を切り替えてみる
  • ファイアウォールがUDPトラフィックをブロックしていないか確認
  • npm run monitorを使用してOSCメッセージが送信されていることを確認
  • OSC設定変更後に対象アプリケーションを再起動

ルールがトリガーされない

症状:ルールを作成したがメッセージがルーティングされない

解決策:

  • ルールが有効になっていることを確認(トグルスイッチがオン)
  • ルールテスト機能を使用して条件を検証
  • 条件ロジック(AND vs OR)を確認
  • フィールド名が受信メッセージ構造と一致することを確認
  • テストのために条件を簡素化(1つの条件以外すべて削除)
  • ログタブでどのルールが一致しているか確認

ヘルプを得る

まだ問題が発生している場合:

🚀 高度な使用法

OSCメッセージのテスト

プラグインにはtests/ディレクトリにテストユーティリティが含まれています:

# すべてのテストを実行
npm test

# 設定の永続性をテスト
npm run test:config

# OSC信頼性をテスト
npm run test:osc

# メッセージ形式をテスト
npm run test:formats

# リアルタイムOSCモニター
npm run monitor

設定ファイル

プラグイン設定はローカルに保存されます:

💡 プロのヒント: バッチルール作成のためにrouting-rules.jsonを直接編集し、Webインターフェースでリロードできます。

OSCメッセージ形式

メッセージは次の構造のJSONとして送信されます:

{
  "timestamp": "2024-09-20T08:30:01.123Z",
  "service": "youtube",
  "type": "superchat",
  "user": {
    "id": "UC1234567890",
    "name": "StreamerFan123",
    "display_name": "StreamerFan123"
  },
  "message": {
    "content": "素晴らしい配信!",
    "id": "msg_12345"
  },
  "platform_data": {
    "amount": "5.00",
    "currency": "USD",
    "is_member": true
  },
  "processing": {
    "rule_matched": "High Value Donations",
    "endpoint": "/alerts/bigdonation"
  }
}

REST API

プラグインはhttp://localhost:19101/api/*で完全なREST APIを公開しています:

エンドポイント メソッド 説明
/api/rules GET すべてのルールをリスト
/api/rules POST 新しいルールを作成
/api/rules/:id PUT ルールを更新
/api/rules/:id DELETE ルールを削除
/api/config/full GET 設定を取得
/api/logs GET メッセージログを取得
/api/status GET システムステータス

パフォーマンスのヒント