使用推送器

时间:2016-02-23 16:21:58

标签: laravel-5.1 pusher

我正在尝试将推送器应用到laravel应用程序中。具体来说,我想在用户登录时创建一个私人频道。

我有一个公共频道“登录”,其中有一个名为“登录事件”的事件,每次有人登录时都会触发该事件。

我遇到的问题是,应该创建和订阅私有频道的触发器仅针对已登录的用户触发。而不是刚刚登录的用户,这是我实际需要的唯一用户跑去。

Pusher.js

$(function () {

  var pusher = new Pusher('XXXXXXXXXX');
  var channel = pusher.subscribe('login-channel');

  channel.bind('login-event', function(data) {


 // NOT RUNNING FOR USER WHO JUST LOGGED IN BUT RUNS FOR EVERYONE ELSE

  var user = data.content.userID;

  var newpusher = new Pusher('XXXXXXXXXXX', {
    userid: $('meta[name="user"]').attr('content'),
    authEndpoint: '/pusher/auth',
    auth: {
      headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
      }
    }
});

  var newchannel = newpusher.subscribe('private-channel-for-'+user+'');

  console.log('Setting up a channel for user '+user+'.');

});

我需要在上面的代码中使用“login-event”来为刚刚登录的用户运行。

我已尽可能多地查看文档,如果答案显然在那里,请随时提供链接,但如果我能在代码中得到建议,那将会很棒。

0 个答案:

没有答案