flipperzero icon indicating copy to clipboard operation
flipperzero copied to clipboard

tools: Migrate to Protobuf RPC sessions

Open str4d opened this issue 2 years ago • 3 comments
trafficstars

To-do:

  • [x] Generate protobuf 0.20 bindings.
  • RpcSession:
    • [x] Basic synchronous support.
    • [ ] Rewrite to be asynchronous and handle I/O in a separate task.
    • [ ] Protobuf version checking.
    • [ ] Handle command IDs correctly.
      • The session should be managing them, and not using 0 which is a broadcast ID.
    • [ ] Automatic session closing.

Working commands:

  • [x] --bin storage -- mkdir
  • [x] --bin storage -- remove
  • [x] --bin storage -- size
  • [x] --bin storage -- receive
  • [ ] --bin storage -- send
  • [x] --bin storage -- list
  • [x] --bin storage -- md5sum
  • [ ] --bin run-fap

Closes #76.

str4d avatar Sep 02 '23 22:09 str4d

--bin storage -- list seems to be slower than the text CLI version. Not sure there's much we can do about that.

str4d avatar Sep 02 '23 23:09 str4d

Rebased on main.

str4d avatar Oct 05 '23 02:10 str4d

Force-pushed to clean up the protobuf generation and move the output files into a submodule, making room for other submodules under proto for organising the async impl.

str4d avatar Oct 06 '23 00:10 str4d