Releases: badguy99/octoblock
v0.3.0 Make import and export codes configurable
import_code
and export_code
can be specified, they default to AGILE-FLEX-22-11-25
and AGILE-OUTGOING-19-05-13
respectively.
Note: This updates the previous hardcoded value for import which used the very out of date AGILE-18-02-21
which was capped at 35p
v0.2.2
v0.2.1
v0.2.0
NOTE: Breaking Changes!! New YAML format required
This release is a very large rewrite, so now there only needs to be one instance of the module defined in the Appdaemon apps.yaml file.
This also cuts down on the number of requests to the octopus.energy api - only one if you are only getting import data, and two if you are also getting export date, rather than one per module instance in the past.
Blocks can also have custom names, which override the default names. See the new yaml example below and README.md for more information.
Alongside the rewrite for the "blocks" functionality, it also adds "lookaheads"
Lookaheads provide a Home Assistant sensor that will be set to true if the price will go below or above (depending upon operation setting) a specified point, x, within the next duration_ahead hours, up to the maximum look ahead that Octopus Energy provide price data for.
Setting operation to above or below and and_equal to True or False in the yaml file give different functions; namely: greater than, less than, greater than & equal, and less than and equal. Such that it should be possible to set up required trigger points looking at prices in the future for automations.
NEW yaml Format:
octoblock:
module: octoblock
class: OctoBlock
region: H
use_timezone: False
blocks:
- hour: 1
import: True
start_period: now
name: octopus_1hour
- hour: 1.5
start_period: today
name: octopus_vacuum
limits:
start_time: '07:00'
end_time: '16:00'
- hour: 2
import: True
start_period: now
- hour: 0
start_period: now
name: octopus_current_import
- hour: 0
export: True
import: False
start_period: now
name: octopus_current_export
lookaheads:
- price: 3.0
operation: below
and_equal: True
duration_ahead: 12
name: hw_via_electric_not_gas
OLD Format (For reference, no longer supported):
octo_block_1hour:
module: octoblock
class: OctoBlock
region: H
hour: 1
use_timezone: False
octo_block_90minutes:
module: octoblock
class: OctoBlock
region: H
hour: 1.5
start_period: today
use_timezone: True
limits:
start_time: '07:00'
end_time: '16:00'
v0.1.8
v0.1.7
Add ability to set start and end limits when searching today
start_period: today
limits:
start_time: '07:00'
end_time: '16:00'
When using today
for the start_period
it can be limited further usings limits > start_time
and/or limits > end_time
(please note the formating in the example yaml above) to restrict the period searched. This may be useful for example if you have something that you only want to run within certain times of the day, due to noise issues etc.
v0.1.6
This release adds the ability to get the current import or export price
Setting hours
to 0
with start_period
set to now
in apps.yaml will return the current import or export price
The sensors now update when the integration is initialised and then on 00 and 30 minute past the hour, boundaries.
A fix has been included as a midnight trigger point could be missed.
When using today
rather than now
if the best period starts at 00:00 the trigger point could be missed as the automated trigger is likely to run before the best period data is updated. This fix changes the date the last calculation of the day uses, so that when it runs after 23:30, it uses tomorrows date, so that the new best period is inplace before automated triggers may run at 00:00
v0.1.5
Add ability to query the Agile Outgoing Tariff to find highest export price
import
and export
should be set to True or False as required,
import = True
and export = False
for the Agile Octopus tariff
and import = False
and export = True
for the Agile Outgoing Octopus tariff.
The defaults if these options are not found in the apps.yaml file
are: import = True
and export = False
v0.1.4
use_timezone
can be set to True or False, and defaults to False, it allows you to specify if the date/time should be displayed in UTC (False), or using Europe/London (True) as the timezone. For example, 2020-03-29T02:00:00Z
or 2020-03-29T03:00:00 BST
respectively.