게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
node , socket.io를 개발중인데 이게 잘한것인지 모르겠습니다.
게시물ID : programmer_12077짧은주소 복사하기
작성자 : 문식이당
추천 : 0
조회수 : 931회
댓글수 : 4개
등록시간 : 2015/07/13 20:27:00
옵션
  • 본인삭제금지
개발중이긴 한데... 이게 진짜ㅋㅋ 제가 생각해도 좀 말이 안되는거 같아서
조언좀 듣고자 글을 작성 합니다.

채팅에 기본적인 템플릿은 이러 합니다.

KNL3.png

로그인을 하게되면 로그인ㄴ된 목록에서 추가가 됩니다.
이상태에서 다른사람이 로그인을 하게되면 가만히 있어도 알아서 추가가 되야 합니다.
이것을 양방향 통신 (socket.io)의 가장큰 특징입니다.

문제는.... 실시간으로 로그인된 사람의 목록을 추가해야 되는데.... 하....ㅋㅋ
우선  http://183.102.159.138:4000/chat.html   로 들어가 주시면 socket.io에 예제를 서버에 올렸습니다.
동작은 아주 잘 됩니다.  새창을 2~3개 하시고 http://183.102.159.138:4000/chat.html 로 들어가시면 잘되는걸 확인 할 수 있습니다.


방금전 언급됐던 로그인 했을때 실시간 목록을  예제에서 
[개설된 방목록] <-- 이부분을 응용 했습니다.


이게 왜 문제가 되느냐... io.sockets.manager.rooms 이라는 socket.io의 함수? 개념에 명령어가 있습니다.
이 io.sockets.manager.rooms 는 현재 방을 만든 모든 list를 뿌려 줍니다.


즉 join(방이름) 으로 방을 생성,저장 하면 
예를 들어

1개 생성시
-----------------------
join(ou);
io.sockets.manager.rooms : ou
------------------------

3개 생성시
-------------------------
join(ou);
join(ou2);
join(ou3);
io.sockets.manager.rooms : ou , ou2 , ou3
-------------------------
이런식으로 저장된걸 가져 오기 때문에 방 list를 실시간으로 가지고 올수 있습니다.
그리고 가지고 오면서 출력시 다른 곳에서 접속된 브라우저에서도 자동으로 list를 다시 출력 하게 됩니다.


이렇게 실시간으로 list를 뿌리는게 방list 형식이다 보니....
저는 로그인한 사람의 list를 뿌려야 되는데...... 이걸 어떻게 해야 하나 와...고민하다가...

로그인 했을때 사람 이름으로 방을 만들자 ... 이렇게 결론이 났습니다ㅠㅠ.....
이게 ..ㅋㅋ 제가 생각해도 참 어이가 없는거 같습니다.


캡처1.JPG
이렇게 방 list를 뿌려주는 방식을 그대로


캡처2.JPG
이렇게... (위 버튼을 누를시 로그인)
로그인된 list로 만들었습니다. ( 사실상 로그인 list가 아닌 이름으로 된 방 list )


이해가 잘 되셨을지 몰르겠습니다..... 로그인된 list를 출력 할려면 어딘가에 실시간으로 로그인된 정보를 
저장 해야 되는데... io.sockets.manager.rooms 를 이용한 방list로 그 로그인된 정보를 입력해서 뿌려주고 있습니다...
이게 잘 하는 방식일까요?
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호