Skip to content

Technical: Weekly Activity Reports

ccpk1 edited this page Mar 2, 2026 · 1 revision

Technical: Weekly Activity Reports

Generate a weekly progress summary from ChoreOps activity history and deliver it as markdown or email-friendly HTML.

What this service does

The choreops.generate_activity_report service creates a 7-day activity report and can:

  • Return report content directly to scripts/automations
  • Provide markdown output (easy to copy/share)
  • Provide HTML output (email-friendly)
  • Optionally deliver the report via a Home Assistant notify service

The service always remains response-first, even when notify delivery is enabled.

Service fields (most common)

  • user_name (optional): generate for one User only
  • report_language (optional): language override for report text
  • report_title (optional): custom report title
  • notify_service (optional): notify target such as notify.family_email
  • output_format (optional): markdown, html, or both
  • config_entry_id / config_entry_title (optional): target a specific ChoreOps instance when you run multiple instances

Tip

For most single-instance installs, you can omit config_entry_id and config_entry_title.

Quick manual test (Developer Tools)

  1. Open Developer ToolsActions.
  2. Select action choreops.generate_activity_report.
  3. Set example data:
output_format: markdown
report_title: Weekly Household Report
  1. Run the action.
  2. Review the response payload and copy the report or markdown field.

Automation: send weekly email directly from service

This is the simplest weekly email setup.

alias: ChoreOps Weekly Activity Email
description: Send a weekly ChoreOps report every Sunday evening
trigger:
  - platform: time
    at: "18:00:00"
condition:
  - condition: time
    weekday:
      - sun
action:
  - action: choreops.generate_activity_report
    data:
      report_title: Weekly ChoreOps Report
      output_format: html
      notify_service: notify.family_email
mode: single

Why output_format: html for email

When notify_service is provided and output_format is html (or both), ChoreOps includes HTML content for richer email formatting.

Automation: capture response, then send custom notification

Use this when you want full control over the message body.

alias: ChoreOps Weekly Report (Custom Message)
trigger:
  - platform: time
    at: "18:30:00"
condition:
  - condition: time
    weekday:
      - sun
action:
  - action: choreops.generate_activity_report
    data:
      output_format: markdown
      report_title: Weekly Family Snapshot
    response_variable: weekly_report

  - action: notify.family_email
    data:
      title: "Weekly Family Snapshot"
      message: "{{ weekly_report.report }}"
mode: single

Per-User weekly report example

action: choreops.generate_activity_report
data:
  user_name: Alex
  output_format: markdown
  report_title: Alex Weekly Progress

Troubleshooting

Warning

If no notification is sent, first verify the notify_service name exists in Home Assistant.

  • No report returned: verify your ChoreOps instance is loaded and targeted correctly
  • No email received: confirm the notify target exists and works with a simple test message
  • Wrong instance (multi-instance setup): pass config_entry_id explicitly
  • Unexpected language: set report_language directly

Related docs

  • Services: Reference
  • Technical: Troubleshooting

Clone this wiki locally