client version of coap
Dependencies: nRF24L01P cantcoap3
coapClient.h@5:d633e12f113f, 2019-01-25 (annotated)
- Committer:
- Ka_myk
- Date:
- Fri Jan 25 12:10:49 2019 +0000
- Revision:
- 5:d633e12f113f
- Parent:
- 2:e8823d9fa162
all mains;
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
Ka_myk | 0:6a6f97ca5572 | 1 | // |
Ka_myk | 0:6a6f97ca5572 | 2 | // Created by Kamil Mykitiuk on 2019-01-17. |
Ka_myk | 0:6a6f97ca5572 | 3 | // |
Ka_myk | 0:6a6f97ca5572 | 4 | |
Ka_myk | 0:6a6f97ca5572 | 5 | #ifndef COAPCLIENT_H |
Ka_myk | 0:6a6f97ca5572 | 6 | #define COAPCLIENT_H |
Ka_myk | 0:6a6f97ca5572 | 7 | |
Ka_myk | 0:6a6f97ca5572 | 8 | |
Ka_myk | 0:6a6f97ca5572 | 9 | #include <cstdint> |
Ka_myk | 0:6a6f97ca5572 | 10 | #include "cantcoap.h" |
Ka_myk | 0:6a6f97ca5572 | 11 | #include "radioWrapper.h" |
Ka_myk | 0:6a6f97ca5572 | 12 | |
Ka_myk | 0:6a6f97ca5572 | 13 | class CoapClient { |
Ka_myk | 0:6a6f97ca5572 | 14 | public: |
Ka_myk | 0:6a6f97ca5572 | 15 | enum ERROR { |
Ka_myk | 0:6a6f97ca5572 | 16 | SERVER_RESPONSE_AMBIGOUS = -1, |
Ka_myk | 0:6a6f97ca5572 | 17 | SERVER_TIMED_OUT = -2, |
Ka_myk | 0:6a6f97ca5572 | 18 | SMALL_BUFFER = -3, |
Ka_myk | 0:6a6f97ca5572 | 19 | RADIO_NOT_WORKING = -4 |
Ka_myk | 0:6a6f97ca5572 | 20 | }; |
Ka_myk | 0:6a6f97ca5572 | 21 | |
Ka_myk | 0:6a6f97ca5572 | 22 | private: |
Ka_myk | 2:e8823d9fa162 | 23 | uint8_t token[1]; |
Ka_myk | 0:6a6f97ca5572 | 24 | uint16_t message_counter; |
Ka_myk | 1:1d936c763440 | 25 | int listeningTimeout; |
Ka_myk | 0:6a6f97ca5572 | 26 | int retransmissionLimit; |
Ka_myk | 0:6a6f97ca5572 | 27 | RadioWrapper radioWrapper; |
Ka_myk | 1:1d936c763440 | 28 | |
Ka_myk | 0:6a6f97ca5572 | 29 | |
Ka_myk | 0:6a6f97ca5572 | 30 | public: |
Ka_myk | 5:d633e12f113f | 31 | CoapClient(uint16_t counter, uint8_t* token, int retransmissionLimit, int timeout, int channel, unsigned long long rx_address, |
Ka_myk | 2:e8823d9fa162 | 32 | unsigned long long tx_address); |
Ka_myk | 2:e8823d9fa162 | 33 | |
Ka_myk | 0:6a6f97ca5572 | 34 | int get(uint8_t buffer[], int len, char* uri); |
Ka_myk | 0:6a6f97ca5572 | 35 | |
Ka_myk | 0:6a6f97ca5572 | 36 | int post(uint8_t buffer[], int len, char* uri); |
Ka_myk | 0:6a6f97ca5572 | 37 | |
Ka_myk | 0:6a6f97ca5572 | 38 | private: |
Ka_myk | 0:6a6f97ca5572 | 39 | uint16_t preparePDU(CoapPDU& coapPDU); |
Ka_myk | 0:6a6f97ca5572 | 40 | |
Ka_myk | 0:6a6f97ca5572 | 41 | bool isAck(CoapPDU& coapPDU, uint16_t message_id, char* uri); |
Ka_myk | 0:6a6f97ca5572 | 42 | |
Ka_myk | 2:e8823d9fa162 | 43 | bool hasGetResponse(CoapPDU& response); |
Ka_myk | 2:e8823d9fa162 | 44 | |
Ka_myk | 2:e8823d9fa162 | 45 | bool hasPostResponse(CoapPDU& response); |
Ka_myk | 0:6a6f97ca5572 | 46 | }; |
Ka_myk | 0:6a6f97ca5572 | 47 | |
Ka_myk | 0:6a6f97ca5572 | 48 | #endif //COAPCLIENT_H |