Метеор отправить активным пользователям

0

Я начинаю писать веб-страницу meteorjs. Я начал с примера таблицы лидеров. Это отлично работает. Я добавил несколько новых функций. Я добавил скрипт уведомления jquery. (Noty http://ned.im/noty/)

Когда я даю человеку пять очков, активируйте плагин Noty, используя этот код

var n = noty({text: txt,timeout: 2000});
......
Template.leaderboard.events({
    'click input.inc': function () {
      Players.update(Session.get("selected_player"), {$inc: {score: 5}});
      notje("Er heeft iemand een score gegeven");
      Method.call("callHouse");
    },

Уведомление будет отображаться только для моего браузера, а не для других пользователей. Как я могу использовать уведомление для всех активных пользователей. Пользователи → Сервер → Все пользователи

Надеюсь, вы сможете помочь мне в этом вопросе

  • 0
    На стороне сервера Meteor.users.find({}) предоставит вам всех зарегистрированных пользователей.
Теги:
meteor
meteorite

1 ответ

3
Лучший ответ

Вам нужно будет создать коллекцию уведомлений (клиент и сервер):

notifications = new Meteor.Collection("notifications");

Затем вставьте свое сообщение туда и покажите его с помощью ручки наблюдения. Убедитесь, что вы добавили что-то конкретное для пользователя, чтобы вы могли использовать меньшее количество пользователей. А также укажите, когда он используется, и отметьте их как готовые, чтобы они больше не публиковались, и пользователь не стал их получать.

Тогда вы можете сделать что-то подобное на вашей стороне клиента:

Meteor.startup(function() {
    notifications.find().observe({
        added: function(doc) {
            //Message can be contained in doc.txt

            //Not sure if this bit is right, but basically trigger the notification:
            n = noty({text: doc.txt,timeout: 2000});
        }
    });
});

Надеюсь, это даст вам немного приблизительное представление о том, как это сделать.

  • 0
    Wouw спасибо за ваш ответ. Как активировать коллекцию: Вот так ... notifications.added (text ("Er heeft iemand een Score gegeven"));
  • 0
    Что вы хотите от этого? Но да, вы можете написать свой собственный text метод для этого, если вы все еще используете наблюдателя.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню