Automatizar atribuições de roteamento de casos do Salesforce


Este tutorial descreve um caso de uso de como usar Application Integration para automatizar o fluxo de processo de negócios de roteamento e atribuição de um caso de cliente do Salesforce.

Visão geral

Neste tutorial, você vai criar uma integração que usa um gatilho do Salesforce para se inscrever em um canal de caso no Salesforce. Um novo caso no Salesforce invoca a integração, que extrai o ID e o tipo do caso. Dependendo do tipo de caso, um novo problema ou incidente é criado no Jira Cloud ou no ServiceNow, respectivamente.

Diagrama de fluxo do caso do Salesforce Diagrama de fluxo do caso do Salesforce

Objetivos

Neste tutorial, mostramos como concluir as seguintes tarefas na sua integração:

  • Configure o gatilho do Salesforce para invocar sua integração.
  • Adicione e configure tarefas do Connectors para conexões do Salesforce, Jira Cloud e ServiceNow.
  • Adicione e configure tarefas de mapeamento de dados para extrair e mapear detalhes de casos.

Custos

Neste tutorial, você vai usar os seguintes componentes faturáveis do Google Cloud:

As instruções deste tutorial foram criadas para manter o uso de recursos dentro dos limites do nível Sempre gratuito do Google Cloud.

Ao concluir as tarefas descritas neste documento, é possível evitar o faturamento contínuo excluindo os recursos criados. Saiba mais em Limpeza.

Antes de começar

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager).

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Create a service account:

    1. In the Google Cloud console, go to the Create service account page.

      Go to Create service account
    2. Select your project.
    3. In the Service account name field, enter a name. The Google Cloud console fills in the Service account ID field based on this name.

      In the Service account description field, enter a description. For example, Service account for quickstart.

    4. Click Create and continue.
    5. Grant the following roles to the service account: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager).

      To grant a role, find the Select a role list, then select the role.

      To grant additional roles, click Add another role and add each additional role.

    6. Click Continue.
    7. Click Done to finish creating the service account.

Preparar o ambiente

Verificar a configuração do usuário do Salesforce

Neste tutorial, presumimos que você tenha uma conta de desenvolvedor do Salesforce com a configuração de usuário e a permissão definidas. Verifique se a captura de dados de alteração (CDC) está ativada na sua conta. Para informações sobre como criar uma conta, consulte Configurar um usuário de integração.

Verificar conta do Jira Cloud

Este tutorial usa o Jira Cloud. Você pode usar sua conta do Jira Cloud ou criar uma nova. Verifique se o projeto e os quadros do Jira Cloud estão configurados. Para mais informações sobre o Jira Cloud, consulte a documentação do software Jira.

Verificar a instância do ServiceNow

Este tutorial usa uma instância pessoal de desenvolvedor (PDI, na sigla em inglês) gratuita do ServiceNow. Você pode usar sua instância atual do ServiceNow ou criar uma nova. Verifique se a instância está ativa e anote o URL dela. Para mais informações sobre o PDI, consulte a documentação do PDI do ServiceNow (em inglês).

Configurar conexões

Para este tutorial, você precisa configurar as seguintes conexões em Conectores de integração:

Conexão do Salesforce
Configure uma conexão do Salesforce no Integration Connectors. Para informações sobre como configurar um conector do Salesforce, consulte Conector do Salesforce.
Conexão com o Jira Cloud
Configure uma conexão do Jira Cloud nos Integration Connectors usando o URL do projeto para criar problemas do Jira no projeto. Anote o ID do projeto e o ID do problema. Para informações sobre como configurar um conector do Jira Cloud, consulte Conector do Jira Cloud.
Conexão do ServiceNow
Configure uma conexão do ServiceNow nos Conectores de integração usando o URL da instância para criar incidentes no ServiceNow. Para informações sobre como configurar um conector do ServiceNow, consulte Conector do ServiceNow.

Criar integração

Para criar uma nova integração, execute as seguintes etapas:

  1. No console do Google Cloud, acesse a página Application Integration.

    Acessar o Application Integration

  2. Clique em Integrações no menu de navegação à esquerda para abrir a página Integrações.
  3. Clique em Criar integração e forneça os seguintes detalhes na página Criar integração:
    1. Nome da integração:insira salesforce-case-integration.
    2. Descrição:insira Demo integration created for tutorial.
    3. Região:selecione us-central1 na lista de regiões compatíveis.
    4. Clique em Criar para abrir o editor de integração.

Configurar um gatilho de integração

Depois de criar a integração, adicione e configure um gatilho que a invoque para um evento identificado.

Neste tutorial, um gatilho do Salesforce é usado para invocar a integração a cada novo caso criado no Salesforce. Para adicionar e configurar um gatilho do Salesforce na sua integração do salesforce-case-integration, faça o seguinte:

  1. No editor de integração, clique em Acionadores para exibir uma lista de acionadores disponíveis.
  2. Clique e posicione o elemento Gatilho do Salesforce no editor de integração.
  3. Selecione o elemento Gatilho do Salesforce na tela do designer para abrir o painel de configuração do gatilho.
  4. Configure os campos a seguir em Trigger Input:
    1. Tipo de evento: selecione Alterar captura de dados (CDC) na lista suspensa.
    2. Configuração da instância do Salesforce: clique na opção + Add new Salesforce instance configuration na lista suspensa.

      Na caixa de diálogo Adicionar configuração de instância do Salesforce, faça o seguinte:

      • Nome da conexão da instância do Salesforce: insira um nome de conexão para a instância do Salesforce. Por exemplo, test.
      • Domínio do Salesforce: digite seu nome de domínio do Salesforce. Você encontra essas informações na página Conta do Salesforce > Ver perfil.
      • Perfil de autenticação: selecione um perfil de autenticação. Se você não tiver um perfil de autenticação, crie um novo. Para mais informações, consulte Criar um novo perfil de autenticação.
      • Clique em Adicionar.
    3. Configuração de canal do Salesforce: clique na opção + Adicionar nova configuração de canal do Salesforce na lista suspensa.

      Na caixa de diálogo Adicionar canal do Salesforce, faça o seguinte:

      • Nome do objeto do Salesforce: digite Case.
      • Clique em Adicionar.
    4. Operação: selecione Criar na lista suspensa.
    5. As alterações nas propriedades são salvas automaticamente.

Mapear a carga útil do gatilho para o conector do Salesforce

Quando a integração é invocada usando o gatilho do Salesforce, você extrai o ID do caso e o mapeia para um conector do Salesforce para recuperar mais detalhes do caso.

Conectar à conta do Salesforce

Siga estas etapas para adicionar e configurar uma tarefa de Conectores e recuperar os detalhes do caso usando a conexão do Salesforce:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e coloque o elemento Conectores no editor de integração.
  3. Selecione o elemento de tarefa Conectores no designer para ver o painel de configuração da tarefa Conectores.
  4. Clique em e renomeie o marcador Conectores para Fetch Salesforce Data.
  5. Clique em Configurar conector.
  6. Faça o seguinte na página Editor de tarefas de conectores:
    1. Em Selecionar conexão, escolha a região us-central1.
    2. Selecione sua conexão do Salesforce na lista de conexões disponíveis.
    3. Clique em Próxima.
    4. Em Tipo, escolha Entidades.
    5. Em Definir entidades/ações, selecione Caso na lista de entidades disponíveis e Acessar como a Operação.
    6. Clique em Concluído para concluir a configuração da conexão e feche o painel.

Extrair e mapear o ID do caso

Uma tarefa de Mapeamento de dados é usada para mapear e extrair os detalhes do caso entre esse gatilho do Salesforce e o conector do Salesforce.

Para adicionar e configurar o mapeamento de dados na sua integração, faça o seguinte:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Selecione o elemento Mapeamento de dados no designer para conferir o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados para Get Case ID.
  5. Clique em Abrir editor de mapeamento de dados.

    O Editor de mapeamento de dados permite mapear variáveis de entrada para as variáveis de saída desejadas, usando as funções de transformação disponíveis. A saída é disponibilizada como uma variável para qualquer outra tarefa ou gatilho de integração. Para mais detalhes sobre mapeamento de variáveis, consulte Adicionar um mapeamento.

  6. Mapeie a variável de saída do gatilho —SalesforceTriggerCdcRecordID— para a variável de entrada do conector gerada automaticamente —entityId(Fetch Salesforce Data).

    Quando o mapeamento for concluído, feche o painel. Todas as alterações serão salvas automaticamente.

  7. Adicione uma conexão de borda do gatilho do Salesforce à tarefa Receber ID do caso.
  8. Adicione uma conexão de borda da tarefa Receber ID do caso ao conector Buscar dados do Salesforce.

Extrair tipo de caso

Depois de recuperar todos os detalhes do caso do conector do Salesforce, extraia o tipo de caso e encaminhe para o aplicativo Jira Cloud ou ServiceNow.

Para extrair o tipo de caso do Salesforce, faça o seguinte:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Mapeamento de dados no designer para conferir o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados para Get case type.
  5. Clique em Abrir editor de mapeamento de dados.
  6. Clique em + Adicionar nova variável e crie a seguinte variável de saída:
    Nome da variável de saída Tipo de dado
    sf_case_type STRING
  7. Crie o seguinte mapeamento entre a variável de payload do conector do Salesforce e a variável local:
    Entrada Saída
    connectorOutputPayload (Fetch Salesforce Data)
    .GET_PROPERTY("Type")
                
    sf_case_type

    Quando o mapeamento for concluído, feche o painel. Todas as alterações serão salvas automaticamente.

  8. Adicione uma conexão de borda do conector Buscar dados do Salesforce à tarefa Receber tipo de caso.

Criar problema no Jira

Depois de extrair o tipo de caso do Salesforce, se ele for do tipo Engineering, encaminhe para o Jira Cloud como um novo problema.

Conectar ao projeto do Jira

Siga estas etapas para configurar uma tarefa do Conectores que cria um novo problema no seu projeto do Jira:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e coloque o elemento Conectores no editor de integração.
  3. Clique no elemento de tarefa dos Conectores no designer para ver o painel de configuração da tarefa dos Conectores.
  4. Clique em e renomeie os Conectores como Create issue in Jira.
  5. Clique em Configurar conector.
  6. Faça o seguinte na página Editor de tarefas de conectores:
    1. Em Selecionar conexão, escolha a região us-central1.
    2. Selecione sua conexão do Jira Cloud na lista de conexões disponíveis.
    3. Clique em Próxima.
    4. Em Tipo, escolha Entidades.
    5. Em Definir entidades/ações, selecione Problemas na lista de entidades disponíveis e Criar como a Operação.
    6. Clique em Concluído para concluir a configuração da conexão e feche o painel.

Transformar e mapear detalhes do problema

Para transformar os detalhes do caso e mapeá-los para um problema do Jira, faça o seguinte:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Mapeamento de dados no designer para conferir o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados para Mapping for issue creation.
  5. Clique em Abrir editor de mapeamento de dados.
  6. Clique em + Adicionar nova variável e crie as seguintes variáveis:
    Nome da variável Tipo de dado Valor padrão
    jira_project-id STRING
    JIRA_PROJECT_ID
    Substitua JIRA_PROJECT_ID pelo ID do projeto do Jira.
    jira_issue_type_id STRING
    JIRA_ISSUE_TYPE_ID
    Substitua JIRA_ISSUE_TYPE_ID por um dos seguintes ID de tipo de problema:
    • 1000 - para Épico
    • 1001 - para Matéria
    • 1002: para Tarefa
    • 1003: para subtarefa
    • 1004: para bug
  7. Crie o seguinte mapeamento:
    Entrada Saída
    "{ "IssueTypeId": jira_issue_type_id, "ProjectId": jira_project_id }"
    .TO_JSON()
    .SET_PROPERTY(
    connectorOutputPayload.Description (Fetch Salesforce Data),  
    "Description"
    )
    .SET_PROPERTY(
    connectorOutputPayload.Subject (Fetch Salesforce Data),  
    "Summary"
    )
                 
    connectorInputPayload (Create issue in Jira)

    Quando o mapeamento for concluído, feche o painel. Todas as alterações serão salvas automaticamente.

  8. Adicione uma conexão de borda da tarefa Mapeamento para criação de problemas ao conector Criar problema no Jira.

Criar incidente do ServiceNow

Se o caso extraído do Salesforce for do tipo: Sales, encaminhe-o para o ServiceNow como um novo incidente.

Conectar ao ServiceNow

Siga estas etapas para configurar uma tarefa do Conectores que cria um novo incidente na sua instância do ServiceNow:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e coloque o elemento Conectores no editor de integração.
  3. Clique no elemento de tarefa dos Conectores no designer para ver o painel de configuração da tarefa dos Conectores.
  4. Clique em e renomeie os Conectores como Create incident in ServiceNow.
  5. Clique em Configurar conector.
  6. Faça o seguinte na página Editor de tarefas de conectores:
    1. Em Selecionar conexão, escolha a região us-central1.
    2. Selecione sua conexão do ServiceNow na lista de conexões disponíveis.
    3. Clique em Próxima.
    4. Em Tipo, escolha Entidades.
    5. Em Definir entidades/ações, selecione incident na lista de entidades disponíveis e escolha Criar como a Operação.
    6. Clique em Concluído para concluir a configuração da conexão e feche o painel.

Transformar e mapear detalhes do incidente

Para transformar os detalhes do caso e mapeá-los para um incidente do ServiceNow, faça o seguinte:

  1. No editor de integração, clique em Tarefas para mostrar uma lista de tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Mapeamento de dados no designer para conferir o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados para Mapping for incident creation.
  5. Clique em Abrir editor de mapeamento de dados.
  6. Clique em + Adicionar nova variável e crie as seguintes variáveis de entrada:
  7. Crie o seguinte mapeamento:
    Entrada Saída
    "{}"
    .TO_JSON()
    .SET_PROPERTY(
    connectorOutputPayload.Description (Fetch Salesforce Data),  
    "description"
    )
    .SET_PROPERTY(
    connectorOutputPayload.Subject (Fetch Salesforce Data),  
    "short_description"
    )
                 
    connectorInputPayload (Create incident in ServiceNow)

    Quando o mapeamento for concluído, feche o painel. Todas as alterações serão salvas automaticamente.

  8. Adicione uma conexão de borda da tarefa Mapeamento para criação de incidentes ao conector Criar incidente no ServiceNow.

Adicionar condição de borda

Com uma condição de borda, é possível especificar as condições que precisam ser atendidas para que o controle de uma integração seja transmitido para a tarefa conectada pela borda. Agora que você adicionou e configurou as tarefas necessárias, é possível adicionar uma condição de borda para definir o fluxo da integração.

A condição de limite a seguir controla o fluxo da integração com base no tipo de caso do Salesforce:

  1. Adicione uma conexão de borda da tarefa Get case type à tarefa Mapping for issue creation com a seguinte condição de borda:
      $sf_case_type$ = "Engineering"
  2. Adicione outra conexão de borda da tarefa Get case type à tarefa Mapping for incident creation com a seguinte condição de borda:
      $sf_case_type$ = "Sales"

Exemplo de fluxo de integração

A figura a seguir mostra um exemplo de layout da integração criada usando este tutorial.

Imagem de exemplo mostrando o fluxo de integração Imagem de exemplo mostrando o fluxo de integração

Publicar e testar a integração

Para publicar a integração, clique em Publicar na barra de ferramentas do editor de integração.

Após a publicação da integração, você poderá ver e inspecionar os registros de execução da integração publicada. Para ver os registros, clique em imagem mostrando o ícone de registros de execuçãoExibir registros de execução para esta integração. A página Registros de execução é exibida.

Caso de teste 1: para verificar se um problema do Jira foi criado para um caso de engenharia

Teste a integração fazendo login na instância do Salesforce e criando um novo caso. Insira Engineering no campo Tipo ao criar o caso.

Para verificar o sucesso da sua integração:

Acesse sua conta do Jira Cloud.

  • Verifique se um novo problema foi criado no seu projeto com a descrição e o resumo do caso do Salesforce.

Caso de teste 2: verificar se um incidente do ServiceNow foi criado para um caso de vendas

Teste a integração fazendo login na instância do Salesforce e criando um novo caso. Insira Sales no campo Tipo ao criar o caso.

Para verificar o sucesso da sua integração:

Acesse sua instância do ServiceNow.

  • Verifique se um novo incidente foi criado na sua instância com a descrição e o resumo do caso do Salesforce.

Limpar

Para evitar cobranças na sua conta do Google Cloud pelos recursos usados neste tutorial, cancele a publicação da integração e exclua as conexões criadas no Integration Connectors.

  • Para cancelar a publicação dessa integração, clique em Cancelar publicação na barra de ferramentas do editor de integração. Consulte Excluir integrações para mais informações.
  • Para saber como excluir uma conexão, consulte Gerenciar conectores.