Get hands-on experience with 20+ free Google Cloud products and $300 in free credit for new customers.

Injecting parameters in the DialogFlow CX conversation agent prior to start of dialog

Hi, we are using DialogFlow CX and Conversational Agents/ Vertex AI to make outbound calls, but I need the agent to address the caller by name (ex. "Hi <name> this is ABC AI agent, we are calling to check on....") but we cannot find a way to give the default playbook the name parameter. It seems that the default book can pass parameters to other playbooks in the agent but it cannot take them from an API call or in any other way we've attempted. Can anyone please help? 

Thank you! 

 

0 1 299
1 REPLY 1

Hi @vertexaiExpert,

Welcome to Google Cloud Community!

To resolve the issue of passing the caller's name to your DialogFlow CX agent, you'll likely need to take advantage of the integration capabilities between DialogFlow CX and Vertex AI, especially since you're working with an outbound calling system. Here's a step-by-step approach to achieve this:

1. Send the Name Parameter via the API Call:  Since you're using an API (probably via a webhook or integration) to initiate the outbound call, you can pass the caller's name as a parameter in the API request to the DialogFlow CX agent. This is a common approach in DialogFlow CX, where parameters can be included in the request. For example, when setting up the API call to start the conversation, include a parameter like caller_name

2. Extract the Name in the DialogFlow CX Agent: In DialogFlow CX, you'll need to define a session parameter that can hold the caller's name. When you start the conversation, this parameter will be available for use within your agent's flow.

>>Define a session parameter in the flow:

  • Go to the Parameters tab in your agent and define a session parameter (e.g., caller_name).
  • This parameter can be populated dynamically through API requests, as shown above.

>>Use the Parameter in the Welcome Intent:

  • In your welcome intent or greeting intent, reference the caller_name parameter. You can do this in the response text using the $session.params syntax:

 3. Use Fulfillment to Retrieve the Name: If you're using fulfillment (webhooks) to process additional logic or retrieve the caller’s name from an external service (like a CRM), you can also set up a webhook that sends the caller's name back as part of the response. This can then be mapped to a session parameter that your agent will use.

4. Verify Parameter Usage in DialogFlow CX: Make sure that the session parameters are correctly referenced in your intents and flows. If you're using the default playbook or any custom ones, ensure the flow where the greeting or introduction happens is correctly pulling the caller_name from the session parameters.

Given that your agents handle outbound calls, integrating Google Cloud's Contact Center AI features can ensure the customer's name is available at the start of the call. This allows agents to greet callers personally and promptly, enhancing the customer experience.

In addition, I came across some articles that cover the same question about your problem. It could be helpful for you. 

Was this helpful? If so, please accept this answer as “Solution”. If you need additional assistance, reply here within 2 business days and I’ll be happy to help.