Salesforce Opportunity Bot Creation Guide

This is a detailed step‐by‐step guide to create Salesforce Opportunity Bot in ix Hello Studio Mode. This guide covers creating all required components with options and valid values for each field:

To create Salesforce account and to integrate it with iX Hello, kindly refer to this

  1. Before commencing bot creation, ensure the following prerequisites are met:

  • Access to iX Hello Studio Mode.

  • Familiarity with basic iX Hello navigation.

  • To establish a Gen AI connection please follow this

  1. Create a Custom App

  • On the right sidebar, click on the Apps->Custom Apps. Click on New Custom App. Here you can create your own assistant with a dedicated name, description, instructions, and configuration.

  • Fields and their valid values include:

    • Name: For example, Salesforce Opportunity Status (your chosen name).

    • Custom App Type: Choose ‘Search’ from dropdown

    • Category: Choose ‘Default’ from dropdown

    • Put a tick mark on This is a Generative AI App and click on Save.

  • Click on the App name created above from ‘Custom Apps List’ to open it for further configuration

  1. Creating a Data Source

  • Navigate to the Data Sources tab and click on Create New Data Source.

  • Fill in the fields as follows:

    • Name: For example, GenAI DS.

    • Integration Configuration: Select the option Generative AI applicable integration.

    • Click Save.

  • Click on Create New Data Source to create another DS

  • Fill in the fields as follows:

    • Name: For Example, Salesforce DS

    • Integration Configuration: Choose any available Salesforce Connection from dropdown or create a new one.

    • Click Save

  1. qDefining Methods to Fetch Data from Gen AI

  • Go to the Methods tab, select GenAI DS and click on Create New Method.

  • Enter the following details:

    • Method Name: GenAIMethod

    • Request Type: azure-chatcompletion-rag

  • Parameters:

    • Model: gpt-4

    • systemMessage: Run CheckAccountNameIntent when the user provides the name of an Salesforce account. Run GetOpportunitiesBriefingIntent when the user provides the AccountID of an Salesforce account.

    • userQuestion: {{UserInput}}

    • sessionTime: 10

    • OrganizationID: {{Context.OrganizationID}}

    • EmployeeID: {{Context.EmployeeID}}

  • Result Type: ListofRecords

  • Record Limit: 10

  • Record JsonPath: $.choices[0].message

  • Empty Result Template: Is there anything else, I can assist you with?

  • Record Template: {{content}}

  • Valid Result Template: {{Records}}

  • Click Save and then Test the method.

Click Save and then Test the method.

  • Again, click on Create New Methods, select Salesforce DS

  • Enter the following details:

    • Method Name: AccountNametoIDCheck

    • RequestType: GetSOQLQueryResult

    • SOQLQuery: SELECT Name, BillingCity, Id FROM Account Where Name LIKE '%{{AccName}}%'

  • ListOfRecords: 10

  • Record JsonPath: $.[*]

  • Valid Result Template: {{Records}}

  • Record Template: <B>Account Name: {{Name}}</BR>AccountId: {{Id}}</BR>Billing City: {{BillingCity}}</B>

  • Empty Result Template: <BR>Sorry, account name provided not found. </BR><BR>How else can I help you?

  • Click Save and then Test the method.

  • Again, click on Create New Methods, select Salesforce DS

  • Enter the following details:

    • Method Name: GetOpportunitiesBriefing

    • RequestType: GetSOQLQueryResult

    • SOQLQuery: SELECT Name, Amount, StageName, CloseDate FROM Opportunity WHERE AccountId = '{{AccountId}}'

  • ListOfRecords: 100

  • Record JsonPath: $.[*]

  • Valid Result Template: {{Records}}

  • Record Template: Opportunity Name : {{Name}}, Amount : {{Amount}}, Stage : {{StageName}}, Close Date : {{CloseDate}}

  • Empty Result Template : <BR>Sorry, account name provided not found.</BR> <BR>How else can I help you?

  • Click Save and then Test the method.

  1. Creating an Intent

  • Select the Intents tab and click on Create New Intent.

  • Fill in these fields:

    • Name: ChatIntent

    • Intent Type: Search

    • Intent Action: Execute Method

    • DataSource: GenAI DS

    • DataSource Method: GenAIMethod

    • Dialog Delegation Strategy: FallbackToSkill

    • Select checkbox ’Set this intent as a fallback Intent.’

    • Click Save

  • Again, click on Create New Intent

  • Fill in these fields:

    • Name: CheckAccountNameIntent

    • Intent Type: Search

    • Intent Action: Execute Method

    • DataSource: Salesforce DS

    • DataSource Method: AccountNametoIDCheck

    • Dialog Delegation Strategy: FallbackToSkill

    • Click Save

  • Again, click on Create New Intent

  • Fill in these fields:

    • Name: GetOpportunitiesBriefingIntent

    • Intent Type: Search

    • Intent Action: Execute Method

    • DataSource: Salesforce DS

    • DataSource Method: GetOpportunitiesBriefing

    • Dialog Delegation Strategy: FallbackToSkill

    • Click Save

  1. Setting up Slots

  • Navigate to the Slots tab,select ChatIntent from dropdown and click on Create New Slot.

  • Enter the details:

    • Name: UserInput

    • Slot Order: 1

    • Type: Text

    • Custom App: Salesforce Opportunity Status

    • Intent: ChatIntent

    • Click Save

  • Select ‘CheckAccountNameIntent‘ from dropdown and click on Create New Slot.

  • Enter the details:

    • Name: AccName

    • Slot Order: 1

    • Type: Text

    • Custom App: Salesforce Opportunity Status

    • Intent: CheckAccountNameIntent

    • Click Save.

  • Select ‘GetOpportunitiesBriefingIntent’ from downdown and click on Create New Slot.

  • Enter the details:

    • Name: AccountID

    • Slot Order: 1

    • Type: Text

    • Custom App: Salesforce Opportunity Status

    • Intent: GetOpportunitiesBriefingIntent

    • Click Save.

  1. Creating an Utterance

  • Go to the Utterance tab, select ChatIntent from dropdown and create a new utterance.

  • Provide the following:

    • Value: Ask a question

    • Custom Skill: Salesforce Opportunity Status

    • Intent: ChatIntent

    • Click Save.

  • Select CheckAccountNameIntent from dropdown and create a new utterance.

  • Provide the following:

    • Value: Check Account

    • Custom Skill: Salesforce Opportunity Status

    • Intent: CheckAccountNameIntent

    • Click Save.

  • Select GetOpportunitiesBriefingIntent from dropdown and create a new utterance.

  • Provide the following:

  • Value: Get opportunities briefing

  • Custom Skill: Salesforce Opportunity Status

  • Intent: GetOpportunitiesBriefingIntent

  • Click Save.

  1. Creating an Input

  • In the Input tab, click on Create New Input and add the following:

  • Name: ChatInput

  • Custom Skill: Salesforce Opportunity Status

  • Custom Intent: chatIntent

  • Data Source: GenAI DS

  • Data Source Method: GenAIMethod

  • Click on ‘Enable Generative AI Tool’

  • Click Save.

  • Once created, click on manage Parameters and add:

  • Input Parameter Name: UserInput

  • Parameter: UserInput

  • Data Type: Text

  • Click Save.

  • Click on Create New Input and add the following:

    • Name: CheckAccountNameInput

    • Description: Check Account Details

    • Custom Skill: Salesforce Opportunity Status

    • Custom Intent: CheckAccountNameIntent

    • Data Source: Salesforce DS

    • Data Source Method: AccountNametoIDCheck

    • Click on ‘Enable Generative AI Tool’

    • Click Save.

  • Once created, click on Manage Parameters and add:

    • Input Parameter Name: AccName

    • Parameter: AccName

    • Data Type: Text

    • Description: Capture the account name for the opportunity

    • Click Save.

  • Click on Create New Input and add the following:

    • Name: GetOpportunitiesBriefing

    • Description: Check opportunity status

    • Custom Skill: Salesforce Opportunity Status

    • Custom Intent: GetOpportunitiesBriefingIntent

    • Data Source: Salesforce DS

    • Data Source Method: GetOpportunitiesBriefing

    • Click on ‘Enable Generative AI Tool’

    • Click Save.

  • Once created, click on Manage Parameters and add:

  • Input Parameter Name: AccountId

  • Parameter: AccountId

  • Data Type: Text

  • Description: Capture the account id for the opportunity

  • Click Save.

  1. Publishing the Custom App to Gen AI

  • In the top menu, select Publish then click on Add App Publishing.

  • Fill in these details:

    • External Skill Name: For example, Salesforce Opportunity Status Assistant

    • App Description: A description for the assistant

    • Skill Type: Search

    • Channel: Generative AI

    • Welcome message: Hello! I'm Salesforce Opportunity Status Assistant, your assistant to help you check the status of your opportunity in Salesforce. You can say ‘’ or ‘check Account details’ to proceed.

    • If you want to see the app in Basic Mode, also enable the Show this app in the Basic Mode option.

    • Click Save.

  1. Using the App

  • In the Publish Section, click on Action, select Test and start querying.

Congratulations—you have successfully set up an assistant in Studio Mode utilizing Salesforce Connection to access ‘Opportunity’ and ‘Account’ Tables present in Salesforce and fetch the processed information.

Last updated

Was this helpful?