Filter and parse locally attached hardware information.
- Printer driver listings
- USB scales
- USB scale data
Sift offers the ability to filter a supplied printer list based on an internal database of printer information.
-
Printers must be supplied in an object array
-
Each object must contain a printer
name
and printerdriver
.[ { name: 'foo', driver: 'bar' }, { ... } ]
- Sift can
keep
ortoss
all 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' } ]
- Sift can
keep
ortoss
all 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' } ]
- 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"
Sift can identify USB devices by type
based on an internal database of USB devices. See also USB Scale Parsing
-
USB device listing must be supplied in an object array
-
Each object must contain a USB
vendor
and USBproduct
.[ { vendor: '0x0EB8', product: '0xF000' }, { ... } ]
- 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' } ]