【发布时间】:2018-09-07 09:39:05
【问题描述】:
我正在使用 Wavecom 8 端口 SMS 调制解调器 我的问题是我想检查在编写 AT 命令时是否有错误(例如没有负载平衡或没有插入 SIM 卡)然后它会检查另一个可用端口以重新发送 SMS。
我只想捕获 ERROR 或 OK 输出
我用过这个功能
function sendSync(port, src) {
return new Promise((resolve, reject) => {
port.write(src,(err)=>{
if(err){
reject(err)
}
port.drain()
});
port.once('data', (data) => {
console.log('###############################',data.toString())
resolve(data.toString());
});
port.once('error', (err) => {
console.log('************************')
reject(err);
});
});
}
【问题讨论】:
-
你的函数看起来很正确。也许问题在于
sendSync()的调用方式? -
那个函数也输出AT命令也确认OK或ERROR我只想要OK或ERROR
-
在调用者中不是解释的问题吗?如果返回的 Promise 确定了它的成功路径,那么这就是“OK”。如果它解决了它的错误路径,那就是“错误”。
标签: node.js promise sms modem node-serialport