2017-04-20 7 views
1

こんにちは私はPHPからsocketioサーバーにイベントを放出しようとしています。PHPからsocket.ioにイベントを送信

https://github.com/rase-/socket.io-php-emitter
https://github.com/ashiina/socket.io-php-emitter

PHPコード:

<?php 

require_once('socketio/src/Emitter.php'); 

$emitter = new SocketIO\Emitter(array('port' => '6379', 'host' => '127.0.0.1')); 

$emitter->broadcast->emit('testcall', 'data'); 

?> 

package.json:

{ 
    "name": "Emitter", 
    "devDependencies": { 
     "express": "~4.13.4", 
     "socket.io": "~1.7.3", 
     "socket.io-redis": "~4.0.0" 
    } 
} 

ノードサーバー:

var app = require('express')(), 
    http = require('http').Server(app), 
    io = require('socket.io')(http), 
    redis = require('socket.io-redis'); 

http.listen(8081, function() { 
    console.log('\n=========================='); 
    console.log('server listening on *:8081'); 
    console.log('==========================\n'); 
}); 

io.adapter(redis({ host: '127.0.0.1', port: 6379 })); 

io.on('connection', function(socket) { 
    socket.on('testcall', function() { 
     console.log('testcall'); 
    }); 
}); 
私はこれらの両方のフォークを試してみました

私はredis-cliモニタを開いており、データをredisに公開しているのがわかりますが、ログは表示されません。私はブラウザからイベントを発行することはできますが、PHPのイベントは決して表示されません。

私が間違っていることは何ですか?

答えて

0

私はちょうどばかだ。 PHPからのイベントが送信されますが、サーバーではなくクライアントに送信されます。どうやらそれがどのように動作するか忘れてしまった。

+0

どのようにですか?同じ、クライアント側のイベントを受信する方法がわからない – Dennis

関連する問題