2011-07-05 2 views
1

2 명이 퀴즈 게임을 실시간으로 만들려고합니다. 이를 위해 사용자가 퀴즈 페이지를 방문 할 때와 떠나야 할 때를 추적해야합니다. 기본적으로 나는 어떤 종류의 로비가 필요합니다. 플레이어가 모이는 장소와 스크립트에서 게임에서 서로 마주 보는 두 명의 무작위 플레이어를 선택하는 곳입니다.2 인용 퀴즈를 풀기 위해 실시간으로 온라인 사용자를 추적하십시오.

많은 플레이어들이 매우 짧은 시간에 온라인에서 오프라인으로 전환하기 때문에 고전적인 '플레이어 상태 업데이트'데이터베이스를 사용하지 않고 특정 기간에 온라인 플레이어 목록을 검색하지 않는 것이 좋습니다. 현재, 저는 Comet Push를 사용하는 아이디어를 가지고 놀고 있으며 PubNub를 약간 연구했습니다.

실제 퀴즈 게임 나는 해결하기가 꽤 쉽다. 클래식 Comet publish()를 사용하여 답변을 보내고 subscribe()를 사용하여 다른 사용자의 상태를 확인한다. 그러나 저를 괴롭히는 것은 온라인 사용자들로 특정 목록을 얻는 방법입니다.

사용자가 로비에 갔을 때 user_id를 게시하려했지만이 사용자가 오프라인이되었을 때 다른 모든 사용자에게 어떻게 알리려고합니까? 로비에 연결된 총 사용자 수와 이름을 함께 표시하려면 어떻게합니까?

내가 혜성에 직면 한 것은 처음이며, 그 논리는 완전히 나에게 분명하지 않다.

도움 주셔서 감사합니다.

답변

1

Pusher을 시도해 볼 수도 있습니다. (푸셔로 작업합니다) presence functionality. 프레 젠스 채널을 사용하면 방/로비 스타일의 기능을 쉽게 구현할 수 있으며 기준을 충족해야합니다. 당신은 당신이 연락하는

  • 을 가입 할 때 사용자의 초기 목록을

    • 채널에 가입 할 때마다 사용자가 등록 (입력) 및 구독 취소 (잎) 채널 (방/로비)

    이렇게하면이 기능을 직접 구현할 필요가 없습니다. 푸셔가 제공하는 솔루션의 일부입니다.

  • +0

    의견을 보내 주셔서 감사합니다.하지만 개인적으로 솔루션을 개발하거나 무료 솔루션을 사용하고 싶습니다.이 기능을 사용하기 위해 돈을 쓰고 싶지는 않습니다. 개인 프로젝트입니다. – linkyndy

    +1

    @linkyndy - 자체 호스팅 섹션을 포함하여 다음 페이지에서 실시간 기술 전체를 나열 했으므로 잘만하면 사용할 수 있습니다. http://www.leggetter.co.uk/ real-time-technologies-guide 존재가 중요하다면, 그렇다면 XMPP 솔루션을 고려해야 할 것입니다. 불행히도 아직 해당 페이지에서 XMPP를 지원하는 솔루션을 확인하지 못했습니다. – leggetter

    +0

    도움 주셔서 감사합니다. 나는 이미 그것을 사용하는 방법에 대한 약간의 연구를 했으므로 아마 PubNub에 충실 할 것입니다. WebSocket은 꽤 멋지게 보이고 널리 지원 될만큼 빨리 사용할 것입니다. – linkyndy

    관련 문제