Skip to content

Latest commit

 

History

History
163 lines (142 loc) · 6.03 KB

File metadata and controls

163 lines (142 loc) · 6.03 KB

Create a Configuration File for Slack and Salesforce

reuse::partial$beta-banner.adoc

A configuration file is a YAML file that can reference different configurations and specify different values for your connector properties. Configuration files enable you to define specific properties depending on the environment to which you are deploying your application.

To start configuring your Slack and Salesforce connectors in your escalation API, create a configuration file.

Before You Begin

Create a Configuration File

  1. In your Explorer view, right-click the resources folder (src/main/resources) and select New File:

    The resources directory highlighted in the explorer, with the *New File* menu option selected
  2. Name the file config.yaml.

  3. Populate your file with your Salesforce, Gmail, and Slack configurations:

    salesforce:
     username: "yourUserName"
     password: "yourPassword"
     token: "yourToken"
    
    email:
     host: "smtp.gmail.com"
     username: "yourGmailEmail"
     password: "yourEmailAppPassword"
    
    slack:
     token: "yourSlackToken"
  4. Navigate to your new-case-salesforce.xml file, add a new line before the </mule> tag, and paste this line:

    <configuration-properties file="config.yaml" doc:name="Configuration properties" />

Configure Your Salesforce Connector

Use the values in your config.yaml file to connect the Salesforce Connector to your Salesforce environment:

  1. In your new-case-salesforce.xml file, create a new line after the <configuration-properties/> element, and paste the following code:

    <salesforce:sfdc-config name="Salesforce-Config" doc:name="Config">
     <salesforce:basic-connection username="${salesforce.username}" password="${salesforce.password}" />
    </salesforce:sfdc-config>

+

Note

When you move your cursor over the ${salesforce.username} and ${salesforce.password} elements, Anypoint Code Builder shows the values from the configuration file.

  1. Verify your connection to Salesforce by clicking Test Connection for the <salesforce:sfdc-config/> element:

    Code snippet with *Test Connection* button highlighted

    Anypoint Code Builder returns a Connection is valid message.

    If you get an error, verify the error message to troubleshoot further.

Add a Salesforce Trigger

  1. Add a new flow on your canvas.

  2. In the code editor, name the flow ​NewSalesforceCaseFlow:

    <flow name="​NewSalesforceCaseFlow">
    
    </flow>
  3. On your canvas, click the (Add component) icon after Flow, type new object, and select On new object after Salesforce.

  4. In the code editor, set the following values of the <salesforce:new-object-listener/> element:

    • objectType: Case

    • config-ref: Salesforce-Config

    • name: On New Case

  5. In the <salesforce:new-object-listener/> element, replace <scheduling-strategy/> with the following XML:

    <scheduling-strategy >
      <fixed-frequency frequency="1000"/>
    </scheduling-strategy>

Test Your Salesforce Integration

  1. Add a logger at the end of your flow:

    The flow canvas with the *Add Flow* plus sign button highlighted
    A workflow with the *Logger* component added

    A logger component is added to the flow in the code editor.

  2. Replace the logger component in the code editor with the following:

    <logger level="INFO" doc:name="Log Case Object" message="{#payload}" />
  3. Add a breakpoint to this line by clicking the red dot at the line number:

    A line of code with the breakpoint highlighted

    Alternatively, add a breakpoint to the logger component by right-clicking on the component in the canvas UI and selecting Add Breakpoint.

  4. Select Run > Start Debugging (F5).

  5. After your application deploys successfully, log in to your Salesforce account.

  6. From App Launcher, select Service:

    The *Setup* menu with the *App Launcher* button icon highlighted
  7. Select Cases > New Case:

    The *Service* navigation bar with the *New Case* button highlighted in the *Cases* section
  8. Ensure that the Status of the new case is New.

  9. Create a new case and save it.

  10. In Anypoint Code Builder, your application stops at the logger. Inspect the payload in Variables:

    The *Variables* panel with the *Payload* variables highlighted

    The payload contains information about your newly created case.

  11. Step over your Logger component.

  12. Proceed to tut-slack-extract-payload-information.adoc to learn how to extract your case information to a variable to use it later in the flow.