はじめまして。山口と申します。

私もPHPのWAFで殆どの機能を構築しPUSH通知のところだけNodeを利用する構成を以前模索したことがあります。

その時は一応動作するところまでいけましたので簡単に説明します。

手元にPCがないので概略になりますがご了承ください。

例えばPHPのアプリケーションがログイン機構を持っていて、
(例えばFacebookのように)ユーザー毎に通知を出し分けたいような場合です。

まずNodeが持つWebsocketのセッションとPHP側で持つHTTPのセッションを共有化します。

http://d.hatena.ne.jp/sugyan/touch/20110406/1302090071

上記のすぎゃーんさんの記事を参考にしつつ、phpのアプリ側のセッションIDが入ったcookieをnodeになげて、
nodeからphpのアプリに投げて、
node側で、websocketのセッションとPHP側のセッション情報、
例えばログインユーザーIDなどを紐付けます。

後は、PHPからNodeに対してHTTPリクエストないし、
RedisのPubSubを使うなどして、
任意のタイミングでPUSHしたい対象ユーザーの一覧と、PUSHしたいJSONデータなどを渡します。

Node側では、そのPHPからのリクエストを元に、必要なデータを必要なユーザーに対して、Socket.IO経由でデータを送る事でPUSH通知が実現できます。

セッション共有化の部分とその後のPHP,node間のデータやりとりのフォーマットだけ決めてしまえば、Node側は100行程度で完結し、
以後nodeのメンテは必要ないのがメリットです。

これだけだと分かりにくいかと思いますが、ご参考になれば幸いです。

@takyam
2013/08/01 23:27 "永田真也" <shin.nag...@gmail.com>:

> はじめまして。
> 永田と申します。
>
> Node.js+Socket.IOで通知機能を開発中です。
> Node.jsでHTTPサーバを立ててPUSH通知の送受信ができることは確認しておりますが、
> 既存のPHPサイトがあり、
> Node.jsでのPUSH通知機能を埋め込みたいのですが、
> どういった方法で実現可能かご教示頂けば幸いです。
> iframeを使う、Socket.IOのポーリングプロトコルを使う
> などを考えていますが、他に良案はありますでしょうか。
> よろしくお願いいたします。
>
> --
>
> ---
> このメールは Google グループのグループ「Node.js 日本ユーザグループ」の登録者に送られています。
> このグループから退会し、メールの受信を停止するには、nodejs_jp+unsubscr...@googlegroups.comにメールを送信します。
> その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。
>
>
>

-- 

--- 
このメールは Google グループのグループ「Node.js 日本ユーザグループ」の登録者に送られています。
このグループから退会し、メールの受信を停止するには、nodejs_jp+unsubscr...@googlegroups.com にメールを送信します。
その他のオプションについては、https://groups.google.com/groups/opt_out にアクセスしてください。


メールによる返信