Homebridge에서 지원할 수 없는 가전 기기를 Google Home에서 작동(IRKit 사용)
3712 단어 GoogleHomeifttt집 해킹IoT
개요
Google Home으로 전화를 걸어 실링 라이트의 리모컨 버튼을 누르는 것과 같은 작업을 수행합니다.
사정에 관심이없는 분은 주제에 → 적외선 신호 획득
배경
에어컨을 Homebridge 대응시키거나 , Philips Hue를 사 현관 등에 배치해, 집 IoT화의 혜택을 누리는 가운데, 방에 원래 비치되어 있던 실링 라이트가 남아 있었다…
남겨진 이유
씰링 라이트의 사양과 Homebridge의 설정 파일의 포맷이 맞지 않는다.
Homebridge 구성 파일
온과 오프의 2 상태를 상정하고, 「온으로 하는 신호」 「오프로 하는 신호」를 기술한다.
씰링 라이트 사양
에어컨을 Homebridge 대응시키거나 , Philips Hue를 사 현관 등에 배치해, 집 IoT화의 혜택을 누리는 가운데, 방에 원래 비치되어 있던 실링 라이트가 남아 있었다…
남겨진 이유
씰링 라이트의 사양과 Homebridge의 설정 파일의 포맷이 맞지 않는다.
Homebridge 구성 파일
온과 오프의 2 상태를 상정하고, 「온으로 하는 신호」 「오프로 하는 신호」를 기술한다.
씰링 라이트 사양
켜기/끄기 신호가 분리되어 있지 않기 때문에, 2개 점등과 완전 소등의 2상태만을 꺼내 설정 파일에 쓴다고 할 수 없다.
신호는 1개이기 때문에 억지로 설정 파일을 써도, 「홈」어플리상의 표시가 기분 나쁘게 된다.
(예: 2개 점등: 켜짐, 1개 점등: 꺼짐, 야간 조명: 켜짐, 완전 꺼짐: 꺼짐)
Homebridge를 사용할 때까지 없었습니까?
→GoogleHome과 IFTTT로 조작 가능
적외선 신호 획득
ht tp // 게이치 r t. 이 m
IRKit을 향해 리모컨을 조작하고 적외선 신호를 읽은 후 다음 명령을 실행합니다.
% curl -i "http://[IRKitのIPアドレス]/messages" -H "X-Requested-With: curl"
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/2.1.3.13.gbe33d36
Content-Type: text/plain
{"format":"raw","freq":38,"data":[18031,8755,1190,1190,1190,3341,1190,3341,1190,3341,1190,1190,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,1190,1190,1190,1190,1190,1190,1190,1190,3341,1190,3341,1190,1190,1190,3341,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,65535,0,9379,18031,4400,1190]}
clientkey와 deviceid 얻기
우선 clienttoken을 취득
% curl -i "http://[IRKitのIPアドレス]/keys" -d '' -H "X-Requested-With: curl"
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/2.1.3.13.gbe33d36
Content-Type: text/plain
{"clienttoken":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"}
취득한 clienttoken을 사용해 clientkey와 deviceid를 취득
이 URL은 로컬 IP 주소가 아닙니다.
curl -i -d "clienttoken=XXXXXXXXXXXXXXXXXXXXX" "https://api.getirkit.com/1/keys"
HTTP/1.1 200 OK
Server: ngx_openresty
Date: Tue, 07 Jan 2014 08:46:06 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 94
Connection: keep-alive
X-Content-Type-Options: nosniff
{"deviceid":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","clientkey":"XXXXXXXXXXXXXXXXXXXXXXX"}
IFTTT 애플릿 만들기
This 부
설정은 선호합니다.
이미지의 예라면, "조명"보다 "빛"이 이해하기 쉽다 (느낌).
Then 부
Content Type이 절망적이지만 x-www-form-urlencoded
Body(optional)란에 쓰는 내용
clientkey=取得した文字列に置き換え&deviceid=取得した文字列に置き換え&message=取得した赤外線信号JSONに置き換え
이제 주문을 주장하면 조명을 조작할 수 있게 된다.
문제
전 점등에서 소등으로 단번에 천이하고 싶을 때 등에 반복 주창하는 것이 번거롭다.
Reference
이 문제에 관하여(Homebridge에서 지원할 수 없는 가전 기기를 Google Home에서 작동(IRKit 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tkms0106/items/1c795e616c81821564b6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
% curl -i "http://[IRKitのIPアドレス]/messages" -H "X-Requested-With: curl"
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/2.1.3.13.gbe33d36
Content-Type: text/plain
{"format":"raw","freq":38,"data":[18031,8755,1190,1190,1190,3341,1190,3341,1190,3341,1190,1190,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,1190,1190,1190,1190,1190,1190,1190,1190,3341,1190,3341,1190,1190,1190,3341,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,1190,3341,1190,3341,1190,3341,1190,3341,1190,3341,1190,65535,0,9379,18031,4400,1190]}
우선 clienttoken을 취득
% curl -i "http://[IRKitのIPアドレス]/keys" -d '' -H "X-Requested-With: curl"
HTTP/1.0 200 OK
Access-Control-Allow-Origin: *
Server: IRKit/2.1.3.13.gbe33d36
Content-Type: text/plain
{"clienttoken":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXX"}
취득한 clienttoken을 사용해 clientkey와 deviceid를 취득
이 URL은 로컬 IP 주소가 아닙니다.
curl -i -d "clienttoken=XXXXXXXXXXXXXXXXXXXXX" "https://api.getirkit.com/1/keys"
HTTP/1.1 200 OK
Server: ngx_openresty
Date: Tue, 07 Jan 2014 08:46:06 GMT
Content-Type: application/json; charset=utf-8
Content-Length: 94
Connection: keep-alive
X-Content-Type-Options: nosniff
{"deviceid":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX","clientkey":"XXXXXXXXXXXXXXXXXXXXXXX"}
IFTTT 애플릿 만들기
This 부
설정은 선호합니다.
이미지의 예라면, "조명"보다 "빛"이 이해하기 쉽다 (느낌).
Then 부
Content Type이 절망적이지만 x-www-form-urlencoded
Body(optional)란에 쓰는 내용
clientkey=取得した文字列に置き換え&deviceid=取得した文字列に置き換え&message=取得した赤外線信号JSONに置き換え
이제 주문을 주장하면 조명을 조작할 수 있게 된다.
문제
전 점등에서 소등으로 단번에 천이하고 싶을 때 등에 반복 주창하는 것이 번거롭다.
Reference
이 문제에 관하여(Homebridge에서 지원할 수 없는 가전 기기를 Google Home에서 작동(IRKit 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tkms0106/items/1c795e616c81821564b6
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
clientkey=取得した文字列に置き換え&deviceid=取得した文字列に置き換え&message=取得した赤外線信号JSONに置き換え
전 점등에서 소등으로 단번에 천이하고 싶을 때 등에 반복 주창하는 것이 번거롭다.
Reference
이 문제에 관하여(Homebridge에서 지원할 수 없는 가전 기기를 Google Home에서 작동(IRKit 사용)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tkms0106/items/1c795e616c81821564b6텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)