view service/bluetoothButtons/bluetooth_buttons.py @ 1406:b2e9cd28d202

loftdesk config Ignore-this: 2bee427b1909e6c60603f03d6ad69087 darcs-hash:83fc6c1754be4b34f14fbd6293b8d9cc40b6b40c
author drewp <drewp@bigasterisk.com>
date Tue, 23 Jul 2019 10:29:20 -0700
parents 80397afd5b52
children
line wrap: on
line source

import hidraw
import os
import requests
import json

fileno = os.open('/dev/hidraw0', os.O_RDWR)
h = hidraw.HIDRaw(fileno)

keys = {
    b'\x02\xb6\x00': 'left',
    b'\x02\xe9\x00': 'top',
    b'\x02\xb5\x00': 'right',
    b'\x02\xcd\x00': 'middle',
}

while True:
    buf = os.read(fileno, 16)
    print('got %r' % buf)
    addr = h.getPhysicalAddress().decode('ascii')

    if buf in keys:
        msg = {'addr': addr, 'key': keys[buf]}
        print(msg)
        requests.post('http://bang6:10011/bluetoothButton',
                      data=json.dumps(msg))
# to use port 10014