Echobell

模板

学习如何在 Echobell 中使用模板

Echobell 中的模板

Echobell 中的模板允许您通过在通知标题和内容中整合变量来创建动态通知。此功能可根据触发数据生成个性化和信息丰富的提醒。

基本模板语法

在 Echobell 模板中,您可以通过将变量包裹在双大括号中来使用它们:

{{变量名}}

当频道被触发时,这些变量将被通过触发器传递的实际值所替代。例如,如果您的标题模板是 您已收到 ${{amount}},并且您用 amount 值为 100 触发了频道,结果通知将显示为 您已收到 $100

高级模板表达式

Echobell 模板支持多种表达式,适用于更复杂的场景:

  • 访问对象属性
{{user.name}}
{{user["name"]}}
  • 访问数组元素
{{list[0]}}
  • 使用比较运算符
{{status == "active"}}
{{age > 18}}
  • 逻辑运算符
{{isSubscribed && !isPaused}}
{{isUrgent || isPriory}}

支持所有标准运算符:==!=<><=>=&&||!

来自不同触发器的模板变量

Webhook 触发器

通过 webhook 触发时,您可以通过以下方式提供变量:

  1. 查询字符串参数

    GET https://hook.echobell.one/t/token?amount=100&status=active
  2. JSON 主体(用于 POST 请求):

    POST https://hook.echobell.one/t/token
    Content-Type: application/json
     
    {
      "amount": 100,
      "status": "active",
      "user": {
        "name": "张三",
        "id": 12345
      }
    }
  3. 特殊变量

    • externalLink:在通知记录中提供可点击链接
    • bodyAsText: 如果 Content-Typetext/plain,则为请求正文的纯文本内容
    • header:提供对 HTTP 请求头的访问(例如,{{header["content-type"]}})

电子邮件触发器

当频道通过电子邮件触发时,以下变量将自动可用:

  • from:发件人电子邮件地址
  • to:收件人电子邮件地址
  • subject:电子邮件主题行
  • text:电子邮件的纯文本内容
  • html:电子邮件的 HTML 内容

模板使用案例

条件内容

您可以使用模板基于条件显示不同内容:

已收到{{amount > 1000 ? "大额" : "标准"}}付款:${{amount}}

频道条件

除了在通知内容中使用模板外,您还可以在频道高级设置中设置条件,确定是否应发送通知。这些条件使用相同的表达式语法(不含大括号)。

例如,仅对超过阈值的金额发送通知:

金额 > 100

链接模板

在频道高级设置中配置自定义链接模板,以在通知记录中创建可点击链接:

https://dashboard.example.com/orders/{{orderId}}

如果未设置链接模板,将默认使用 externalLink 变量的值。

最佳实践

  1. 默认值:考虑为可选变量提供默认值:

    {{username || "匿名用户"}}
  2. 信息丰富的模板:在模板中包含关键信息,使通知具有可操作性:

    {{service}}:{{status}} - {{message}}
  3. 保持模板简洁:当标题和内容清晰简洁时,通知效果最佳。

  4. 测试:使用不同的变量组合测试您的模板,确保它们按预期显示。

模板是创建动态、信息丰富的通知的强大方式,能在用户需要时给他们提供恰到好处的信息。

目录