2015-01-05 1 views
1

각 사용자를 기반으로하는 동적 채널에서 클라이언트 측 이벤트가 작동하도록하려면 어떻게해야합니까? 그래서 같은Ember Pusher - 동적 채널 구독은 어떻게 작동합니까?

LISTENING 컨트롤러

export default Ember.ObjectController.extend(window.EmberPusher.Bindings, window.EmberPusher.ClientEvents, { 
    init: function(){ 
    var channel = this.get('pusher.connection').subscribe('channel_'+this.get('session').user_id); 
    PUSHER_SUBSCRIPTIONS: {channel: ['message_received']} 
    }, 
    actions: { 
    messageReceived: function(){ 
     alert("client user messages is working!"); 
    } 
    } 
}); 

백엔드가 트리거되는 이벤트 :

$channel_name = "channel_".(string)$receiver_id; 
$pusher->trigger($channel_name, (string)$n_type, $data); 

나는 이벤트가과 같이 정의 된 백엔드에서 트리거되는 수신 청취 컨트롤러가

아무 일도 일어나지 않아 문제를 디버그하기가 어렵습니다. 푸시 플로우가 어떻게 처리되고 있는지에 뻔뻔스럽게 잘못된 점이 있습니까?

답변

2

알아 냈어. 나는 PUSHER_SUBSCRIPTIONS 해시를 사용하지 않지만이 방법은 동일합니다.

init: function(){ 
     var channel = this.get('pusher.connection').subscribe('channel_'+this.get('session').user_id); 

     channel.bind('message_received', function(data){ 
     alert(data); 
     }); 
    }