ELEVENLABS - CONVERSATIONAL AI
=================================
📋 ELEMENT DESCRIPTION
--------------------------------
ELEVENLABS - CONVERSATIONAL AI provides ElevenLabs' Conversational AI capabilities to your app, enabling real-time voice conversations with AI agents.
🔧 STEP-BY-STEP SETUP
--------------------------------
0) Register on ElevenLabs and get your ELEVENLABS API KEY.
1) Create an agent in your ElevenLabs app. Make sure to set in ADVANCED settings > CLIENT EVENTS > AUDIO, USER_TRANSCRIPT, AGENT_RESPONSE, INTERRUPTION
2) Register on plugins.wiseable.io. Create a new Credential which associates your BUBBLE APP URL and your ELEVENLABS API KEY.
The registration service will generate your PUBLIC ACCESS KEY. This key serves as a secure proxy for your real API key. It allows your application to communicate with the service without exposing your real API key. Since this PUBLIC ACCESS KEY is explicitly tied to your registered BUBBLE APP URL, it can only be used from that domain, ensuring that even if the key is publicly visible, it remains safe and cannot be misused by unauthorized sources.
3) In the Plugin Settings, enter your PUBLIC ACCESS KEY generated at the previous step.
4) Add the ELEVENLABS - CONVERSATIONAL AI ELEMENT to the page on which the chat must be integrated.
5) Integrate the logic into your application using the following ELEVENLABS - CONVERSATIONAL AI element's states and actions:
FIELDS:
- RESULT DATA TYPE: Must always be selected as GET CONVERSATION DETAILS (ELEVENLABS)
- MICROPHONE NAME: Microphone Name to use as a source. It must be one of the items of the DEVICES state.
- ECHO CANCELLATION: Echo cancellation is a feature which attempts to prevent echo effects on a two-way audio connection by attempting to reduce or eliminate crosstalk between the user's output device and their input device.
- NOISE SUPPRESSION: Noise suppression automatically filters the audio to remove background noise, hum caused by equipment, and the like from the sound before delivering it to your code.
- AUTO GAIN CONTROL: Automatic gain control is a feature in which a sound source automatically manages changes in the volume of its source media to maintain a steady overall volume level.
EVENTS:
- ERROR: Event triggered when an error occurs.
- CALL TOOL: Event triggered when a function is triggered, as defined in TOOLS of START CONVERSATION action.
EXPOSED STATES:
Use any element able to show/process the data of interest (such as a Group with a Text field) stored within the result of the following states of the ELEVENLABS - CONVERSATIONAL AI ELEMENT:
- CURRENT CONVERSATION: Current conversation containing the current transcript with both roles and messages.
- ERROR: Error message upon Error event trigger.
- IS LISTENING: Returns true when listening is in progress.
- IS AI SPEAKING: Returns true when AI speaking is in progress.
- TOOL NAME: Name of the tool, set upon CALL TOOL event.
- TOOL ARGUMENTS: Arguments of the tool, set upon CALL TOOL event.
- TOOL CALL ID: Unique identifier of the tool call, set upon CALL TOOL event.
ELEMENT ACTIONS - TRIGGERED IN WORKFLOW:
- DETECT MICROPHONES: Detect the microphone devices. You must pass one of those values into MICROPHONE NAME.
- START CONVERSATION: Start Voice Conversation.
Input Fields:
- AGENT ID: The AGENT ID displays on your ElevenLabs.io console > Conversational > Agents
- DYNAMIC VARIABLES: A JSON map of values to substitute in for variables in your agent prompt. Example: {"language":"english"}
- STOP CONVERSATION: Stop Voice Conversation.
Input Fields:
- INTERRUPT PLAYBACK: If true, immediately interrupt playback. If false, buffered audio will continue playing until completed.
- SEND TOOL RESULT: Send the tool results. See
https://cookbook.openai.com/examples/how_to_call_functions_with_chat_models#basic-concepts.
Input Fields:
- TOOL CALL ID: Unique identifier of the tool call from the TOOL CALL ID state, which is set upon CALL TOOL event.
- TOOL RESULT: Result of the tool to pass.
- SEND CONTEXTUAL INFO: Contextual updates allow your application to send non-interrupting background information to the conversation.
Input Fields:
- INFORMATION: Information to send to AI
🔍 IMPLEMENTATION EXAMPLE
======================
Feel free to browse the app editor in the Service URL for an implementation example.
⚠️ TROUBLESHOOTING
================
Any plugin-related error will be posted to the Logs tab, "Server logs" section of your App Editor.
Make sure that "Plugin server side logging" and "Plugin client side logging" are selected in "Show Advanced".
Always check the ERROR state of the element and implement error handling using the ERROR event to provide a better user experience.
> Server Logs Details:
https://manual.bubble.io/core-resources/bubbles-interface/logs-tab#server-logs⚡ PERFORMANCE CONSIDERATIONS
===========================
N/A
❓ QUESTIONS?
===========
Contact us at
[email protected] for any additional features you would require or support questions.