Skip to content

Technical: Points

ccpk1 edited this page Feb 24, 2026 · 3 revisions

Target Audience: Developers, automation builders, power users Covers: Point entity naming, sensors/buttons, attributes, and behavior details


Point entity naming

User-scoped point entities follow:

  • Sensors: sensor.<user>_choreops_*
  • Buttons: button.<user>_choreops_*

Examples:

sensor.alex_choreops_points
button.alex_choreops_points_plus_1_0
button.alex_choreops_points_minus_10_0
button.alex_choreops_bonus_morning_hustle
button.alex_choreops_penalty_missed_bedtime

Note

Entity suffixes depend on configured names and configured manual adjustment values.


Point capability requirements

A user profile gets points entities when all of the following apply:

  • allow_chore_assignment is enabled
  • enable_gamification is enabled

Approver-only profiles (can_approve) can still approve transactions for associated users but do not receive their own point sensors unless assignment + gamification are enabled.


Core point sensor

Points sensor

Entity pattern: sensor.<user>_choreops_points State: Current point balance

Typical attributes include:

  • point_stat_points_earned_today
  • point_stat_points_earned_week
  • point_stat_points_earned_month
  • point_stat_points_spent_today
  • point_stat_points_spent_week
  • point_stat_points_net_today
  • point_stat_points_by_source_week
  • points_label
  • points_icon

Example read patterns:

{{ states('sensor.alex_choreops_points') | float }}
{{ state_attr('sensor.alex_choreops_points', 'point_stat_points_earned_today') }}
{{ state_attr('sensor.alex_choreops_points', 'point_stat_points_by_source_week') }}

Point action buttons

Manual point adjustment buttons

Generated from configured values in Manual Points Adjustment Button Values.

Entity pattern examples:

  • button.<user>_choreops_points_plus_1_0
  • button.<user>_choreops_points_minus_1_0
  • button.<user>_choreops_points_plus_10_0
  • button.<user>_choreops_points_minus_10_0

Bonus and penalty buttons

  • button.<user>_choreops_bonus_<bonus>
  • button.<user>_choreops_penalty_<penalty>

Reward buttons (points spend workflow)

  • button.<user>_choreops_reward_claim_<reward>
  • button.<user>_choreops_reward_approval_<reward>
  • button.<user>_choreops_reward_disapproval_<reward>

Transaction behavior

Earn flow

  1. Chore approved → points added (can include badge multiplier)
  2. Bonus applied → points added (can include badge multiplier)
  3. Manual plus button pressed → points added (no multiplier)

Spend flow

  1. Reward approved → reward cost deducted
  2. Penalty applied → points deducted
  3. Balance may become negative after penalties

Multiplier rules

  • Applies to chore and bonus earnings
  • Does not apply to reward costs
  • Does not apply to penalties
  • Does not apply to manual add/subtract buttons

Service actions (points-related)

Use these choreops service actions when automating point-affecting workflows.

Direct point-affecting services

  • choreops.approve_chore (adds points; optional override)
  • choreops.approve_reward (deducts reward cost; optional override)
  • choreops.apply_bonus (adds configured bonus points)
  • choreops.apply_penalty (deducts configured penalty points)

Supporting workflow services

  • choreops.claim_chore
  • choreops.disapprove_chore
  • choreops.redeem_reward
  • choreops.disapprove_reward

Data reset service

  • choreops.reset_transactional_data (can reset points-related runtime totals based on scope/item type)

For full field schemas and examples, see:


Optional extra entities

When Show Extra Entities is enabled, point-related helper sensors can be exposed separately. Most installations can rely on sensor.<user>_choreops_points attributes instead of enabling all extra sensors.


Design notes for dashboards/automations

  • Prefer reading point totals from sensor.<user>_choreops_points
  • Use button entities for explicit audit-friendly transactions
  • Keep manual adjustment values stable to avoid entity churn in dashboards

Related documentation


Last Updated: February 2026 (technical points reference)

Clone this wiki locally