Skip to content

Instantly share code, notes, and snippets.

@ramesaliyev
Created May 20, 2022 15:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ramesaliyev/91348b0046fb701ab6a917108f43c062 to your computer and use it in GitHub Desktop.
Save ramesaliyev/91348b0046fb701ab6a917108f43c062 to your computer and use it in GitHub Desktop.
udp-broadcast
// Require node js dgram module.
var dgram = require('dgram');
// Create a udp socket client object.
var client = dgram.createSocket("udp4");
// message variable is used to save user input text.
var message = "";
// Set command line input character encoding to utf-8.
process.stdin.setEncoding('utf-8');
// When receive user input data in console.
process.stdin.on('data', function (message) {
// If user do not input data in command line then send default message.
if (message == null || message.length == 0) {
message = "Hello udp server.";
}
// console.log("User input : " + message);
// Create a node Buffer object to wrap message object.
message = Buffer.from(message, 'utf-8');
// Send message to udp server through client socket.
client.send(message, 0, message.length, 8089, "192.168.137.255");
});
// Require dgram module.
var dgram = require('dgram');
// Create udp server socket object.
var server = dgram.createSocket("udp4");
// Make udp server listen on port 8089.
server.bind(8089);
// When udp server receive message.
server.on("message", function (message) {
// Create output message.
var output = "Udp server receive message : " + message + "\n";
// Print received message in stdout, here is log console.
process.stdout.write(output);
});
// When udp server started and listening.
server.on('listening', function () {
// Get and print udp server listening ip address and port number in log console.
var address = server.address();
console.log('UDP Server started and listening on ' + address.address + ":" + address.port);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment