diff options
Diffstat (limited to 'packages/meshbay-node/src/meshbay_node/daemon.py')
| -rw-r--r-- | packages/meshbay-node/src/meshbay_node/daemon.py | 25 |
1 files changed, 18 insertions, 7 deletions
diff --git a/packages/meshbay-node/src/meshbay_node/daemon.py b/packages/meshbay-node/src/meshbay_node/daemon.py index bf6bd64..7691467 100644 --- a/packages/meshbay-node/src/meshbay_node/daemon.py +++ b/packages/meshbay-node/src/meshbay_node/daemon.py @@ -334,6 +334,12 @@ class NodeDaemon: # group — "" means the whole group index. "video_root": await self._roster.video_root( group_cfg.id) if self._roster else "", + # Whether TMDB lookups run for this group at all — + # per-group (2026-08-24, used to be node-wide), same + # "read once, kept current in place by the signed op" + # shape as video_root above. + "tmdb_enabled": await self._roster.tmdb_enabled( + group_cfg.id) if self._roster else True, } if not groups_ctx: @@ -364,13 +370,14 @@ class NodeDaemon: await self._media_cache.open() self._enricher = Enricher(self._media_cache) self._tmdb_client = TmdbClient(roster=self._roster) - # Read once at load, like member_upload/enabled_apps — kept - # current in place by ops.set_tmdb_config (the signed op), - # exposed to every group's handshake ack via `daemon_state` - # (already wired to self._webrtc._ctx below) since this is - # node-wide, not per-group. - tmdb_enabled, tmdb_token, tmdb_language = await self._roster.tmdb_config() - self._state["tmdb_enabled"] = tmdb_enabled + # Token/language only — read once at load, kept current in place + # by ops.set_tmdb_config (the signed op), exposed to every + # group's handshake ack via `daemon_state` (already wired to + # self._webrtc._ctx below) since these stay node-wide, one + # shared credential/cache. Whether TMDB is used at all is now + # per-group instead — see each group's own "tmdb_enabled" in + # groups_ctx above. + tmdb_token, tmdb_language = await self._roster.tmdb_config() self._state["tmdb_token_customized"] = bool(tmdb_token) self._state["tmdb_language"] = tmdb_language or "" log.info("Media cache opened: %s", media_cache_db) @@ -390,6 +397,7 @@ class NodeDaemon: groups=groups_ctx, denylist=denylist, max_concurrent_streams=self._config.node.max_concurrent_streams, + transcode_incompatible_video=self._config.node.transcode_incompatible_video, ) # No global chat_store here: each group's store lives in # groups_ctx[gid]["chat_store"] and is resolved per session via @@ -721,6 +729,9 @@ class NodeDaemon: "video_root": ( await self._roster.video_root(group_cfg.id) if self._roster else ""), + "tmdb_enabled": ( + await self._roster.tmdb_enabled(group_cfg.id) + if self._roster else True), "chat_store": store, } groups_ctx[group_cfg.id] = new_ctx |