#data #energy #price #rest #access #customer #amber

bin+lib amber-client

提供访问 Amber Energy 客户 REST API 的 CLI 工具

3 个不稳定版本

0.2.1 2023年12月29日
0.2.0 2023年12月29日
0.1.0 2023年12月24日

#7 in #price

BSD-3-Clause

29KB
422 代码行

amber-cli

这是什么?

A Rust CLI 工具,用于访问 Amber 能源的客户 REST API

此工具将根据 CLI 命令返回 JSON 格式的价格和用量数据。

设置

  1. config.toml.example 重命名为 config.toml

  2. 您首先需要在您的账户页面创建一个 API 令牌。然后在 config.toml 中,用您的 API 令牌 namepsk 中的密钥填写 apitoken 部分。

CLI 语法

注意

  • site-details 没有子命令,只会返回您的站点的 JSON 数据。
  • CLI 语法可能会更改,使用 --help 检查。

主要选项

CLI tool to provide access to Amber Energy's customer REST API

Usage: amber-client --config-file <FILE> <COMMAND>

Commands:
  site-details
  price         Price window to query for data.(current, next, previous)
  usage         Date range to query history data for. (Using: yyyy-mm-dd format)
  renewables    Price window to query for data.(current, next, previous)
  help          Print this message or the help of the given subcommand(s)

(price) 价格数据

Usage: amber-client --config-file <FILE> price <COMMAND>

Commands:
  current   Current interval data
  previous  Previous interval data
  next      Forecast interval data
  help      Print this message or the help of the given subcommand(s)

(usage) 历史数据

Usage: amber-client usage date-range <START_DATE> <END_DATE> [FILENAME_TO_EXPORT_TO]

Arguments:
  <START_DATE>             Start date to query from
  <END_DATE>               End date of query from
  [FILENAME_TO_EXPORT_TO]  [Optional] Path to save/export data in CSV format

注意 参数 FILENAME_TO_EXPORT_TO 是可选的,并将导致工具将数据保存到所选日期范围的磁盘上。如果您不指定 FILENAME_TO_EXPORT_TO 参数,数据将发送到您的控制台/标准输出。

示例

$ amber-client -c config.toml usage date-range 2023-12-20 2023-12-21 /tmp/file-name.cvs
Writing to file: /tmp/file-name.cvs
Writing dataset headers to file...
Startng to write records to file...
Finished writing records to file

(renewables) 您所在州电网中的可再生能源百分比

Usage: amber-client --config-file <FILE> renewables <COMMAND>

Commands:
  current   Current interval data
  previous  Previous interval data
  next      Forecast interval data
  help      Print this message or the help of the given subcommand(s)

prices 命令的示例输出

[
  {
    "type": "CurrentInterval",
    "date": "2023-12-25T00:00:00.000Z",
    "duration": 30,
    "startTime": "2023-12-24T22:30:01.000Z",
    "endTime": "2023-12-24T23:00:00.000Z",
    "nemTime": "2023-12-24T23:00:00.000Z",
    "perKwh": 5.91618,
    "renewables": 73.719,
    "spotPerKwh": -4.60785,
    "channelType": "general",
    "spikeStatus": "none",
    "tariffInformation": {
      "period": "offPeak"
    },
    "descriptor": "extremelyLow",
    "estimate": true
  }
]

现在什么可以工作?

注意:所有查询都固定为 30 分钟分辨率,因为这是 Amber 目前支持的所有。

截至版本 0.2.0,Amber 的所有 API 端点都已涵盖并得到支持。

  • 获取站点详细信息。
  • 获取当前用量。(当前、下一个和上一个 30 分钟窗口)
  • 获取价格预测。(当前、下一个和上一个 30 分钟窗口)
  • 获取给定日期范围内的历史用量数据。
  • 将历史数据导出为 CSV 文件。
  • 获取您所在州电网中的可再生能源百分比。

缺少或未工作的是什么?

  • 测试用例仍在进行中,不是真实来源!(Yet!)

计划哪些未来功能?

  • 守护进程模式以定期发出价格或用量数据。
  • 除了 JSON 之外的其他输出格式。
  • 向本地设备发送价格警报。
  • 与 Home Assistant 一起工作。

依赖关系

~13–27MB
~423K SLoC