最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

在node.js和serial.js上使用AT +命令发送文本消息

运维笔记admin17浏览0评论

在node.js和serial.js上使用AT +命令发送文本消息

在node.js和serial.js上使用AT +命令发送文本消息

我试图使用node.js和serial.js发送短信AT +命令与下面的命令,但它看起来像跳过发件人号码,这是一个设备问题或我的代码缺少什么?我正在使用连接在我的COM2上的华为gsm调制解调器,我的机器是Windows 7。

var SerialPort = require('serialport');
var port = new SerialPort('COM2', {
  baudrate: 9600,
  dataBits: 8,
  parity: 'none'
});

console.log('port is now open');

port.on("open", function () {

    console.log('Serial communication open');
    port.write("AT");
    port.write('\r');
    port.on('data', function(data) {
        console.log("Received data: " + data);
    });



    gsm_message_sending(port, "test2", "89410238(example only)"); 
});

function gsm_message_sending(serial, phone_no, message) {
   serial.write("AT+CMGF=1");
    serial.write('\r');
    serial.write("AT+CMGS=\"" + phone_no + "\"");
    serial.write('\r');
    serial.write(message); 
    serial.write(Buffer([0x1A]));
    serial.write('^z');
}

我尝试使用下面的代码更改行,但仍然是相同的输出。

serial.write("AT+CMGS=\"");
    serial.write(phone_no);
    serial.write('"')

我的控制台返回下面

任何建议都会很棒!提前致谢!

回答如下:

我没有尝试过你的例子,但看着代码,你正在打电话:

gsm_message_sending(port, "test2", "89410238(example only)");

即参数顺序错误,应该是:

gsm_message_sending(serial, phone_no, message)
发布评论

评论列表(0)

  1. 暂无评论