テンプレート
Echobellでテンプレートを使用する方法を学ぶ
Echobell のテンプレート
Echobell のテンプレートを使用すると、変数を通知タイトルと本文に組み込むことで、動的な通知を作成できます。この機能により、トリガーデータに基づいて適応するパーソナライズされた情報豊かなアラートが可能になります。
基本的なテンプレート構文
Echobell テンプレートでは、変数を二重中括弧で囲むことで使用できます:
{{変数名}}チャネルがトリガーされると、これらの変数はトリガーを通じて渡された実際の値に置き換えられます。例えば、タイトルテンプレートが${{金額}}を受け取りましたで、金額の値が 100 のチャネルをトリガーすると、結果の通知は$100を受け取りましたと表示されます。
高度なテンプレート式
Echobell テンプレートは、より複雑なシナリオのためのさまざまな式をサポートしています:
- オブジェクトプロパティへのアクセス
{{ユーザー.名前}}
{{データ["値"]}}- 配列要素へのアクセス
{{アイテム[0]}}- 比較演算子の使用
{{ステータス == "アクティブ"}}
{{年齢 > 18}}- 論理演算子
{{購読中 && !一時停止中}}
{{緊急 || 高優先度}}すべての標準的な演算子がサポートされています:==、!=、<、>、<=、>=、&&、||、!。
異なるトリガーからのテンプレート変数
Webhook トリガー
Webhook を通じてトリガーする場合、以下の方法で変数を提供できます:
-
クエリ文字列パラメータ:
GET https://hook.echobell.one/t/あなたのチャネルID?金額=100&ステータス=完了 -
JSON ボディ(POST リクエスト用):
POST https://hook.echobell.one/t/あなたのチャネルID Content-Type: application/json { "金額": 100, "ステータス": "完了", "ユーザー": { "名前": "田中", "id": 12345 } } -
特別な変数:
externalLink:通知レコード内でクリック可能なリンクを提供しますbodyAsText:Content-Typeがtext/plainの場合のリクエストボディのプレーンテキストコンテンツheader:HTTP リクエストヘッダーへのアクセスを提供します(例:{{header["content-type"]}})
メールトリガー
チャネルがメールを介してトリガーされる場合、以下の変数が自動的に利用可能になります:
from:送信者のメールアドレスto:受信者のメールアドレスsubject:メールの件名text:メールのプレーンテキスト内容html:メールの HTML 内容
テンプレートの使用例
条件付きコンテンツ
テンプレートを使用して、条件に基づいて異なるコンテンツを表示できます:
{{金額 > 1000 ? "大きな" : "標準的な"}}支払いを受け取りました:${{金額}}チャネル条件
通知コンテンツでテンプレートを使用することに加えて、チャネルの詳細設定で通知を送信するかどうかを決定する条件を設定できます。これらの条件は同じ式構文(中括弧なし)を使用します。
例えば、閾値を超える金額に対してのみ通知を送信するには:
金額 > 100リンクテンプレート
チャネルの詳細設定でカスタムリンクテンプレートを設定して、通知レコード内にクリック可能なリンクを作成します:
https://dashboard.example.com/orders/{{注文ID}}リンクテンプレートが設定されていない場合、デフォルトでexternalLink変数の値が使用されます。
システム時刻変数(UTC)
これらの変数はテンプレート(および条件)で常に利用でき、UTC で計算されます:
timezone: 常に"UTC"now/iso: ISO‑8601 タイムスタンプ(例:2025-05-06T12:34:56.789Z)epochMs,epochSeconds: 現在時刻(Unix エポックからの経過)year,month(1–12),monthNamedayOfMonth,dayOfWeek(0–6、日曜 = 0),dayOfWeekNamehour(0–23),minute,seconddate(YYYY-MM-DD),time(HH:mm:ss)
例:
送信時刻 {{date}} {{time}} {{timezone}}
今日は {{dayOfWeekName}}、{{monthName}} {{dayOfMonth}}, {{year}}
Epoch: {{epochSeconds}}ベストプラクティス
-
デフォルト値:オプションの変数にデフォルト値を提供することを検討してください:
{{ユーザー名 || "匿名ユーザー"}} -
情報豊かなテンプレート:通知をアクション可能にするために、テンプレートに重要な情報を含めてください:
{{サービス}}:{{ステータス}} - {{メッセージ}} -
テンプレートを簡潔に:通知はタイトルと本文が明確で簡潔なときに最も効果的に表示されます。
-
テスト:テンプレートを様々な変数の組み合わせでテストして、期待通りにレンダリングされることを確認してください。
テンプレートは、ユーザーが必要なときに必要な情報を正確に提供する、動的で情報豊かな通知を作成する強力な方法です。