Dialogflow 정리

0. 환경
  django 서버에서 dialogflow rest api를 호출.

1. IAM permission 'XXX' on 'projects/PROJECT_ID/agent' denied. 오류
  Dialogflow agent 생성 시 자동으로 서비스 계정을 생성해주는데 권한이 "Dialogflow API 클라이언트"만 들어가있다.
이 상태로 생성 API를 호출하면 위 에러가 발생한다.
API를 호출할 때 사용할 서비스 계정에 "Dialogflow API 관리자" 권한을 추가해주면 된다.

2. Read-only field 'XXX' cannot be set. (INVALID_ARGUMENT) 오류
  연계 인텐트를 업데이트(batchUpdate)할 때 발생했다.
Intent의 읽기전용 필드인 rootFollowupIntentName, parentFollowupIntentName, followupIntentInfo를 수정하려고 하면 발생하는 것 같다.
updateMask parameter를 통해 수정하려는 필드를 명시해주는 방법으로 해결했다.
updateMask는 "name,displayName,..." 처럼 수정하려는 필드를 ,로 구분된 문자열로 써주면 되는 것 같다(https://developers.google.com/protocol-buffers/docs/reference/google.protobuf?_ga=2.29673912.-664540806.1558407355#fieldmask 참조).


  

이 블로그의 인기 게시물

Postgresql에서 5432 port가 열려있냐는 문제(Ubuntu 기준)

vue에서 v-html에 포함된 class의 css가 적용되지 않는 경우

Linux screen 명령어 정리