1 #ifndef _RADIOLIB_TRANSPORT_LAYER_H 2 #define _RADIOLIB_TRANSPORT_LAYER_H 4 #include "../../TypeDef.h" 32 virtual int16_t
openTransportConnection(
const char* host,
const char* protocol, uint16_t port, uint16_t tcpKeepAlive = 0) = 0;
48 virtual int16_t
send(
const char* data) = 0;
59 virtual int16_t
send(uint8_t* data,
size_t len) = 0;
72 virtual size_t receive(uint8_t* data,
size_t len, uint32_t timeout = 10000) = 0;
83 virtual size_t getNumBytes(uint32_t timeout = 10000,
size_t minBytes = 10) = 0;
Provides common interface for protocols that run on modules with Internet connectivity, such as HTTP or MQTT. Because this class is used mainly as interface, all of its virtual members must be implemented in the module class.
Definition: TransportLayer.h:12
virtual size_t getNumBytes(uint32_t timeout=10000, size_t minBytes=10)=0
Get number of received bytes.
virtual size_t receive(uint8_t *data, size_t len, uint32_t timeout=10000)=0
Receive data.
virtual int16_t openTransportConnection(const char *host, const char *protocol, uint16_t port, uint16_t tcpKeepAlive=0)=0
Open transport layer connection.
virtual int16_t send(const char *data)=0
Send string-based data.
virtual int16_t closeTransportConnection()=0
Close transport layer connection.