본문 바로가기
서버/리눅스 서버

HomeAssistant 구글 홈 연동하기

by 도정진 ㅋㅋ잠자 2020. 7. 13.

안녕하세요? 


설정하기 귀찮아서 HA --> HA Connector --> ST --> Google Home 이렇게 사용하고 있었는데요.


아예 HA에 바로 Google Home 을 연동하였습니다.


중간에 작업 부분을 스샷을 떠놓지 않아서 많이 생략된 감이 있는데요. 하기 가이드를 통해서 쉽게 설정이 가능합니다.





1. 구글 테스트 앱 생성


https://hakorea.github.io/integrations/google_assistant/





2. API 키 받기


구글 클라우드 콘솔로 이동하여 상기 메뉴에 프로젝트를 생성한 구글 어시스턴트 프로젝트로 선택하고 API 키를 생성합니다.






상기 키생성을 하면, json 파일이 받아집니다. 그 파일을 config 폴더로 복사하세요.





3. HA 설정


저는 키 파일을 하기와 같이 저장했습니다.


root@aml:/opt/hass/config# vim google_assistant.json


{

  "type": "service_account",

  "project_id": "",

  "private_key_id": "",

  "private_key": "-----BEGIN PRIVATE KEY-----\n\n-----END PRIVATE KEY-----\n",

  "client_email": "",

  "client_id": "",

  "auth_uri": "",

  "token_uri": "",

  "auth_provider_x509_cert_url": "",

  "client_x509_cert_url": ""

}


그리고 configuration.yaml 이나 적절한 위치에 하기 설정을 합니다.


프로젝트 ID 를 넣고 expose_by_default 를 끕니다. 더미로 만든 스위치가 많아서 그렇습니다.


entitiy_config 을 이용해 일일이 설정합니다.


google_assistant:

  project_id: PROJECT_ID

  service_account: !include google_assistant.json

  expose_by_default: false

  entity_config:

    switch.aircon_switch:

      expose: true

      name: 에어컨

    switch.boiler_bath_onoff:

      expose: true

      name: 보일러

    switch.computer:

      expose: true

      name: 컴퓨터

    switch.door_open:

      expose: true

      name: 현관문

    switch.elribeiteo:

      expose: true

      name: 현관문

    switch.ilgwalsodeung:

      expose: true

      name: 일괄소등

    switch.konsenteu1:

      expose: true

      name: 콘센트1

    switch.konsenteu2:

      expose: true

      name: 콘센트2

    switch.television:

      expose: true

      name: TV

    fan.seonpunggi:

      expose: true

      name: 선풍기

    fan.xiaomi_air_purifier_2s:

      expose: true

      name: 공기청정기

    light.geosildeung:

      expose: true

      name: 거실등

    sensor.0x00158d0003cd1d89_humidity:

      expose: true

      name: 습도

    sensor.0x00158d0003cd1d89_pressure:
      expose: true
      name: 기압
    sensor.0x00158d0003cd1d89_temperature:
      expose: true
      name: 온도





4. 구글 어시스턴트 연동





쉽게 연동이 되었습니다.


이제 ST 허브는 빼야겠습니다.. 


다음에 필요할 때 사용할 목적으로 가지고 있어야겠습니다.


감사합니다.




댓글6