-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Description
It would be nice to have an optional cargo build feature to allow Device
information and Event
data to be easily serialized using serde.
If you're interested, I could do the work and put up a PR.
For example, an event for a USB device insertion, serialized to JSON, might look like this:
{
"type": "add",
"seqNum": 24130,
"subsystem": "usb",
"sysname": "1-1",
"devtype": "usb_device",
"device": {
"devnum": 48414,
"syspath": "/sys/devices/pci0000:00/0000:00:14.0/usb1/1-1",
"devpath": "/devices/pci0000:00/0000:00:14.0/usb1/1-1",
"devnode": "/dev/bus/usb/001/031",
"subsystem": "usb",
"sysname": "1-1",
"sysnum": 1,
"devtype": "usb_device",
"driver": "usb",
"attributes": {
"authorized": "1",
"avoid_reset_quirk": "0",
"bConfigurationValue": "1",
"bDeviceClass": "00",
"bDeviceProtocol": "00",
"bDeviceSubClass": "00",
"bMaxPacketSize0": "8",
"bMaxPower": "100mA",
"bNumConfigurations": "1",
"bNumInterfaces": " 1",
"bcdDevice": "0600",
"bmAttributes": "a0",
"busnum": "1",
"configuration": "",
"descriptors": "\u0012\u0001",
"dev": "189:30",
"devnum": "31",
"devpath": "1",
"driver": "usb",
"firmware_node": "",
"idProduct": "6001",
"idVendor": "0403",
"ltm_capable": "no",
"manufacturer": "FTDI",
"maxchild": "0",
"port": "",
"product": "US232R",
"quirks": "0x0",
"removable": "removable",
"rx_lanes": "1",
"serial": "FTDBHX3J",
"speed": "12",
"subsystem": "usb",
"tx_lanes": "1",
"uevent": "MAJOR=189,MINOR=30,DEVNAME=bus/usb/001/031,DEVTYPE=usb_device,DRIVER=usb,PRODUCT=403/6001/600,TYPE=0/0/0,BUSNUM=001,DEVNUM=031",
"urbnum": "18",
"version": " 2.00"
},
"properties": {
"ACTION": "add",
"BUSNUM": "001",
"DEVNAME": "/dev/bus/usb/001/031",
"DEVNUM": "031",
"DEVPATH": "/devices/pci0000:00/0000:00:14.0/usb1/1-1",
"DEVTYPE": "usb_device",
"DRIVER": "usb",
"ID_BUS": "usb",
"ID_FOR_SEAT": "usb-pci-0000_00_14_0-usb-0_1",
"ID_MODEL": "US232R",
"ID_MODEL_ENC": "US232R",
"ID_MODEL_FROM_DATABASE": "FT232 Serial (UART) IC",
"ID_MODEL_ID": "6001",
"ID_PATH": "pci-0000:00:14.0-usb-0:1",
"ID_PATH_TAG": "pci-0000_00_14_0-usb-0_1",
"ID_REVISION": "0600",
"ID_SERIAL": "FTDI_US232R_FTDBHX3J",
"ID_SERIAL_SHORT": "FTDBHX3J",
"ID_USB_INTERFACES": ":ffffff:",
"ID_VENDOR": "FTDI",
"ID_VENDOR_ENC": "FTDI",
"ID_VENDOR_FROM_DATABASE": "Future Technology Devices International, Ltd",
"ID_VENDOR_ID": "0403",
"MAJOR": "189",
"MINOR": "30",
"PRODUCT": "403/6001/600",
"SEQNUM": "24130",
"SUBSYSTEM": "usb",
"TAGS": ":seat:uaccess:",
"TYPE": "0/0/0",
"USEC_INITIALIZED": "257380779616"
}
}
}
Metadata
Metadata
Assignees
Labels
No labels