CLIEN

본문 바로가기 메뉴 바로가기 보기설정 테마설정
톺아보기 공감글
커뮤니티 커뮤니티전체 C 모두의광장 F 모두의공원 I 사진게시판 Q 아무거나질문 D 정보와자료 N 새로운소식 T 유용한사이트 P 자료실 E 강좌/사용기 L 팁과강좌 U 사용기 · 체험단사용기 W 사고팔고 J 알뜰구매 S 회원중고장터 B 직접홍보 · 보험상담실 H 클리앙홈
소모임 소모임전체 ·굴러간당 ·아이포니앙 ·주식한당 ·MaClien ·방탄소년당 ·일본산당 ·소시당 ·개발한당 ·자전거당 ·이륜차당 ·AI당 ·안드로메당 ·골프당 ·소셜게임한당 ·패스오브엑자일당 ·나스당 ·바다건너당 ·곰돌이당 ·가상화폐당 ·콘솔한당 ·클다방 ·걸그룹당 ·키보드당 ·리눅서당 ·물고기당 ·전기자전거당 ·노젓는당 ·사과시계당 ·퐁당퐁당 ·디아블로당 ·찰칵찍당 ·라즈베리파이당 ·3D메이킹 ·X세대당 ·ADHD당 ·AI그림당 ·날아간당 ·육아당 ·배드민턴당 ·야구당 ·농구당 ·블랙베리당 ·비어있당 ·FM당구당 ·블록체인당 ·보드게임당 ·활자중독당 ·볼링친당 ·캠핑간당 ·냐옹이당 ·문명하셨당 ·클래시앙 ·요리한당 ·쿠키런당 ·대구당 ·DANGER당 ·뚝딱뚝당 ·개판이당 ·동숲한당 ·날아올랑 ·e북본당 ·갖고다닌당 ·이브한당 ·패셔니앙 ·도시어부당 ·FM한당 ·맛있겠당 ·포뮬러당 ·젬워한당 ·안경쓴당 ·차턴당 ·총쏜당 ·땀흘린당 ·하스스톤한당 ·히어로즈한당 ·인스타한당 ·IoT당 ·KARA당 ·꼬들한당 ·덕질한당 ·어학당 ·가죽당 ·레고당 ·LOLien ·Mabinogien ·임시소모임 ·미드당 ·밀리터리당 ·땅판당 ·헌팅한당 ·오른당 ·영화본당 ·MTG한당 ·소리당 ·노키앙 ·적는당 ·방송한당 ·PC튜닝한당 ·그림그린당 ·소풍간당 ·심는당 ·품앱이당 ·리듬탄당 ·달린당 ·Sea마당 ·SimSim하당 ·심야식당 ·윈태블릿당 ·미끄러진당 ·축구당 ·나혼자산당 ·스타한당 ·스팀한당 ·파도탄당 ·테니스친당 ·테스트당 ·빨콩이당 ·공대시계당 ·여행을떠난당 ·터치패드당 ·트윗당 ·창업한당 ·VR당 ·시계찬당 ·WebOs당 ·위스키당 ·와인마신당 ·WOW당 ·윈폰이당
임시소모임
고객지원
  • 게시물 삭제 요청
  • 불법촬영물등 신고
  • 쪽지 신고
  • 닉네임 신고
  • 제보 및 기타 제안
© CLIEN.NET
공지[점검] 잠시후 서비스 점검을 위해 약 30분간 접속이 차단됩니다. (금일 18:15 ~ 18:45)

IoT당

Internet of Things

팁.리뷰
날씨를 음성으로 안내 받기 - 홈어시스턴트와 구글 스피커(구글 캘린더 일정 추가) 2

2
무재칠시
5,289
2022-11-30 11:50:18 수정일 : 2022-12-10 20:51:48 49.♡.120.41

시골이라서 날씨에 민감한 부모님을 위하여 원하는 기능은 다음과 같습니다. 

  • 아침8시부터 저녁9시까지 
  • 거실에 TV가 꺼져 있는 동안 
  • 매 정각마다 오늘 날씨와 내일 날씨를 음성으로 안내


작동을 위해 사용한 것들은 다음과 같습니다. 

  • Odroid XU4 보드에 설치한 홈어시스턴트 코어 2022년9월
  • 거실에 있는 레노버 스마트 디스플레이(구글 어시스턴트 지원) 
  • 참고한 글 - Home assistant 날씨 알림 자동화 ( 네이버 날씨 & 구글홈 TTS & App Message)과 유튜브 동영상


우선 홈어시스턴트에 미리 추가로 설치해 둔 HACS(Home Assistant Community Store)로부터 네이버 날씨를 찾아서 통합(Add Integration)합니다. 

  • HACS에서 설치한 후에, 설정 - 기기 및 서비스 - 통합구성요소에서 네이버 날씨를 찾으면 안보이는데 브라우저 캐시를 지우거나 다른 브라우저에서 접속하면 보입니다. 


이제 네이버 날씨가 통합되었으므로, 날씨 갱신 내용을 음성으로 알려주도록 자동화를 하면 되겠습니다. 


홈어시스턴트의 configuration.yaml에서 다음 내용을 확인합니다. 


# Text to speech

tts:

  - platform: google_translate


홈어시스턴트에서 구글 스피커를 찾을 때에는 내부 IP주소를 입력하면 되는데, 공유기에서 찾거나 장비의 설정에서 IP 주소를 확인할 수 있습니다. 레노버 스마트 디스플레이는 설정 화면에서 IP 주소가 보입니다. 추가를 마치면 다음과 같이 나타납니다. 


112358.png


현재는 2개의 기기가 있어서 음성 출력 시에 거실에 둔 레노버 스마트 디스플레이(이름은 '거실'로 지었음)를 선택해 두면 되겠습니다. 


자동화한 내용은 다음과 같습니다. "When 현재날씨정보 changes for 1:00"은 위에 링크한 네이버 블로그 글을 보고 넣었던 내용인데, 날씨 정보가 변하면 말하도록 하는 것이고 저는 매시 정각에 말하도록 하므로 필요하지 않아서 비활성화하였습니다. 


112521.png


Time pattern trigger는 시/분/초로 설정하는데, 분과 초를 각각 0으로 넣으면 매시 정각에 작동시킬 수 있습니다. 


조건은 오전 8시부터 21시까지이고, TV가 켜져 있지 않을 때에만 작동하도록 했습니다. 


레노버 스마트 디스플레이는 이름이 "거실"로 되어 있어서 "미디어 플레이어: Turn off 거실"로 나와 있습니다. 이렇게 끄는 이유는 다음에 말하기 전에 "띠링"하는 소리가 나오게 하려는 것입니다. 20초의 지연은 없어도 될 것 같긴 한데 가끔 말을 안하길래 추가했습니다. 


가장 중요한 것은 TTS인데 다음과 같이 YAML의 내용을 만들었습니다. 


113048.png


service: tts.google_translate_say

data:

  entity_id: media_player.geosil

  message: >-

    지금 날씨는 {{ states.sensor.naver_weather_weathercast_1.state }}, 현재 기온은 {{

    states.sensor.naver_weather_nowtemp_1.state }} 도 이고, 내일 날씨는 {{

    states.sensor.naver_weather_tomorrowmstate_1.state }} 입니다. 내일 최저 기온은 {{

    states.sensor.naver_weather_tomorrowmtemp_1.state }}도 입니다. 오늘 비 예상은 {{

    states.sensor.naver_weather_rainystart_1.state }} 입니다. 

  language: ko


위 내용의 결과로 예를 들면 다음과 같이 말하게 됩니다. 


"지금 날씨는 맑음이고 어제보다 14도 낮습니다. 현재 기온은 1도이고 내일 날씨는 맑음입니다. 내일 최저 기온은 마이너스 7도 입니다. 오늘 비 예상은 비안옴입니다."

  • 위 캡쳐에는 오늘은 비안옴으로 되어 있으나... -> 비가 예상되는 경우 예를 들면 "8시"라고 나옵니다. 그러므로, 오늘 비 예상은 ---- 입니다. 가 낫겠네요. 


레노보 스마트 디스플레이의 볼륨을 어느 정도 높여 놓아서 부엌에서도 잘 들립니다. 


하루에 여러 번 말할 필요는 없지만, 최신으로 변경되는 날씨 정보를 계속 알려주는 것이고 특히 sensor.naver_weather_rainystart_1, 비가 시작하는 시각을 알려주는 기능은 반려 동물 산책을 빨리 다녀 오려고 할 때 유용합니다. 


2022-12-03 추가 

- 구글 캘린더 일정도 알리면 좋을 것 같아서 테스트를 해 보았습니다.(구글 캐스트 이름 변경 및 지메일아이디_com은 홈어시스턴트에 연동한 각자의 캘린더 계정에 따라 수정 필요하고, 구글 개발자아이디를 만들어서 OAuth 연동 합니다. 그리고, api 서비스 중 Google Calendar api를 Enable시켜주어야만 연동이 됩니다.) 


service: tts.google_translate_say

data:

  entity_id: media_player.geosil

  message: >-

    오늘 일정이 있습니다.         

    {% for cal_events in expand(states.calendar.지메일아이디_com) %}                      

        {% if as_timestamp(cal_events.attributes.start_time) | timestamp_custom('%H:%M') == "00:00" %}

          {{ cal_events.attributes.message }}

        {% else %} 

            {{ as_timestamp(cal_events.attributes.start_time) | timestamp_custom('%m월, %d일, %H:%M') }}, 

            {{ cal_events.attributes.message }}

        {% endif %}

    {%- endfor -%}"  

  language: ko


일정이 오늘이 아니면 넘어가도록 템플릿 조건을 달 수 있습니다. 


  {{as_timestamp(state_attr('calendar.지메일아이디_com','start_time'))|timestamp_custom('%-d')

  == as_timestamp(now())|timestamp_custom('%-d')}}


아직은 일정이 1개만 나오는 듯합니다. 

  • for 문이 필요 없는 셈입니다. 
  • 굳이 날짜를 비교할 필요가 없어서 위에 취소선을 그었습니다. 
  • 만약 내일 일정이 2개 있다면, 오늘 저녁 시간에는 그 중에 1개만 나오므로, 날짜도 말하게 했습니다. 시간이 있는 일정이라면 약속 시각도 말하게 했습니다. 
무재칠시 님의 게시글 댓글
SIGNATURE
황상(제자) 曰 "저는 머리도 나쁘고 앞뒤가 꽉 막히고 분별력도 모자랍니다."
다산 曰 "하지만, 넌 공부하는 자들이 갖고 있는 세가지 결점을 하나도 갖고 있지 않구나."

學子有大病三(학자유대병삼) : 배우는 자에게는 세가지 큰 병이 있을 수 있다. 

一敏於記誦(일민어기송)  : 첫째는 기억력이 뛰어난 결점 - 한번보면 척척 외우는 아이들은 그 뜻을 깊이 음미할 줄을 모른다.
二銳於述作(이예어술작) : 둘째는 글 짓는 재주가 좋은 결점 - 제목만 주면 글을 지어내지만 저도 모르게 경박하고 들뜨게 된다. 
三捷於悟解(삼첩어오해) : 세째는 이해가 빠른 결점 - 한마디만 말귀를 던져주면 금새 말귀를 알아듣지만 곱씹지 않으므로 깊이가 없다. 

둔하지만 공부에 파고드는 사람은 식견이 넓어지고 꽉 막혔지만 그것이 한번 뚫리면 거칠것이 없으며  답답하지만 꾸준히 연마하는 사람은 그 빛이 더욱 반짝인다.

저의 개인 블로그(소소한 리뷰) - http://imky.tistory.com
서명 더 보기 서명 가리기
  • 주소복사
  • Facebook
  • X(Twitter)
댓글 • [2] 을 클릭하면 간단한 회원메모를 할 수 있습니다.
후안곤잘레스
IP 211.♡.50.197
01-09 2023-01-09 10:40:25
·
저도 네이버날씨로 ha에 비슷하게 구현해놓아서 아침출근시 유용하게 쓰고 있어요.
정식 컴포넌트가 아니라서 아주 가끔 네이버날씨가 개편을 하는 경우 제작자님이 업데이트 해줘야 하는 경우가 있더라고요. 그거 빼고는 잘 쓰고 있습니다.
무재칠시
IP 58.♡.207.150
01-10 2023-01-10 22:28:01
·
@후안곤잘레스님 특히 어제와의 온도 차이와 비 시작 시간을 정각마다 음성으로 안내 받으니까 외출 시 옷 챙겨 입을 때 도움이 되는 것 같습니다.
새로운 댓글이 없습니다.
이미지 최대 업로드 용량 15 MB
업로드 가능 확장자 jpg,gif,png,jpeg,webp
지나치게 큰 이미지의 크기는 조정될 수 있습니다.
목록으로
글쓰기
목록으로 댓글보기 이전글 다음글
아이디  ·  비밀번호 찾기 회원가입
이용규칙 운영알림판 운영소통 재검토요청 도움말 버그신고
개인정보처리방침 이용약관 책임의 한계와 법적고지 청소년 보호정책
©   •  CLIEN.NET
보안 강화를 위한 이메일 인증
안전한 서비스 이용을 위해 이메일 인증을 완료해 주세요. 현재 회원님은 이메일 인증이 완료되지 않은 상태입니다.
최근 급증하는 해킹 및 도용 시도로부터 계정을 보호하기 위해 인증 절차가 강화되었습니다.

  • 이메일 미인증 시 글쓰기, 댓글 작성 등 게시판 활동이 제한됩니다.
  • 이후 새로운 기기에서 로그인할 때마다 반드시 이메일 인증을 거쳐야 합니다.
  • 2단계 인증 사용 회원도 최초 1회는 반드시 인증하여야 합니다.
  • 개인정보에서도 이메일 인증을 할 수 있습니다.
지금 이메일 인증하기
등록된 이메일 주소를 확인하고 인증번호를 입력하여
인증을 완료해 주세요.