qz-sift
v1.0.1
Published
Filter and parse locally attached hardware information.
Downloads
377
Maintainers
Readme
sift.js
Filter and parse locally attached hardware information.
Filters
- Printer driver listings
- USB scales
Utilities
- USB scale data
Printers
Sift offers the ability to filter a supplied printer list based on an internal database of printer information.
Printer Prerequisites
Printers must be supplied in an object array
Each object must contain a printer
nameand printerdriver.[ { name: 'foo', driver: 'bar' }, { ... } ]
Virtual Printers
- Sift can
keeportossall PDF, Virtual or File printers:
Before
data = [ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' },
{ name: 'CutePDFWriter', driver: 'PDFwriter.ppd' } ];Keep/Toss
data = sift.toss(data, { physical: false });
// or
data = sift.keep(data, { physical: true }); Sifted
[ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' } ]Raw Printers
- Sift can
keeportossall raw capable printers.
Before
data = [ { name: 'HP Color LaserJet 2500', driver: 'HP Color LaserJet 2500 PS Class Driver' },
{ name: 'Zebra LP2844 Raw', driver: 'Generic / Text Only' } ];Keep/Toss
data = sift.keep(data, { type: 'raw' });Sifted
[ { name: 'Zebra LP2844 Raw', driver: 'Generic / Text Only' } ]USB Data
USB Scale Parsing
- Sift can parse USB Data into weight, units, status in plain English text.
Before
var data = ['\x03', '\x02', '\x0C', '\xFE', '\x00', '\x00', '\x00', '\x00'];Parse Data
var weight = sift.parse.scale(data);Parsed
"0.03lbs - Stable"USB Devices - Unfinished
Sift can identify USB devices by type based on an internal database of USB devices. See also USB Scale Parsing
USB Prerequisites
USB device listing must be supplied in an object array
Each object must contain a USB
vendorand USBproduct.[ { vendor: '0x0EB8', product: '0xF000' }, { ... } ]
USB Scales
- Sift can return the listing of attached USB scales.
Before
data = [ { vendor: '0x0EB8', product: '0xF000' },
{ vendor: '0x0B9E', product: '0xF0F0' } ];Keep/Toss
data = sift.keep(data, { type: 'scale' });Sifted
[ { vendor: '0x0EB8', product: '0xF000' } ]