커넥션 연결

peer.signal(data)

remote peer가 peer.on('signal') 이벤트를 발생시켰을 때마다 불러 사용한다.

peer.on('signal', data => {})

이 peer가 remote peer에게 **연결에 대한 요청(signaling data)**을 보낼 때 발생된다. 이 안에 보내고 싶은 데이터를 서버 및 다른 peer에 emit하는 과정을 집어넣어야 한다. 특히 데이터는 늘 object 형식을 띄어야 하므로 JSON 형식으로 만들어줘야 한다.

이렇게 보낸 데이터를 remote peer 쪽에서는 **peer.signal(data)**를 통해 받을 수 있다.

data에는 webrtc offer, answer, 아니면 ice candidate가 들어가는데, 이 data를 통해서 두 peer가 연결을 성사시킬 수 있다. 따라서 peer A에서 peer.on(’signal’)을 peer B에게 보낸다면, peer B는 먼저 peer.signal(data)를 통해서 연결 데이터를 받고 연결을 성립시켜야 한다.

데이터 수송신

peer.send(data)

remote peer에 text/binary 데이터를 보내고 싶을 때 사용한다.

peer.on('data', data => {})

data channel을 통해서 remote peer로부터 데이터를 받을 때 발생된다.

과정

Signaling

Data Sending