Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .changeset/control-not-following-kind.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
"ftw-webapp": patch
---

Notifications gain "If a device does not do what FTW asks": the box tells the
owner when a device has not followed FTW for ten minutes, as a battery that
charges while FTW asks it to discharge. The kind joins the push catalogue
shared with Core and the iPhone app.
7 changes: 7 additions & 0 deletions contract/push-catalogue.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,13 @@ events:
# kettle must not page anyone.
title: The house is drawing too much
body: "{phase} is over the fuse rating."
- kind: control.not_following
# After the box's own threshold: ten minutes in which the box's answer
# to "Are we in control?" said a device does not do what FTW asked, as
# a battery that charges when told to discharge. A slow battery must not
# page anyone. Once until the device follows again.
title: A device is not following FTW
body: "{name} does not do what FTW asks. Open FTW to see why."
- kind: box.unreachable
# The one sentence the box cannot send about itself. The relay holds
# this pre-encrypted and posts it only when the box has missed its
Expand Down
2 changes: 2 additions & 0 deletions src/lib/notify/kinds.ts
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ export const KINDS = [
'update.installed',
'driver.offline',
'fuse.over_limit',
'control.not_following',
'box.unreachable',
'cloud.granted',
'cloud.revoked',
Expand Down Expand Up @@ -49,6 +50,7 @@ export const KIND_LABELS: Record<PushKind, string> = {
'update.installed': 'When your box updates itself',
'driver.offline': 'If a device goes quiet',
'fuse.over_limit': 'If the house draws more than the fuse allows',
'control.not_following': 'If a device does not do what FTW asks',
'box.unreachable': 'If your box goes out of reach',
'cloud.granted': 'When FTW Cloud is turned on',
'cloud.revoked': 'When FTW Cloud is turned off',
Expand Down
Loading