-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
executable file
·59 lines (52 loc) · 1.31 KB
/
index.js
File metadata and controls
executable file
·59 lines (52 loc) · 1.31 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/env node
var evdev = require('evdev');
var request = require('superagent')
var reader = new evdev();
var brainLocation = "192.168.0.127:3000/"
var device = reader.open("/dev/input/by-id/usb-Sycreader_RFID_Technology_Co.__Ltd_SYC_ID_IC_USB_Reader_08FF20140315-event-kbd");
var fob = ""
function keyparse(code) {
var key = code.substr(4);
if (key == "ENTER") {
console.log(fob);
checkWithBrain(fob)
fob = ""
} else {
fob = fob + key;
}
}
reader.on("EV_KEY",function(data){
if (data.value == 1)
keyparse(data.code)
});
function checkWithBrain(scannedFob) {
request
.get(brainLocation + 'members/' + scannedFob)
.end((err, res) => {
if (err || res.body.error){
console.log('Invalid Fob')
return null
}
console.log("address?" , res.body.address)
let chargeRequest = {
action: {
type: "member-charged",
address: res.body.address,
amount: "3",
notes: "BitPepsi"
}
}
console.log({chargeRequest})
request
.post(brainLocation + 'members')
.send(chargeRequest)
.end((err, res) => {
if (err || res.body.error){
console.log('Invalid Fob')
console.log(err)
console.log(res.body)
return null
}
})
})
}