Updated prompt for non gemini bot to look for more voicemail examples, plus added logic to detect if we're doing dialin or not to avoid a non-fatal dialin related error

This commit is contained in:
Dominic
2025-02-21 16:19:59 -08:00
parent c66042afb6
commit 281b56e5de
2 changed files with 82 additions and 34 deletions

View File

@@ -49,6 +49,26 @@ async def main(
# If you are handling this via Twilio, Telnyx, set this to None # If you are handling this via Twilio, Telnyx, set this to None
# and handle call-forwarding when on_dialin_ready fires. # and handle call-forwarding when on_dialin_ready fires.
# We don't want to specify dialin settings if we're not dialing in
if callId in (None, "None") or callDomain in (None, "None"):
print("Not using dialin settings")
transport = DailyTransport(
room_url,
token,
"Chatbot",
DailyParams(
api_url=daily_api_url,
api_key=daily_api_key,
audio_in_enabled=True,
audio_out_enabled=True,
camera_out_enabled=False,
vad_enabled=True,
vad_analyzer=SileroVADAnalyzer(),
transcription_enabled=True,
),
)
else:
dialin_settings = DailyDialinSettings(call_id=callId, call_domain=callDomain) dialin_settings = DailyDialinSettings(call_id=callId, call_domain=callDomain)
transport = DailyTransport( transport = DailyTransport(
room_url, room_url,
@@ -96,6 +116,13 @@ async def main(
- **"Please leave a message after the beep."** - **"Please leave a message after the beep."**
- **"No one is available to take your call."** - **"No one is available to take your call."**
- **"Record your message after the tone."** - **"Record your message after the tone."**
- **"Please leave a message after the beep"**
- **"You have reached voicemail for..."**
- **"You have reached [phone number]"**
- **"[phone number] is unavailable"**
- **"The person you are trying to reach..."**
- **"The number you have dialed..."**
- **"Your call has been forwarded to an automated voice messaging system"**
- **Any phrase that suggests an answering machine or voicemail.** - **Any phrase that suggests an answering machine or voicemail.**
- **ASSUME IT IS A VOICEMAIL. DO NOT WAIT FOR MORE CONFIRMATION.** - **ASSUME IT IS A VOICEMAIL. DO NOT WAIT FOR MORE CONFIRMATION.**
- **IF THE CALL SAYS "PLEASE LEAVE A MESSAGE AFTER THE BEEP", WAIT FOR THE BEEP BEFORE LEAVING A MESSAGE.** - **IF THE CALL SAYS "PLEASE LEAVE A MESSAGE AFTER THE BEEP", WAIT FOR THE BEEP BEFORE LEAVING A MESSAGE.**

View File

@@ -116,6 +116,27 @@ async def main(
# dialin_settings are only needed if Daily's SIP URI is used # dialin_settings are only needed if Daily's SIP URI is used
# If you are handling this via Twilio, Telnyx, set this to None # If you are handling this via Twilio, Telnyx, set this to None
# and handle call-forwarding when on_dialin_ready fires. # and handle call-forwarding when on_dialin_ready fires.
# We don't want to specify dialin settings if we're not dialing in
if callId in (None, "None") or callDomain in (None, "None"):
print("Not using dialin settings")
transport = DailyTransport(
room_url,
token,
"Chatbot",
DailyParams(
api_url=daily_api_url,
api_key=daily_api_key,
audio_in_enabled=True,
audio_out_enabled=True,
camera_out_enabled=False,
vad_enabled=True,
vad_analyzer=SileroVADAnalyzer(),
transcription_enabled=True,
),
)
else:
dialin_settings = DailyDialinSettings(call_id=callId, call_domain=callDomain) dialin_settings = DailyDialinSettings(call_id=callId, call_domain=callDomain)
transport = DailyTransport( transport = DailyTransport(
room_url, room_url,