gpt4 book ai didi

azure - 使用 Azure 和 .Net 在事件发生后、5 天后和 15 天后发送邮件通知

转载 作者:行者123 更新时间:2023-12-03 02:02:46 24 4
gpt4 key购买 nike

我有以下要求:

  1. 事件发生后(在.Net端),我们需要立即触发邮件通知,5天后和15天后。
  2. 这些天数将仅根据工作日(周一至周五)计算。
  3. 我认为不可能使用时间触发的 Azure 功能,因为每个事件的触发时间都不同。我认为这可以使用 Azure 逻辑应用来实现。

对于发送邮件,我们可以在.net 端拥有逻辑。但我是逻辑应用程序的新手。请建议我应该在逻辑应用中使用哪种触发器,或者是否有其他更好的方法来实现此目的。

最佳答案

我同意@juunas 的观点,有多种方法可以实现这一目标,例如 azure 逻辑应用程序、函数、监控警报。Azure 逻辑应用:

1.  After an event is occurred(In .Net side), we need to trigger mail notification immediately, after 5 days and after 15 days.

在逻辑应用程序中,如果您希望在上述场景中发生事件邮件通知,您可以尝试以下逻辑应用程序工作流程。 enter image description here

  • 最初,我采用了 http 请求触发器,您也可以根据您的要求采用任何基于事件的触发器。

  • 然后采取发送电子邮件操作,在触发器触发后立即发送通知。 enter image description here

  • 立即触发后,如果您希望下一次触发延迟 5 天发送通知,您可以采取延迟操作,方法是采用计数 5 并以天为单位,如下所示。

    延迟:在运行下一个操作之前等待指定数量的时间单位,例如秒、分钟、小时、天、周或月。 enter image description here

  • 然后,在 5 天延迟后,再次执行发送电子邮件操作来发送通知,然后再执行一次延迟操作,再延迟 15 天,然后在 15 天后,将通过执行另一次发送电子邮件操作来发送最终电子邮件通知,如下所示图像。 enter image description here

  • 逻辑应用成功运行,立即收到一封电子邮件通知,并且将在完成 5 天延迟操作后收到下一封邮件通知,如下图中的延迟操作所示。

enter image description here

  These days will be calculated based on workdays only(Mon-Fri).

但如果您想根据工作日条件运行它,您可以 Calculate working days in Power Automate or Logic Apps 或者您也可以使用具有所需间隔和频率的重复触发器。

Azure 函数:

在 Azure Functions 中,您可以通过使用 @Juunas 在评论中提到的计时器触发器来实现此目的

  1. 在 Azure 门户中,创建一个新的 Azure Function 应用。

  2. 从左侧菜单中选择“功能”后,点击“+新功能”即可向应用程序添加新功能。

  3. 选择“计时器触发器”作为函数类型,然后输入您希望函数运行的时间(例如每天的午夜)。

  4. 在代码编辑器中包含代码以检索有关已发生事件的信息。

  5. 事件发生后,立即使用 SendGrid API 发送电子邮件通知。

  6. 要在等待五天后发送第二封电子邮件通知,请使用 Thread.Sleep() 方法。

  7. 使用 Thread.Sleep() 重复步骤 7,再等待 10 天(总共 15 天),然后发送最终邮件 upadte。

enter image description here引用SO在 C# 中计算两个日期之间的工作日数的链接

Azure Monitor 警报:

通过 Azure 和 .NET,您可以使用 Azure Monitor alerts在事件发生后 5 天和 15 天发送邮件通知。在 Azure 门户中,首先创建一个新的警报规则。然后,将通知频率设置为每 5 天和每 15 天,并设置警报以在使用 .Net 代码发生事件时启动。

关于azure - 使用 Azure 和 .Net 在事件发生后、5 天后和 15 天后发送邮件通知,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/75603216/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com