跳转到主要内容
无论您需要账户身份验证、注册新用户/密码,还是确认交易,您有时只需要向某人发送一次性密码、魔术链接或注册 URL。邮件验证是一个很好的例子,也是防止虚假或不活跃邮件地址的一种方法。遵循本指南将有助于确保您的用户能够实际接收您发送的邮件,同时也提高您的发送者声誉和送达性。

要求

  • 一个用于生成和发送 OTP 或确认代码的服务器。

通过 API 发送 custom_data

我们的创建消息 API具有 custom_data 属性,您可以使用它将数据从您的服务器传递到消息中。 根据您如何生成确认代码、魔术链接或自定义 URL,一旦您做到了,就可以在向用户发送消息时将其传递到 custom_data 对象中。例如:
"custom_data": {
    "user": {
        "first_name": "George"
    },
    "verify": {
        "URL" : "https://yourdomain.com/users/confirm?confirmation_token=OS4EVA",
        "otp" : "OS4EVA"
    }
}

验证邮件模板

此邮件模板示例将演示如何显示用户名称、一次性密码和带有链接的按钮来确认他们的邮件地址。

验证邮件示例

邮件模板设置

导航到消息 > 模板 > 新建邮件模板并使用拖放编辑器 创建 1 行并拖入以下块:
  • 标题
  • 段落
  • 按钮

拖放编辑器示例

在邮件中显示用户姓名

这是可选的,但您可以通过添加用户姓名来使消息更个性化。如果您可能没有姓名,可以省略它或设置默认值。 在我们的模板标题块中,根据需要设置您的副本。示例:
Hey {{ message.custom_data.user.first_name | default: "there" }},

在邮件中显示一次性密码

此示例显示了发送一次性密码和带有确认 URL 按钮的选项。根据您想要的设置方式,在段落块中根据需要设置您的副本。示例:
要加入松鼠团队,请使用一次性密码验证您的电子邮件:
{{message.custom_data.verify.otp}}

或使用下面的链接!
如果您想让密码更大或与文本区别开来,您可以使用多个段落文本块。在此示例中,我们将其设为粗体:

在邮件内容中加粗显示的 OTP

在邮件中添加自定义 URL

设置验证 URL 有几种方法。在此示例中,我们将包含确认代码的完整 URL 传递给 custom_data 按钮块 > 内容属性 > 操作 > Url 中,设置:
  • {{message.custom_data.verify.URL}}

按钮块中的自定义 URL 设置

更新邮件模板并发送消息

有关自定义模板的更多详细信息,请参阅使用拖放设计邮件 示例 API 请求 JSON:
{
    "include_email_tokens": [
        "Email Address"
    ],
    "app_id": "YOUR_APP_ID",
    "template_id": "YOUR_TEMPLATE_ID",
    "custom_data": {
        "user": {
            "first_name": "George"
        },
        "verify": {
            "URL" : "https://yourdomain.com/users/confirm?confirmation_token=OS4EVA",
            "otp" : "OS4EVA"
        }
    }
}
准备就绪后,您可以在创建通知 API 请求中使用 template_idcustom_data 属性。

验证短信模板

此短信模板示例将演示如何显示一次性验证码。

短信模板设置

短信应该只发送有限的数据以减少费用。 导航到消息 > 模板 > 新建短信模板 为模板命名一个容易记住的名称,如 OTP Template

在短信模板中显示 OTP

在模板消息字段中,添加以下内容:
  • {{message.custom_data.verify.otp}} is your OneSignal verification code.
我们建议将 “OneSignal” 更改为您的应用名称。

更新短信模板并发送消息

创建模板后,您可以生成一次性密码并使用以下示例 API 请求 JSON 将其传递给 OneSignal:
{
    "include_phone_numbers": ["+19999999999"],
    "app_id": "YOUR_APP_ID",
    "template_id": "YOUR_TEMPLATE_ID",
    "custom_data": {
        "verify": {
            "otp" : "OS4EVA"
        }
    }
}
准备就绪后,您可以在创建通知 API 请求中使用 template_idcustom_data 属性。

设置邮件双重选择加入

双重选择加入是一个要求用户确认其邮件订阅的过程,以提高邮件列表质量并遵守法规。

1. 将邮件地址添加到 OneSignal

将邮件地址添加到 OneSignal 时,它们默认情况下会自动订阅。但是,对于双重选择加入,在用户点击通过邮件发送的验证链接之前,请先不要通过我们的创建用户 API 添加用户

2. 发送验证邮件

OneSignal 允许您使用我们的创建通知 API向收件人发送验证邮件。如果应用中尚不存在该地址,端点将发送邮件并将地址作为邮件订阅添加到 OneSignal。

API 端点:发送验证邮件

3. 处理验证响应

根据收件人对验证链接的响应,请遵循以下步骤: 对于非订阅者
  1. 通过我们的创建通知 API以自定义数据通知针对邮件收件人。
  2. 如果用户点击验证链接,使用 API 的“创建用户”端点将其添加为订阅。
对于现有订阅者
  1. 单独向现有订阅者发送验证邮件。
  2. 在预定义的时间内监控收件人对验证链接的响应。
如果他们没有响应 如果他们点击了验证链接
  • 不做任何操作 - 他们已经订阅了 OneSignal。

总结,使用 OneSignal 设置双重选择加入涉及以下步骤:

对于目前不在您受众中的邮件地址

  1. 通过 API 向收件人发送验证邮件。
  2. 如果收件人点击验证链接,使用“创建用户” API 端点创建订阅。

对于已在 OneSignal 中的邮件地址

  1. 通过 API 向现有订阅者发送验证邮件。
  2. 监控他们对验证链接的响应。
  3. 如果他们在指定时间内没有响应,请更新其订阅以取消订阅或删除它。
  4. 如果他们点击了验证链接,则不采取任何行动,因为他们已经订阅了。
通过遵循这些步骤,您可以在邮件订阅过程中有效实现双重选择加入功能,同时确保遵守法规并维护高质量的邮件列表。
I