본문 바로가기
개발Study/IP Camera

Web hook

by happy90 2022. 1. 25.
SMALL

motion eye에서 제공하는 web hook이 유용해보여서 이것에 대해 알아보고자 한다.

web 통신의 기본은 client가 요청할 때 server가 데이터를 전송하는 방식이다.
web hook을 이용하면 반대로 서버에서 어떤 이벤트가 있을 때 client에게 데이터를 전송할 수 있다.
web hook을 전송하고 받는 순간만큼은 server와 client가 반대라고 생각하면 된다.

예를 들어 서버에 mail이 수신되었다. 이 때 client에게 메일이 수신되었음을 알리는 것이다.

server에서 어떤 이벤트가 발생할 때 client에 데이터를 전송하는 callback을 구현하여 이루어진다고 한다.

근데 서버에서 어떤 클라이언트에게 보내는지를 어떻게 결정하는 것인가???
모든 client에게 전송하면 안될 것이고, 발생한 이벤트가 해당되는 client에게만 전송해야 하지 않을까.
-> client 주소를 넣어준다고 한다...

결국 이를 구현하려면 client(B)또한 어떤 형태이든 web server가 실행되고 있어야 한다.
그리고 이 B server에는 web hook을 전송하는 서버(A) 가 web hook을 전송했을 때 받아서 처리할 수 있는 url과 API가 구현되어 있어야 한다.
B가 A에게 event가 발생하면 web hook을 달라고 요청하고, A는 event가 발생했을 때 B가 알려준 url로 web hook을 전송하는 것이다.

내가 이해한것이 맞다면 client로 사용할 어플에 간단한 web server를 구현해넣어야 할 것이다.

LIST

댓글