ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [GOOGLE HOME] 1. Dialogflow 구축하기
    GOOGLE HOME 2020. 6. 2. 14:59
    반응형

    이번 포스팅에서는 구글 홈 스피커(Google Assistant)를 사용하여 서버와 통신을 하려고 한다.

    예를 들면 스피커를 통해 "블라인드 켜 줘" 라는 명렁어를 제시하면 Dialogflow를 통해 서버와 Webhook 통신 후 Response 값을 스피커에 출력하려고 한다.

     

     

    https://console.developers.google.com/projectselector2/apis/dashboard?organizationId=0&supportedpurview=project

     

    Google Cloud Platform

    하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요.

    accounts.google.com

     

     

    먼저 Google APIs에서 프로젝트를 생성한다.

     

     

    https://dialogflow.cloud.google.com/#/getStarted

     

    Dialogflow

    Updating Actions on Google...

    dialogflow.cloud.google.com

     

     

    Dialogflow에 접속 후 Create Agent를 클릭한다.

     

     

    언어, 시간, Google APIs에서 생성한 프로젝트를 선택 후 생성한다.

     

    Entity를 생생헌다.

     

     

    Intent를 생성한다.

    "블라인드 켜 줘" 라는 명렁어의 대한 응답 값을 끝으로 마이크를 종료하게 설정한다.

    Webhook을 통하여 서버와 통신하게 설정을 한다.

     

     

    Webhook 설정을 한다.

     

     

    서버에서 Response 설정을 한다.

    필자는 Spring을 사용하여 서버를 구축하였다.

    @RequestMapping(value = "/google/webhook.do", method = {RequestMethod.GET, RequestMethod.POST})
    public @ResponseBody JSONObject webhook(HttpServletRequest request, @RequestBody Map<String, Object> map) {
    	System.out.println("webhook=====" + map);
    
    	JSONObject jsonObject = new JSONObject();
    	JSONObject payloadObject = new JSONObject();
    	JSONObject googleObject = new JSONObject();
    	googleObject.put("expectUserResponse", false);
    	payloadObject.put("google", googleObject);
    	jsonObject.put("fulfillmentText", "블라인드를 켰습니다.");
    	jsonObject.put("payload", payloadObject);
    
    	return jsonObject;
    }

     

     

    Dialogflow에서 테스트를 해보자!

    정상적으로 서버에서 보낸 Response 값(블라인드를 켰습니다.)이 출력되었다.

     

    반응형
Designed by Tistory.