文件监控器

文件监控器 integration集成将 Home Assistant 与您的设备、服务等连接和集成。 [Learn more] 添加了 Watchdog 文件系统监控。

它为这些被监控的事件类型创建事件实体:

  • closed
  • created
  • deleted
  • modified
  • moved

配置的文件夹必须添加到 allowlist_external_dirs。请注意,默认情况下文件夹监控是递归的,这意味着子文件夹的内容也会被监控。

配置

要将 文件监控器 integration 添加到您的 Home Assistant 实例中,请使用此 My 按钮:

手动配置步骤

如果上述 My 按钮不起作用,您也可以手动执行以下步骤:

模式

使用 fnmatch 进行模式匹配可以限制文件系统监控仅限于与配置的模式匹配的文件。 例如,要监控特定文件,例如 YAML 和文本文件,可以添加 *.yaml*.txt

自动化

事件实体包含的属性是:

  • event_type: 匹配过滤器的 event_typecreatedmovedmodifieddeletedclosed 之一)
  • path: 文件的完整路径(例如 “/hello/world.txt”)
  • file: 文件的名称(例如 “world.txt”)
  • folder: 文件夹路径(例如 “/hello”)

event_typemoved 时,文件详细信息是源文件的详细信息,并包含目标详细信息:

  • dest_path: 移动文件的完整路径(例如 “/hello/world.txt”)
  • dest_file: 移动文件的名称(例如 “world.txt”)
  • dest_folder: 移动的文件夹路径(例如 “/hello”)

可以使用模板在文件系统事件数据上触发自动化。以下自动化将在新文件添加到该文件夹时发送通知,内容包含文件名和文件夹:

#发送新图像通知(包括图像本身)
automation:
  alias: "新文件警报"
  triggers:
    - trigger: state
      entity_id: event.created
  actions:
    - action: notify.notify
      data:
        title: 新图像捕获!
        message: " {{ trigger.to_state.attributes.folder }} 中创建了 {{ trigger.to_state.attributes.file }}"
        data:
          file: "{{ trigger.to_state.attributes.file }}"