messaging.h 596 B

12345678910111213141516171819202122232425
  1. #include "sdkconfig.h"
  2. #include "freertos/ringbuf.h"
  3. #include "cJSON.h"
  4. #pragma once
  5. typedef enum {
  6. MESSAGING_INFO,
  7. MESSAGING_WARNING,
  8. MESSAGING_ERROR
  9. } messaging_types;
  10. typedef struct {
  11. void * next;
  12. char subscriber_name[21];
  13. RingbufHandle_t buf_handle;
  14. } messaging_list_t;
  15. typedef struct {
  16. time_t sent_time;
  17. messaging_types type;
  18. char message[101];
  19. } single_message_t;
  20. cJSON * messaging_retrieve_messages(RingbufHandle_t buf_handle);
  21. RingbufHandle_t messaging_register_subscriber(uint8_t max_count, char * name);
  22. void messaging_post_message(messaging_types type, char * fmt, ...);