> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/workflows/ja/burokku/blocks/notifications/email-notification.md).

# メール通知

## v2

この **メール通知** このブロックを使用すると、ワークフローの一部としてメール通知を送信できます。

## このブロックの仕組み

### メールプロバイダーのオプション

このブロックは、ドロップダウンセレクターを介して2つのメール配信方法をサポートしています:

1. **Roboflow 管理 API キー（デフォルト）** - SMTP の設定は不要です。メールは Roboflow のプロキシサービス経由で送信されます:
   * **簡単なセットアップ** - 件名、メッセージ、宛先を指定するだけです
   * **安全** - 認証にはワークフローの API キーが使用されます
   * **SMTP サーバーは不要**
2. **カスタム SMTP** - 自分の SMTP サーバーを使用します:
   * メール配信を完全に制御できます
   * SMTP サーバーの設定（ホスト、ポート、認証情報）が必要です
   * CC および BCC の宛先をサポート

### カスタマイズ可能なメール内容

* **件名:** 件名欄でメールの件名を設定します。
* **メッセージ:** メッセージ欄を使ってメール本文を作成します。 **メッセージは、ワークフロー実行中に生成されたデータでパラメータ化できます。以下を参照してください&#x20;*****動的パラメーター*****&#x20;セクション。**
* **宛先（To、CC、BCC）**: 以下を使用して、メールの受信者を定義します `receiver_email`, `cc_receiver_email`、および `bcc_receiver_email` のプロパティ。単一のメールアドレスまたはリストを入力できます。

### 動的パラメーター

メッセージの内容は、ワークフロー実行結果でパラメータ化できます。動的パラメーターを使用したメッセージの例を確認してください:

```
message = "これは通知の例です。予測クラス: {{ $parameters.predicted_classes }}"
```

メッセージパラメーターは、適切なデータセレクターを設定することで Workflows Execution Engine によって配信されます。 `message_parameters` フィールドの例:

```
message_parameters = {
    "predicted_classes": "$steps.model.predictions"
}
```

データの選択だけが唯一の方法ではありません。データはブロック内で処理することもできます。以下の例では、予測クラス名を抽出したいとします。変換を適用できます **各パラメーターに対して** を設定して `message_parameters_operations`:

```
message_parameters_operations = {
    "predictions": [
        {"type": "DetectionsPropertyExtract", "property_name": "class_name"}
    ]
}
```

その結果、送信されるメールでは次のようになります:

```
これは通知の例です。予測クラス: ["class_a", "class_b"]。
```

### カスタム SMTP サーバーの使用

独自の SMTP サーバーを使用するには、 `email_provider` のドロップダウンから「Custom SMTP」を選択し、以下のパラメーターを設定します:

* `smtp_server` - 使用する SMTP サーバーのホスト名
* `sender_email` - 送信者として使用するメールアカウント
* `sender_email_password` - 送信者メールアカウントのパスワード
* `smtp_port` - SMTP サービスのポート - デフォルトは `465`

ブロック **強制します** SMTP 経由の SSL を。

カスタム SMTP サーバーを使用する典型的なシナリオには、Google の SMTP サーバー経由でメールを送信することが含まれます。以下を参照して [Google のチュートリアル](https://support.google.com/a/answer/176600?hl=en) ブロックを正しく設定してください。

{% hint style="info" %}
**2 段階認証が有効になっている場合、GMAIL のパスワードは使用できません**

メールサービスプロバイダーとしてカスタム SMTP サーバーを選択する GMAIL ユーザーは、 [アプリケーションパスワード](https://support.google.com/accounts/answer/185833) を設定して、2 段階認証で保護されたアカウントに関する問題を回避する必要があります。なお、 **アプリケーションパスワードは保護して保持する必要があります** - パスワードはワークフロー入力として送信し、呼び出し元が都度提供することを推奨します。ワークフロー定義に保存するのは避けてください。
{% endhint %}

### クールダウン

このブロックは `cooldown_seconds` （これは **デフォルトで `5` 秒**）を受け付け、意図しない通知の連続送信を防ぎます。必要に応じて調整し、 `0` を設定するとクールダウンなしを示します。

クールダウン期間中に、このステップが連続実行されると `throttling_status` 出力が `True` に設定され、通知は送信されません。

{% hint style="warning" %}
**クールダウンの制限**

現在のクールダウン実装は動画処理に限定されています。HTTP サービスの背後で実行されるワークフロー（Roboflow Hosted API、Dedicated Deployment、または self-hosted `inference` サーバー）でこのブロックを使用しても、HTTP リクエストの処理には影響しません。
{% endhint %}

### 添付ファイル

メールと一緒に送信する添付ファイルを指定できます。添付ファイルは、専用ブロックまたは画像出力から実行時に生成できます。

**サポートされる添付ファイルの種類:**

* **CSV/テキストファイル** : 次のようなブロックから [CSV Formatter](/workflows/ja/burokku/blocks/data-storage/csv-formatter.md)
* **画像** : 可視化ブロックからの任意の画像出力（自動的に JPEG に変換されます）
* **バイナリデータ** : 互換性のあるブロックからの任意のバイト出力

添付ファイルを含めるには、添付ファイル名をキーとして指定し、ブロックの出力を参照します:

```
attachments = {
    "report.csv": "$steps.csv_formatter.csv_content",
    "detection.jpg": "$steps.bounding_box_visualization.image"
}
```

**注意:** 画像の添付ファイルは自動的に JPEG 形式に変換されます。ファイル名に `.jpg` または `.jpeg` の拡張子が含まれていない場合は、自動的に追加されます。

### 非同期実行

を設定します。 `fire_and_forget` を True に設定すると、メールはバックグラウンドで送信され、メール送信を待たずにワークフローを続行できます。この場合、 `error_status` 出力には依存できず、これは常に `False`に設定されるため、 **設定を `fire_and_forget=False` にしてデバッグすることを推奨します**.

### 実行時パラメーターに基づく通知の無効化

場合によっては、メール通知ブロックを手動で無効にすると便利です。これは `disable_sink` フラグをワークフロー入力への参照として保持することで可能です。このように設定すると、呼び出し元は合意した入力パラメーターを送ることで必要に応じて sink を無効化できます。

## 一般的な使用例

* このブロックを\[ブロックタイプに基づく目的]に使用します

## 他のブロックへの接続

このブロックの出力は、ワークフロー内の他のブロックに接続できます。

### 型識別子

ステップで次の識別子を使用してください `"type"` フィールド： `roboflow_core/email_notification@v2` ワークフローにこのブロックをステップとして追加するには。

### プロパティ

| **名前**                          | **型**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | **説明**                                                                  | 参照 |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- | -- |
| `name`                          | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | このステップの一意の識別子を入力してください。                                                 | ❌  |
| `email_provider`                | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | メール配信方法を選択します: Roboflow の管理サービスを使用するか、独自の SMTP サーバーを設定します。              | ❌  |
| `subject`                       | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | メッセージの件名。                                                               | ❌  |
| `receiver_email`                | `Union[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 送信先メールアドレス。                                                             | ✅  |
| `message`                       | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 送信するメッセージの内容。                                                           | ❌  |
| `message_parameters`            | `Dict[str, Union[bool, float, int, str]]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | メッセージ内で使用するデータ。                                                         | ✅  |
| `message_parameters_operations` | `Dict[str, List[Union[ClassificationPropertyExtract, ConvertDictionaryToJSON, ConvertImageToBase64, ConvertImageToJPEG, DetectionsFilter, DetectionsOffset, DetectionsPropertyExtract, DetectionsRename, DetectionsSelection, DetectionsShift, DetectionsToDictionary, Divide, ExtractDetectionProperty, ExtractFrameMetadata, ExtractImageProperty, LookupTable, Multiply, NumberRound, NumericSequenceAggregate, PickDetectionsByParentClass, RandomNumber, SequenceAggregate, SequenceApply, SequenceElementsCount, SequenceLength, SequenceMap, SortDetections, StringMatches, StringSubSequence, StringToLowerCase, StringToUpperCase, TimestampToISOFormat, ToBoolean, ToNumber, ToString]]]` | メッセージパラメーターに対して実行される前処理操作。                                              | ❌  |
| `sender_email`                  | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | メッセージの送信に使用するメール。                                                       | ✅  |
| `smtp_server`                   | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 使用するカスタム SMTP サーバー。                                                     | ✅  |
| `sender_email_password`         | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | SMTP サーバーへの認証時に使用する送信者メールのパスワード。                                        | ✅  |
| `cc_receiver_email`             | `Optional[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | CC のメールアドレス。                                                            | ✅  |
| `bcc_receiver_email`            | `Optional[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | BCC のメールアドレス。                                                           | ✅  |
| `smtp_port`                     | `整数`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | SMTP サーバーのポート。                                                          | ❌  |
| `fire_and_forget`               | `bool`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | ブロックを非同期（True）で実行してワークフローを高速化するか、同期（False）で実行してデバッグとエラー処理を行うかを示すブールフラグ。 | ✅  |
| `disable_sink`                  | `bool`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | ブロックの実行を無効にするブールフラグ。                                                    | ✅  |
| `cooldown_seconds`              | `整数`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | フォローアップ通知を送信できるようになるまでの秒数。                                              | ✅  |

この **参照** 列は、で利用可能な動的値を使ってプロパティをパラメータ化できる可能性を示します `ワークフロー` 実行時。参照 *バインディング* 詳細は。

### ランタイム互換性

`soft` - ランタイム `hosted_serverless`, `dedicated_deployment`；実行 `リモート` : クールダウン／レート制限タイマーはプロセスメモリに保存されます。ステートレスまたは複数レプリカのHTTPランタイムでリモートステップ実行を行う場合、各リクエストごとに新しいワーカーが割り当てられるため、クールダウンはスロットリングしません。クールダウンが文書どおりに機能するのは、永続的なWebRTCセッションでのローカルステップ実行のみです。

### 入力と出力のバインディング

利用可能な接続は、そのバインディング種別によって異なります。どのバインディング種別が `メール通知` のバージョン `v2` あるか確認してください。

<details>

<summary>入力と出力のバインディング</summary>

* 入力
  * `receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 送信先メールアドレス。
  * `message_parameters` ([*`*`*](/workflows/ja/gaido/developer-guide/kinds/wildcard.md)) : メッセージ内で使用するデータ。
  * `sender_email` ([*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)) : メッセージの送信に使用するメール。
  * `smtp_server` ([*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)) : 使用するカスタム SMTP サーバー。
  * `sender_email_password` (*Union\[*[*`secret`*](/workflows/ja/gaido/developer-guide/kinds/secret.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : SMTP サーバーへの認証時に使用する送信者メールのパスワード。
  * `cc_receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : CC のメールアドレス。
  * `bcc_receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : BCC のメールアドレス。
  * `attachments` (*Union\[*[*`bytes`*](/workflows/ja/gaido/developer-guide/kinds/bytes.md)*,* [*`image`*](/workflows/ja/gaido/developer-guide/kinds/image.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 添付ファイル。
  * `fire_and_forget` ([*`boolean`*](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブロックを非同期（True）で実行してワークフローを高速化するか、同期（False）で実行してデバッグとエラー処理を行うかを示すブールフラグ。
  * `disable_sink` ([*`boolean`*](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブロックの実行を無効にするブールフラグ。
  * `cooldown_seconds` ([*`整数`*](/workflows/ja/gaido/developer-guide/kinds/integer.md)) : フォローアップ通知を送信できるようになるまでの秒数。
* 出力
  * `error_status` ([`boolean`](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブールフラグ。
  * `throttling_status` ([`boolean`](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブールフラグ。
  * `message` ([`string`](/workflows/ja/gaido/developer-guide/kinds/string.md)) : 文字列値。

</details>

<details>

<summary>JSON 定義の例</summary>

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/email_notification@v2",
	    "email_provider": "Roboflow Managed API Key",
	    "subject": "ワークフロー警告",
	    "receiver_email": "receiver@gmail.com",
	    "message": "直近5分間で {{ $parameters.num_instances }} 件のインスタンスを検出しました",
	    "message_parameters": {
	        "predictions": "$steps.model.predictions",
	        "reference": "$inputs.reference_class_names"
	    },
	    "message_parameters_operations": {
	        "predictions": [
	            {
	                "property_name": "class_name",
	                "type": "DetectionsPropertyExtract"
	            }
	        ]
	    },
	    "sender_email": "sender@gmail.com",
	    "smtp_server": "$inputs.smtp_server",
	    "sender_email_password": "$inputs.email_password",
	    "cc_receiver_email": "cc-receiver@gmail.com",
	    "bcc_receiver_email": "bcc-receiver@gmail.com",
	    "smtp_port": 465,
	    "attachments": {
	        "report.cvs": "$steps.csv_formatter.csv_content"
	    },
	    "fire_and_forget": "$inputs.fire_and_forget",
	    "disable_sink": false,
	    "cooldown_seconds": "$inputs.cooldown_seconds"
	}
```

</details>

## v1

SMTP サーバー経由でメール通知を送信します。件名はカスタマイズ可能で、動的なワークフローデータパラメーターを含むメッセージ本文、宛先リスト（To、CC、BCC）、ファイル添付、クールダウンによるスロットリング、そして警告、レポート、通信ワークフロー向けのオプションの非同期バックグラウンド実行をサポートします。

## このブロックの仕組み

このブロックは SMTP サーバー経由でメール通知を送信し、ワークフローの実行結果をメール内容に統合します。このブロックは次のことを行います:

1. が無効かどうかを確認します `disable_sink` フラグ（無効なら、送信せずに即時終了します）
2. クールダウン期間を検証します（有効な場合は、以下の範囲内の通知を制限します `cooldown_seconds` 直前に送信されたメールからの時間、スロットリング状態を返します）
3. 動的パラメーターを処理してメールメッセージを整形します（次のようなプレースホルダーを置き換えます `{{ $parameters.parameter_name }}` を使用して実際のワークフローデータに置換します `message_parameters`)
4. UQL 操作を任意で適用し、挿入前にパラメーター値を変換します（例: 検出からクラス名を抽出、指標を計算、データをフィルタリング） `message_parameters_operations`
5. からメールの宛先リストを構築します `receiver_email` （必須）、 `cc_receiver_email`、および `bcc_receiver_email` （単一のメールアドレスまたはリストをサポート）
6. 参照されたワークフローステップの出力から内容を取得し、メール添付ファイルとしてエンコードして添付ファイルを処理します
7. 設定済みサーバーへの SSL 保護された SMTP 接続を確立します（送信者メールとパスワードで認証）
8. に応じてメールを同期または非同期で送信します `fire_and_forget` 設定:
   * **同期モード** (`fire_and_forget=False`) : メール送信完了を待機し、デバッグ用に実際のエラー状態を返します
   * **非同期モード** (`fire_and_forget=True`) : バックグラウンドタスクでメールを送信し、ワークフローは即座に続行され、error\_status は常に False です
9. 成功、スロットリング、またはエラーを示すステータス出力を返します

このブロックは、実行時にワークフローデータで置換されるパラメータープレースホルダーを通じて動的なメッセージ内容をサポートします。メッセージパラメーターは、ワークフロー出力の生データ、または UQL 操作による変換データ（例: プロパティ抽出、件数計算、値のフィルタリング）を使用できます。添付ファイルは、文字列またはバイナリ内容を生成する他のワークフローブロックから取得されます（例: レポート用の CSV Formatter、スクリーンショット用の画像出力）。クールダウンは、送信間の最小時間を強制することで通知スパムを防ぎますが、これは動画処理ワークフローにのみ適用されます（HTTP リクエストコンテキストには適用されません）。

## 要件

**SMTP サーバー設定**: 以下の設定を持つ SMTP サーバーへのアクセスが必要です:

* `smtp_server`: SMTP サーバーのホスト名（例: `smtp.gmail.com` （Google の場合）
* `sender_email`: 送信者として使用するメールアドレス
* `sender_email_password`: 送信者メールアカウントのパスワード（または Gmail の 2FA 用アプリケーション固有パスワード）
* `smtp_port`: SMTP ポート（デフォルトは `465` （SSL 用）

**2FA を使用する Gmail ユーザー**: Gmail の 2 段階認証が有効な場合は、 [アプリケーション固有のパスワード](https://support.google.com/accounts/answer/185833) を通常の Gmail パスワードの代わりに使用する必要があります。アプリケーションパスワードは安全に保管し、ワークフロー定義に保存するのではなく、ワークフロー入力経由で提供してください。

**クールダウンの制限**: クールダウン機構（`cooldown_seconds`）は動画処理ワークフローにのみ適用されます。HTTP リクエストコンテキスト（Roboflow Hosted API、Dedicated Deployment、または self-hosted サーバー）では、各リクエストは独立しているためクールダウンは効果がありません。

## 一般的な使用例

* **アラート通知**: 特定の条件が検出されたときにメールアラートを送信します（例: 不正なオブジェクトを検出したらセキュリティチームに通知、異常検知時にオペレーターに通知、検出数がしきい値を超えたらアラート送信）。これにより、リアルタイム監視とインシデント対応が可能になります
* **ワークフロー実行レポート**: ワークフロー結果を含む定期的またはイベント駆動型のレポートを生成してメール送信します（例: 検出統計の毎日サマリーレポート、バッチ処理完了通知、パフォーマンス指標の要約）。これにより、自動レポート作成と文書化が可能になります
* **検出サマリー**: 集計統計を含む検出結果のメールサマリーを送信します（例: 検出されたオブジェクトの一覧をメール送信、件数と分類を送信、検出信頼度の要約を含める）。これにより、関係者がワークフローの出力を把握し続けられます
* **エラーおよびステータス通知**: ワークフロー実行のステータスとエラーについて管理者に通知します（例: ワークフロー失敗時にアラート送信、処理完了の通知、システム健全性の問題を報告）。これにより、本番環境での監視とデバッグが可能になります
* **データエクスポート通知**: 生成されたデータエクスポートやレポートをメール送信します（例: CSV Formatter からの CSV レポートを添付、エクスポートされた検出データを送信、整形済み分析サマリーを含める）。これにより、自動データ配布とアーカイブが可能になります
* **複数受信者への更新**: CC/BCC を使用して複数の関係者に同時に通知を送信します（例: 検出についてチームメンバーに通知、複数部門へ更新を送信、可視性のために CC 付きでレポートを配布）。これにより、効率的な多者間コミュニケーションが可能になります

## 他のブロックへの接続

このブロックはワークフローステップからデータを受け取り、メール通知を送信します:

* **検出または解析ブロックの後** （例: オブジェクト検出、インスタンスセグメンテーション、分類）を使用して、オブジェクトが検出されたり、分類が行われたり、しきい値を超えたりしたときにアラートや要約を送信し、リアルタイム通知ワークフローを可能にします
* **データ処理ブロックの後** （例: Expression、Property Definition、Detections Filter）を使用して、計算済み指標、変換済みデータ、またはフィルタ済み結果をメール通知に含め、処理済みデータを使ったカスタムレポートを可能にします
* **フォーマッターブロックの後** （例: CSV Formatter）を使用して、整形済みレポートやエクスポートをメールに添付し、構造化データと分析結果の自動配布を可能にします
* **条件分岐ワークフローでは** （例: Continue If）を使用して、特定の条件が満たされた場合のみ通知を送信し、イベント駆動のアラートとレポートを可能にします
* **集計ブロックの後** （例: Data Aggregator）を使用して、定期的な分析サマリーや統計レポートをメール送信し、定期レポートとトレンド分析を可能にします
* **監視ワークフローでは** ステータス更新、エラー通知、またはヘルスチェックレポートを送信し、自動システム監視とインシデント管理を可能にします

### 型識別子

ステップで次の識別子を使用してください `"type"` フィールド： `roboflow_core/email_notification@v1` ワークフローにこのブロックをステップとして追加するには。

### プロパティ

| **名前**                          | **型**                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | **説明**                                                                                                                                                                                                                                                                 | 参照 |
| ------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -- |
| `name`                          | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | このステップの一意の識別子を入力してください。                                                                                                                                                                                                                                                | ❌  |
| `subject`                       | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 通知のメール件名。これは、メールヘッダーと受信者の受信トレイの件名欄に表示されるテキストです。通知の目的を説明する静的なテキストを含めることができます（例: 'Workflow Alert'、'Detection Summary'、'Daily Report'）。                                                                                                                                   | ❌  |
| `sender_email`                  | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | 通知の送信者として使用するメールアドレス。このメールアカウントは、設定済みの SMTP サーバーにアクセスでき、sender\_email\_password で提供されるパスワードを持っている必要があります。2FA が有効な Gmail の場合、これはアプリケーション固有のパスワードが設定された Gmail アドレスである必要があります。                                                                                            | ✅  |
| `receiver_email`                | `Union[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | 通知の主要受信者のメールアドレス。必須項目で、少なくとも1つの受信者を指定する必要があります。単一のメールアドレス文字列、または複数受信者向けのメールアドレスリストを指定できます。受信者は受信したメールの「To」欄で自分のメールアドレスを確認できます。                                                                                                                                         | ✅  |
| `message`                       | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | メール本文の内容（プレーンテキスト）。プレースホルダー構文による動的パラメーターをサポートします: `{{ $parameters.parameter_name }}`。プレースホルダーは実行時に message\_parameters の値で置き換えられます。メッセージは複数行テキストにできます。例: 'Detected `{{ $parameters.num_objects }}` objects. Classes: `{{ $parameters.classes }}`.'.                    | ❌  |
| `message_parameters`            | `Dict[str, Union[bool, float, int, str]]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           | メッセージ内のプレースホルダーで使用されるパラメーター名をワークフローデータソースに対応付ける辞書。キーはメッセージ内で `{{ $parameters.key }}`として参照されるパラメーター名で、値はワークフローステップ出力または直接値へのセレクターです。これらの値は実行時にメッセージプレースホルダーに置換されます。必要に応じて message\_parameters\_operations を使用して、置換前にパラメーター値を変換できます。                                     | ✅  |
| `message_parameters_operations` | `Dict[str, List[Union[ClassificationPropertyExtract, ConvertDictionaryToJSON, ConvertImageToBase64, ConvertImageToJPEG, DetectionsFilter, DetectionsOffset, DetectionsPropertyExtract, DetectionsRename, DetectionsSelection, DetectionsShift, DetectionsToDictionary, Divide, ExtractDetectionProperty, ExtractFrameMetadata, ExtractImageProperty, LookupTable, Multiply, NumberRound, NumericSequenceAggregate, PickDetectionsByParentClass, RandomNumber, SequenceAggregate, SequenceApply, SequenceElementsCount, SequenceLength, SequenceMap, SortDetections, StringMatches, StringSubSequence, StringToLowerCase, StringToUpperCase, TimestampToISOFormat, ToBoolean, ToNumber, ToString]]]` | message\_parameters からのパラメーター名を、メッセージに挿入する前にパラメーター値を変換する UQL 操作チェーンへ対応付ける任意の辞書。操作は順番に適用されます（例: 検出からクラス名を抽出、件数を計算、値をフィルタリング）。キーは message\_parameters 内のパラメーター名と一致している必要があります。変換が不要なパラメーターは空のままにするか、省略してください。                                                            | ❌  |
| `cc_receiver_email`             | `Optional[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 任意の CC（Carbon Copy）受信者のメールアドレス。単一のメールアドレス文字列またはメールアドレスのリストを指定できます。CC 受信者はメールのコピーを受け取り、互いのアドレスを見ることができます。通知は必要だが対応は不要な受信者に使用します。                                                                                                                                        | ✅  |
| `bcc_receiver_email`            | `Optional[List[str], str]`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          | 任意の BCC（Blind Carbon Copy）受信者のメールアドレス。単一のメールアドレス文字列またはメールアドレスのリストを指定できます。BCC 受信者はメールのコピーを受け取りますが、自分のアドレスは他の受信者からは非表示です。プライベートに通知を受け取る受信者に使用します。                                                                                                                        | ✅  |
| `smtp_server`                   | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | メール送信に使用する SMTP サーバーのホスト名。一般的な例: Gmail なら 'smtp.gmail.com'、Outlook なら 'smtp.outlook.com'、または組織の SMTP サーバーのホスト名。このブロックは SMTP 接続に SSL/TLS 暗号化を強制します。サーバーが指定ポートで SSL をサポートしていることを確認してください。                                                                                | ✅  |
| `sender_email_password`         | `str`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | SMTP サーバーと認証するための送信者メールアカウントのパスワード。2 段階認証が有効な Gmail では、通常の Gmail パスワードの代わりにアプリケーション固有のパスワードを使用してください。このフィールドはセキュリティ上 private としてマークされています。ワークフロー定義に保存するより、ワークフロー入力として提供することを推奨します。Roboflow ホストのサービスでは、安全な認証情報管理のために SECRET\_KIND セレクターを使用できます。                         | ✅  |
| `smtp_port`                     | `整数`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | SMTP サーバーのポート番号。デフォルトは 465（SMTP の標準 SSL ポート）です。一般的な代替例: TLS 用の 587（非対応 - このブロックは SSL を強制します）、暗号化なしの 25（非推奨）。このブロックで必要な SSL 暗号化に対応したポートを使用してください。                                                                                                                       | ❌  |
| `fire_and_forget`               | `bool`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 実行モード: 非同期バックグラウンド送信は True（ワークフローは即座に続行、error\_status は常に False、より高速）、同期送信は False（メール完了を待機し、デバッグ用に実際のエラー状態を返す）。開発やデバッグ時は False に設定してメール送信エラーを確認してください。メール配信のタイミングが重要でない本番環境では、ワークフローの実行を高速化するために True に設定してください。                                                       | ✅  |
| `disable_sink`                  | `bool`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              | 実行時にメール送信を無効にするフラグ。True の場合、このブロックはメール送信をスキップし、無効化メッセージを返します。ワークフロー入力による条件付き通知制御に便利です（例: テスト用に通知を無効にできるようにする、設定に基づいて有効/無効を切り替える）。実行時制御のためにワークフロー入力で設定してください。                                                                                                           | ✅  |
| `cooldown_seconds`              | `整数`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | 通知スパムを防ぐための、連続するメール通知間の最小秒数。デフォルトは 5 秒です。0 に設定するとクールダウンを無効化できます（スロットリングなし）。クールダウン期間中は、ブロックは throttling\_status=True を返し、送信をスキップします。注意: クールダウンは動画処理ワークフローにのみ適用され、HTTP リクエストコンテキスト（Roboflow Hosted API、Dedicated Deployment、または各リクエストが独立している self-hosted サーバー）には適用されません。 | ✅  |

この **参照** 列は、で利用可能な動的値を使ってプロパティをパラメータ化できる可能性を示します `ワークフロー` 実行時。参照 *バインディング* 詳細は。

### ランタイム互換性

`soft` - ランタイム `hosted_serverless`, `dedicated_deployment`；実行 `リモート` : クールダウン／レート制限タイマーはプロセスメモリに保存されます。ステートレスまたは複数レプリカのHTTPランタイムでリモートステップ実行を行う場合、各リクエストごとに新しいワーカーが割り当てられるため、クールダウンはスロットリングしません。クールダウンが文書どおりに機能するのは、永続的なWebRTCセッションでのローカルステップ実行のみです。

### 入力と出力のバインディング

利用可能な接続は、そのバインディング種別によって異なります。どのバインディング種別が `メール通知` のバージョン `v1` あるか確認してください。

<details>

<summary>入力と出力のバインディング</summary>

* 入力
  * `sender_email` ([*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)) : この通知の送信者として使用するメールアドレス。このメールアカウントは、設定済みの SMTP サーバーにアクセスでき、sender\_email\_password で提供されるパスワードを持っている必要があります。2FA が有効な Gmail の場合、これはアプリケーション固有のパスワードが設定された Gmail アドレスである必要があります。
  * `receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 通知の主要受信者のメールアドレス。必須項目で、少なくとも1つの受信者を指定する必要があります。単一のメールアドレス文字列、または複数受信者向けのメールアドレスリストを指定できます。受信者は受信したメールの「To」欄で自分のメールアドレスを確認できます。
  * `message_parameters` ([*`*`*](/workflows/ja/gaido/developer-guide/kinds/wildcard.md)) : メッセージ内のプレースホルダーで使用されるパラメーター名をワークフローデータソースに対応付ける辞書。キーはメッセージ内で `{{ $parameters.key }}`として参照されるパラメーター名で、値はワークフローステップ出力または直接値へのセレクターです。これらの値は実行時にメッセージプレースホルダーに置換されます。必要に応じて message\_parameters\_operations を使用して、置換前にパラメーター値を変換できます。
  * `cc_receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 任意の CC（Carbon Copy）受信者のメールアドレス。単一のメールアドレス文字列またはメールアドレスのリストを指定できます。CC 受信者はメールのコピーを受け取り、互いのアドレスを見ることができます。通知は必要だが対応は不要な受信者に使用します。
  * `bcc_receiver_email` (*Union\[*[*`list_of_values`*](/workflows/ja/gaido/developer-guide/kinds/list-of-values.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 任意の BCC（Blind Carbon Copy）受信者のメールアドレス。単一のメールアドレス文字列またはメールアドレスのリストを指定できます。BCC 受信者はメールのコピーを受け取りますが、自分のアドレスは他の受信者からは非表示です。プライベートに通知を受け取る受信者に使用します。
  * `attachments` (*Union\[*[*`bytes`*](/workflows/ja/gaido/developer-guide/kinds/bytes.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : 添付ファイル名をワークフローステップの出力に対応付ける任意の辞書。これらはファイル内容を提供します。キーは添付ファイル名（例: 'report.csv'、'summary.pdf'）で、値は文字列またはバイナリ内容を出力するブロックへのセレクターです（例: CSV Formatter の出力、画像データ、生成レポート）。添付ファイルはエンコードされ、メールに添付されます。添付が不要な場合は空のままにしてください。
  * `smtp_server` ([*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)) : メール送信に使用する SMTP サーバーのホスト名。一般的な例: Gmail なら 'smtp.gmail.com'、Outlook なら 'smtp.outlook.com'、または組織の SMTP サーバーのホスト名。このブロックは SMTP 接続に SSL/TLS 暗号化を強制します。サーバーが指定ポートで SSL をサポートしていることを確認してください。
  * `sender_email_password` (*Union\[*[*`secret`*](/workflows/ja/gaido/developer-guide/kinds/secret.md)*,* [*`string`*](/workflows/ja/gaido/developer-guide/kinds/string.md)*]*) : SMTP サーバーと認証するための送信者メールアカウントのパスワード。2 段階認証が有効な Gmail では、通常の Gmail パスワードの代わりにアプリケーション固有のパスワードを使用してください。このフィールドはセキュリティ上 private としてマークされています。ワークフロー定義に保存するより、ワークフロー入力として提供することを推奨します。Roboflow ホストのサービスでは、安全な認証情報管理のために SECRET\_KIND セレクターを使用できます。
  * `fire_and_forget` ([*`boolean`*](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : 実行モード: 非同期バックグラウンド送信は True（ワークフローは即座に続行、error\_status は常に False、より高速）、同期送信は False（メール完了を待機し、デバッグ用に実際のエラー状態を返す）。開発やデバッグ時は False に設定してメール送信エラーを確認してください。メール配信のタイミングが重要でない本番環境では、ワークフローの実行を高速化するために True に設定してください。
  * `disable_sink` ([*`boolean`*](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : 実行時にメール送信を無効にするフラグ。True の場合、このブロックはメール送信をスキップし、無効化メッセージを返します。ワークフロー入力による条件付き通知制御に便利です（例: テスト用に通知を無効にできるようにする、設定に基づいて有効/無効を切り替える）。実行時制御のためにワークフロー入力で設定してください。
  * `cooldown_seconds` ([*`整数`*](/workflows/ja/gaido/developer-guide/kinds/integer.md)) : 通知スパムを防ぐための、連続するメール通知間の最小秒数。デフォルトは 5 秒です。0 に設定するとクールダウンを無効化できます（スロットリングなし）。クールダウン期間中は、ブロックは throttling\_status=True を返し、送信をスキップします。注意: クールダウンは動画処理ワークフローにのみ適用され、HTTP リクエストコンテキスト（Roboflow Hosted API、Dedicated Deployment、または各リクエストが独立している self-hosted サーバー）には適用されません。
* 出力
  * `error_status` ([`boolean`](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブールフラグ。
  * `throttling_status` ([`boolean`](/workflows/ja/gaido/developer-guide/kinds/boolean.md)) : ブールフラグ。
  * `message` ([`string`](/workflows/ja/gaido/developer-guide/kinds/string.md)) : 文字列値。

</details>

<details>

<summary>JSON 定義の例</summary>

```json
{
	    "name": "<your_step_name_here>",
	    "type": "roboflow_core/email_notification@v1", 
	    "subject": "ワークフロー警告",
	    "sender_email": "sender@gmail.com",
	    "receiver_email": "receiver@gmail.com",
	    "message": "直近5分間で {{ $parameters.num_instances }} 件のインスタンスを検出しました",
	    "message_parameters": {
	        "predictions": "$steps.model.predictions",
	        "reference": "$inputs.reference_class_names"
	    },
	    "message_parameters_operations": {
	        "predictions": [
	            {
	                "property_name": "class_name",
	                "type": "DetectionsPropertyExtract"
	            }
	        ]
	    },
	    "cc_receiver_email": "cc-receiver@gmail.com",
	    "bcc_receiver_email": "bcc-receiver@gmail.com",
	    "attachments": {
	        "report.cvs": "$steps.csv_formatter.csv_content"
	    },
	    "smtp_server": "$inputs.smtp_server",
	    "sender_email_password": "$inputs.email_password",
	    "smtp_port": 465,
	    "fire_and_forget": "$inputs.fire_and_forget",
	    "disable_sink": false,
	    "cooldown_seconds": "$inputs.cooldown_seconds"
	}
```

</details>
