我将传感器数据发送到azure表存储。如果列中的值小于特定值,我想发送电子邮件。
-If a value in GPIOPin column is less than 7 then an email alert has to be sent.
有人可以指导如何继续吗?我尝试过使用Logic应用程序,但我不了解如何在那里提供条件。
答案 0 :(得分:0)
逻辑应用程序的主要目的是将各种输入/服务与各种输出连接起来:您可以像发布推文消息一样轻松发送电子邮件。如果这确实是您所需要的,请务必使用逻辑应用程序。
我认为你最好使用azure功能。可以在行更改时自动调用(触发)函数,因此您可以在插入小于7的值时发送邮件。有关详细信息,请参阅https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage-table
答案 1 :(得分:0)
AFAIK,Logic Apps暂时不支持Azure表存储触发器。您可以添加反馈here。根据您的方案,您需要选择计划 - 重复连接器,以便从表存储中检索记录并定期处理您的逻辑。由于没有创建/更新操作的触发器,因此您需要添加一个新列(例如状态),指示逻辑应用程序流是否已检查它。这是我的设计师,你可以参考如下:
注意:强>
对于(Azure表格存储)获取实体操作,您可以根据高级选项将过滤器查询指定为status eq false
,以检索之前未检查过的记录
对于条件块,如果单个条件块中有多个规则,则需要在代码视图中使用@and()
或@or()
。以下是反馈,您可以参考here。
如果条件块为true,则可以发送电子邮件,在成功发送电子邮件后,您需要使用Azure表存储的合并实体操作来更新当前记录的状态列,如下所示:
如果条件块为false,则还需要更新表存储的当前记录的状态列。
此外,逻辑应用程序支持在SQL Server中创建项目时的触发器。如果可能,您可以更简单的方式更改数据存储。此外,Azure函数中的表存储没有触发器绑定。您可以利用Azure功能中的timer trigger,Storage table bindings,SendGrid bindings来实现您的目的。
答案 2 :(得分:0)
答案 3 :(得分:0)
如果您要通过物联网中心将传感器数据发送到表存储,请考虑使用定义了两个输出的Streaming Analytics。一个输出可以是表存储,另一个输出Azure函数,Streaming Analytics用于输入绑定,SendGrid用于输出绑定。 Streaming Analytics作业将选择表存储输出的所有记录,但只有那些符合GPIOIn< 7条件为Azure函数输出。