# Functions
NewTestContext creates a new Context which can be used in tests.
Unpack unpacks the contents of a command envelope into the correct type.
# Constants
Supported interval command actions.
Supported interval command actions.
Supported command types.
Supported command types.
Supported outlet command actions.
Supported outlet command actions.
Supported command types.
Supported command types.
Supported outlet command actions.
Supported interval command actions.
# Structs
Context is passed to every command.
Envelope defines a command envelope which hold the command type and the raw json data of the command.
GroupCommand switches a group of outlets based on the action.
IntervalCommand changes the intervals of an outlet based on the action.
OutletCommand switches a specific outlet based on the action.
StateCorrectionCommand is sent out whenever an outlet should change its state based on detected rf codes.
StatusCommand is sent by a connected client to retrieve the list of current outlet groups.
# Interfaces
Command is something that can be put into a command queue and is executed by a controller sequentially.
Sender can send messages.
SenderAwareCommand is aware of the comand's sender.
# Type aliases
IntervalAction is the type of an action that can be performed on intervals of an outlet's schedule.
OutletAction is the type of an action that can be performed on an outlet or outlet group.
Type is the type of a Command.