From 2a6183aba575ff5505f614d2ce9b76ac4d71ee1d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Conchillo=20Flaqu=C3=A9?= Date: Thu, 23 May 2024 14:32:49 -0700 Subject: [PATCH] transports(daily): fix dialin-ready event handling --- CHANGELOG.md | 6 ++++++ src/pipecat/services/elevenlabs.py | 4 ++-- src/pipecat/transports/services/daily.py | 7 ++++--- 3 files changed, 12 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e7761568a..6282c843a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,12 @@ All notable changes to **pipecat** will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [0.0.23] - 2024-05-23 + +### Fixed + +- Fixed an issue handling Daily transport `dialin-ready` event. + ## [0.0.22] - 2024-05-23 ### Added diff --git a/src/pipecat/services/elevenlabs.py b/src/pipecat/services/elevenlabs.py index 2e5e7c813..036e68987 100644 --- a/src/pipecat/services/elevenlabs.py +++ b/src/pipecat/services/elevenlabs.py @@ -49,8 +49,8 @@ async def run_tts(self, text: str) -> AsyncGenerator[Frame, None]: async with self._aiohttp_session.post(url, json=payload, headers=headers, params=querystring) as r: if r.status != 200: - logger.error(f"Audio fetch status code: {r.status}, error: {r.text}") - yield ErrorFrame(f"Audio fetch status code: {r.status}, error: {r.text}") + logger.error(f"Error getting audio (status: {r.status}, error: {r.text()})") + yield ErrorFrame(f"Error getting audio (status: {r.status}, error: {r.text()})") return async for chunk in r.content: diff --git a/src/pipecat/transports/services/daily.py b/src/pipecat/transports/services/daily.py index e41d36fb8..143ac170d 100644 --- a/src/pipecat/transports/services/daily.py +++ b/src/pipecat/transports/services/daily.py @@ -735,17 +735,18 @@ async def _handle_dialin_ready(self, sip_endpoint: str): "Authorization": f"Bearer {self._params.api_key}", "Content-Type": "application/x-www-form-urlencoded" } - querystring = { + data = { "callId": self._params.dialin_settings.call_id, "callDomain": self._params.dialin_settings.call_domain, + "sipUri": sip_endpoint } url = f"{self._params.api_url}/dialin/pinlessCallUpdate" - async with session.post(url, headers=headers, params=querystring) as r: + async with session.post(url, headers=headers, data=data) as r: if r.status != 200: logger.error( - f"Unable to handle dialin-ready event (status: {r.status}, error: {r.text})") + f"Unable to handle dialin-ready event (status: {r.status}, error: {r.text()})") return logger.debug("dialin-ready event handled successfully")