Warning
DAILY BOTS AND ALL ASSOCIATED DEMOS HAVE BEEN SUNSETTED AND REPLACED BY PIPECAT CLOUD
Example NextJS app that demonstrates core capabilities of Daily Bots.
- Vision - Anthropic, describe webcam.
- Function calling - Anthropic, function calling (get current weather)
cp env.example .env.localNEXT_PUBLIC_BASE_URL defaults to /api, which is configured as Next server-side route handler. You can pass through service API keys, override service and config options within this route.
DAILY_BOTS_URL URL of the Daily Bots start endpoint (https://api.daily.co/v1/bots/start)
DAILY_API_KEY your Daily API key obtained by registering at https://bots.daily.co.
OPENAI_API_KEY Optional: provide a OpenAI API key. Daily Bots does not provide an integrated OpenAI service, so to use it, you will need to provide your own key. You can read more about integrated and 'bring your own key' here.
yarn yarn run devDaily Bots is built on two open-source technologies:
- Pipecat - Python library for building real-time agent
- RTVI - Open-standard for Real-Time Voice [and Video] Inference
This project makes use of realtime-ai, realtime-ai-react and realtime-ai-daily to interact with the Daily Bot.
Learn more about the RTVI web client libraries on the docs.
All Voice Client configuration can be found in the rtvi.config.ts file. You can edit any prompts, services of config settings in this file.
This project exposes three server-side routes:
- api/route.ts
- optional: api/dialin/route.ts
- optional: api/dialout/route.ts
The routes project a secure way to pass any required secrets or configuration directly to the Daily Bots API. Your NEXT_PUBLIC_BASE_URL must point to your /api route and passed to the VoiceClient.
The routes are passed a config array and services map, which can be passed to the Daily Bots REST API, or modified securely.
Daily Bots https://api.daily.co/v1/bots/start has some required properties, which you can read more about here. You must set:
bot_profilemax_durationconfigservices- Optional, if using OpenAI:
api_keys