Overview

This page describes how to Integrate AutoCompose in your Salesforce application.

Integration Steps

There are three parts to the AutoCompose setup process. Use the links below to skip to information about a specific part of the process:

  1. Configure the Salesforce organization centrally using an administrator account
  2. Setup agent/user authentication through the existing single sign-on (SSO) service
  3. Work with your ASAPP contact to configure Auto-Pilot Greetings, if desired

Expected effort for each part of the setup process:

  • 1 hour for installation and configuration of the ASAPP chat componentd
  • 1-2 hours to enable user authentication, depending on SSO system complexity

Requirements

Browser Support

ASAPP AutoCompose is supported in Google Chrome and Microsoft Edge

NOTE: This support covers the latest version of each browser and extends to the previous two versions

Please consult your ASAPP account contact if your installation requires support for other browsers

Salesforce

ASAPP supports Lightning-based chat (cf. classic)

SSO Support

The AutoCompose widget supports SP-initiated SSO with either OIDC (preferred method) or SAML.

Domain Whitelisting

In order for AutoCompose to interact with ASAPP’s backend and third-party support services, the following domains need to be accessible from end-user environments:

DomainDescription
*.asapp.comASAPP service URLs
*.ingest.sentry.ioApplication performance monitoring tool
fonts.googleapis.comFonts
google-analytics.comPage analytics
asapp-chat-sdk-production.s3.amazonaws.comStatic ASAPP AWS URL for desktop network connectivity health check

Integrate with Salesforce

1. Configure the Salesforce Organization Centrally

Before You Begin

You will need the following information to configure ASAPP for Salesforce:

  • Administrator credentials to login to your Salesforce organization account.
    • NOTE: Organization and Administrator should be enabled for ‘chat’.
  • A URL for the ASAPP installation package, which will be provided by ASAPP.

ASAPP provides the same install package for implementing both AutoCompose and AutoSummary in Salesforce. Use this guide to configure AutoCompose.

If you’re looking to implement AutoSummary, use this guide.

  • API Id and API URL values, which can be found in your ASAPP Developer Portal account (developer.asapp.com) in the Apps section.

Configuration Steps

1. Install the ASAPP Package

  • Open the package installation URL from ASAPP.
  • Login with your Salesforce organization administrator credentials. The package installation page appears:
  • Choose Install for All Users (as shown above).
  • Check the acknowledgment statement and click the Install button:
  • The Installation runs. An Installation Complete! message appears:
  • Click the Done button. 2. Add ASAPP to the Chat Transcript Page
  • Open the ‘Service Console’ page (or your chat page).
  • Choose an existing chat session or start a new chat session so that the chat transcript page appears (the exact mechanism is organization-specific).
  • In the top-right, click the gear icon, then right-click Edit Page, and Open Link in a New Tab.
  • Navigate to the new tab to see the chat transcript edit page:
  • Select the conversation panel (middle) and delete it.
  • Drag the chatAsapp component (left), inside the conversation panel:
  • Drag the exploreAsapp component (left), to the right column. Next, add your organization’s API key and API URL (found in the ASAPP Developer Portal) in the rightmost panel:

The API key is labeled as API Id in the ASAPP Developer Portal.

The API URL should be listed as https://api.sandbox.asapp.com for lower environments and https://api.asapp.com for production.

  • Click Save, then click Activate
  • Click Assign as org default.
  • Choose Desktop form factor, then click Save.
  • Return to the chat transcript page and refresh - the ASAPP composer should appear.

2. Set Up Single Sign-On

ASAPP handles authentication through the customer’s SSO service to confirm the identity of the agent.

ASAPP acts as the Service Provider (SP) with the customer acting as the Identity Provider (IDP). The customer’s authentication system performs user authentication using their existing user credentials.

ASAPP supports SP-initiated SSO with either OIDC (preferred method) and SAML. Once the user initiates sign-in, ASAPP detects that the user is authenticated and requests an assertion from the customer’s SSO service.

Configuration Steps for OIDC (preferred method)

  1. Create a new IDP OIDC application with type Web

  2. Set the following attributes for the app:

    Attribute

    Value*

    Grant Type

    authorization code

    Sign-in Redirect URIs

    Production: https://api.asapp.com/auth/v1/callback/\{company_marker\}

    Sandbox: https://api.sandbox.asapp.com/auth/v1/callback/\{company_marker\}-sandbox

    *NOTE: ASAPP to provide company_marker value

  3. Save the application and send ASAPP the Client ID and Client Secret from the app through a secure communication channel

  4. Set scopes for the OIDC application:

    • Required: openid
    • Preferred: email, profile
  5. Tell ASAPP which end-user attribute should be used a unique identifier

  6. Tell ASAPP your IDP domain name Configuration Steps for SAML

  7. Create a new IDP SAML application.

  8. Set the following attributes for the app:

    Attribute

    Value*

    Single Sign On URL

    Production: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml/endpoint/clients/asapp-saml

    Sandbox: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml-sandbox/endpoint/clients/asapp-saml-sandbox

    Recipient URL

    Production: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml/endpoint/clients/asapp-saml

    Sandbox: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml-sandbox/endpoint/clients/asapp-saml-sandbox

    Destination URL

    Production: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml/endpoint/clients/asapp-saml

    Sandbox: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml-sandbox/endpoint/clients/asapp-saml-sandbox

    Audience Restriction

    Production: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml/endpoint/clients/asapp-saml

    Sandbox: https://sso.asapp.com/auth/realms/standalone-\{company_marker\}-auth/broker/saml-sandbox/endpoint/clients/asapp-saml-sandbox

    Response

    Signed

    Assertion

    Signed

    Signature Algorithm

    RSA_SHA256

    Digest Algorithm

    SHA256

    Attribute Statements

    externalUserId: {unique_id_to_identify_the_user}

    *NOTE: ASAPP to provide company_marker value

  9. Save the application and send the Public Certificate to validate Signature for this app SAML payload to ASAPP team

  10. Send ASAPP team the URL of the SAML application

3. Configure Auto-Pilot Greetings

If you so choose, you can work with your ASAPP contact to enable Auto-Pilot Greetings in your AutoCompose installation. Auto-Pilot Greetings automatically generates a greeting at the beginning of a conversation, and that greeting can be automatically sent to a customer on your agent’s behalf after a configurable timer elapses.

Your ASAPP contact can:

  • Turn Auto-Pilot Greetings on or off for your organization
  • Set a countdown timer value after which the Auto-Pilot Greeting is sent if an agent does not cancel Auto-Pilot by typing or clicking a “cancel” button
  • Set the global default messages that will be provided for Auto-Pilot Greetings across your organization (note thatagents can optionally customize their Auto-Pilot Greetings messages within the Auto-Pilot tab of the AutoCompose panel)

Usage

Customization

Conversation Attributes

Once the ASAPP AutoCompose widget is embedded, Salesforce shares the following conversation attributes with ASAPP: customer name, agent name and skill.

ASAPP can use name attributes to populate values into templated responses (e.g. “Hi [customer name], how can I help you today?”) and to selectively filter response lists based on the skill of the conversation.

Conversation Redaction

When message text in the conversation transcript is sent to ASAPP, ASAPP applies redaction to the message text to prevent transmission of sensitive information. Reach out to your ASAPP account contact for information on available redaction capabilities to configure for your implementation.

Composer Placement

ASAPP currently targets Lightning desktops. Within Lightning-based desktops, you are free to place our composer wherever you choose. However, we suggest placing it immediately below the Salesforce conversation widget, such that the chat log appears above the ASAPP composer.

Data Security

ASAPP’s security protocols protect data at each point of transmission from first user authentication, to secure communications, to our auditing and logging system, all the way to securing the environment when data is at rest in the data logging system. Access to data by ASAPP teams is tightly constrained and monitored. Strict security protocols protect both ASAPP and our customers.

The following security controls are particularly relevant to AutoCompose:

  1. Client sessions are controlled using a time-limited authorization token. Privileges for each active session are controlled server-side to mitigate potential elevation-of-privilege and information disclosure risks.
  2. To avoid unauthorized disclosure of information, unique, non-guessable IDs are used to identify conversations. These conversations can only be accessed using a valid client session.
  3. Requests to API endpoints that can potentially receive sensitive data are put through a round of redaction to strip the request of sensitive data (like SSNs and phone numbers).

Additional Considerations

Historical Conversation Data for Generating a Response List

ASAPP uses past agent conversations to generate a customized response list tailored to a given use case. In order to create an accurate and relevant list, ASAPP requires a minimum of 200,000 historical transcripts to be supplied ahead of implementing AutoCompose.

For more information on how to transmit the conversation data, reach out to your ASAPP account contact.