2021-07-03 07:35:02 +10:00
|
|
|
import ipc from '../../../node-ipc.js';
|
2014-03-02 09:31:40 +11:00
|
|
|
|
|
|
|
/***************************************\
|
2016-03-23 18:07:37 +11:00
|
|
|
*
|
2014-03-02 09:31:40 +11:00
|
|
|
* Since there is no client relationship
|
2016-03-23 18:07:37 +11:00
|
|
|
* with UDP sockets sockets are not kept
|
2014-03-02 09:31:40 +11:00
|
|
|
* open.
|
2016-03-23 18:07:37 +11:00
|
|
|
*
|
2014-03-02 09:31:40 +11:00
|
|
|
* This means the order sockets are opened
|
|
|
|
* is important.
|
2016-03-23 18:07:37 +11:00
|
|
|
*
|
|
|
|
* Start World first. Then you can start
|
2014-03-02 09:31:40 +11:00
|
|
|
* hello or goodbye in any order you
|
|
|
|
* choose.
|
2016-03-23 18:07:37 +11:00
|
|
|
*
|
2014-08-28 12:09:01 +10:00
|
|
|
***************************************/
|
2014-03-02 09:31:40 +11:00
|
|
|
|
2016-01-10 23:18:14 +11:00
|
|
|
ipc.config.id = 'world';
|
2014-03-02 09:31:40 +11:00
|
|
|
ipc.config.retry= 1500;
|
|
|
|
|
|
|
|
var messages={
|
|
|
|
goodbye:false,
|
|
|
|
hello:false
|
2016-01-10 23:18:14 +11:00
|
|
|
};
|
2014-03-02 09:31:40 +11:00
|
|
|
|
|
|
|
ipc.serveNet(
|
|
|
|
'udp4',
|
|
|
|
function(){
|
|
|
|
console.log(123);
|
|
|
|
ipc.server.on(
|
|
|
|
'message',
|
|
|
|
function(data,socket){
|
2016-03-23 18:07:37 +11:00
|
|
|
ipc.log('got a message from ', data.id ,' : ', data.message);
|
2014-03-02 09:31:40 +11:00
|
|
|
messages[data.id]=true;
|
|
|
|
ipc.server.emit(
|
|
|
|
socket,
|
|
|
|
'message',
|
|
|
|
{
|
|
|
|
id : ipc.config.id,
|
|
|
|
message : data.message+' world!'
|
|
|
|
}
|
|
|
|
);
|
2016-03-23 18:07:37 +11:00
|
|
|
|
2014-03-02 09:31:40 +11:00
|
|
|
if(messages.hello && messages.goodbye){
|
2016-03-23 18:07:37 +11:00
|
|
|
ipc.log('got all required events, telling evryone how muchg I am loved!');
|
2014-03-02 09:31:40 +11:00
|
|
|
ipc.server.broadcast(
|
|
|
|
'message',
|
|
|
|
{
|
|
|
|
id : ipc.config.id,
|
|
|
|
message : 'Everybody Loves The World! Got messages from hello and goodbye!'
|
|
|
|
}
|
|
|
|
);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
);
|
2016-03-23 18:07:37 +11:00
|
|
|
|
2014-03-02 09:31:40 +11:00
|
|
|
console.log(ipc.server);
|
|
|
|
}
|
|
|
|
);
|
|
|
|
|
2015-12-10 21:29:15 +11:00
|
|
|
|
2014-03-02 09:31:40 +11:00
|
|
|
|
2016-01-10 23:18:14 +11:00
|
|
|
ipc.server.start();
|