signalwire-agents 0.1.43__tar.gz → 0.1.45__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {signalwire_agents-0.1.43/signalwire_agents.egg-info → signalwire_agents-0.1.45}/PKG-INFO +1 -1
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/pyproject.toml +1 -1
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/__init__.py +5 -1
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent_base.py +5 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/prompt_mixin.py +18 -5
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/web_mixin.py +4 -0
- signalwire_agents-0.1.45/signalwire_agents/web/__init__.py +17 -0
- signalwire_agents-0.1.45/signalwire_agents/web/web_service.py +559 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45/signalwire_agents.egg-info}/PKG-INFO +1 -1
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents.egg-info/SOURCES.txt +3 -1
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/LICENSE +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/setup.cfg +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/setup.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/agent_server.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/agents/bedrock.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/build_search.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/config.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/core/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/core/agent_loader.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/core/argparse_helpers.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/core/dynamic_config.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/core/service_loader.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/execution/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/execution/datamap_exec.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/execution/webhook_exec.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/output/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/output/output_formatter.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/output/swml_dump.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/simulation/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/simulation/data_generation.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/simulation/data_overrides.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/simulation/mock_env.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/swaig_test_wrapper.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/test_swaig.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/cli/types.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/config/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/deployment/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/deployment/handlers/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/prompt/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/prompt/manager.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/routing/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/security/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/swml/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/tools/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/tools/decorator.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/agent/tools/registry.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/auth_handler.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/config_loader.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/contexts.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/data_map.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/function_result.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/logging_config.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/ai_config_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/auth_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/serverless_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/skill_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/state_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/tool_mixin.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/pom_builder.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/security/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/security/session_manager.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/security_config.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/skill_base.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/skill_manager.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/swaig_function.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/swml_builder.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/swml_handler.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/swml_renderer.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/swml_service.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/concierge.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/faq_bot.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/info_gatherer.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/receptionist.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/prefabs/survey.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/schema.json +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/document_processor.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/index_builder.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/pgvector_backend.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/query_processor.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/search_engine.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/search/search_service.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/api_ninjas_trivia/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/api_ninjas_trivia/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/api_ninjas_trivia/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere_serverless/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere_serverless/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datasphere_serverless/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datetime/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datetime/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/datetime/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/joke/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/joke/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/joke/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/math/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/math/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/math/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/mcp_gateway/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/mcp_gateway/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/mcp_gateway/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/native_vector_search/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/native_vector_search/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/native_vector_search/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/play_background_file/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/play_background_file/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/play_background_file/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/registry.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/spider/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/spider/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/spider/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/swml_transfer/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/swml_transfer/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/swml_transfer/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/weather_api/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/weather_api/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/weather_api/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/web_search/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/web_search/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/web_search/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/wikipedia_search/README.md +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/wikipedia_search/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/skills/wikipedia_search/skill.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/utils/__init__.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/utils/pom_utils.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/utils/schema_utils.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/utils/token_generators.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/utils/validators.py +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents.egg-info/dependency_links.txt +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents.egg-info/entry_points.txt +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents.egg-info/requires.txt +0 -0
- {signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents.egg-info/top_level.txt +0 -0
@@ -18,7 +18,7 @@ A package for building AI agents using SignalWire's AI and SWML capabilities.
|
|
18
18
|
from .core.logging_config import configure_logging
|
19
19
|
configure_logging()
|
20
20
|
|
21
|
-
__version__ = "0.1.
|
21
|
+
__version__ = "0.1.45"
|
22
22
|
|
23
23
|
# Import core classes for easier access
|
24
24
|
from .core.agent_base import AgentBase
|
@@ -31,6 +31,9 @@ from signalwire_agents.core.function_result import SwaigFunctionResult
|
|
31
31
|
from signalwire_agents.core.swaig_function import SWAIGFunction
|
32
32
|
from signalwire_agents.agents.bedrock import BedrockAgent
|
33
33
|
|
34
|
+
# Import WebService for static file serving
|
35
|
+
from signalwire_agents.web import WebService
|
36
|
+
|
34
37
|
# Lazy import skills to avoid slow startup for CLI tools
|
35
38
|
# Skills are now loaded on-demand when requested
|
36
39
|
def _get_skill_registry():
|
@@ -138,6 +141,7 @@ __all__ = [
|
|
138
141
|
"Context",
|
139
142
|
"Step",
|
140
143
|
"create_simple_context",
|
144
|
+
"WebService",
|
141
145
|
"start_agent",
|
142
146
|
"run_agent",
|
143
147
|
"list_skills",
|
@@ -562,6 +562,7 @@ class AgentBase(
|
|
562
562
|
SWML document as a string
|
563
563
|
"""
|
564
564
|
self.log.debug("_render_swml_called",
|
565
|
+
call_id=call_id,
|
565
566
|
has_modifications=bool(modifications),
|
566
567
|
use_ephemeral=bool(modifications and modifications.get("__use_ephemeral_agent")),
|
567
568
|
has_dynamic_callback=bool(self._dynamic_config_callback))
|
@@ -618,6 +619,9 @@ class AgentBase(
|
|
618
619
|
# Generate a call ID if needed
|
619
620
|
if call_id is None:
|
620
621
|
call_id = agent_to_use._session_manager.create_session()
|
622
|
+
self.log.debug("generated_call_id", call_id=call_id)
|
623
|
+
else:
|
624
|
+
self.log.debug("using_provided_call_id", call_id=call_id)
|
621
625
|
|
622
626
|
# Start with any SWAIG query params that were set
|
623
627
|
query_params = agent_to_use._swaig_query_params.copy() if agent_to_use._swaig_query_params else {}
|
@@ -679,6 +683,7 @@ class AgentBase(
|
|
679
683
|
token = None
|
680
684
|
if func.secure and call_id:
|
681
685
|
token = agent_to_use._create_tool_token(tool_name=name, call_id=call_id)
|
686
|
+
self.log.debug("created_token_for_function", function=name, call_id=call_id, token_prefix=token[:20] if token else None)
|
682
687
|
|
683
688
|
# Prepare function entry
|
684
689
|
function_entry = {
|
{signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/prompt_mixin.py
RENAMED
@@ -7,7 +7,13 @@ Licensed under the MIT License.
|
|
7
7
|
See LICENSE file in the project root for full license information.
|
8
8
|
"""
|
9
9
|
|
10
|
-
from typing import Optional, Union, List, Dict, Any
|
10
|
+
from typing import Optional, Union, List, Dict, Any, TYPE_CHECKING
|
11
|
+
|
12
|
+
if TYPE_CHECKING:
|
13
|
+
from signalwire_agents.core.agent_base import AgentBase
|
14
|
+
from signalwire_agents.core.contexts import ContextBuilder
|
15
|
+
else:
|
16
|
+
from signalwire_agents.core.contexts import ContextBuilder
|
11
17
|
|
12
18
|
|
13
19
|
class PromptMixin:
|
@@ -112,7 +118,7 @@ class PromptMixin:
|
|
112
118
|
bullets=sub_bullets if sub_bullets else None
|
113
119
|
)
|
114
120
|
|
115
|
-
def define_contexts(self, contexts=None) ->
|
121
|
+
def define_contexts(self, contexts=None) -> Union['AgentBase', 'ContextBuilder']:
|
116
122
|
"""
|
117
123
|
Define contexts and steps for this agent (alternative to POM/prompt)
|
118
124
|
|
@@ -132,15 +138,22 @@ class PromptMixin:
|
|
132
138
|
return self
|
133
139
|
else:
|
134
140
|
# Legacy behavior - return ContextBuilder
|
135
|
-
# Import here to avoid circular imports
|
136
|
-
from signalwire_agents.core.contexts import ContextBuilder
|
137
|
-
|
138
141
|
if self._contexts_builder is None:
|
139
142
|
self._contexts_builder = ContextBuilder(self)
|
140
143
|
self._contexts_defined = True
|
141
144
|
|
142
145
|
return self._contexts_builder
|
143
146
|
|
147
|
+
@property
|
148
|
+
def contexts(self) -> 'ContextBuilder':
|
149
|
+
"""
|
150
|
+
Get the ContextBuilder for this agent
|
151
|
+
|
152
|
+
Returns:
|
153
|
+
ContextBuilder instance for defining contexts
|
154
|
+
"""
|
155
|
+
return self.define_contexts()
|
156
|
+
|
144
157
|
def _validate_prompt_mode_exclusivity(self):
|
145
158
|
"""
|
146
159
|
Validate that POM sections and raw text are not mixed in the main prompt
|
{signalwire_agents-0.1.43 → signalwire_agents-0.1.45}/signalwire_agents/core/mixins/web_mixin.py
RENAMED
@@ -494,6 +494,10 @@ class WebMixin:
|
|
494
494
|
|
495
495
|
# Get call_id from body if present
|
496
496
|
call_id = body.get("call_id")
|
497
|
+
if not call_id and "call" in body:
|
498
|
+
# Sometimes it might be nested under 'call'
|
499
|
+
call_id = body.get("call", {}).get("call_id")
|
500
|
+
req_log.debug("extracted_call_id_from_body", call_id=call_id, body_keys=list(body.keys()))
|
497
501
|
else:
|
498
502
|
# Get call_id from query params for GET
|
499
503
|
call_id = request.query_params.get("call_id")
|
@@ -0,0 +1,17 @@
|
|
1
|
+
"""
|
2
|
+
Copyright (c) 2025 SignalWire
|
3
|
+
|
4
|
+
This file is part of the SignalWire AI Agents SDK.
|
5
|
+
|
6
|
+
Licensed under the MIT License.
|
7
|
+
See LICENSE file in the project root for full license information.
|
8
|
+
"""
|
9
|
+
|
10
|
+
"""SignalWire Agents Web Service Module
|
11
|
+
|
12
|
+
This module provides static file serving capabilities for the SignalWire Agents SDK.
|
13
|
+
"""
|
14
|
+
|
15
|
+
from .web_service import WebService
|
16
|
+
|
17
|
+
__all__ = ['WebService']
|