Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 7 additions & 5 deletions src/praisonai-bot/praisonai_bot/gateway/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -6200,7 +6200,7 @@ def _resolve(obj):
elif not isinstance(channels_cfg, dict):
errors.append("'channels' must be a non-empty dictionary")
else:
_tokenless = {"email", "agentmail", "signal"}
_tokenless = {"email", "agentmail", "signal", "local"}
for cname, cdef in channels_cfg.items():
if not isinstance(cdef, dict):
continue
Expand Down Expand Up @@ -6752,8 +6752,9 @@ async def start_channels(self, channels_cfg: Dict[str, Dict[str, Any]]) -> None:
wa_web_mode = (channel_type == "whatsapp" and
ch_cfg.get("mode", "cloud").lower().strip() == "web")
# Email/AgentMail use env vars for tokens; Signal links a device via
# a local bridge — none require a token in YAML.
is_email_platform = channel_type in ("email", "agentmail", "signal")
# a local bridge; ``local`` is the token-free terminal channel —
# none require a token in YAML.
is_email_platform = channel_type in ("email", "agentmail", "signal", "local")
if not token and not wa_web_mode and not is_email_platform:
logger.warning(f"No token for channel '{channel_name}', skipping")
# Issue #3159: keep the skipped channel queryable as degraded so
Expand Down Expand Up @@ -8269,8 +8270,9 @@ async def _start_single_channel(self, channel_name: str, ch_cfg: Dict[str, Any])
wa_web_mode = (channel_type == "whatsapp" and
ch_cfg.get("mode", "cloud").lower().strip() == "web")
# Email/AgentMail use env vars for tokens; Signal links a device via a
# local bridge — none require a token in YAML.
is_email_platform = channel_type in ("email", "agentmail", "signal")
# local bridge; ``local`` is the token-free terminal channel — none
# require a token in YAML.
is_email_platform = channel_type in ("email", "agentmail", "signal", "local")

if not token and not wa_web_mode and not is_email_platform:
logger.warning(f"No token for channel '{channel_name}', skipping")
Expand Down
Loading