跳到主要内容

定时服务使用指南

概述

通过 ESP RainMaker 定时服务,设备可以在特定时间执行操作,既可以是绝对时间(例如,下午 6:30),也可以是相对时间(例如,从现在起 3 小时后)。定时服务支持一次性事件、在每年特定日期重复事件,并能够处理时区和夏令时变化。该功能在节点端实现,云端仅作为通信中介,并可以通过 API 和移动应用轻松访问。

  • 要了解更多关于定时服务的内容,请参阅此文档
  • 关于手机应用中跨节点定时的注意事项,请参阅此文档
警告

定时服务与时间服务密切相关。因此,必须设置和配置时间服务。否则不会触发定时


使用指南

启用定时服务

ESP RainMaker 提供了以下 API 来启用定时服务:

esp_err_t esp_rmaker_schedule_enable(void);
重要

该 API 应在 esp_rmaker_node_init() 之后、esp_rmaker_start() 之前调用。

  • 支持的最大定时服务数量可以通过配置项进行设置:CONFIG_ESP_RMAKER_SCHEDULING_MAX_SCHEDULES
  • 可以在 idf.py menuconfig 中找到此配置项。具体步骤如下:
提示

由于定时服务的有效负载大小会随着定时服务数增加而变大,您可能还需增大 CONFIG_ESP_RMAKER_MAX_PARAM_DATA_SIZE,以支持更多的定时服务。

提醒

在使用定时服务前,建议首先设置时区。关于时区的信息,请参阅此文档。最简单的方法是设置 CONFIG_ESP_RMAKER_DEF_TIMEZONE config 选项,例如 CONFIG_ESP_RMAKER_DEF_TIMEZONE="Asia/Shanghai"

可以在 idf.py menuconfig 中找到此选项,具体步骤如下:

On this page