如何在Firebase中发送包含与用户ID相关的所有信息的电子邮件

时间:2015-07-27 21:35:00

标签: firebase angularfire zapier firebase-util

将新用户添加到Firebase时,我希望向自己发送一封电子邮件,其中包含与该用户相关的所有数据。因此,如果我有/ contacts路径和/ projects路径,我想在将子项添加到/ contacts路径时包含来自两个路径的数据。

我使用Mailgun查看了Zapier,但无法弄清楚如何实现这一目标。

如果Zapier不能工作,是否可以使用firebase-util完成这项工作?

my-firebase-app.firebaseio.com/contacts

的树
-contacts
--anonymous:-JttGEelQDsVtZ55n3d2
---name: john doe
---address: 100 Main St.
// . . . 

my-firebase-app.firebaseio.com/projects的树:

-projects
--anonymous:-JttGEelQDsVtZ55n3d2
---projectName: "My first project"
---projectDate: July 27, 2015
// . . . 

已更新

在回应下面的评论时,这里有一些额外的信息:

我在Zapier尝试了以下步骤:

  1. 在Firebase下选择Add child record
  2. 在Mailgun下选择Send email
  3. 设置数据路径:/contacts
  4. 在电子邮件正文部分,我插入了Raw Json Data
  5. 电子邮件仅包含/contacts中的Json数据。它不包含位于/projects

    中的任何数据

1 个答案:

答案 0 :(得分:0)

这可以很容易地用Zapier完成。

您已定义一个触发Zapier读取数据的节点。然后将Zapier设置为'观察'触发节点。您可以在节点中定义字段,然后在Zapier中将它们映射到用于填写电子邮件的变量。

通常使用类似这样的东西(ObjC)

Firebase *zapierRef = [myRootRef childByAppendingPath:@"zapier_queue/out"];

然后,编译你希望Zapier读取的数据,我在这个例子中使用字典

NSDictionary *dict = @{
                     @"name", @"john doe",
                     @"address", @"100 main street",
                     @"anonymous: @"-JttGEelQDsVtZ55n3d2",
                     @"projectName": @"My first project",
                     @"projectDate": @"July 27, 2015"
                     }

然后将其写为Zapier节点中的节点

Firebase *zapChildRef = [zapierRef childByAppendingPath@"data"]

[zapChildRef setValue:dict];

Zapier将通过写入此节点触发,读取数据,将其格式化为电子邮件,然后完成后自动删除节点并等待下一段数据。