在Logic Apps中用Outlook.com的Get Emails v3筛选当日时段邮件
在Azure Logic Apps中用Outlook.com「Get Emails v3」实现当日邮件筛选的可行性
你当前写的时间条件不可行,原因是utcNow()返回的是当前具体时间,addToTime(utcNow(), 1, 'Day')是当前时间加一天,这样筛选的是从现在到明天同一时刻的邮件,并非当日全天范围。
要实现当日(自然日,UTC当天0点到次日0点)的邮件筛选,需调整时间计算逻辑,同时结合主题筛选的正确写法如下:
- 时间范围需用
startOfDay函数获取当日起始和次日起始时间:- 当日起始:
startOfDay(utcNow())(UTC当天00:00:00) - 次日起始:
startOfDay(addToTime(utcNow(), 1, 'Day'))(UTC次日00:00:00)
- 当日起始:
- 结合主题筛选的完整OData查询语句:
receivedDateTime ge '@{startOfDay(utcNow())}' AND receivedDateTime lt '@{startOfDay(addToTime(utcNow(), 1, 'Day'))}' AND subject contains '你的目标主题关键词' - 关键注意点:
- Outlook.com的「Get Emails v3」不支持直接用
BETWEEN关键字,需用OData标准的ge(大于等于)和lt(小于)来定义时间范围 startOfDay函数返回的ISO 8601格式时间完全符合该操作的时间格式要求- 若需按本地时间筛选,需额外添加时区转换步骤(比如用
convertFromUtc函数转换到目标时区后再计算当日起始)
- Outlook.com的「Get Emails v3」不支持直接用
内容的提问来源于stack exchange,提问作者RRP
相关产品推荐
相关产品推荐

