From 24de2cd600a4e108c24f6f77a5a4d30111fd9918 Mon Sep 17 00:00:00 2001 From: tomsmeding Date: Tue, 9 May 2017 22:39:16 +0200 Subject: server: Add plugin framework --- plugin_client_header.h | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 plugin_client_header.h (limited to 'plugin_client_header.h') diff --git a/plugin_client_header.h b/plugin_client_header.h new file mode 100644 index 0000000..4428b3c --- /dev/null +++ b/plugin_client_header.h @@ -0,0 +1,26 @@ +#pragma once + +#include + + +enum plugin_event_type{ + PLUGIN_EVENT_MESSAGE, // message, user, room + PLUGIN_EVENT_ONLINE, // user, num + PLUGIN_EVENT_JOIN, // user, room +}; + +struct plugin_event{ + enum plugin_event_type type; + int64_t timestamp; // always set + char *message,*user,*room; + int64_t num; +}; + + +typedef void plugin_event_func_t(const struct plugin_event *event); + + +// All plugins should export a function of type plugin_init_func_t with +// name "plugin_init_func" that returns a pointer to a function that +// receives all events. +plugin_event_func_t* plugin_init_func(void); -- cgit v1.2.3-54-g00ecf