Skip to content

Commit 26542ee

Browse files
authored
Merge pull request #30 from TapWithUs/codex/implement-logging-with-python's-logging-module
Implement Python logging
2 parents c325971 + 4479fac commit 26542ee

4 files changed

Lines changed: 34 additions & 24 deletions

File tree

.flake8

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
[flake8]
22
max-line-length = 120
3+
exclude = .git, __pycache__, .env*, build, dist, *.egg-info

examples/basic.py

Lines changed: 21 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,41 @@
11
import asyncio
2+
import logging
23
import time
34

4-
from tapsdk import TapInputMode, TapSDK, InputType, AirGestures
5+
from tapsdk import AirGestures, InputType, TapInputMode, TapSDK
6+
7+
logging.basicConfig(level=logging.INFO)
8+
logging.getLogger("tapsdk").setLevel(logging.DEBUG)
9+
logger = logging.getLogger(__name__)
510

611

712
def OnDisconnection(identifier):
8-
print("Disconnected. ", identifier)
13+
logger.info("Disconnected. %s", identifier)
914

1015

1116
def OnConnection(identifier):
12-
print("Connected. ", identifier)
17+
logger.info("Connected. %s", identifier)
1318

1419

1520
def OnMouseModeChange(identifier, mouse_mode):
16-
print(str(identifier) + " changed to mode " + str(mouse_mode))
21+
logger.info("%s changed to mode %s", identifier, mouse_mode)
1722

1823

1924
def OnTapped(identifier, tapcode):
20-
print(str(identifier) + " tapped " + str(tapcode))
25+
logger.info("%s tapped %s", identifier, tapcode)
2126

2227

2328
def OnGesture(identifier, gesture):
24-
print(str(identifier) + " gesture " + str(AirGestures(gesture)))
29+
logger.info("%s gesture %s", identifier, AirGestures(gesture))
2530

2631

2732
def OnMoused(identifier, vx, vy, isMouse):
28-
print(str(identifier) + " mouse movement: %d, %d, %d" % (vx, vy, isMouse))
33+
logger.info("%s mouse movement: %d, %d, %d", identifier, vx, vy, isMouse)
2934

3035

3136
def OnRawData(identifier, packets):
3237
for m in packets:
33-
print(f"{m['type']}, {time.time()}, {m['payload']}")
38+
logger.info("%s, %s, %s", m['type'], time.time(), m['payload'])
3439

3540

3641
async def run(loop):
@@ -44,33 +49,33 @@ async def run(loop):
4449
client.register_mouse_events(OnMoused)
4550
client.register_air_gesture_state_events(OnMouseModeChange)
4651
await client.run()
47-
print("Connected: {0}".format(client.client.is_connected))
52+
logger.info("Connected: %s", client.client.is_connected)
4853

49-
print("Set Controller Mode for 5 seconds")
54+
logger.info("Set Controller Mode for 5 seconds")
5055
await client.set_input_mode(TapInputMode("controller"))
5156
await asyncio.sleep(5)
5257

53-
print("Force Mouse Mode for 5 seconds")
58+
logger.info("Force Mouse Mode for 5 seconds")
5459
await client.set_input_type(InputType.MOUSE)
5560
await asyncio.sleep(5)
5661

57-
print("Force keyboard Mode for 5 seconds")
62+
logger.info("Force keyboard Mode for 5 seconds")
5863
await client.set_input_type(InputType.KEYBOARD)
5964
await asyncio.sleep(5)
6065

61-
print("Set auto Mode for 10 seconds")
66+
logger.info("Set auto Mode for 10 seconds")
6267
await client.set_input_type(InputType.AUTO)
6368
await asyncio.sleep(10)
6469

65-
print("Set Text Mode for 10 seconds")
70+
logger.info("Set Text Mode for 10 seconds")
6671
await client.set_input_mode(TapInputMode("text"))
6772
await asyncio.sleep(10)
6873

69-
print("Send Haptics")
74+
logger.info("Send Haptics")
7075
await client.send_vibration_sequence([100, 200, 100, 200, 500])
7176
await asyncio.sleep(5)
7277

73-
print("Set Raw Mode for 5 seconds")
78+
logger.info("Set Raw Mode for 5 seconds")
7479
await asyncio.sleep(2)
7580
await client.set_input_mode(TapInputMode("raw", sensitivity=[0, 0, 0]))
7681
await asyncio.sleep(5)

tapsdk/inputmodes.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import logging
22
from .enumerations import InputType
33

4+
logger = logging.getLogger(__name__)
5+
46

57
class TapInputMode:
68
def __init__(self, mode, sensitivity=[0, 0, 0]):
@@ -16,7 +18,7 @@ def __init__(self, mode, sensitivity=[0, 0, 0]):
1618
if mode == "raw":
1719
self._register_sensitivity(sensitivity)
1820
else:
19-
logging.warning("Invalid mode \"%s\". Set to \"text\"" % mode)
21+
logger.warning("Invalid mode \"%s\". Set to \"text\"", mode)
2022
self.mode = "text"
2123

2224
def _register_sensitivity(self, sensitivity):

tapsdk/tap.py

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,16 @@
11
import asyncio
2+
import logging
23
import platform
34
from asyncio.events import AbstractEventLoop
45
from typing import Callable
56

67
from bleak import BleakClient, BleakScanner
7-
from bleak import _logger as logger
88

99
from . import parsers
1010
from .enumerations import InputType, MouseModes
1111
from .inputmodes import TapInputMode, input_type_command
1212

13+
logger = logging.getLogger(__name__)
1314

1415
tap_service = 'c3ff0001-1d8b-40fd-a56f-c7bd5d0f3370'
1516
nus_service = '6e400001-b5a3-f393-e0a9-e50e24dcca9e'
@@ -109,10 +110,11 @@ def get_mac_addr() -> str:
109110
connected_bt_devices = btdevice_process.stdout.read().splitlines()
110111
tap_devices = list(filter(lambda line: line.startswith("Tap"), connected_bt_devices))
111112
for d in tap_devices:
112-
logger.info("Found tap device: {}".format(d))
113+
logger.info("Found tap device: %s", d)
113114
if len(tap_devices) > 1:
114-
print("Found more than 1 Tap device:")
115-
[print(f"{i+1}. {d}") for i, d in enumerate(tap_devices)]
115+
logger.info("Found more than 1 Tap device:")
116+
for i, d in enumerate(tap_devices):
117+
logger.info("%s. %s", i + 1, d)
116118
tap_devices = [tap_devices[int(input("Select the device number: ")) - 1]]
117119
if len(tap_devices) == 0:
118120
raise ValueError(
@@ -237,16 +239,16 @@ async def run(self):
237239
devices = []
238240

239241
async def detection_cb(device, adv_data):
240-
print("detected ", device, adv_data)
242+
logger.debug("detected %s %s", device, adv_data)
241243
if tap_service.lower() in adv_data.service_uuids:
242244
if device.address not in [d.address for d in devices]:
243245
devices.append(device)
244-
print("detected ", device, adv_data)
246+
logger.debug("detected %s %s", device, adv_data)
245247
stop_event.set()
246248

247249
connected = await self.client.connect_retrieved()
248250
if not connected:
249-
print("Couldn't find connected Tap device. Scanning for Tap devices...")
251+
logger.info("Couldn't find connected Tap device. Scanning for Tap devices...")
250252
async with BleakScanner(detection_callback=detection_cb) as _:
251253
await stop_event.wait()
252254

0 commit comments

Comments
 (0)