Choviet 빌드 로그 6화: 대화가 시작된다

중고거래의 핵심은 뭘까.

물건?
가격?

아니다.

대화다.

“이거 아직 있어요?”
“네, 있어요. 언제 만날까요?”

이 대화가 없으면 거래도 없다.


실시간 채팅

보통 채팅은 어렵다.
WebSocket, 서버 설정, 복잡한 구조.

하지만 Rails 7에는
Turbo Streams가 있다.

새로고침 없이,
메시지가 실시간으로 나타난다.

마법 같지만,
사실은 Rails가 알아서 해주는 것이다.


구조

Conversation — 대화방
Message — 메시지

판매자와 구매자가 대화방을 만든다.
그 안에서 메시지를 주고받는다.

단순하다.
단순한 게 좋다.


코드 한 조각

turbo_stream_from @conversation

이 한 줄이면,
새 메시지가 올 때마다
화면에 자동으로 추가된다.

Rails를 믿기로 했다.
Rails가 기대하는 대로 따라갔다.

프레임워크를 이기려 하지 않았다.


채팅이 된다.

메시지를 보내면,
상대방 화면에 바로 뜬다.

작은 기능이지만,
이게 되니까 앱 같아졌다.

시지프의 바위가
조금 더 가벼워진 느낌이다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다