Push-уведомления с использованием Socket.IO и PHP

The idea/context:

Я думаю о том, чтобы дать своим пользователям приятныйlittle дополнительная функция: я хочу добавить push-уведомления. Это вариант использования:

У людей есть гостевая книга на странице их профиля. Когда кто-то публикует сообщение в гостевой книге пользователя, этот пользователь получает push-уведомление (если он, конечно, онлайн). Если он не в сети, в следующий раз, когда он выйдет в сеть, мы просто извлечем уведомления из БД.

Я думал об этом с Socket.IO, работающим на сервере Node.JS. Мое текущее приложение построено на PHP (поэтому регистрация и т. Д. Обрабатывается PHP).

Все онлайн-пользователи будут подключаться через Socket.IO для прослушивания своих собственных уведомлений. Их сокет будет сохранен в массиве или хэше на сервере.

Это поток, который я имею в виду:

UserA posts a message in guestbook of UserB Make Socket.IO emit a notification to UserB (if online, so known by Socket.IO) Save the message in DB

Проблема здесь заключается в & apos;make Socket.IO emit a notification& APOS; -часть. Мне нужен способ сделать это из PHP, потому что я хочуthe server испустить это уведомление иnot the user это публикует сообщение. Почему ты спрашиваешь? Я хочу, чтобы злоумышленники не создавали поддельные уведомления. Таким образом, в псевдокоде приложение PHP будет выглядеть так:

// do some validations here ...

// This is the message that was posted
$message = array(
    'from' => 'UserA',
    'to' => 'UserB',
    'msg' => 'Hello you'
);

// Send a notification to the user by emitting an event
socketio_emit('notification', json_encode($message));

save_in_db($message);

The question(s):

Что вы думаете об этом? Есть ли лучшие способы реализовать эту, казалось бы, небольшую функцию? А также, как бы я сделалsocketio_emit() в PHP, другими словами: как я могу общаться с сервером Socket.IO, используя PHP?

Большое спасибо!

Ответы на вопрос(1)

Ваш ответ на вопрос