Skip to content
This repository has been archived by the owner on Dec 27, 2020. It is now read-only.

Update device config with embedded device attributes #8

Open
qdot opened this issue Dec 16, 2019 · 1 comment
Open

Update device config with embedded device attributes #8

qdot opened this issue Dec 16, 2019 · 1 comment

Comments

@qdot
Copy link
Member

qdot commented Dec 16, 2019

Time to put @blackspherefollower's toy collection and protocol knowledge to the test.

The device-attributes branch has a device config with schema for externalized attributes (buttplugio/buttplug#93). Right now, only Lovense, Kiiroo v2, and XInput have been ported. Hopefully the layout for those 3 should make sense. Now we need to fill in all of the other devices supported.

How you do this is up to you. If you want to hand enter everything in the yaml, that works. If you want to make spreadsheets or a DB for easier update and export, that works too.

The rules so far (that I've completely made up while developing this):

  • Fill out defaults first, only add configurations if specific devices require it (for naming, etc). For instance, XInput only has defaults because it only really identifies as one device.
  • For configurations, if you have identifiers that need to be extracted from manufacturer strings or other GATT/USB Descriptors, go ahead and add those. I'll try to get those implemented ASAP in C#. JS may take a bit more. None of this is going to ship until all of the pieces are ready.
  • Don't worry about adding that messages support Raw*. That's a special message we'll handle in code.
  • If something doesn't have any attributes (i.e. BatteryLevelCmd), just use an empty object ({}). Using null will cause the schema to error out.
  • Running yarn build or npm run build will both compile the YAML to JSON and run the schema check now.

I think that's it. Good luck. :D

@qdot
Copy link
Member Author

qdot commented Dec 16, 2019

Oh, and literally all of this is up for review/comment/complaint. So far everything seems to work smoothly but I've been in the middle of this all weekend so outside perspective is welcome and probably very much needed.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant