在node.js和serial.js上使用AT +命令发送文本消息
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在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('
');
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('
');
serial.write("AT+CMGS="" + phone_no + """);
serial.write('
');
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)
以上是关于在node.js和serial.js上使用AT +命令发送文本消息的主要内容,如果未能解决你的问题,请参考以下文章
在angular中用node.js连接redis时遇到的问题——process is not defined at Object../node_modules/redis-errors/ind
在angular中用node.js连接redis时遇到的问题——process is not defined at Object../node_modules/redis-errors/ind
node.js 错误:找不到模块“lodash.assign”
为啥我的 heroku node.js 应用程序给出 at=error code=H10 desc="App crashed" method=GET path="/&qu