Crate coap_request

source ·
Expand description

The coap-request crate defines an interface provided by a CoAP client stack towards applications that can send requests through it.

It is the client side equivalent of the coap-handler crate.

Usability

This crate provides a very low-level and generic interface, which is not ideal for every-day “GET me the plain text content of coap://example.com/foo” style requests. The crate coap-request-implementations will fill the gap, just as coap-handler-implementations does for coap-handler.

Caveats

There boundary of responsibilities for respecting protocol level requirements is not clearly established yet. For example, it is unclear how the application learns special option encoding rules it needs to follow given the transport, or whether other operations on the same stack have concluded their operations w/rt Request-Tag processing.

It is unclear yet whether the async functions should be Send or not (or whether distinct traits are needed to cater for both cases).

Traits

  • Interface describing a CoAP request a client wants to send
  • The CoAP stack provided by a CoAP library