跳转至

add-on的对外访问

add-on中使用的编程语言

如果将二进制可执行文件直接放入docker容器,必须区分不同的CPU架构——样例

访问外部网络

在add-on中,可以自由访问外部的网络

访问其它docker容器

  • supervisor架构下,所有docker容器的网络为172.30.32.0/23

    • 172.30.32.1 homeassistant core以及所有设置host_networktrue的add-on
    • 172.30.32.2 supervisor
    • 172.30.32.3 dns
    • 172.30.33.x 各种add-on
  • 各docker容器直接可以通过内部网络相互访问

  • 一般通过docker容器的主机名访问

访问HomeAssistant Core API

注:你也可以通过docker容器间通讯访问HomeAssistant Core API,但这种方式需要自己配置与管理“长期访问令牌”。

  • config文件配置

    homeassistant_api: true

  • 环境变量SUPERVISOR_TOKEN

  • REST API

    http://supervisor/core/api/*

    curl -X GET -H "Authorization: Bearer ${SUPERVISOR_TOKEN}" -H "Content-Type: application/json" http://supervisor/core/api/discovery_info

    python访问样例

  • WebSocket API

    http://supervisor/core/websocket

访问Supervisor API

  • config文件配置

    hassio_api: true

  • 环境变量SUPERVISOR_TOKEN

  • Supervisor API

    http://supervisor/*

    curl -sSL -H "Authorization: Bearer $SUPERVISOR_TOKEN" http://supervisor/network/info

返回课程目录↩