|
SatCat5
|
Simplified CoAP client that writes responses to a PacketBuffer.
This CoAP endpoint can send simple requests to a remote server, saving response data to a PacketBuffer for later access.
Definition at line 17 of file coap_client.h.
#include <coap_client.h>
Public Member Functions | |
| u16 | msg_id () const |
| Message-ID and token for the most recent request. | |
| void | set_callback (satcat5::io::EventListener *obj) |
| Request notifications for incoming responses. | |
| satcat5::io::Readable * | response_all () |
| Read full header and contents of the next CoAP response. | |
| satcat5::io::Readable * | response_data () |
| Read the contents of the next CoAP response. | |
| bool | response_discard () |
| Discard the contents of the next CoAP response. | |
| satcat5::net::Dispatch * | iface () const |
| Fetch the associated network interface. | |
| satcat5::udp::Port | srcport () const |
| For UDP only, query the local port number. | |
| Connection * | find_token (u32 token) const |
| Scan connections for a matching proxy-ID. More... | |
| satcat5::coap::Connection * | get_idle_connection () const |
| Get the first idle connection, or null if all are busy. | |
| void | set_connection (satcat5::coap::Connection *obj) |
| Set the preferred connection for outgoing requests. More... | |
| void | set_filter (const satcat5::net::Type &filter) |
| Set network interface filter. More... | |
| bool | request (satcat5::coap::Code code, const char *uri, const char *data, u16 fmt=satcat5::coap::FORMAT_TEXT) |
| Create and send a CoAP request, with optional data. More... | |
| bool | request (satcat5::coap::Code code, const char *uri, satcat5::io::Readable *data=0, u16 fmt=satcat5::coap::FORMAT_BYTES) |
| Create and send a CoAP request, with optional data. More... | |
| bool | request (satcat5::coap::Code code, const char *uri, satcat5::cbor::CborWriter &cbor) |
| Create and send a CoAP request, with optional data. More... | |
Protected Member Functions | |
| SimpleClient (satcat5::net::Dispatch *iface) | |
| Constructor attaches to a network interface. More... | |
| void | coap_response (satcat5::coap::Connection *obj, satcat5::coap::Reader *msg) override |
| Save the incoming response message. | |
| void | frame_rcvd (satcat5::io::LimitedRead &src) override |
| Dispatch calls frame_rcvd(...) for each incoming frame with with a matching net::Type value. More... | |
| void | add_connection (Connection *item) |
| void | remove_connection (Connection *item) |
| bool | reply (u8 type, const satcat5::coap::ReadHeader *msg) |
| virtual void | coap_request (Connection *obj, Reader *msg) |
| The Child class overrides these event-handlers: More... | |
| virtual void | coap_reqwait (Connection *obj, Reader *msg) |
| The Child class overrides these event-handlers: More... | |
| virtual void | coap_separate (Connection *obj, Reader *msg) |
| The Child class overrides these event-handlers: More... | |
| virtual void | coap_error (Connection *obj) |
| The Child class overrides these event-handlers: More... | |
| virtual void | coap_ping (const Reader *msg) |
| The Child class overrides these event-handlers: More... | |
| virtual void | coap_timeout (Connection *obj) |
| The Child class overrides these event-handlers: More... | |
Protected Attributes | |
| satcat5::io::PacketBufferStatic< SATCAT5_COAP_BUFFSIZE > | m_rcvd |
| u16 | m_msg_id |
| satcat5::net::Dispatch *const | m_iface |
| satcat5::util::List< satcat5::coap::Connection > | m_list |
| satcat5::coap::Connection * | m_prefer |
| satcat5::coap::Endpoint * | m_aux_ep |
| satcat5::net::Type | m_filter |
| Incoming packet filter. | |
Private Attributes | |
| satcat5::net::Protocol * | m_next |
| Linked list of Protocols. | |
|
explicitprotected |
Constructor attaches to a network interface.
User may optionally request additional connection buffers.
Definition at line 14 of file coap_client.cc.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Reimplemented in satcat5::coap::ProxyServer, and satcat5::coap::EndpointSppFwd.
Definition at line 106 of file coap_endpoint.h.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Reimplemented in satcat5::coap::EndpointSppFwd.
Definition at line 107 of file coap_endpoint.h.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Reimplemented in satcat5::coap::ResourceServer, and satcat5::coap::EndpointSppFwd.
Definition at line 101 of file coap_endpoint.h.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Reimplemented in satcat5::coap::ProxyServer.
Definition at line 104 of file coap_endpoint.h.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Reimplemented in satcat5::coap::ProxyServer.
Definition at line 105 of file coap_endpoint.h.
|
inlineprotectedvirtualinherited |
The Child class overrides these event-handlers:
Definition at line 108 of file coap_endpoint.h.
|
inherited |
Scan connections for a matching proxy-ID.
Definition at line 40 of file coap_endpoint.cc.
|
overrideprotectedvirtualinherited |
Dispatch calls frame_rcvd(...) for each incoming frame with with a matching net::Type value.
The child class SHOULD read the frame contents from the provided "src" object, which is only valid until the function returns.
To send a reply:
The child class MUST override this method.
Implements satcat5::net::Protocol.
Definition at line 56 of file coap_endpoint.cc.
| bool SimpleClient::request | ( | satcat5::coap::Code | code, |
| const char * | uri, | ||
| const char * | data, | ||
| u16 | fmt = satcat5::coap::FORMAT_TEXT |
||
| ) |
Create and send a CoAP request, with optional data.
Various options are provided for generating message contents.
Definition at line 45 of file coap_client.cc.
| bool SimpleClient::request | ( | satcat5::coap::Code | code, |
| const char * | uri, | ||
| satcat5::cbor::CborWriter & | cbor | ||
| ) |
Create and send a CoAP request, with optional data.
Various options are provided for generating message contents.
Definition at line 52 of file coap_client.cc.
| bool SimpleClient::request | ( | satcat5::coap::Code | code, |
| const char * | uri, | ||
| satcat5::io::Readable * | data = 0, |
||
| u16 | fmt = satcat5::coap::FORMAT_BYTES |
||
| ) |
Create and send a CoAP request, with optional data.
Various options are provided for generating message contents.
Definition at line 22 of file coap_client.cc.
|
inlineinherited |
Set the preferred connection for outgoing requests.
Usually called indirectly through ManageSpp or ManageUdp.
Definition at line 58 of file coap_endpoint.h.
|
inlineinherited |
Set network interface filter.
Usually called indirectly through ManageSpp or ManageUdp.
Definition at line 63 of file coap_endpoint.h.