dv-pipecat-ai 0.0.85.dev862__py3-none-any.whl → 0.0.85.dev863__py3-none-any.whl

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.

Potentially problematic release.


This version of dv-pipecat-ai might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dv-pipecat-ai
3
- Version: 0.0.85.dev862
3
+ Version: 0.0.85.dev863
4
4
  Summary: An open source framework for voice (and multimodal) assistants
5
5
  License-Expression: BSD-2-Clause
6
6
  Project-URL: Source, https://github.com/pipecat-ai/pipecat
@@ -1,4 +1,4 @@
1
- dv_pipecat_ai-0.0.85.dev862.dist-info/licenses/LICENSE,sha256=DWY2QGf2eMCFhuu2ChairtT6CB7BEFffNVhXWc4Od08,1301
1
+ dv_pipecat_ai-0.0.85.dev863.dist-info/licenses/LICENSE,sha256=DWY2QGf2eMCFhuu2ChairtT6CB7BEFffNVhXWc4Od08,1301
2
2
  pipecat/__init__.py,sha256=j0Xm6adxHhd7D06dIyyPV_GlBYLlBnTAERVvD_jAARQ,861
3
3
  pipecat/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
4
  pipecat/adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -79,7 +79,7 @@ pipecat/extensions/voicemail/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NM
79
79
  pipecat/extensions/voicemail/voicemail_detector.py,sha256=JxmU2752iWP_1_GmzZReNESUTFAeyEa4XBPL20_C208,30004
80
80
  pipecat/frames/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
81
  pipecat/frames/frames.proto,sha256=JXZm3VXLR8zMOUcOuhVoe2mhM3MQIQGMJXLopdJO_5Y,839
82
- pipecat/frames/frames.py,sha256=kHHqbvIuEY5uwTfEqps4PoEsTO0P-JQCWCM3VOTy6FI,50740
82
+ pipecat/frames/frames.py,sha256=bB960rgNgJ6nDr8KUDQiSL-WoVUV7e7yYZyu28SVm80,52072
83
83
  pipecat/frames/protobufs/frames_pb2.py,sha256=VHgGV_W7qQ4sfQK6RHb5_DggLm3PiSYMr6aBZ8_p1cQ,2590
84
84
  pipecat/metrics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
85
  pipecat/metrics/connection_metrics.py,sha256=8rBsEeufL3meWyJHcUbe35TS963W9B0wSnz0dQkv12A,1734
@@ -114,7 +114,7 @@ pipecat/processors/idle_frame_processor.py,sha256=z8AuhGap61lA5K35P6XCaOpn4kkmK_
114
114
  pipecat/processors/logger.py,sha256=8xa4KKekXQIETlQR7zoGnwUpLNo8CeDVm7YjyXePN-w,2385
115
115
  pipecat/processors/producer_processor.py,sha256=iIIOHZd77APvUGP7JqFbznAHUnCULcq_qYiSEjwXHcc,3265
116
116
  pipecat/processors/text_transformer.py,sha256=LnfWJYzntJhZhrQ1lgSSY4D4VbHtrQJgrC227M69ZYU,1718
117
- pipecat/processors/transcript_processor.py,sha256=TbMSeZCxXgQIdYodXuMSwLp6BvXTy7vQB9YiQZfPxc0,12488
117
+ pipecat/processors/transcript_processor.py,sha256=P-JLoeZid4HKpYnGVxrOb8qQK3jkT5yVztbRrxiu-08,12559
118
118
  pipecat/processors/two_stage_user_idle_processor.py,sha256=uf2aZh_lfW-eMxmFogP3R4taAJ1yXOSqjKsR7oXtD0Y,2938
119
119
  pipecat/processors/user_idle_processor.py,sha256=Dl-Kcg0B4JZqWXXiyGuvYszGimbu2oKOyOJC92R9_hE,9140
120
120
  pipecat/processors/aggregators/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -418,7 +418,7 @@ pipecat/utils/tracing/service_decorators.py,sha256=fwzxFpi8DJl6BJbK74G0UEB4ccMJg
418
418
  pipecat/utils/tracing/setup.py,sha256=7TEgPNpq6M8lww8OQvf0P9FzYc5A30xICGklVA-fua0,2892
419
419
  pipecat/utils/tracing/turn_context_provider.py,sha256=ikon3plFOx0XbMrH6DdeHttNpb-U0gzMZIm3bWLc9eI,2485
420
420
  pipecat/utils/tracing/turn_trace_observer.py,sha256=dma16SBJpYSOE58YDWy89QzHyQFc_9gQZszKeWixuwc,9725
421
- dv_pipecat_ai-0.0.85.dev862.dist-info/METADATA,sha256=0mLWAkf4ua4lTJlW5a5JGtZW7DvCTEvzVSq6REgzRr0,32955
422
- dv_pipecat_ai-0.0.85.dev862.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
423
- dv_pipecat_ai-0.0.85.dev862.dist-info/top_level.txt,sha256=kQzG20CxGf-nSsHmtXHx3hY2-8zHA3jYg8jk0TajqXc,8
424
- dv_pipecat_ai-0.0.85.dev862.dist-info/RECORD,,
421
+ dv_pipecat_ai-0.0.85.dev863.dist-info/METADATA,sha256=DHoNG5Di2PsaASiVkU6D3CB6-3GLilVw7gyN_04RMsM,32955
422
+ dv_pipecat_ai-0.0.85.dev863.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
423
+ dv_pipecat_ai-0.0.85.dev863.dist-info/top_level.txt,sha256=kQzG20CxGf-nSsHmtXHx3hY2-8zHA3jYg8jk0TajqXc,8
424
+ dv_pipecat_ai-0.0.85.dev863.dist-info/RECORD,,
pipecat/frames/frames.py CHANGED
@@ -1055,6 +1055,38 @@ class MetricsFrame(SystemFrame):
1055
1055
  data: List[MetricsData]
1056
1056
 
1057
1057
 
1058
+ @dataclass
1059
+ class FunctionCallTrackingFrame(SystemFrame):
1060
+ """Frame for tracking completed function call execution details.
1061
+
1062
+ Emitted when functions complete to track timing, parameters,
1063
+ responses, and status for analytics and debugging.
1064
+
1065
+ Parameters:
1066
+ message_id: ID of the transcript message that triggered this function
1067
+ function_name: Name of the function being called
1068
+ function_type: Type of function ('pre_call' or 'on_call')
1069
+ node_id: Flow node that triggered the function (optional)
1070
+ request_params: Parameters passed to the function
1071
+ response_data: Response returned by the function
1072
+ status_code: HTTP status code or function exit code
1073
+ latency_ms: Function execution time in milliseconds
1074
+ error_details: Error details if function failed
1075
+ metadata: Additional metadata (e.g., query_kb top results)
1076
+ """
1077
+
1078
+ message_id: str = ""
1079
+ function_name: str = ""
1080
+ function_type: str = "" # 'pre_call' or 'on_call'
1081
+ node_id: Optional[str] = None
1082
+ request_params: Optional[Dict[str, Any]] = None
1083
+ response_data: Optional[Dict[str, Any]] = None
1084
+ status_code: Optional[int] = None
1085
+ latency_ms: Optional[float] = None
1086
+ error_details: Optional[Dict[str, Any]] = None
1087
+ metadata: Optional[Dict[str, Any]] = None
1088
+
1089
+
1058
1090
  @dataclass
1059
1091
  class FunctionCallFromLLM:
1060
1092
  """Represents a function call returned by the LLM.
@@ -11,6 +11,7 @@ transcript messages with timestamps, enabling conversation history tracking and
11
11
  """
12
12
 
13
13
  from typing import List, Optional
14
+ import uuid
14
15
 
15
16
  from loguru import logger
16
17
 
@@ -91,7 +92,7 @@ class UserTranscriptProcessor(BaseTranscriptProcessor):
91
92
  user_id=frame.user_id,
92
93
  content=frame.text,
93
94
  timestamp=frame.timestamp,
94
- message_id=frame.id,
95
+ message_id=str(uuid.uuid4()),
95
96
  )
96
97
  await self._emit_update([message])
97
98
  elif isinstance(frame, TranscriptDropFrame):
@@ -190,6 +191,7 @@ class AssistantTranscriptProcessor(BaseTranscriptProcessor):
190
191
  role="assistant",
191
192
  content=content,
192
193
  timestamp=self._aggregation_start_time,
194
+ message_id=str(uuid.uuid4()),
193
195
  )
194
196
  await self._emit_update([message])
195
197
  else: