RESTful Binary Sensor


rest 바이너리 센서 플랫폼은 장치, 애플리케이션 또는 웹 서비스의 RESTful API에 의해 노출되는 주어진 엔드 포인트를 연관하고 있습니다. 이진 센서는 GET 및 POST requests를 지원합니다.

JSON 메시지는 1, "1", TRUE, true, on 혹은 open과 같은 다른 값을 포함 할 수 있습니다. 값이 중첩된 경우 template을 사용하십시오.

{
    "name": "Binary sensor",
    "state": {
        "open": "true",
        "timestamp": "2016-06-20 15:42:52.926733"
    }
}

설정

이 센서를 활성화하려면 GET requests을 위해 configuration.yaml 파일에 다음 라인을 추가하십시오 :

# Example configuration.yaml entry
binary_sensor:
  - platform: rest
    resource: http://IP_ADDRESS/ENDPOINT

POST request 의 경우:

# Example configuration.yaml entry
binary_sensor:
  - platform: rest
    resource: http://IP_ADDRESS/ENDPOINT
    method: POST

Configuration Variables

resource

(string)(Required)

The resource or endpoint that contains the value.

Default value:

string

method

(string)(Optional)

The method of the request.

Default value:

GET

name

(string)(Optional)

Name of the REST binary sensor.

Default value:

REST Binary Sensor

device_class

(string)(Optional)

Sets the class of the device, changing the device state and icon that is displayed on the frontend.

value_template

(template)(Optional)

Defines a template to extract the value.

payload

(string)(Optional)

The payload to send with a POST request. Usually formed as a dictionary.

verify_ssl

(boolean)(Optional)

Verify the certification of the endpoint.

Default value:

true

timeout

(integer)(Optional)

Defines max time to wait data from the endpoint.

Default value:

10

authentication

(string)(Optional)

Type of the HTTP authentication. basic or digest.

username

(string)(Optional)

The username for accessing the REST endpoint.

password

(string)(Optional)

The password for accessing the REST endpoint.

headers

(list | string)(Optional)

The headers for the requests.

URL이 엔드 포인트 또는 리소스와 정확히 일치하는지 확인하십시오.

사례

이 섹션에는 이 센서를 사용하는 방법에 대한 실제 예가 나와 있습니다.

aREST sensor

aREST 이진 센서를 사용하는 대신 REST 이진 센서로 직접 aREST를 지원하는 장치의 값을 검색 할 수 있습니다.

binary_sensor:
  - platform: rest
    resource: http://192.168.0.5/digital/9
    method: GET
    name: Light
    device_class: light
    value_template: '{{ value_json.return_value }}'

HTTP 인증으로 보호된 엔드 포인트에 액세스

REST 센서는 HTTP 인증 및 사용자 정의된 헤더를 지원합니다.

binary_sensor:
  - platform: rest
    resource: http://IP_ADDRESS:5000/binary_sensor
    username: ha1
    password: test1
    authentication: basic
    headers:
      User-Agent: Home Assistant
      Content-Type: application/json

헤더에는 모든 관련 세부 사항이 포함됩니다. 또한 토큰으로 보호되는 엔드 포인트에 액세스 할 수 있습니다.

Content-Length: 1024
Host: IP_ADDRESS1:5000
Authorization: Basic aGExOnRlc3Qx
Accept-Encoding: identity
Content-Type: application/json
User-Agent: Home Assistant