Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MVP: Client #1

Open
5 tasks
ShadowJonathan opened this issue Aug 16, 2021 · 1 comment
Open
5 tasks

MVP: Client #1

ShadowJonathan opened this issue Aug 16, 2021 · 1 comment
Assignees

Comments

@ShadowJonathan
Copy link
Member

The following behaviour must be present for the first MVP implementation of lb:

  • Wholesale serialisation of requests from ruma types (integer translation not required for requests at this stage)
  • CBOR Integer key translation to corresponding string-key counterparts
  • Wholesale deserialisation of responses onto ruma types (with integer key translation)
  • DTLS + CoAP connection establishment
  • CoAP sync OBSERVE exposure (futures channel? Simple try_next()?)
@ShadowJonathan ShadowJonathan self-assigned this Aug 16, 2021
@ShadowJonathan ShadowJonathan mentioned this issue Aug 16, 2021
4 tasks
@ShadowJonathan
Copy link
Member Author

There’s a bunch of options to start with, I think;

  • sync single-thread blocking client
  • sync single-thread blocking client, with a separate thread looping for observe messages
  • “Async” multi-thread blocking client
  • full rust-futures async client

out of those all, I think the first (request a single COAP request on a single connection at a time, and block on it) would be the easiest to start off with

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

No branches or pull requests

1 participant