Starting refactor of transports into their own directory
This commit is contained in:
@@ -5,7 +5,7 @@ import os
|
|||||||
from dailyai.pipeline.frames import EndFrame, TextFrame
|
from dailyai.pipeline.frames import EndFrame, TextFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
|
|
||||||
from runner import configure
|
from runner import configure
|
||||||
@@ -20,7 +20,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url):
|
async def main(room_url):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Say One Thing",
|
"Say One Thing",
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import logging
|
|||||||
import os
|
import os
|
||||||
|
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.local_transport_service import LocalTransportService
|
from dailyai.transports.local_transport import LocalTransport
|
||||||
|
|
||||||
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
||||||
logger = logging.getLogger("dailyai")
|
logger = logging.getLogger("dailyai")
|
||||||
@@ -14,7 +14,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
async def main():
|
async def main():
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
meeting_duration_minutes = 1
|
meeting_duration_minutes = 1
|
||||||
transport = LocalTransportService(
|
transport = LocalTransport(
|
||||||
duration_minutes=meeting_duration_minutes, mic_enabled=True
|
duration_minutes=meeting_duration_minutes, mic_enabled=True
|
||||||
)
|
)
|
||||||
tts = ElevenLabsTTSService(
|
tts = ElevenLabsTTSService(
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import aiohttp
|
|||||||
|
|
||||||
from dailyai.pipeline.frames import EndFrame, LLMMessagesQueueFrame
|
from dailyai.pipeline.frames import EndFrame, LLMMessagesQueueFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url):
|
async def main(room_url):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Say One Thing From an LLM",
|
"Say One Thing From an LLM",
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import os
|
|||||||
|
|
||||||
from dailyai.pipeline.frames import TextFrame
|
from dailyai.pipeline.frames import TextFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
|
|
||||||
from runner import configure
|
from runner import configure
|
||||||
@@ -20,7 +20,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url):
|
async def main(room_url):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Show a still frame image",
|
"Show a still frame image",
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import tkinter as tk
|
|||||||
|
|
||||||
from dailyai.pipeline.frames import TextFrame
|
from dailyai.pipeline.frames import TextFrame
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
from dailyai.services.local_transport_service import LocalTransportService
|
from dailyai.transports.local_transport import LocalTransport
|
||||||
|
|
||||||
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
||||||
logger = logging.getLogger("dailyai")
|
logger = logging.getLogger("dailyai")
|
||||||
@@ -22,7 +22,7 @@ async def main():
|
|||||||
meeting_duration_minutes = 2
|
meeting_duration_minutes = 2
|
||||||
tk_root = tk.Tk()
|
tk_root = tk.Tk()
|
||||||
tk_root.title("Calendar")
|
tk_root.title("Calendar")
|
||||||
transport = LocalTransportService(
|
transport = LocalTransport(
|
||||||
tk_root=tk_root,
|
tk_root=tk_root,
|
||||||
mic_enabled=True,
|
mic_enabled=True,
|
||||||
camera_enabled=True,
|
camera_enabled=True,
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import aiohttp
|
|||||||
from dailyai.pipeline.merge_pipeline import SequentialMergePipeline
|
from dailyai.pipeline.merge_pipeline import SequentialMergePipeline
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
||||||
from dailyai.services.deepgram_ai_services import DeepgramTTSService
|
from dailyai.services.deepgram_ai_services import DeepgramTTSService
|
||||||
from dailyai.pipeline.frames import EndPipeFrame, LLMMessagesQueueFrame, TextFrame
|
from dailyai.pipeline.frames import EndPipeFrame, LLMMessagesQueueFrame, TextFrame
|
||||||
@@ -24,7 +24,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url: str):
|
async def main(room_url: str):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Static And Dynamic Speech",
|
"Static And Dynamic Speech",
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ from dailyai.pipeline.frames import (
|
|||||||
from dailyai.pipeline.frame_processor import FrameProcessor
|
from dailyai.pipeline.frame_processor import FrameProcessor
|
||||||
|
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
@@ -63,7 +63,7 @@ class MonthPrepender(FrameProcessor):
|
|||||||
|
|
||||||
async def main(room_url):
|
async def main(room_url):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Month Narration Bot",
|
"Month Narration Bot",
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ from dailyai.pipeline.frames import AudioFrame, ImageFrame
|
|||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
from dailyai.services.local_transport_service import LocalTransportService
|
from dailyai.transports.local_transport import LocalTransport
|
||||||
|
|
||||||
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
||||||
logger = logging.getLogger("dailyai")
|
logger = logging.getLogger("dailyai")
|
||||||
@@ -22,7 +22,7 @@ async def main(room_url):
|
|||||||
tk_root = tk.Tk()
|
tk_root = tk.Tk()
|
||||||
tk_root.title("Calendar")
|
tk_root.title("Calendar")
|
||||||
|
|
||||||
transport = LocalTransportService(
|
transport = LocalTransport(
|
||||||
mic_enabled=True,
|
mic_enabled=True,
|
||||||
camera_enabled=True,
|
camera_enabled=True,
|
||||||
camera_width=1024,
|
camera_width=1024,
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import os
|
|||||||
from dailyai.pipeline.frames import LLMMessagesQueueFrame
|
from dailyai.pipeline.frames import LLMMessagesQueueFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.ai_services import FrameLogger
|
from dailyai.services.ai_services import FrameLogger
|
||||||
@@ -25,7 +25,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import aiohttp
|
|||||||
from PIL import Image
|
from PIL import Image
|
||||||
|
|
||||||
from dailyai.pipeline.frames import ImageFrame, Frame
|
from dailyai.pipeline.frames import ImageFrame, Frame
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.ai_services import AIService
|
from dailyai.services.ai_services import AIService
|
||||||
from dailyai.pipeline.aggregators import (
|
from dailyai.pipeline.aggregators import (
|
||||||
LLMAssistantContextAggregator,
|
LLMAssistantContextAggregator,
|
||||||
@@ -42,7 +42,7 @@ class ImageSyncAggregator(AIService):
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ from dailyai.pipeline.aggregators import (
|
|||||||
|
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.ai_services import FrameLogger
|
from dailyai.services.ai_services import FrameLogger
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
|
|
||||||
@@ -25,7 +25,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import os
|
|||||||
from dailyai.pipeline.aggregators import SentenceAggregator
|
from dailyai.pipeline.aggregators import SentenceAggregator
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
@@ -24,7 +24,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
async def main(room_url: str):
|
async def main(room_url: str):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ import random
|
|||||||
from typing import AsyncGenerator
|
from typing import AsyncGenerator
|
||||||
from PIL import Image
|
from PIL import Image
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.pipeline.aggregators import (
|
from dailyai.pipeline.aggregators import (
|
||||||
@@ -116,7 +116,7 @@ class ImageSyncAggregator(AIService):
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Santa Cat",
|
"Santa Cat",
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ import logging
|
|||||||
import os
|
import os
|
||||||
import wave
|
import wave
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.pipeline.aggregators import (
|
from dailyai.pipeline.aggregators import (
|
||||||
@@ -72,7 +72,7 @@ class InboundSoundEffectWrapper(AIService):
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
import asyncio
|
import asyncio
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.whisper_ai_services import WhisperSTTService
|
from dailyai.services.whisper_ai_services import WhisperSTTService
|
||||||
|
|
||||||
from runner import configure
|
from runner import configure
|
||||||
@@ -15,7 +15,7 @@ logger.setLevel(logging.DEBUG)
|
|||||||
|
|
||||||
|
|
||||||
async def main(room_url: str):
|
async def main(room_url: str):
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
None,
|
None,
|
||||||
"Transcription bot",
|
"Transcription bot",
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import asyncio
|
|||||||
import logging
|
import logging
|
||||||
from dailyai.pipeline.frames import EndFrame, TranscriptionQueueFrame
|
from dailyai.pipeline.frames import EndFrame, TranscriptionQueueFrame
|
||||||
|
|
||||||
from dailyai.services.local_transport_service import LocalTransportService
|
from dailyai.transports.local_transport import LocalTransport
|
||||||
from dailyai.services.whisper_ai_services import WhisperSTTService
|
from dailyai.services.whisper_ai_services import WhisperSTTService
|
||||||
|
|
||||||
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
logging.basicConfig(format=f"%(levelno)s %(asctime)s %(message)s")
|
||||||
@@ -16,7 +16,7 @@ async def main(room_url: str):
|
|||||||
global stt
|
global stt
|
||||||
|
|
||||||
meeting_duration_minutes = 1
|
meeting_duration_minutes = 1
|
||||||
transport = LocalTransportService(
|
transport = LocalTransport(
|
||||||
mic_enabled=True,
|
mic_enabled=True,
|
||||||
camera_enabled=False,
|
camera_enabled=False,
|
||||||
speaker_enabled=True,
|
speaker_enabled=True,
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ from dailyai.pipeline.frame_processor import FrameProcessor
|
|||||||
from dailyai.pipeline.frames import TextFrame, TranscriptionQueueFrame
|
from dailyai.pipeline.frames import TextFrame, TranscriptionQueueFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
from dailyai.services.websocket_transport_service import WebsocketTransport
|
from dailyai.transports.websocket_transport import WebsocketTransport
|
||||||
from dailyai.services.whisper_ai_services import WhisperSTTService
|
from dailyai.services.whisper_ai_services import WhisperSTTService
|
||||||
|
|
||||||
logging.basicConfig(format="%(levelno)s %(asctime)s %(message)s")
|
logging.basicConfig(format="%(levelno)s %(asctime)s %(message)s")
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import time
|
|||||||
import urllib.parse
|
import urllib.parse
|
||||||
import random
|
import random
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
||||||
from dailyai.pipeline.frames import Frame, FrameType
|
from dailyai.pipeline.frames import Frame, FrameType
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
@@ -17,7 +17,7 @@ async def main(room_url: str, token):
|
|||||||
global llm
|
global llm
|
||||||
global tts
|
global tts
|
||||||
|
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Imagebot",
|
"Imagebot",
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import asyncio
|
|||||||
import os
|
import os
|
||||||
import wave
|
import wave
|
||||||
|
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
||||||
from dailyai.pipeline.aggregators import LLMContextAggregator
|
from dailyai.pipeline.aggregators import LLMContextAggregator
|
||||||
from dailyai.services.ai_services import AIService, FrameLogger
|
from dailyai.services.ai_services import AIService, FrameLogger
|
||||||
@@ -66,7 +66,7 @@ async def main(room_url: str, token, phone):
|
|||||||
global llm
|
global llm
|
||||||
global tts
|
global tts
|
||||||
|
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Respond bot",
|
"Respond bot",
|
||||||
|
|||||||
@@ -20,7 +20,7 @@ from dailyai.pipeline.frames import (
|
|||||||
)
|
)
|
||||||
from dailyai.services.ai_services import AIService
|
from dailyai.services.ai_services import AIService
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
from dailyai.services.elevenlabs_ai_service import ElevenLabsTTSService
|
||||||
|
|
||||||
@@ -92,7 +92,7 @@ class AnimationInitializer(AIService):
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Chatbot",
|
"Chatbot",
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ from dailyai.pipeline.opeanai_llm_aggregator import (
|
|||||||
)
|
)
|
||||||
|
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.openai_llm_context import OpenAILLMContext
|
from dailyai.services.openai_llm_context import OpenAILLMContext
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
# from dailyai.services.deepgram_ai_services import DeepgramTTSService
|
# from dailyai.services.deepgram_ai_services import DeepgramTTSService
|
||||||
@@ -292,7 +292,7 @@ async def main(room_url: str, token):
|
|||||||
global llm
|
global llm
|
||||||
global tts
|
global tts
|
||||||
|
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Intake Bot",
|
"Intake Bot",
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ from PIL import Image
|
|||||||
|
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.pipeline.frame_processor import FrameProcessor
|
from dailyai.pipeline.frame_processor import FrameProcessor
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
from dailyai.services.azure_ai_services import AzureLLMService, AzureTTSService
|
||||||
from dailyai.services.fal_ai_services import FalImageGenService
|
from dailyai.services.fal_ai_services import FalImageGenService
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
@@ -214,7 +214,7 @@ async def main(room_url: str, token):
|
|||||||
sp = StoryProcessor(messages, story)
|
sp = StoryProcessor(messages, story)
|
||||||
sig = StoryImageGenerator(story, llm, img)
|
sig = StoryImageGenerator(story, llm, img)
|
||||||
|
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Storybot",
|
"Storybot",
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ from dailyai.pipeline.aggregators import (
|
|||||||
from dailyai.pipeline.frames import Frame, LLMMessagesQueueFrame, TextFrame
|
from dailyai.pipeline.frames import Frame, LLMMessagesQueueFrame, TextFrame
|
||||||
from dailyai.pipeline.frame_processor import FrameProcessor
|
from dailyai.pipeline.frame_processor import FrameProcessor
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
from dailyai.services.azure_ai_services import AzureTTSService
|
from dailyai.services.azure_ai_services import AzureTTSService
|
||||||
from dailyai.services.open_ai_services import OpenAILLMService
|
from dailyai.services.open_ai_services import OpenAILLMService
|
||||||
|
|
||||||
@@ -51,7 +51,7 @@ class TranslationProcessor(FrameProcessor):
|
|||||||
|
|
||||||
async def main(room_url: str, token):
|
async def main(room_url: str, token):
|
||||||
async with aiohttp.ClientSession() as session:
|
async with aiohttp.ClientSession() as session:
|
||||||
transport = DailyTransportService(
|
transport = DailyTransport(
|
||||||
room_url,
|
room_url,
|
||||||
token,
|
token,
|
||||||
"Translator",
|
"Translator",
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ class VADState(Enum):
|
|||||||
STOPPING = 4
|
STOPPING = 4
|
||||||
|
|
||||||
|
|
||||||
class BaseTransportService:
|
class ThreadedTransport:
|
||||||
|
|
||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
@@ -24,10 +24,10 @@ from daily import (
|
|||||||
VirtualSpeakerDevice,
|
VirtualSpeakerDevice,
|
||||||
)
|
)
|
||||||
|
|
||||||
from dailyai.services.base_transport_service import BaseTransportService
|
from dailyai.transports.base_transport import ThreadedTransport
|
||||||
|
|
||||||
|
|
||||||
class DailyTransportService(BaseTransportService, EventHandler):
|
class DailyTransport(ThreadedTransport, EventHandler):
|
||||||
_daily_initialized = False
|
_daily_initialized = False
|
||||||
_lock = threading.Lock()
|
_lock = threading.Lock()
|
||||||
|
|
||||||
@@ -140,10 +140,10 @@ class DailyTransportService(BaseTransportService, EventHandler):
|
|||||||
|
|
||||||
def _prerun(self):
|
def _prerun(self):
|
||||||
# Only initialize Daily once
|
# Only initialize Daily once
|
||||||
if not DailyTransportService._daily_initialized:
|
if not DailyTransport._daily_initialized:
|
||||||
with DailyTransportService._lock:
|
with DailyTransport._lock:
|
||||||
Daily.init()
|
Daily.init()
|
||||||
DailyTransportService._daily_initialized = True
|
DailyTransport._daily_initialized = True
|
||||||
self.client = CallClient(event_handler=self)
|
self.client = CallClient(event_handler=self)
|
||||||
|
|
||||||
if self._mic_enabled:
|
if self._mic_enabled:
|
||||||
@@ -3,10 +3,10 @@ import numpy as np
|
|||||||
import tkinter as tk
|
import tkinter as tk
|
||||||
import pyaudio
|
import pyaudio
|
||||||
|
|
||||||
from dailyai.services.base_transport_service import BaseTransportService
|
from dailyai.transports.base_transport import ThreadedTransport
|
||||||
|
|
||||||
|
|
||||||
class LocalTransportService(BaseTransportService):
|
class LocalTransport(ThreadedTransport):
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
super().__init__(**kwargs)
|
super().__init__(**kwargs)
|
||||||
self._sample_width = kwargs.get("sample_width") or 2
|
self._sample_width = kwargs.get("sample_width") or 2
|
||||||
@@ -7,7 +7,7 @@ from dailyai.pipeline.frame_processor import FrameProcessor
|
|||||||
from dailyai.pipeline.frames import AudioFrame, ControlFrame, EndFrame, Frame, TTSEndFrame, TTSStartFrame, TextFrame
|
from dailyai.pipeline.frames import AudioFrame, ControlFrame, EndFrame, Frame, TTSEndFrame, TTSStartFrame, TextFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.serializers.protobuf_serializer import ProtobufFrameSerializer
|
from dailyai.serializers.protobuf_serializer import ProtobufFrameSerializer
|
||||||
from dailyai.services.base_transport_service import BaseTransportService
|
from dailyai.transports.base_transport import ThreadedTransport
|
||||||
|
|
||||||
|
|
||||||
class WebSocketFrameProcessor(FrameProcessor):
|
class WebSocketFrameProcessor(FrameProcessor):
|
||||||
@@ -45,7 +45,7 @@ class WebSocketFrameProcessor(FrameProcessor):
|
|||||||
yield frame
|
yield frame
|
||||||
|
|
||||||
|
|
||||||
class WebsocketTransport(BaseTransportService):
|
class WebsocketTransport(ThreadedTransport):
|
||||||
def __init__(self, **kwargs):
|
def __init__(self, **kwargs):
|
||||||
super().__init__(**kwargs)
|
super().__init__(**kwargs)
|
||||||
self._sample_width = kwargs.get("sample_width", 2)
|
self._sample_width = kwargs.get("sample_width", 2)
|
||||||
@@ -4,9 +4,9 @@ import unittest
|
|||||||
class TestDailyTransport(unittest.IsolatedAsyncioTestCase):
|
class TestDailyTransport(unittest.IsolatedAsyncioTestCase):
|
||||||
|
|
||||||
async def test_event_handler(self):
|
async def test_event_handler(self):
|
||||||
from dailyai.services.daily_transport_service import DailyTransportService
|
from dailyai.transports.daily_transport import DailyTransport
|
||||||
|
|
||||||
transport = DailyTransportService("mock.daily.co/mock", "token", "bot")
|
transport = DailyTransport("mock.daily.co/mock", "token", "bot")
|
||||||
|
|
||||||
was_called = False
|
was_called = False
|
||||||
|
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ from unittest.mock import AsyncMock, patch, Mock
|
|||||||
|
|
||||||
from dailyai.pipeline.frames import AudioFrame, EndFrame, TextFrame, TTSEndFrame, TTSStartFrame
|
from dailyai.pipeline.frames import AudioFrame, EndFrame, TextFrame, TTSEndFrame, TTSStartFrame
|
||||||
from dailyai.pipeline.pipeline import Pipeline
|
from dailyai.pipeline.pipeline import Pipeline
|
||||||
from dailyai.services.websocket_transport_service import WebSocketFrameProcessor, WebsocketTransport
|
from dailyai.transports.websocket_transport import WebSocketFrameProcessor, WebsocketTransport
|
||||||
|
|
||||||
|
|
||||||
class TestWebSocketTransportService(unittest.IsolatedAsyncioTestCase):
|
class TestWebSocketTransportService(unittest.IsolatedAsyncioTestCase):
|
||||||
|
|||||||
Reference in New Issue
Block a user