Jxck です。 > Node.jsでのPUSH通知機能を埋め込みたいのですが、 > どういった方法で実現可能かご教示頂けば幸いです。
PHP のサーバに接続している人と、 Socket.IO サーバに接続している人の関係はよくわからないので 「埋め込む」、がどういうイメージなのか探り探りですが、 この手の質問で一番多いのは、 「PHP のサーバに繋がってる人は、その画面の JS で Socket.IO コネクションを Socket.IO サーバと貼ってる」状態で 「PHP に POST で来たメッセージを、そのまま Socket.IO で他の人に PUSH したい」的なユースケースなので、 その前提で書きます。 1, PHP の Socket.IO-client で Socket.IO-node を叩く。 PHP 自体が Socket.IO サーバと Socket.IO の接続を貼ってしまう。 PHP で Post を受け取ったら、 Socket.IO サーバに Push して、 Socket.IO は (PHP サーバ以外の) クライアントに Broadcast する。 で、PHP の Socket.IO クライアントってあるのかな?と思ったらあるみたい。http://elephant.io/ (ってか、 PHP で Socket.IO サーバできれば解決なのだろうか?) 2, PHP から Socket.IO に HTTP POST する。 PHP で Socket.IO はよくわからないから、 HTTP がいいという場合。 Socket.IO サーバである Node.js のサーバに HTTP で POST を受け取って、その Body なりを Socket.IO で broadcast する API を用意する。 (前回じゃない過去に TV 連携で事例発表した人がとってた構成) 3, MQ とか Redis とか挟む 個人的には挟めるなら、何か挟むのを進めたい気はします。 POST のレスポンスがすぐに返せるし、疎結合に保てます。色々手はかかりますが。 流れは、メール通知が挟まるのとかと同じ感じです。 3-1, PHP で POST を受け取ったら MQ に積んで POST のレスポンスを返す 3-2, Socket.IO は MQ をポーリングなりして、メッセージがあったら取り出して Broadcast Redis なら、Pubsub 使えるので、この用途は最近 Redis が多い気もします。 ぱっと浮かぶのはそんな感じでしょうか? 2013年8月1日 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 にアクセスしてください。