웹훅이 무엇이고 왜 챗봇에서 특히 자주 등장하는지를 짧게 정리한 입문 글이다. 위키백과의 번역투 정의를 풀어 쓴 뒤, 팬클럽 서비스의 댓글 알림 예시와 챗봇의 메시지 흐름 4단계로 설명한다.
핵심 포인트- 웹훅은 이벤트가 발생한 프로그램이 다른 내부·외부 프로그램에 변경 사항을 알려 주는, REST API 를 이용한 기술적 방법이다.
- 데이터 변경을 아는 방법은 둘뿐이다. 주기적으로 내가 가서 확인하는 크롤링, 그리고 변경이 생겼을 때 알려 주는 웹훅.
- 웹훅을 붙이는 이유 ①: 사용자에게 더 빠른 피드백이 가능해진다.
- 웹훅을 붙이는 이유 ②: 제공하지 않으면 사용자가 주기적 크롤링을 하게 되어 서버 부하가 몇 배로 커진다.
- 챗봇은 사용자가 메시지를 남기면 즉시 반응해야 하므로 주기적 크롤링 방식으로는 성립하지 않고, 웹훅이 필수다.
상세 정리- 예시로 팬클럽 서비스를 든다. 게시물에 댓글이 달리면 작성자에게 이메일을 보내는 기능 자체가 기본적으로 웹훅으로 간주된다.
- 이메일 대신 슬랙으로 메시지를 보내는 것도 같은 범주다.
- 챗봇 웹훅의 흐름을 4단계로 정리한다. ① 사용자가 채팅창에 대화를 입력해 전송하고 ② 채팅 서버가 웹훅으로 챗봇 서버에 메시지를 전달하고 ③ 챗봇 서버가 그 웹훅에 대한 응답을 반환하고 ④ 채팅 서버가 사용자에게 응답을 돌려준다.
- 카카오톡 챗봇이나 슬랙의 여러 챗봇 기능을 만들 때 모두 웹훅을 쓰게 된다고 짚는다.
왜 읽나챗봇이나 알림 기능을 만들며 웹훅이라는 말을 계속 듣는데 정확히 무엇인지 잡히지 않는 사람에게 개념과 흐름을 짧게 정리해 준다.