[PonsLink] 화상회의 앱을 만들려다 협업 방을 만들게 됐다
처음에는 화상회의 앱을 만들면 된다고 생각했다. 카메라와 마이크가 켜지고 링크를 보내면 만남은 시작된다. 데모로는 충분했다.
그런데 실제로 사람을 만나게 해 보니 통화 전후의 빈칸이 더 크게 보였다. 상대는 방에 들어오기 전에 용건과 자료를 보내고, 통화가 끝난 뒤에는 다음 약속과 기록을 찾았다. 화면 안에서 대화가 잘 된 것만으로는 일이 이어지지 않았다.

통화가 끝나면 사라지는 것
통화 품질은 측정하기 쉽다. 연결됐는지, 소리가 끊기는지, 화면이 보이는지를 보면 된다. 반면 통화가 끝난 뒤 무엇이 남았는지는 처음부터 설계하지 않으면 쉽게 사라진다.
자료는 채팅에 묻히고, 다음 약속은 개인 메모에 남고, 왜 만났는지는 다시 설명해야 했다. 참여자 입장에서는 분명 대화를 했는데, 다음 행동을 시작할 때는 다시 빈 화면 앞에 서는 셈이었다.

방은 통화의 큰 버전이 아니었다
처음에는 방에 기능을 더 넣으면 이 문제가 해결될 거라고 생각했다. 채팅을 붙이고 파일 공유를 붙이고 화이트보드를 넣으면 통화가 협업으로 확장될 것 같았다.
하지만 기능 목록을 늘리는 것과 만남의 맥락을 이어 주는 것은 다른 일이었다. 사용자가 기억하는 단위는 카메라, 채팅, 파일이 아니라 “그 방에서 무슨 일이 있었는가”였다. 그래서 방을 통화 화면의 큰 버전으로 만들기보다, 요청과 대화와 다음 약속이 한 흐름으로 남는 장소로 다시 정의해야 했다.
요청에서 세션까지 이어지는 경계
다시 잡은 순서는 단순했다. 먼저 요청이 남고, 필요한 경우 상대가 수락하거나 일정을 고른다. 그 뒤에 세션 권한이 생기고, 방은 그때 열린다.
이 순서를 두면 방의 역할도 분명해진다. 방은 제품의 시작점이 아니라 검증된 만남을 실행하는 runtime이다. 통화 중에 파일을 주고받을 수 있지만, 파일과 기록이 어느 요청에 붙는지는 방 바깥의 제품 흐름이 책임진다.

남긴 판단
화상회의 앱을 만들려다 협업 방을 만들게 된 것은 기능 방향을 바꾼 일이 아니었다. 무엇을 연결이라고 부를지 바꾼 일이었다. 카메라와 마이크가 연결되어도 요청과 자료와 다음 행동이 끊기면 협업은 시작되지 않는다.
그래서 PonsLink의 방은 통화 품질만으로 평가하지 않는다. 누가 왜 들어왔는지, 무엇을 이어 가야 하는지, 통화가 끝난 뒤 어떤 기록이 남는지를 함께 봐야 한다. 방 안의 기능은 그 흐름을 도울 때만 의미가 있다.
마치며
다음에 실시간 기능을 붙일 때는 방 화면부터 그리지 않는다. 요청, 권한, 세션, 기록이 어떤 순서로 이어지는지 먼저 적는다. 그 표가 비어 있으면 통화가 아무리 매끄러워도 아직 협업 제품은 아니다.