Skip to content

attendee-labs/voice-agent-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Attendee Voice Agent Demo

This demo uses Attendee's meeting bot API and Deepgram's Voice Agent API to launch a voice agent that joins meetings (Google Meet, Microsoft Teams, Zoom) and participates in conversations in real-time.

See a quick video of how to install and use the app here.

Features

  • 🤖 Launch AI voice agents with a single click
  • 📹 Support for Google Meet, Microsoft Teams, and Zoom meetings
  • ⚙️ Customizable agent personality and behavior

Prerequisites

  1. Attendee Instance: You need a running instance of Attendee. This can be the hosted instance at https://app.attendee.dev or an instance hosted on your local machine.

  2. Ngrok: Since the voice agent needs bidirectional audio streaming, you'll need ngrok to create a secure WebSocket tunnel to your localhost. Ngrok is free for basic usage.

  3. Node.js 22.15+: This demo uses Node.js and requires version 22.15 or higher.

  4. API Keys: You'll need:

    • An Attendee API key from your Attendee dashboard
    • A Deepgram API key from Deepgram Console. Deepgram gives $200 in free credits to get started after you sign up.

Setup Instructions

1. Clone the Repository

git clone https://github.com/attendee-labs/voice-agent-example
cd voice-agent-example

2. Install Dependencies

npm install

3. Install and Run Ngrok

  1. Install ngrok: Download from ngrok.com or install via package manager:

    # On macOS with Homebrew
    brew install ngrok
    
    # On Ubuntu/Debian
    snap install ngrok
  2. Start ngrok tunnel: In a separate terminal, run:

    ngrok http 5005
  3. Copy the WebSocket URL: Ngrok will display something like:

    Forwarding                    https://123abcd.ngrok-free.app -> http://localhost:5005
    

    Copy the HTTPS URL and replace https:// with wss:// to get your WebSocket URL (e.g., wss://123abcd.ngrok-free.app). You'll need this WebSocket URL to launch the voice agent.

4. Set Environment Variables

Create a .env file in the root directory:

ATTENDEE_API_KEY="your-attendee-api-key"
DEEPGRAM_API_KEY="your-deepgram-api-key"

5. Run the Application

node index.js

The server will start on http://localhost:5005.

Usage

  1. Open the Web Interface: Navigate to http://localhost:5005 in your browser

  2. Configure Your Voice Agent:

    • Meeting URL: Paste a meeting URL from Google Meet, Microsoft Teams, or Zoom
    • WebSocket Tunnel URL: Enter your ngrok WebSocket URL (e.g., wss://123abcd.ngrok-free.app)
    • Agent Prompt: Customize the AI assistant's personality and instructions
    • Greeting Message: Set what the agent says when it first joins
    • Voice Model: Choose from 50+ Deepgram Aura voice options
  3. Launch Agent: Click "Join Meeting"

    • The bot will join the meeting (may take up to 30 seconds)
    • The agent will start speaking after another 30 seconds
    • The agent will listen and respond to conversation in real-time
  4. Monitor Activity: Check the console logs to see:

    • Agent connection status
    • Real-time conversation transcripts
    • Audio processing events

About

Demo of using the Attendee API to put a voice agent into a meeting

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published