videosdk-plugins-openai 0.0.37__tar.gz → 0.0.38__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.

Potentially problematic release.


This version of videosdk-plugins-openai might be problematic. Click here for more details.

@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: videosdk-plugins-openai
3
- Version: 0.0.37
3
+ Version: 0.0.38
4
4
  Summary: VideoSDK Agent Framework plugin for OpenAI services
5
5
  Author: videosdk
6
6
  License-Expression: Apache-2.0
@@ -13,7 +13,7 @@ Classifier: Topic :: Multimedia :: Video
13
13
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
14
14
  Requires-Python: >=3.11
15
15
  Requires-Dist: openai[realtime]>=1.68.2
16
- Requires-Dist: videosdk-agents>=0.0.37
16
+ Requires-Dist: videosdk-agents>=0.0.38
17
17
  Description-Content-Type: text/markdown
18
18
 
19
19
  # VideoSDK OpenAI Plugin
@@ -20,7 +20,7 @@ classifiers = [
20
20
  "Topic :: Multimedia :: Video",
21
21
  "Topic :: Scientific/Engineering :: Artificial Intelligence",
22
22
  ]
23
- dependencies = ["videosdk-agents>=0.0.37", "openai[realtime]>=1.68.2"]
23
+ dependencies = ["videosdk-agents>=0.0.38", "openai[realtime]>=1.68.2"]
24
24
 
25
25
  [tool.hatch.version]
26
26
  path = "videosdk/plugins/openai/version.py"
@@ -351,6 +351,7 @@ class OpenAIRealtime(RealtimeBaseModel[OpenAIEventTypes]):
351
351
  async def _handle_speech_stopped(self, data: dict) -> None:
352
352
  """Handle speech detection end"""
353
353
  await realtime_metrics_collector.set_user_speech_end()
354
+ self.emit("user_speech_ended", {})
354
355
 
355
356
  async def _handle_response_created(self, data: dict) -> None:
356
357
  """Handle initial response creation"""
@@ -425,6 +426,7 @@ class OpenAIRealtime(RealtimeBaseModel[OpenAIEventTypes]):
425
426
  if not self._agent_speaking:
426
427
  await realtime_metrics_collector.set_agent_speech_start()
427
428
  self._agent_speaking = True
429
+ self.emit("agent_speech_started", {})
428
430
  base64_audio_data = base64.b64decode(data.get("delta"))
429
431
  if base64_audio_data:
430
432
  if self.audio_track and self.loop:
@@ -444,6 +446,7 @@ class OpenAIRealtime(RealtimeBaseModel[OpenAIEventTypes]):
444
446
  if self.audio_track:
445
447
  self.audio_track.interrupt()
446
448
  if self._agent_speaking:
449
+ self.emit("agent_speech_ended", {})
447
450
  await realtime_metrics_collector.set_agent_speech_end(timeout=1.0)
448
451
  self._agent_speaking = False
449
452
 
@@ -492,6 +495,7 @@ class OpenAIRealtime(RealtimeBaseModel[OpenAIEventTypes]):
492
495
  except Exception:
493
496
  pass
494
497
  self._current_audio_transcript = ""
498
+ self.emit("agent_speech_ended", {})
495
499
  await realtime_metrics_collector.set_agent_speech_end(timeout=1.0)
496
500
  self._agent_speaking = False
497
501
  pass
@@ -0,0 +1 @@
1
+ __version__ = "0.0.38"
@@ -1 +0,0 @@
1
- __version__ = "0.0.37"