bmsd/websocket.h

Mon, 11 May 2020 17:32:08 +0200

author
Michiel Broek <mbroek@mbse.eu>
date
Mon, 11 May 2020 17:32:08 +0200
changeset 671
4b54d6f79d25
permissions
-rw-r--r--

Version 0.3.33 Added websockets framework. Added fermenter status messages to the websockets broadcast.

/**
 * @file websocket.h
 */

#ifndef _WEBSOCKET_H
#define	_WEBSOCKET_H


struct per_session_data__lws_mirror {
        struct lws *wsi;
        int ringbuffer_tail;
};

/**
 * @brief Broadcast messages to all connected websocket clients.
 * @param msg The message to send. Messages are placed in a ringbuffer queue.
 */
void ws_broadcast(char *msg);

/**
 * @brief Check if a connection is idle for 45 seconds and if so send a ping like
 *        message to keep the connection alive. Call this function at regular intervals.
 */
void ws_check(void);

/**
 * @brief The websockets server thread.
 */
void *ws_loop(void *);

#endif

mercurial