사용자 직접 입력 발화인지, 버튼 클릭을 통한 발화인지 구분할 수 있는 방법이 있나요?

JSON 포맷으로 응답 구성시 button > extra 필드를 활용해보시기 바랍니다.

'extra' 필드는 버튼의 block이나 message action으로 블록을 호출하는 경우 작업자의 스킬 서버에 추가적으로 제공하는 정보입니다.

스킬 요청 Payload action > clientExtra 필드에서 입력해둔 임의의 값을 확인할 있게 됩니다.


필드에 입력 가능한 타입은 Map<String, Any> 입니다.

사용자 직접 입력 발화와 버튼 클릭을 통해 발송되는 메시지(발화) 동일한 경우,

'clientExtra' 필드 값이 포함되어있는지 여부를 확인하는 방법으로 구분합니다.


)

- clientExtra 필드에 포함 : 버튼 클릭을 통한 발화

- clientExtra 필드에 포함되지 않음 : 사용자 직접 입력 발화


챗봇 관리자센터에서 응답 구성시에는 버튼이나 바로연결 설정에서 버튼 기능을

블록 연결이나 메시지 전송으로 설정하면 추가 정보를 입력할 있습니다.


추가 정보에 입력한 값은 'extra' 필드 기능과 동일하게 동작됩니다.


※ 챗봇 관리자센터 도움말 ▶ 바로가기