summaryrefslogtreecommitdiff
path: root/include/hybbx/proxychat.h
diff options
context:
space:
mode:
authorinfo@mode42.com <info@mode42.com>2026-08-08 03:54:55 +0000
committerinfo@mode42.com <info@mode42.com>2026-08-08 03:54:55 +0000
commit20cb29c2f8c5c87bc590896854a20b1473ceb358 (patch)
tree2857f41513a56ad41af97b57362639298aa7f033 /include/hybbx/proxychat.h
#2
Diffstat (limited to 'include/hybbx/proxychat.h')
-rw-r--r--include/hybbx/proxychat.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/include/hybbx/proxychat.h b/include/hybbx/proxychat.h
new file mode 100644
index 0000000..74f71f2
--- /dev/null
+++ b/include/hybbx/proxychat.h
@@ -0,0 +1,40 @@
+#ifndef HYBBX_PROXYCHAT_H
+#define HYBBX_PROXYCHAT_H
+
+/**
+ * Inter-Main chat via mains_proxy.
+ *
+ * Local `/chat` stays on this Main. `/proxychat` is the mains-proxy sub-area
+ * under `/chat` (or `/chat proxychat`). Only chat lines cross the mesh — no
+ * user accounts or rights.
+ */
+
+#include "hybbx/types.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+struct hybbx_service;
+struct hybbx_session;
+
+/** Show proxychat area banner. */
+void hybbx_proxychat_show_banner(struct hybbx_session *session);
+
+/**
+ * Post a line in proxychat (relay when mesh is active).
+ */
+hybbx_result_t hybbx_proxychat_post(struct hybbx_service *service,
+ struct hybbx_session *session,
+ const char *line);
+
+/** Deliver a line received from a remote Main. */
+void hybbx_proxychat_receive(struct hybbx_service *service,
+ const char *from_address,
+ const char *line);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* HYBBX_PROXYCHAT_H */
git clone -b <branch> https://cgit.mode42.com/<repo>.git
git clone -b <branch> git://cgit.mode42.com/<repo>.git

info@mode42.com