2013-09-27 6 views
2

나는 서로 연결할 수 있고 채팅 할 수있는 웹 앱을 만들고 있습니다. 따라서 각 채팅에는 두 명의 사용자가 있습니다. Pusher API (http://pusher.com)와 관련하여 일반적인 질문이 있습니다.Pusher.com - 채널 사용 방법

첫 번째 질문입니다. 푸셔를 사용하면 20 개의 동시 연결을 무료로 사용할 수 있습니다. 즉, 동시에 10 개의 지속적인 채팅을 할 수 있습니까? 각 채팅은 두 클라이언트 사이에 있습니다.

두 번째 질문입니다. 내 채널을 어떻게 구성해야합니까? 채팅 당 하나의 채널이 있어야합니까? (따라서 10 개의 채팅이 있다면 10 개의 채널이 있습니다.) 가장 좋은 방법은 무엇입니까?

답변

4

동시에 10 개의 지속적인 채팅을 할 수 있습니까?

실제로 그 이상을 가질 수 있습니다. 사람이 한 사람에게만 말할 수있는 경우에는 10 점이되지만 계획의 메시지 수에 의해 제한됩니다.

채널을 어떻게 구성해야합니까? 채팅 당 하나의 채널이 있어야하나요?

언제든지 온라인 상태이며, Pusher가 계획을 최적화하는 데 사용한 현재 상태 메시지의 수를 줄이려는 경우에 따라 다릅니다.

옵션 1 :

각 사용자는 그의 이름을 따서 명명 채널을 구독하고 이벤트를 수신합니다.

사용자 1

은에 존재-USER1에 채널과 결합을 구독합니다 * message_received *이 채널에 이벤트 : USER1는 단순히 실행하는 데 필요한 사용자 2 연락하고 싶어

var channel = pusher.subscribe('user1'); 

channel.bind('message_received', function(message){ 
    console.log('Message received : '); 
    console.log(message); 
}); 

a * message_received *와 메시지 및 일부 메타 데이터를 전달합니다.

var channel2 = pusher.subscribe('user2'); 

channel2.trigger('message_received',{ 
    message:'hey', 
    sender:'user1', 
    sent_on:helpers.date() 
}); 

Pusher 여기에 아주 좋은 설명서와 매우 정교한 API가 있습니다. the page where they talk about events

여기에서 현재 상태 채널을 사용하고 있으므로 관심있는 사용자의 현재 상태 정보도 얻을 수 있습니다.

[편집]이 방법을 사용하면 user1 채널에 가입 한 모든 사용자에게 자신의 채널로 전송 된 메시지와 이에 대한 최적의 방법에 대한 알림이 전송됩니다. 두 사용자간에 채널을 만드는 것이 더 좋은 방법입니다. 앱을 설계하는 데는 여러 가지 방법이 있지만 이전 코드는 기본적인 아이디어를 제공한다고 생각합니다.

옵션 2 :

는 '존재 - 모든'방을 만듭니다. 모든 사용자가 연결하려면 'namespaced events'를 통해 비공개 메시지를 보내십시오. 예를 들어, user1은 presence_all 채널에서 message_received에 바인딩됩니다. 그 접근 방식의 문제는 간접비입니다. 그러나 과도한 트래픽을 기대하지 않는다면 코드를 사용하는 것이 훨씬 간단합니다.

또는 현재 상태와 메시지 교환을위한 하이브리드 방식을 만듭니다. [https://pusher.tenderapp.com/kb/accountsbillingplanspricing/how-is-my-message-count-calculated][his]를 확인해야합니다. Pusher는 메시지에 가격을 책정하는 방법을 자세히 설명합니다.

도움이 되었기를 바랍니다.

1

동시에 10 개의 지속적인 채팅을 할 수 있습니까?

예, 지원 포럼 게시글 "How are connections counted?"에 따르면

채널을 어떻게 구성해야합니까? 채팅 당 하나의 채널이 있어야하나요?

가장 기본적인 설정에는 채팅 당 채널이 하나 있습니다. 그러나 대부분의 경우 다른 사용자 및 기타 기능의 존재를 알리는 데 사용되는 추가 채널이 있습니다. 시작하기 좋은 곳은 Tutorial for a Realtime Chat Widget입니다.

관련 문제