original source : https://youtu.be/RYiscsdICrs

node js를 기반으로 한 server를 이용한 연동 

위에서 body-parser는 post되어 들어온 데이터를 req.body를 통해 접근가능하게 한다.

위에서 env는 .env 화일에 저장되어 있는 여러 stripe key에 접근하기 위해 사용한다.(환경변수로저장한것에 접근하는걸로 이해)

위) 사용자를 stripe에 연결하려는 경우 사용자는 개발자가 제공한 ui (예를 들어 button)클릭해서 server에 접근하게 한다. 그러면  account , accountLink를 만들고 이른 사용자에게 되돌려 주는데 이안에는 링크주소, 유효기간이 들어가 데이터를 되돌려 준다. 그럼 사용자는 링크주소를 통해 stripe가 제공한 flow process를 거쳐 필요한 정보를 넣게 되고 마무리되면 success_url, failure_url로 사용자를 redirect하게 된다.

위) 미국 회사 사용자 가입시 입력해야 하는 기본 정보들이다. 이를 개발자가 미리 가지고 있다고 한다면 아래와 같이 prefill할수 있다.

local network에 google assistant sdk를 구현하는 node js server를 만든다.

이는 google home speaker와 같이 작동하나 mic와 speaker가 없다.

smart things sensor 기기에서 발생한 이벤트는 node server에 전달되고 node server는 같은 local network에 있는 다른 google home 기기에 broadcast 해서 알림을 수행한다.

smart things기기에서 발생한 이벤트는 webcore를 이용해서 만든 조건에 따른 action에 따라 node js에 전달된다.


전체 설치와 기본 사용 방법 설명 동영상

https://www.youtube.com/watch?v=yYVUs_mKVrM


smart things community page

Google Assistant Relay V2.0 – Google Home Audio Notifications

https://community.smartthings.com/t/release-google-assistant-relay-v2-0-google-home-audio-notifications/136473

git hub page

Google Assistant Relay V2.0 – Google Home Audio Notifications

https://github.com/greghesp/assistant-relay

전반적인 google assistant sdk를 이용한 프로젝트에 대한 설명  

https://developers.google.com/assistant/sdk/guides/service/python/embed/config-dev-project-and-account

google assistant sdk를 이용한 프로젝트의 경우 Actions Console (https://console.actions.google.com/) 에 들어가서 프로젝트를 만들거나 기존 프로젝트는 등록해주어한다.

다 하고 나면 아래 그림과 같이 된다.

image

 

google api 사용을 위한 설정

https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/

client id에 사용된 jacob 은 다운 받는 oauth credential file의 이름으로 사용된다. 또 이 화일은 assistant relay의 assistant-relay-masterserverconfigurationssecrets 내에 저장된다. ( jacob.json )

image

webcore 설치 방법

설치 방법이 길고 복잡하나 동영상을 그대로 따르면 문제 발생하지 않는다.

https://www.youtube.com/watch?v=y_ElUwmmI6Y

참고 ) 설명 페이지

 https://wiki.webcore.co/#Opening_the_new_dashboard_from_your_phone

webcore 작업 페이지

https://dashboard.webcore.co

node version 8 (이때당시 10까지 나와 있었으나 10을 설치해서 사용하면 문제 가 발생했다.)

https://nodejs.org/dist/latest-v8.x/ 에서 x64 msi형식으로다운받는다. node 설치시

아래와 같은 문제는 node version이 10이어서 발생한 문제였다.

node 8이어야 한다고 함.

assistant relay를 windows cmd에서 설치하는 과정에서 아래와 같은 문제가 발생

npm ERR! No git binary found in $PATH

Could not find Git in your PATH environment variable – Windows

그래서 일단 https://desktop.github.com/ 를 설치했다.

assistant relay를 windows cmd에서 설치하는 과정에서 python이 없어서 문제 발생

https://www.howtogeek.com/197947/how-to-install-python-on-windows/

과 같은 방법을 통해 python 설치

https://www.python.org/downloads/release/python-2715/ 이곳에서 아래 화일을 다운 받아 설치 Windows x86-64 MSI installer

assistant relay를 windows cmd에서 설치하는 과정에서 

Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.8.0/node-v64-win32-x64-unknown.tar.gz

image

와 같은 에러 발생 이는 컴퓨터네 virus 방어 프로 그램이 연결을 방해 해서 발생했다. 잠시 방어프로그램을 정지 시킨다.

참조) 

npm install grpc fail

https://github.com/grpc/grpc-node/issues/140

npm init      —– package.json이 없는 경우. 명령어 실행 화일을 만들수 있다.

npm install     —– 실제 library를 설치

npm run start     —– 실행

window에서 ip 정보 알아 내는 방법

cmd 에서 ipconfig 명령어를 이용한다. 

( google home device간의 broadcast는 local network안에서만 발행하므로 내 local ip address가 프로젝트에서 사용되었다. )

node js 설치와 google assistant relay가 정상적으로 설치되었다면 웹브라우져에서 http://10.1.10.13:3000 를 입력하면 “Cannot GET /” 또는 “dude, chill, its quiet time” (quiet mode시에는)가 출력된다.

local network에 google assistant sdk를 구현하는 node js server를 만든다.

이는 google home speaker와 같이 작동하나 mic와 speaker가 없다.

smart things sensor 기기에서 발생한 이벤트는 node server에 전달되고 node server는 같은 local network에 있는 다른 google home 기기에 broadcast 해서 알림을 수행한다.

smart things기기에서 발생한 이벤트는 webcore를 이용해서 만든 조건에 따른 action에 따라 node js에 전달된다.


전체 설치와 기본 사용 방법 설명 동영상

https://www.youtube.com/watch?v=yYVUs_mKVrM


smart things community page

Google Assistant Relay V2.0 – Google Home Audio Notifications

https://community.smartthings.com/t/release-google-assistant-relay-v2-0-google-home-audio-notifications/136473

git hub page

Google Assistant Relay V2.0 – Google Home Audio Notifications

https://github.com/greghesp/assistant-relay

전반적인 google assistant sdk를 이용한 프로젝트에 대한 설명  

https://developers.google.com/assistant/sdk/guides/service/python/embed/config-dev-project-and-account

google assistant sdk를 이용한 프로젝트의 경우 Actions Console (https://console.actions.google.com/) 에 들어가서 프로젝트를 만들거나 기존 프로젝트는 등록해주어한다.

다 하고 나면 아래 그림과 같이 된다.

image

 

google api 사용을 위한 설정

https://console.developers.google.com/apis/api/embeddedassistant.googleapis.com/

client id에 사용된 jacob 은 다운 받는 oauth credential file의 이름으로 사용된다. 또 이 화일은 assistant relay의 assistant-relay-masterserverconfigurationssecrets 내에 저장된다. ( jacob.json )

image

webcore 설치 방법

설치 방법이 길고 복잡하나 동영상을 그대로 따르면 문제 발생하지 않는다.

https://www.youtube.com/watch?v=y_ElUwmmI6Y

참고 ) 설명 페이지

 https://wiki.webcore.co/#Opening_the_new_dashboard_from_your_phone

webcore 작업 페이지

https://dashboard.webcore.co

node version 8 (이때당시 10까지 나와 있었으나 10을 설치해서 사용하면 문제 가 발생했다.)

https://nodejs.org/dist/latest-v8.x/ 에서 x64 msi형식으로다운받는다. node 설치시

아래와 같은 문제는 node version이 10이어서 발생한 문제였다.

node 8이어야 한다고 함.

assistant relay를 windows cmd에서 설치하는 과정에서 아래와 같은 문제가 발생

npm ERR! No git binary found in $PATH

Could not find Git in your PATH environment variable – Windows

그래서 일단 https://desktop.github.com/ 를 설치했다.

assistant relay를 windows cmd에서 설치하는 과정에서 python이 없어서 문제 발생

https://www.howtogeek.com/197947/how-to-install-python-on-windows/

과 같은 방법을 통해 python 설치

https://www.python.org/downloads/release/python-2715/ 이곳에서 아래 화일을 다운 받아 설치 Windows x86-64 MSI installer

assistant relay를 windows cmd에서 설치하는 과정에서 

Tried to download(403): https://storage.googleapis.com/grpc-precompiled-binaries/node/grpc/v1.8.0/node-v64-win32-x64-unknown.tar.gz

image

와 같은 에러 발생 이는 컴퓨터네 virus 방어 프로 그램이 연결을 방해 해서 발생했다. 잠시 방어프로그램을 정지 시킨다.

참조) 

npm install grpc fail

https://github.com/grpc/grpc-node/issues/140

npm init      —– package.json이 없는 경우. 명령어 실행 화일을 만들수 있다.

npm install     —– 실제 library를 설치

npm run start     —– 실행

window에서 ip 정보 알아 내는 방법

cmd 에서 ipconfig 명령어를 이용한다. 

( google home device간의 broadcast는 local network안에서만 발행하므로 내 local ip address가 프로젝트에서 사용되었다. )

node js 설치와 google assistant relay가 정상적으로 설치되었다면 웹브라우져에서 http://10.1.10.13:3000 를 입력하면 “Cannot GET /” 또는 “dude, chill, its quiet time” (quiet mode시에는)가 출력된다.