UNPKG

raw-modem

Version:

A library to send raw command to a modem and received the response

46 lines (45 loc) 1.21 kB
"use strict"; const Rx = require('rxjs/Rx'); class RawModem { constructor(serialPort) { this.serialPort = serialPort; } open(options) { return Rx.Observable.create(s => { this.serialPort.setPortOptions(options) .flatMap(() => this.serialPort.open()) .flatMap(() => this.serialPort.write('AT\r')) .subscribe(r => { s.next(); }, err => { s.error(err); }, () => { s.complete(); }); }); } close() { return Rx.Observable.create(s => { this.serialPort.close() .subscribe(r => { s.next(r); }, err => { s.error(err); }, () => { s.complete(); }); }); } send(command, callback) { return Rx.Observable.create(s => { this.serialPort.write(command, callback).subscribe(r => { s.next(r); }, err => { s.error(err); }, () => { s.complete(); }); }); } } exports.RawModem = RawModem;