Example node for Yodiwo's Plegma API
Dependencies: EthernetInterface FXOS8700Q HTTPClient HTTPD MQTTS SDFileSystem YodiwoPlegma mbed-rpc mbed-rtos mbed wolfSSL
yodiwo_functions.h@8:66d34592c1ad, 2015-09-28 (annotated)
- Committer:
- mitsarionas
- Date:
- Mon Sep 28 09:13:43 2015 +0000
- Revision:
- 8:66d34592c1ad
- Parent:
- 5:1ef168357347
using published HTTPClient
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mitsarionas | 3:11b767300d32 | 1 | #ifndef __YODIWO_FUNCTIONS_H__ |
mitsarionas | 3:11b767300d32 | 2 | #define __YODIWO_FUNCTIONS_H__ |
mitsarionas | 3:11b767300d32 | 3 | |
mitsarionas | 3:11b767300d32 | 4 | #ifdef __cplusplus |
mitsarionas | 3:11b767300d32 | 5 | extern "C" { |
mitsarionas | 3:11b767300d32 | 6 | #endif |
mitsarionas | 3:11b767300d32 | 7 | |
mitsarionas | 3:11b767300d32 | 8 | #include <stdlib.h> |
mitsarionas | 3:11b767300d32 | 9 | #include "yodiwo_api.h" |
mitsarionas | 3:11b767300d32 | 10 | |
mitsarionas | 3:11b767300d32 | 11 | typedef int (func_ToJson)(char *, size_t, void *); |
mitsarionas | 3:11b767300d32 | 12 | typedef Yodiwo_Plegma_Json_e (func_FromJson)(char *, size_t, void *); |
mitsarionas | 3:11b767300d32 | 13 | |
mitsarionas | 3:11b767300d32 | 14 | typedef struct |
mitsarionas | 3:11b767300d32 | 15 | { |
mitsarionas | 3:11b767300d32 | 16 | char *name; |
mitsarionas | 3:11b767300d32 | 17 | func_ToJson *toJson; |
mitsarionas | 3:11b767300d32 | 18 | func_FromJson *fromJson; |
mitsarionas | 3:11b767300d32 | 19 | int (*msg_handler)(char *, size_t); |
mitsarionas | 3:11b767300d32 | 20 | } message_translators; |
mitsarionas | 3:11b767300d32 | 21 | |
mitsarionas | 3:11b767300d32 | 22 | typedef int (*msg_sender)(char *msg, int msg_len, char *msg_type); |
mitsarionas | 3:11b767300d32 | 23 | |
mitsarionas | 3:11b767300d32 | 24 | void init_yodiwo(char *nodeName, Array_Yodiwo_Plegma_Thing_t *things, msg_sender sender); |
mitsarionas | 3:11b767300d32 | 25 | int yodiwo_handle_message(char *message, int message_len, char *topic, int topic_len); |
mitsarionas | 3:11b767300d32 | 26 | |
mitsarionas | 3:11b767300d32 | 27 | typedef int (*portevent_handler_func)(Yodiwo_Plegma_PortEvent_t *event); |
mitsarionas | 3:11b767300d32 | 28 | int register_portevent_handler(char *portKey, portevent_handler_func handler); |
mitsarionas | 3:11b767300d32 | 29 | |
mitsarionas | 3:11b767300d32 | 30 | int handle_portevent(Yodiwo_Plegma_PortEvent_t *event); |
mitsarionas | 3:11b767300d32 | 31 | |
mitsarionas | 3:11b767300d32 | 32 | int portevents(Array_Yodiwo_Plegma_PortEvent_t *events); |
mitsarionas | 3:11b767300d32 | 33 | |
mitsarionas | 3:11b767300d32 | 34 | #ifdef __cplusplus |
mitsarionas | 3:11b767300d32 | 35 | } |
mitsarionas | 3:11b767300d32 | 36 | #endif |
mitsarionas | 3:11b767300d32 | 37 | |
mitsarionas | 3:11b767300d32 | 38 | #endif /* __YODIWO_FUNCTIONS_H__ */ |
mitsarionas | 5:1ef168357347 | 39 |