root / HServer / 00.Server / udpMulticast.js @ 37
이력 | 보기 | 이력해설 | 다운로드 (822 Bytes)
1 | 37 | HKM | var dgram = require('dgram'); |
---|---|---|---|
2 | |||
3 | var udpMulticast = {};
|
||
4 | |||
5 | var Message = { 'IP':'192,168.0.12', 'PORT':3000 } |
||
6 | |||
7 | var news = [
|
||
8 | JSON.stringify(Message) |
||
9 | ]; |
||
10 | |||
11 | |||
12 | var server = dgram.createSocket("udp4"); |
||
13 | |||
14 | // 서버가 바인드 되는 시점부터 일정 시간마다 udp 를 쏴준다.
|
||
15 | // setInterval 에 3000 을 넣었다면 반복 시간은 3초이다.
|
||
16 | server.bind( function(){
|
||
17 | server.setBroadcast(true);
|
||
18 | server.setMulticastTTL(128);
|
||
19 | setInterval(broadcastNew, 6000);
|
||
20 | }); |
||
21 | |||
22 | function broadcastNew(){ |
||
23 | var message = new Buffer(news[Math.floor(Math.random()*news.length)]); |
||
24 | server.send(message, 0, message.length, 11000, "224.1.1.1"); |
||
25 | console.log("Sent " + message + " to the wire..." ); |
||
26 | } |
||
27 | |||
28 | udpMulticast.send = function( ){ |
||
29 | broadcastNew(); |
||
30 | }; |
||
31 | |||
32 | module.exports = udpMulticast; |