Attach stream subscriptions to CHAT lifecycle and member profiles

This commit is contained in:
evgeny committed 2026-10-12 00:01:39 +02:00
1 parent b14f00a4b2
commit 30106c8f93
11 files changed
+954 -5

No files matched your search

+3 -1
View File
@@ -1,5 +1,6 @@
// utun_instance.c - Root instance implementation
#include "utun_instance.h"
#include "stream/stream.h"
#include "etcp_router.h"
#include "config_parser.h"
#include "config_updater.h"
@@ -777,7 +778,7 @@ int chat_service_start(struct UTUN_INSTANCE* instance) {
snprintf(db_file, sizeof(db_file), "%s/chats.db", instance->config->global.db_path);
if (db_sync_enable(instance) < 0) return -1;
topo_group_invite_init(instance);
if (chat_core_init(instance, db_file) < 0 || chat_sync_init(instance) < 0) goto fail;
if (chat_core_init(instance, db_file) < 0 || chat_sync_init(instance) < 0 || stream_service_init(instance) < 0) goto fail;
instance->media_async = media_async_create();
if (!instance->media_async || media_delivery_init(instance) < 0) goto fail;
if (member_files_init(instance) < 0 || dm_mailbox_init(instance) < 0 || dm_core_init(instance) < 0 ||
@@ -839,6 +840,7 @@ void chat_service_stop(struct UTUN_INSTANCE* instance) {
instance->chat_started = 0;
chat_headless_control_destroy(instance);
call_headless_destroy(instance); radio_headless_destroy(instance);
stream_service_destroy(instance);
chat_media_startup_backfill_destroy(instance);
dm_media_quiesce(instance);
member_files_quiesce(instance);