동시에 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는 메시지에 가격을 책정하는 방법을 자세히 설명합니다.
도움이 되었기를 바랍니다.