如何从两个不同的文件使用socket.io发送消息?

我正在与socket.io ,所以我创build服务器上的app.js和连接套接字到客户端,我看到emit('message')打印到客户端控制台,现在我想发送另一个消息从不同的文件consumer.js并向客户端发送消息,但在服务器端抛出exceptionio.on不是函数。 任何想法是什么在consumer.js文件中实现错误?

app.js

 var express = require('express'); var app = express(); var consumer = require('./consumer'); var server = require('http').createServer(app); var io = require('socket.io')(server); app.use(express.static(__dirname + "/public")); io.on('connection', function(client) { console.log('Client connected...'); client.emit('message', ' hello from server'); }); server.listen(3000, function () { console.log('Example app listening on port 3000!'); consumer.start(); }); 

consumer.js

 var io = require('socket.io'); function startConsumer(consumer) { consumer.on('message', function (message) { logger.log('info', message.value); io.on('connection', function(client) { console.log('Consumer connected...'); client.emit('Consumer-Message', 'Message from dit consumer'); }); }); consumer.on('error', function (err) { console.log('error', err); }); }; exports.start = start; 

angularCtrl.js

 socket.on('message',function (data) { console.log(data); }); socket.on('Consumer-Message',function (data) { console.log(data); });