Contact Sales

All fields are required

Advanced communications from the source. | SignalWire

A Deep Dive into Customer Support AI Assistant Configuration

Exploring a JSON code snippet for an AI Agent

FreeSWITCH Enterprise Support Lead

Len Graham

SignalWire’s AI Agent allows you to integrate AI into your voice applications with ease. The release of the newest no-code builder makes it simple for anyone to build their own AI voice assistant. However, with a little bit of code, you can program your AI to do just about anything.

There are many ways to improve your customer support operations with AI. Virtual assistants powered by AI can handle customer inquiries, provide information, and even perform tasks like transferring calls, sending messages, or scheduling appointments. In this post, we'll take a detailed look at a specific configuration for such a virtual agent that can transfer calls and send text messages, acting as a virtual receptionist.

Introduction to the Configuration

The configuration provided is in JSON format and is designed for a voice agent with the following features:

  • Name: John

  • Role: Customer Support Virtual Assistant

  • Availability: Monday through Friday, 9:00 AM EST to 5:00 PM EST

  • Additional Information: Fax number is 12345678911

The AI voice agent’s primary tasks include greeting callers, transferring calls to specific individuals (Jim or abc), sending messages, and summarizing conversations. It can communicate in both English (US) and Spanish (US).

You can access the entire code snippet here. Below, we’ll break down the JSON configuration.

Configuration Details

Version Information

The configuration file begins with version information:

This section indicates that the configuration is using version 1.0.0 and defines the main sections that follow.

Main Section

The main section contains the core configuration for the virtual AI assistant, including the prompt and parameters that define the AI’s abilities such as specific messaging or languages it can speak.

AI Component

  • post_prompt_url: A webhook URL where post-prompt data can be sent.

  • params: Additional parameters including debugging options and the local time zone.

  • prompt: Defines the initial prompt that the virtual assistant uses to engage with callers.

SWAIG Component

  • functions: This is a crucial section that defines the assistant's capabilities, including transferring calls and sending messages.

  • post_prompt: Specifies a post-prompt message to summarize the conversation.

  • languages: Lists the languages the virtual assistant can communicate in, along with voice options.


The most significant part of the configuration is the "functions" section, which defines the assistant's capabilities. Let's explore two of these functions for transferring calls and sending SMS messages:

Transfer Function

  • function: Indicates that this function allows transferring calls.

  • data_map: Contains expressions and actions for transferring calls, including connecting to a target.

  • argument: Describes the type and properties of the argument (target) that can be transferred to.

  • purpose: Provides a description of the function's purpose.

Message Function

  • function: Specifies that this function is used for sending messages.

  • data_map: Contains expressions and actions for sending messages via SMS.

  • argument: Describes the type and properties of the argument (target) to which messages can be sent.

  • purpose: Provides a description of the function's purpose.

This AI virtual agent is equipped to handle calls, transfer callers to specific individuals, send text messages, and summarize conversations. Such configurations are at the heart of modern customer support AI solutions, streamlining communication and enhancing customer experiences.

As businesses continue to embrace AI-driven communications solutions, these configurations play a pivotal role in ensuring smooth interactions with customers.

Start building your first AI Agent for free. You can choose from predefined functions, or code your own. Bring your questions and issues to the team - you can find us on Slack, Discord, or our forum!

Related Articles