通过nodejs将UDP数据发送到GSM模块(sim800)

时间:2018-06-21 19:03:44

标签: node.js sim800

我想将udp数据包发送到gsm模块,这是我要做什么的简短说明,但是我要做什么以及有什么问题!?

模块端的代码是由我的兄弟写的,而服务器端的代码是由我的:D

我在ubuntu服务器上使用nodejs并从模块获取数据没有问题;我想向模块回复消息。

这是我的服务器代码:

var PORT = 6003;
var HOST = 'server ip';

var dgram = require('dgram');
var server = dgram.createSocket('udp4');

server.on('listening', function () {
    var address = server.address();
    console.log('UDP Server listening on ' + address.address + ":" + address.port);
});

server.on('message', function (message, remote) {

var date = new Date();
var current_hour = date.getHours();
var current_min = date.getMinutes();
var current_sec = date.getSeconds();
    console.log("**************************************************************");
    console.log('Got message at ', current_hour,':',current_min,':',current_sec);
    console.log(remote.address + ':' + remote.port +' - ' + message);
    console.log("**************************************************************");
        setTimeout(sendRequest,1000, "I am reply message", remote.address, remote.port);

});

server.bind(PORT, HOST);

function sendRequest(message, host, port) {
    var dgram = require('dgram');
    var client = dgram.createSocket('udp4');
    client.send(message, 0, message.length, port, host, function(err, bytes) {

    if (err) throw err;
    var date = new Date();
    var current_hour = date.getHours();
    var current_min = date.getMinutes();
    var current_sec = date.getSeconds();
    console.log('UDP message sent to ' + host +':'+ port + ' at ' + current_hour,':',current_min,':',current_sec);
    client.close();
}); }

但是该模块未收到任何消息!

我不确定是什么问题以及如何解决它,如果需要更多信息,我会提供。

0 个答案:

没有答案