mirror of
https://github.com/sle118/squeezelite-esp32.git
synced 2025-12-06 19:47:02 +03:00
- Bug fixes - Jack doesn't show as plugged in if no jack detection is configured - New layout - Updated jQuery to latest version - Updated bootstrap to latest version - Updated the command processing backend to support UI interactions - Added a number of accessors to normalize read/update various configuration entries - Added more GPIOs to the status tab GPIO list - Added several configuration sections for hardware and system - Removed pop-over windows from system messages - Added a message count pill to the status tab - Added support for message count pill based on the highest severity - Updated the message list table to set colours based on messages severity - Added command processing message area close to the action buttons to provide feedback from running the commands
50 lines
1.7 KiB
C
50 lines
1.7 KiB
C
#include "sdkconfig.h"
|
|
#include "freertos/FreeRTOS.h"
|
|
#include "freertos/ringbuf.h"
|
|
#include "cJSON.h"
|
|
#pragma once
|
|
typedef enum {
|
|
MESSAGING_INFO,
|
|
MESSAGING_WARNING,
|
|
MESSAGING_ERROR
|
|
} messaging_types;
|
|
typedef enum {
|
|
MESSAGING_CLASS_OTA,
|
|
MESSAGING_CLASS_SYSTEM,
|
|
MESSAGING_CLASS_STATS,
|
|
MESSAGING_CLASS_CFGCMD
|
|
} messaging_classes;
|
|
|
|
typedef struct messaging_list_t *messaging_handle_t;
|
|
|
|
typedef struct {
|
|
time_t sent_time;
|
|
messaging_types type;
|
|
messaging_classes msg_class;
|
|
size_t msg_size;
|
|
char message[];
|
|
} single_message_t;
|
|
|
|
cJSON * messaging_retrieve_messages(RingbufHandle_t buf_handle);
|
|
messaging_handle_t messaging_register_subscriber(uint8_t max_count, char * name);
|
|
esp_err_t messaging_post_to_queue(messaging_handle_t subscriber_handle, single_message_t * message, size_t message_size);
|
|
void messaging_post_message(messaging_types type,messaging_classes msg_class, const char * fmt, ...);
|
|
cJSON * messaging_retrieve_messages(RingbufHandle_t buf_handle);
|
|
single_message_t * messaging_retrieve_message(RingbufHandle_t buf_handle);
|
|
void log_send_messaging(messaging_types msgtype,const char *fmt, ...);
|
|
void cmd_send_messaging(const char * cmdname,messaging_types msgtype, const char *fmt, ...);
|
|
esp_err_t messaging_type_to_err_type(messaging_types type);
|
|
void messaging_service_init();
|
|
|
|
#define REALLOC_CAT(e,n) e=realloc(e,strlen(n)); e=strcat(e,n)
|
|
#define LOG_SEND(y, ...) \
|
|
{ \
|
|
ESP_LOG_LEVEL_LOCAL(messaging_type_to_err_type(y),TAG, ##__VA_ARGS__); \
|
|
messaging_post_message(y, MESSAGING_CLASS_SYSTEM, ##__VA_ARGS__); }
|
|
|
|
#define LOG_SEND_ERROR( ...) LOG_SEND(MESSAGING_ERROR,##__VA_ARGS__)
|
|
#define LOG_SEND_INFO( ...) LOG_SEND(MESSAGING_INFO,##__VA_ARGS__)
|
|
#define LOG_SEND_WARN( ...) LOG_SEND(MESSAGING_WARNING,##__VA_ARGS__)
|
|
|
|
|