# ルーター

> ワークフローの流れを、名前を付けた 1 つ以上のルートに振り分けます。ルートを自分で選ぶか、複数を同時に有効にするか、受け取ったデータの条件で決めます。

Source: https://nodaro.ai/ja/docs/nodes/automate/router

**ルーター**（Router）ノードは、ワークフローの流れを、名前を付けた 1 つ以上のルートに振り分けます。入力は、有効なすべてのルートにそのまま渡され、無効なルートにあるノードはスキップされます。**ラジオ**モードでは有効なルートを自分で選び、**チェックボックス**モードでは複数のルートを同時に有効にし、**条件付き**モードでは受け取ったデータの条件で決めます。このノードは無料です。

- Found in: Automate › Logic & Data
- Output: data
- API type: `router`

## 使いどころ
- 何も切断せずに、2 つの処理の流れを切り替えます。たとえば、[**動画をリサイズ**（Resize Video）](https://nodaro.ai/docs/nodes/video/resize-video)で作る 9:16 のリールと 1:1 の投稿を切り替えます。
- 2 つのルートを有効にして、同じ画像から動画とサムネイルを 1 回の実行で作ります。
- データが必要とするときだけ、ステップを実行します。たとえば、`language` が `en` のときは吹き替えの分岐をスキップします。
- 複数のルートを同時に有効にして、A/B のバリエーションを試します。

## クイックスタート
### ノードを追加する
キャンバス上で Tab を押し、**自動化 › ロジックとデータ › ルーター**を選びます。

### 入力を接続する
後続に渡したい値を**入力**に接続します。たとえば、[**動画生成**（Generate Video）](https://nodaro.ai/docs/nodes/video/generate-video)の結果です。テキスト、JSON、画像、動画、オーディオを受け付けます。

### ルートを設定する
設定パネルを開き、**モード**を選びます。ルートの名前を変更し、ルートを増やすには**ルートを追加**をクリックします。各ルートには、ノードの右側にそれぞれ専用の出力があります。

### 分岐を接続する
各ルートの出力を、その分岐の最初のノードに接続します。

### 有効なルートを選んで実行する
**ラジオ**モードと**チェックボックス**モードでは、ノード上または設定パネルでルートをクリックして、有効と無効を切り替えます。**実行**をクリックします。実行されるのは、有効なルートにある分岐だけです。

Workflow: ラジオモードのルーターが、動画をリールの分岐に送ります。投稿の分岐は、ルートを切り替えるまでスキップされます。

- 動画生成 → ルーター (入力)
- ルーター → 動画をリサイズ (リール)
- ルーター → 動画をリサイズ (投稿)

## 入力と出力
| 入力／出力 | 受け取るもの／送るもの | 説明 |
| --- | --- | --- |
| **入力** | テキスト、JSON、画像、動画、オーディオ | 振り分ける値です。 |
| ルートごとに 1 つの出力 | 同じ値 | 有効なルートは、入力をそのまま渡します。無効なルートは何も送りません。 |

## 設定
| 設定 | 説明 |
| --- | --- |
| **モード** | デフォルトの**ラジオ（1 つだけ有効）**では、常にちょうど 1 つのルートが有効になります。**チェックボックス（任意の組み合わせ）**では、いくつのルートでも有効にできます。**条件付き（ルールベース）**では、受け取ったデータから実行時に決まります。 |
| **ルート** | 名前の付いたルートです。新しいルーターには、**ルート A** と**ルート B** があります。ルートの名前を変更すると、その名前がキャンバス上の出力のラベルになります。名前はラベルとしてだけ使われます。**ルートを追加**で、最大 10 個まで追加できます。ラジオモードとチェックボックスモードには 2 つ以上のルートが必要で、条件付きモードは 1 つでも動作します。 |

**チェックボックス**から**ラジオ**に切り替えたときに複数のルートが有効になっていた場合、有効なまま残るのは、最初の有効なルートだけです。有効なルートがない場合、ノードには**なし**のバッジが表示されます。

## 条件付きモード
**条件付き（ルールベース）**モードでは、データがルートを決めます。パネルの**上流のサンプル（最初の項目）**には、受け取った最初の項目が表示されるので、そのフィールドを確認できます。

1. **条件グループ**の各グループには、1 つ以上の条件があります。条件は、フィールド、演算子、値で構成されます。**条件を追加**をクリックして条件を増やし、**AND** か **OR** を選んで条件の組み合わせ方を決めます。
2. **有効にするルート**で、グループの条件が満たされたときに、そのグループが有効にするルートにチェックを入れます。
3. 別のルールを作るには、**グループを追加**をクリックします。初めて条件付きモードに切り替えると、最初のルートを有効にするグループが 1 つ用意された状態で始まります。

条件の仕組みは[**リストをフィルター**（Filter List）](https://nodaro.ai/docs/nodes/automate/filter-list)と同じで、演算子も、**前回の実行以降**などの日付のショートカットも同じです。

グループの組み合わせ方：

- 一致したグループのうち、1 つ以上がそのルートを有効にすると、そのルートが実行されます。複数のグループが有効にしたルートも、実行されるのは 1 回です。
- 一致するグループがない場合、すべてのルートが無効のままになり、ルーターの後ろのノードはスキップされます。
- グループのないルーターは、どのルートも有効にしません。

入力は、JSON か、JSON として読み取れるテキストである必要があります。スクレイピングしたデータのフィールドでルートを振り分けるには、[**Web スクレイピング**（Web Scrape）](https://nodaro.ai/docs/nodes/automate/web-scrape)を直接接続します。データの一部でルートを振り分けるには、**出力タイプ**を **JSON** にした[**フィールドを抽出**（Extract Field）](https://nodaro.ai/docs/nodes/automate/extract-field)を経由させます。

## クレジット
ルーターは無料です。スキップされた分岐のノードは実行されないため、料金はかかりません。

## ヒント
- **つなぎ直さずに切り替える**：両方の分岐を接続したまま、ラジオモードでルートを切り替えます。ワークフローは、どちらのバージョンでもすぐに実行できる状態のままです。
- **ルートに名前を付ける**：「リール」や「吹き替え」という名前のルートは、「ルート A」よりもキャンバス上で流れを追いやすくなります。
- **空のルートをオフスイッチとして使う**：後ろにノードがないルートは何もしません。そのため、「オフ」という名前のルートをラジオモードで選ぶと、分岐全体を止めておけます。

## Frequently asked questions

### つなぎ直さずに、ワークフローの 2 つのバージョンを切り替えるには、どうすればよいですか？

ラジオモードのルーターを追加して、バージョンごとに 1 つのルートを作り、各ルートをそれぞれの分岐に接続します。実行する前にルートを選びます。実行されるのはその分岐だけで、ほかのルートにあるノードはスキップされます。

### ルーターで、複数の分岐を同時に実行できますか？

はい。チェックボックスモードでは、ルートを自由に組み合わせて有効にできます。有効なルートは、すべて同じ実行の中で実行されます。

### 条件付きモードでは、どのルートを実行するかをどのように決めますか？

条件グループが、受け取った JSON のフィールドを判定します。グループの条件が満たされると、そのグループは「有効にするルート」でチェックしたルートを有効にします。一致したすべてのグループの結果が合算され、一致するグループがない場合は、どのルートも実行されません。

### 無効なルートにあるノードは、どうなりますか？

スキップされます。その後ろにあるノードもスキップされます。後ろにノードがないルートは、単に何もしません。

### ルーターノードにクレジットはかかりますか？

いいえ。ルーターは無料です。どの分岐を実行するかを決めるだけです。
