Franck Nijhof 1833c32a2c Cleans up front matter (#9835)
* Sets front matter defaults

* Removes default front matter from section templates/pages

* Removes default front matter from addon pages

* Removes default front matter from integration pages

* Removes default front matter from posts

* Removes default front matter from docs pages

* Removes default front matter from other pages

* Fixes blog category pages
2019-07-11 14:35:08 -07:00

2.2 KiB

title description logo ha_category ha_iot_class ha_release redirect_from
Netio Switch Instructions on how to integrate Netio switches into Home Assistant. netio.png
Switch
Local Polling 0.24
/components/switch.netio/

The netio switch platform allows you to control your Netio Netio4, Netio4 All, and Netio 230B. These are smart outlets controllable through Ethernet and/or WiFi that reports consumptions (Netio4all).

To use Netio devices in your installation, add the following to your configuration.yaml file:

# Example configuration.yaml entry
switch:
  - platform: netio
    host: 192.168.1.43
    username: YOUR_USERNAME
    password: YOUR_PASSWORD
    outlets:
      1: Free
      2: TV
      4: Lamp

{% configuration %} host: description: "The IP address of your Netio plug, e.g., http://192.168.1.32." required: true type: string port: description: The port to communicate with the switch. required: true default: 1234 type: integer username: description: The username for your plug. required: true default: admin type: string password: description: The password for your plug. required: true type: string outlets: description: "List of all outlets. Consisting of a number and a name [No.]: [Name]." required: false type: list {% endconfiguration %}

To get pushed updates from the Netio devices, one can add this Lua code in the device interface as an action triggered on "Netio" "System variables updated" with an 'Always' schedule:

-- this will send socket and consumption status updates via CGI
-- to given address. Associate with 'System variables update' event
-- to get consumption updates when they show up

local address='ha:8123'
local path = '/api/netio/<host>'


local output = {}
for i = 1, 4 do for _, what in pairs({'state', 'consumption',
                        'cumulatedConsumption', 'consumptionStart'}) do
    local varname = string.format('output%d_%s', i, what)
    table.insert(output,
        varname..'='..tostring(devices.system[varname]):gsub(" ","|"))
end end

local qs = table.concat(output, '&')
local url = string.format('http://%s%s?%s', address, path, qs)
devices.system.CustomCGI{url=url}