Automatizar atribuições de roteamento de casos do Salesforce


Este tutorial descreve um caso de uso sobre como usar a integração de aplicativos 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 do fluxo de casos do Salesforce

Objetivos

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

  • Configure o Salesforce Trigger 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 dos casos.

Custos

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

As instruções deste tutorial foram criadas para manter o uso de seus 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. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  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. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  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.

Prepare 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 conta tem a captura de dados de alterações (CDC) ativada. Para saber como criar uma conta, consulte Configurar um usuário de integração.

Verificar a conta do Jira Cloud

Neste tutorial, usamos o Jira Cloud. Use sua conta atual do Jira Cloud ou crie uma nova. Verifique se o projeto e as ferramentas 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 de desenvolvedor pessoal (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 correspondente do ServiceNow.

Configurar conexões

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

Conexão com o Salesforce
Configure uma conexão do Salesforce nos Conectores de integração. Para informações sobre como configurar um conector do Salesforce, consulte Conector do Salesforce.
Conexão do Jira Cloud
Configurar uma conexão do Jira Cloud no Integration Connectors usando o URL do projeto para criar problemas do Jira no projeto. Anote os ID do projeto e 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 sua instância para criar incidentes no ServiceNow. Para informações sobre como configurar um conector 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. No menu de navegação, clique em Integrações. A página Integrações será exibida.
  3. Clique em Criar integração e informe 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 com suporte.
    4. Clique em Criar para abrir o editor de integração.

Configurar gatilho de integração

Depois de criar sua integração, você pode adicionar e configurar um gatilho de integração que invoca a integração para um evento identificado.

Neste tutorial, um gatilho do Salesforce é usado para invocar a integração para cada novo caso criado no Salesforce. Para adicionar e configurar um gatilho do Salesforce na sua integração com o 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 coloque 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 do Salesforce.
  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 da 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 payload 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 outros detalhes do caso.

Conecte-se à conta do Salesforce

Siga as etapas a seguir 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 das 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 visualizar a tarefa Conectores painel de configuração.
  4. Clique em e renomeie o rótulo Conectores como 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, em seguida, selecione Acessar como Operação.
    6. Clique em Concluído para concluir a configuração da conexão e feche o painel.

Extrair e mapear o código do caso

Uma tarefa Data Mapping é usada para mapear e extrair os detalhes do caso entre o acionador do Salesforce e o conector do Salesforce.

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

  1. No editor de integração, clique em Tasks para mostrar uma lista das 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 visualizar o painel de configuração de tarefas.
  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 variáveis de mapeamento, consulte Adicionar um mapeamento.

  6. Mapeie o acionador (SalesforceTriggerCdcRecordID) à variável de saída para o conector gerado 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 Acessar o ID do caso.
  8. Adicione uma conexão de borda da tarefa Pegar o 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 o 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 Tasks para mostrar uma lista das 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 Buscar tipo de caso.

Criar um novo problema no Jira

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

Conecte-se ao projeto Jira

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

  1. No editor de integração, clique em Tasks para mostrar uma lista das 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 do 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 Issues na lista de entidades disponíveis e Create como Operation.
    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 das 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 visualizar o painel de configuração de tarefas.
  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 qualquer um dos seguintes IDs de tipo de problema:
    • 1000: para Epic
    • 1001: para história
    • 1002: Tarefa
    • 1003: para subtarefa.
    • 1004: 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 novo 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

Execute as etapas a seguir para configurar uma tarefa de Conectores que cria um novo incidente para sua instância do ServiceNow:

  1. No editor de integração, clique em Tasks para mostrar uma lista das 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 do Editor de tarefas de conectores:
    1. Em Selecionar conexão, escolha a região us-central1.
    2. Selecione sua conexão ServiceNow na lista de conexões disponíveis.
    3. Clique em Próxima.
    4. Em Type, escolha Entities.
    5. Em Definir entidades/ações, selecione incidente na lista de entidades disponíveis e, depois, Criar como 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 das 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 visualizar o painel de configuração de tarefas.
  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

Uma condição de borda permite 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, adicione uma condição de borda para definir o fluxo da integração.

A seguinte condição de borda controla o fluxo da integração com base no tipo de caso do Salesforce:

  1. Adicione uma conexão de borda da tarefa Ver tipo de caso à tarefa Mapeamento para criação de problemas com a seguinte condição de borda:
      $sf_case_type$ = "Engineering"
  2. Adicione outra conexão de borda da tarefa Ver tipo de caso à tarefa Mapeamento para criação de incidentes 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 Exemplo de imagem mostrando o fluxo de integração

Publique e teste 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 acessar os registros, clique em imagem mostrando o ícone de registros de execuçãoAcessar os registros de execução para esta integração. A página Registros de execução é exibida.

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

Para testar a integração, faça login na instância do Salesforce e crie um novo caso. Insira Engineering no campo Type 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

Para testar a integração, faça login na instância do Salesforce e crie um novo caso. Insira Sales no campo Type 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, desative a integração e exclua as conexões criadas em "Conectores de integração".

  • 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.