Commit d87943efc511408bd85d4a1bc15e11151fb4db22
1 parent
2e49a3d202
Exists in
master
PDU processed
Showing 3 changed files with 19 additions and 1 deletions Side-by-side Diff
lib/serialport-parsers.js
... | ... | @@ -39,6 +39,17 @@ function onCSQ(data) { |
39 | 39 | return val[1]; |
40 | 40 | } |
41 | 41 | |
42 | +function onPdu(data, parsedData) { | |
43 | + const from = parsedData.getAddress && parsedData.getAddress().getPhone | |
44 | + ? parsedData.getAddress().getPhone() : null; | |
45 | + | |
46 | + const msg = parsedData.getData && parsedData.getData().getData | |
47 | + ? parsedData.getData().getData() : null; | |
48 | + | |
49 | + logger.verbose('PDU processed', { from, msg }); | |
50 | + return { from, msg }; | |
51 | +} | |
52 | + | |
42 | 53 | function onCOPS(data) { |
43 | 54 | const val = data.toString().trim().match(/\+COPS:\s*(.*)/); |
44 | 55 | if (!val || !val[1]) return null; |
... | ... | @@ -85,7 +96,8 @@ parserReadline.on('data', (data) => { |
85 | 96 | |
86 | 97 | const pduParsed = parsePdu(data); |
87 | 98 | if (pduParsed) { |
88 | - logger.verbose('Got a PDU data', { pduParsed }); | |
99 | + logger.verbose('Got a PDU data', { type: typeof pduParsed }); | |
100 | + onPdu(data, pduParsed); | |
89 | 101 | } else if (isResultCodeIs(data, 'CSQ')) { |
90 | 102 | logger.verbose('Got a signal quality report', { data: data.toString() }); |
91 | 103 | onCSQ(data); |
package-lock.json
... | ... | @@ -3524,6 +3524,11 @@ |
3524 | 3524 | "pify": "^2.0.0" |
3525 | 3525 | } |
3526 | 3526 | }, |
3527 | + "pdu": { | |
3528 | + "version": "1.1.0", | |
3529 | + "resolved": "https://registry.npmjs.org/pdu/-/pdu-1.1.0.tgz", | |
3530 | + "integrity": "sha1-vugaShe1ndzys5wMFuIJF6aTmjQ=" | |
3531 | + }, | |
3527 | 3532 | "performance-now": { |
3528 | 3533 | "version": "2.1.0", |
3529 | 3534 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", |