From 588a168099b7330229b3ddf483ca495e25a114a6 Mon Sep 17 00:00:00 2001 From: "dev-docs-github-app[bot]" <178952281+dev-docs-github-app[bot]@users.noreply.github.com> Date: Wed, 16 Apr 2025 20:47:12 +0000 Subject: [PATCH 1/9] Create file --- dev-docs.json | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 dev-docs.json diff --git a/dev-docs.json b/dev-docs.json new file mode 100644 index 00000000..ad795ee9 --- /dev/null +++ b/dev-docs.json @@ -0,0 +1,9 @@ +{ + "gitHubApp": { + "approvalWorkflow": true, + "userDocsWorkflows": [ + "generateUserDocs" + ], + "issues": true + } +} \ No newline at end of file From 6e6e63d84758e123e32cae5f8ca0f7af127da99b Mon Sep 17 00:00:00 2001 From: Deep Singhvi Date: Wed, 16 Apr 2025 16:47:32 -0400 Subject: [PATCH 2/9] chore: upgrade python generator to 4.14.2 --- fern/apis/api/generators.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fern/apis/api/generators.yml b/fern/apis/api/generators.yml index 7d578f35..78367477 100644 --- a/fern/apis/api/generators.yml +++ b/fern/apis/api/generators.yml @@ -10,7 +10,7 @@ groups: python-sdk: generators: - name: fernapi/fern-python-sdk - version: 4.3.15 + version: 4.14.2 disable-examples: true api: settings: From 1a80b269862e2bccd33a7c72be0017eda0cf37ee Mon Sep 17 00:00:00 2001 From: arthurchi93 <152110249+arthurchi93@users.noreply.github.com> Date: Wed, 16 Apr 2025 18:36:03 -0700 Subject: [PATCH 3/9] Add AI Condition page and more details on Logic Condition (#308) * add AI condition page and more details on logic condition * info * add Assistant node page --- fern/docs.yml | 6 ++-- .../images/workflows/logic-condition.png | Bin 0 -> 67873 bytes fern/workflows/edges/ai-conditions.mdx | 31 ++++++++---------- fern/workflows/edges/logical-conditions.mdx | 16 +++++++-- fern/workflows/nodes/assistant.mdx | 23 +++++++++++++ fern/workflows/nodes/gather.mdx | 4 ++- 6 files changed, 58 insertions(+), 22 deletions(-) create mode 100644 fern/static/images/workflows/logic-condition.png create mode 100644 fern/workflows/nodes/assistant.mdx diff --git a/fern/docs.yml b/fern/docs.yml index 07111610..84e4b84a 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -239,16 +239,18 @@ navigation: path: workflows/nodes/gather.mdx - page: API Request path: workflows/nodes/api-request.mdx + - page: Assistant + path: workflows/nodes/assistant.mdx - page: Transfer path: workflows/nodes/transfer.mdx - page: Hangup path: workflows/nodes/hangup.mdx - - section: Edges contents: - page: Logical Conditions path: workflows/edges/logical-conditions.mdx - + - page: AI Conditions + path: workflows/edges/ai-conditions.mdx - section: Squads path: squads.mdx contents: diff --git a/fern/static/images/workflows/logic-condition.png b/fern/static/images/workflows/logic-condition.png new file mode 100644 index 0000000000000000000000000000000000000000..224100b5768bc1b40e9c2dd77cf770a58f453795 GIT binary patch literal 67873 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 +To remove a comparison, click on the Trash icon to the right of the comparison. + + + + + ## Usage Implement Logical Conditions to guide your conversation dynamically. They allow your workflow to adjust its path based on real-time data, ensuring more personalized and responsive interactions. -For detailed configuration instructions and advanced usage, please refer to our dedicated documentation on condition configuration. \ No newline at end of file + +When [`Gathering`](/workflows/nodes/gather) string values that will be used in conditions, consider using `enum` types to ensure consistent value comparison. This helps prevent issues with case sensitivity, whitespace, or formatting differences that could affect condition evaluation. + \ No newline at end of file diff --git a/fern/workflows/nodes/assistant.mdx b/fern/workflows/nodes/assistant.mdx new file mode 100644 index 00000000..d55b3938 --- /dev/null +++ b/fern/workflows/nodes/assistant.mdx @@ -0,0 +1,23 @@ +--- +title: Assistant +subtitle: Speak to a configured assistant +slug: /workflows/nodes/assistant +--- + +## Overview + +The **Assistant** node enables a persistent conversation with one of your configured assistants. + +## Configuration + +- **Select an Assistant** Use the dropdown to select a pre-configured assistant. + +## Usage + +Add **Assistant** nodes as leaf nodes to enable ongoing conversations with your configured assistants. Currently, Assistant nodes must be placed at the end of a workflow branch, as they don't support transitioning to other nodes. This means the conversation with the assistant will continue until either the user ends the call or the assistant reaches a natural conclusion point. + +The assistant will use its configured system prompt while inheriting the transcriber and voice settings from the global workflow assistant. + + +Assistant nodes are currently designed as terminal nodes - they cannot be connected to other nodes in the workflow. This means the conversation will remain with the assistant until the call ends. Future updates will add support for AI-powered conditional branching. + \ No newline at end of file diff --git a/fern/workflows/nodes/gather.mdx b/fern/workflows/nodes/gather.mdx index cfc87d4e..94d62678 100644 --- a/fern/workflows/nodes/gather.mdx +++ b/fern/workflows/nodes/gather.mdx @@ -20,4 +20,6 @@ Define one or more variables to gather from the user with: Use **Gather** to extract specific details from user responses—such as their name, email, or ZIP code—to inform subsequent steps in your conversation. The Gather node doesn't directly prompt users; instead, it analyzes the conversation history to find the requested information and will ask follow-up questions if the user's response isn't clear. Make sure to precede it with a [`Say`](/workflows/nodes/say) node that explicitly prompts the user for the information you want to gather. -To use an extracted string variable in a [`Conditional`](/workflows/edges/logical-conditions) branch, we recommend using the `enum` option. This ensures the extracted value will reliably match your conditions later in the workflow. \ No newline at end of file + +To use an extracted string variable in a [`Conditional`](/workflows/edges/logical-conditions) branch, we recommend using the `enum` option. This ensures the extracted value will reliably match your conditions later in the workflow. + \ No newline at end of file From bc84778e4073fb2074d1ce782dd801ad88394de1 Mon Sep 17 00:00:00 2001 From: stevenbdf Date: Wed, 16 Apr 2025 17:50:27 -0700 Subject: [PATCH 4/9] feat: add langfuse metadata and tags --- fern/providers/observability/langfuse.mdx | 36 ++++++++++++++++++ .../images/providers/langfuse-example.png | Bin 0 -> 54871 bytes 2 files changed, 36 insertions(+) create mode 100644 fern/static/images/providers/langfuse-example.png diff --git a/fern/providers/observability/langfuse.mdx b/fern/providers/observability/langfuse.mdx index 6381fe5e..2e7c6faf 100644 --- a/fern/providers/observability/langfuse.mdx +++ b/fern/providers/observability/langfuse.mdx @@ -76,3 +76,39 @@ To make the most out of this integration, you can now use Langfuse's [evaluation + +## Enrich Traces +Vapi allows you to enrich Langfuse traces by integrating [Metadata](https://langfuse.com/docs/tracing-features/metadata) and [Tags](https://langfuse.com/docs/tracing-features/tags). + +By default, we will add the following values to the metadata of each trace: + +- `call.metadata` +- `assistant.metadata` +- `assistantOverrides.metadata` +- `assistantOverrides.variableValues` + +### Usage +You can enhance your observability in Langfuse by adding metadata and tags: + +**Metadata** + +Use the [`assistant.observabilityPlan.metadata`](https://docs.vapi.ai/api-reference/assistants/create#request.body.observabilityPlan.metadata) field to attach custom key-value pairs. + +Examples: +- Track experiment versions ("experiment": "v2.1") +- Store user segments ("user_type": "beta_tester") +- Log environment details ("env": "production") + +**Tags** + +Use the [`assistant.observabilityPlan.tags`](https://docs.vapi.ai/api-reference/assistants/create#request.body.observabilityPlan.tags) field to add searchable labels. + +Examples: +- Mark important runs ("priority") +- Group related sessions ("onboarding", "A/B_test") +- Filter by feature ("voice_assistant") + +Adding metadata and tags makes it easier to filter, analyze, and monitor your assistants activity in Langfuse. + +### Example +![Langfuse Metadata Example](../../static/images/providers/langfuse-example.png) \ No newline at end of file diff --git a/fern/static/images/providers/langfuse-example.png b/fern/static/images/providers/langfuse-example.png new file mode 100644 index 0000000000000000000000000000000000000000..28a4883763234c425e97018421d06c04bbb18615 GIT binary patch literal 54871 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 Xi_=3jnJoSa_$S0C##{VF!|VS6&>~Bp literal 0 HcmV?d00001 From d944fdcf5e9bd00af3e3465fca57fab7c073b4b9 Mon Sep 17 00:00:00 2001 From: stevenbdf Date: Wed, 16 Apr 2025 22:27:12 -0700 Subject: [PATCH 5/9] feat: add test results --- fern/tools/default-tools.mdx | 54 ++++++++++++++++++++++++++++-------- 1 file changed, 43 insertions(+), 11 deletions(-) diff --git a/fern/tools/default-tools.mdx b/fern/tools/default-tools.mdx index 1bfce808..50a2d57b 100644 --- a/fern/tools/default-tools.mdx +++ b/fern/tools/default-tools.mdx @@ -62,9 +62,9 @@ This function is provided when `endCall` is included in the assistant's list of } ``` -#### Dial Keypad (DTMF) +#### Send Text -This function is provided when `dtmf` is included in the assistant's list of available tools (see configuration options [here](/api-reference/assistants/create#request.body.model.openai.tools.dtmf)). The assistant will be able to enter digits on the keypad. +This function is provided when `sms` is included in the assistant's list of available tool (see configuration options [here](/api-reference/assistants/create#request.body.model.openai.tools.sms)). The assistant can use this function to send SMS messages using a configured Twilio account. ```json { @@ -74,21 +74,24 @@ This function is provided when `dtmf` is included in the assistant's list of ava "messages": [ { "role": "system", - "content": "You are an assistant at a law firm. When you hit a menu, use the dtmf function to enter the digits." + "content": "You are an assistant. When the user asks you to send a text message, use the sms function." } ], "tools": [ { - "type": "dtmf" + "type": "sms", + "metadata": { + "from": "+15551234567" + } } ] } } ``` -#### Send Text +#### Dial Keypad (DTMF) -This function is provided when `sms` is included in the assistant’s list of available tool (see configuration options [here](/api-reference/assistants/create#request.body.model.openai.tools.sms)). The assistant can use this function to send SMS messages using a configured Twilio account. +This function is provided when `dtmf` is included in the assistant's list of available tools (see configuration options [here](/api-reference/assistants/create#request.body.model.openai.tools.dtmf)). The assistant will be able to enter digits on the keypad. ```json { @@ -98,21 +101,50 @@ This function is provided when `sms` is included in the assistant’s list of av "messages": [ { "role": "system", - "content": "You are an assistant. When the user asks you to send a text message, use the sms function." + "content": "You are an assistant at a law firm. When you hit a menu, use the dtmf function to enter the digits." } ], "tools": [ { - "type": "sms", - "metadata": { - "from": "+15551234567" - } + "type": "dtmf" } ] } } ``` +There are three methods for sending DTMF in a phone call: + +1. **In-band**: tones are transmitted as part of the regular audio stream. This is the simplest method, but it can suffer from quality issues if the audio stream is compressed or degraded. +2. **Out-of-band via RFC 2833**: tones are transmitted separately from the audio stream, within RTP (Real-Time Protocol) packets. It's typically more reliable than in-band DTMF, particularly for VoIP applications where the audio stream might be compressed. RFC 2833 is the standard that initially defined this method. It is now replaced by RFC 4733 but this method is still referred by RFC 2833. +3. **Out-of-band via SIP INFO messages**: tones are sent as separate SIP INFO messages. While this can be more reliable than in-band DTMF, it's not as widely supported as the RFC 2833 method. + + +Vapi's DTMF tool uses in-band method. Please note that this method may not work with certain IVRs. If you are running into this issue, the recommended approach is to have your assistant say the options out loud if available. For example, when an IVR says "Press 1 or say Sales for the Sales department," prefer having the assistant say "Sales." + + +##### Tool Effectiveness + +To evaluate this tool, we set up a Vapi assistant with the DTMF tool enabled and conducted calls to a range of IVR systems, including a Twilio IVR (configured via Studio Flows) and several third-party IVRs such as pharmacies and insurance companies. + +**Testing Methodology** + +We called and navigated through the IVRs using three different strategies: + +1. **Direct Dialpad**: calling from a personal phone and dialing options using the dialpad. +2. **Vapi DTMF Tool**: an assistant configured with the DTMF tool. +3. **Manual DTMF Sound**: calling from a personal phone and playing DTMF tones generated by software. _(similar approach as the Vapi DTMF Tool)_ + +**Key Findings** + +- The assistant successfully navigated some of the third-party IVRs. +- The assistant encountered issues with Twilio IVRs, likely due to Twilio’s preference for RFC 2833. +- Observed occasional delays in DTMF tone transmission, which may affect effectiveness with IVRs that have short timeouts. + +**Conclusion** + +The tool's effectiveness depends on the IVR system's configuration and DTMF capturing method. We are working to improve compatibility and reduce transmission delays for broader and more reliable support. + ### Custom Functions From 1adc259332f6087fbfb3af6aa04445a470130fc4 Mon Sep 17 00:00:00 2001 From: stevenbdf Date: Wed, 16 Apr 2025 18:12:31 -0700 Subject: [PATCH 6/9] feat: add more context about dtmf tool --- fern/tools/default-tools.mdx | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/fern/tools/default-tools.mdx b/fern/tools/default-tools.mdx index 50a2d57b..3d98b772 100644 --- a/fern/tools/default-tools.mdx +++ b/fern/tools/default-tools.mdx @@ -113,8 +113,18 @@ This function is provided when `dtmf` is included in the assistant's list of ava } ``` + There are three methods for sending DTMF in a phone call: +1. **In-band DTMF**: DTMF tones are transmitted as part of the regular audio stream. This is the simplest method, but it can suffer from quality issues if the audio stream is compressed or degraded. +2. **Out-of-band DTMF via RFC 2833**: This method sends DTMF tones separately from the audio stream, within RTP (Real-Time Protocol) packets. It's typically more reliable than in-band DTMF, particularly for VoIP applications where the audio stream might be compressed. RFC 2833 is the standard that initially defined this method. It is now replaced by RFC 4733 but this method is still referred by RFC 2833. +3. **Out-of-band DTMF via SIP INFO messages**: In this approach, DTMF tones are sent as separate SIP INFO messages. While this can be more reliable than in-band DTMF, it's not as widely supported as the RFC 2833 method. + +As of writing, Vapi's DTMF tool uses in-band DTMF. Please note that this method may not work with certain IVRs. If you are running into this issue, the recommended approach is to have your assistant say the options out loud if available. For example, when an IVR says "Press 1 or say Sales for the Sales department," prefer having the assistant say "Sales." + + +#### Send Text + 1. **In-band**: tones are transmitted as part of the regular audio stream. This is the simplest method, but it can suffer from quality issues if the audio stream is compressed or degraded. 2. **Out-of-band via RFC 2833**: tones are transmitted separately from the audio stream, within RTP (Real-Time Protocol) packets. It's typically more reliable than in-band DTMF, particularly for VoIP applications where the audio stream might be compressed. RFC 2833 is the standard that initially defined this method. It is now replaced by RFC 4733 but this method is still referred by RFC 2833. 3. **Out-of-band via SIP INFO messages**: tones are sent as separate SIP INFO messages. While this can be more reliable than in-band DTMF, it's not as widely supported as the RFC 2833 method. From 05208c48628f8622fa38fb8b35077d06227ba9d0 Mon Sep 17 00:00:00 2001 From: stevenbdf Date: Wed, 16 Apr 2025 20:35:22 -0700 Subject: [PATCH 7/9] feat: add explicitly instructions on silent transfers --- fern/squads/silent-transfers.mdx | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/fern/squads/silent-transfers.mdx b/fern/squads/silent-transfers.mdx index 6d28c493..e589f298 100644 --- a/fern/squads/silent-transfers.mdx +++ b/fern/squads/silent-transfers.mdx @@ -8,9 +8,13 @@ slug: squads/silent-transfers If you want to allow your call flow to move seamlessly from one assistant to another _without_ the caller hearing `Please hold while we transfer you` here’s what to do: 1. **Update the Destination Assistant’s First Message** - - Set the assistant’s `firstMessage` to an _empty string_. - - Make sure the `firstMessageMode` is set to `assistant-speaks-first-with-model-generated-message`. -2. **Trigger the Transfer from the Source Assistant** + - Set the assistant's `firstMessage` to an _empty string_. + - Set the assistant's `firstMessageMode` to `assistant-speaks-first-with-model-generated-message`. + +2. **Update the Squad's assistant destinations messages** + - For every `members[*].assistantDestinations[*]`, set the `message` property to an _empty string_. + +3. **Trigger the Transfer from the Source Assistant** - In that assistant’s prompt, include a line instructing it to transfer to the desired assistant: @@ -20,7 +24,7 @@ If you want to allow your call flow to move seamlessly from one assistant to ano - Replace `'assistantName'` with the exact name of the next assistant. -3. **Direct the Destination Assistant’s Behavior** +4. **Direct the Destination Assistant’s Behavior** - In that assistant’s prompt, include a line instructing it to _`Proceed directly to the Task section without any greetings or small talk.`_ - This ensures there’s no awkward greeting or “Hello!” when the next assistant begins speaking. @@ -38,6 +42,10 @@ Below are the key JSON examples you’ll need. These show how to structure your ### **HP Payment Squad With SubAgent** + + Make sure the `members[*].assistantDestinations[*].message` properties are set to an _empty string_. + + ```json { "members": [ @@ -97,6 +105,7 @@ Below are the key JSON examples you’ll need. These show how to structure your "temperature": 0.3 }, "firstMessage": "", + "firstMessageMode": "assistant-speaks-first-with-model-generated-message", "transcriber": { "model": "nova-2", "language": "en", From 7609240177cfc8421807124b3488ee8c7450be50 Mon Sep 17 00:00:00 2001 From: Sri Date: Wed, 16 Apr 2025 21:35:33 -0700 Subject: [PATCH 8/9] minor tweak --- fern/sdk/mcp-server.mdx | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/fern/sdk/mcp-server.mdx b/fern/sdk/mcp-server.mdx index aada3e8a..3833bbce 100644 --- a/fern/sdk/mcp-server.mdx +++ b/fern/sdk/mcp-server.mdx @@ -163,12 +163,19 @@ async function main() { }); // Create SSE transport for connection to remote Vapi MCP server - const transport = new SSEClientTransport({ - url: 'https://mcp.vapi.ai/sse', - headers: { - 'Authorization': `Bearer ${process.env.VAPI_TOKEN}` - } - }); + const serverUrl = 'https://mcp.vapi.ai/sse'; + const headers = { + Authorization: `Bearer ${process.env.VAPI_TOKEN}`, + }; + const options = { + eventSourceInit: { + fetch: (url, init) => fetch(url, { ...init, headers }), + }, + requestInit: { + headers, + }, + }; + const transport = new SSEClientTransport(new URL(serverUrl), options); console.log('Connecting to Vapi MCP server via SSE...'); await mcpClient.connect(transport); From 084f15bc2704057a2bf1071ab978286939f409ea Mon Sep 17 00:00:00 2001 From: Sri Date: Wed, 16 Apr 2025 14:39:22 -0700 Subject: [PATCH 9/9] updated mcp server examples --- fern/sdk/mcp-server.mdx | 35 ++++++++++++++++++++++++++++------- 1 file changed, 28 insertions(+), 7 deletions(-) diff --git a/fern/sdk/mcp-server.mdx b/fern/sdk/mcp-server.mdx index 3833bbce..e72e8a58 100644 --- a/fern/sdk/mcp-server.mdx +++ b/fern/sdk/mcp-server.mdx @@ -168,11 +168,17 @@ async function main() { Authorization: `Bearer ${process.env.VAPI_TOKEN}`, }; const options = { + requestInit: { headers: headers }, eventSourceInit: { - fetch: (url, init) => fetch(url, { ...init, headers }), - }, - requestInit: { - headers, + fetch: (url, init) => { + return fetch(url, { + ...(init || {}), + headers: { + ...(init?.headers || {}), + ...headers, + }, + }); + }, }, }; const transport = new SSEClientTransport(new URL(serverUrl), options); @@ -180,6 +186,20 @@ async function main() { console.log('Connecting to Vapi MCP server via SSE...'); await mcpClient.connect(transport); console.log('Connected successfully'); + + // Helper function to parse tool responses + function parseToolResponse(response) { + if (!response?.content) return response; + const textItem = response.content.find(item => item.type === 'text'); + if (textItem?.text) { + try { + return JSON.parse(textItem.text); + } catch { + return textItem.text; + } + } + return response; + } try { // List available tools @@ -196,7 +216,7 @@ async function main() { arguments: {}, }); - const assistants = assistantsResponse.content; + const assistants = parseToolResponse(assistantsResponse); if (!(Array.isArray(assistants) && assistants.length > 0)) { console.log('No assistants found. Please create an assistant in the Vapi dashboard first.'); return; @@ -214,7 +234,7 @@ async function main() { arguments: {}, }); - const phoneNumbers = phoneNumbersResponse.content; + const phoneNumbers = parseToolResponse(phoneNumbersResponse); if (!(Array.isArray(phoneNumbers) && phoneNumbers.length > 0)) { console.log('No phone numbers found. Please add a phone number in the Vapi dashboard first.'); return; @@ -243,7 +263,8 @@ async function main() { }, }); - console.log('Call created:', JSON.stringify(createCallResponse.content, null, 2)); + const createdCall = parseToolResponse(createCallResponse); + console.log('Call created:', JSON.stringify(createdCall, null, 2)); } finally { console.log('\nDisconnecting from server...'); await mcpClient.close();