Automatize as atribuições de roteamento de casos do Salesforce


Neste tutorial, descrevemos um caso de uso sobre como usar a Application Integration para automatizar o fluxo do 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 de conectores para conexões do Salesforce, Jira Cloud e ServiceNow.
  • Adicione e configure tarefas de mapeamento de dados para extrair e mapear detalhes do caso.

Custos

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

As instruções deste tutorial foram projetadas para manter seu 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. Faça login na sua conta do Google Cloud. Se você começou a usar o Google Cloud agora, crie uma conta para avaliar o desempenho de nossos produtos em situações reais. Clientes novos também recebem US$ 300 em créditos para executar, testar e implantar cargas de trabalho.
  2. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  3. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  4. Crie uma conta de serviço:

    1. No Console do Google Cloud, acesse a página Criar conta de serviço.

      Acesse "Criar conta de serviço"
    2. Selecione o projeto.
    3. No campo Nome da conta de serviço, insira um nome. O Console do Google Cloud preenche o campo ID da conta de serviço com base nesse nome.

      No campo Descrição da conta de serviço, insira uma descrição. Por exemplo, Service account for quickstart.

    4. Clique em Criar e continuar.
    5. Conceda os papéis a seguir à conta de serviço: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager)

      Para conceder um papel, encontre a lista Selecionar um papel e escolha uma opção.

      Para conceder outros papéis, clique em Adicionar outro papel e adicione cada papel adicional.

    6. Clique em Continuar.
    7. Clique em Concluído para terminar a criação da conta de serviço.

  5. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um projeto do Google Cloud.

    Acessar o seletor de projetos

  6. Verifique se a cobrança está ativada para o seu projeto do Google Cloud.

  7. Crie uma conta de serviço:

    1. No Console do Google Cloud, acesse a página Criar conta de serviço.

      Acesse "Criar conta de serviço"
    2. Selecione o projeto.
    3. No campo Nome da conta de serviço, insira um nome. O Console do Google Cloud preenche o campo ID da conta de serviço com base nesse nome.

      No campo Descrição da conta de serviço, insira uma descrição. Por exemplo, Service account for quickstart.

    4. Clique em Criar e continuar.
    5. Conceda os papéis a seguir à conta de serviço: Secret Manager Viewer (roles/secretmanager.viewer), Secret Manager Secret Accessor (roles/secretmanager)

      Para conceder um papel, encontre a lista Selecionar um papel e escolha uma opção.

      Para conceder outros papéis, clique em Adicionar outro papel e adicione cada papel adicional.

    6. Clique em Continuar.
    7. Clique em Concluído para terminar a criação da conta de serviço.

Prepare o ambiente

Verificar a configuração de 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 alterados (CDC) está ativada na conta. Saiba como criar uma nova conta em Configurar um usuário de integração.

Verificar a conta do Jira Cloud

Neste tutorial, usamos o Jira Cloud. Você pode usar sua conta atual 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 de desenvolvedor pessoal (PDI) gratuita do ServiceNow. É possível usar a instância do ServiceNow existente ou criar uma nova. Verifique se a instância está ativa e anote o URL dela. Para mais informações sobre PDI, consulte a documentação do ServiceNow PDI.

Configurar conexões

Para este tutorial, é preciso configurar as seguintes conexões nos Conectores de integração:

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

Configurar o gatilho de integração

Depois de criar a integração, é possível adicionar e configurar um gatilho de integração que invoque 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 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 coloque o elemento acionador do Salesforce no editor de integração.
  3. Selecione o elemento Trigger 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 Add Salesforce instance configuration, 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 Add Salesforce channel, 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 acionador do Salesforce, extrai o ID do caso e o mapeia para um conector do Salesforce para recuperar mais detalhes.

Conectar-se à conta do Salesforce

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

  1. No editor de integração, clique em Tarefas para exibir 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 o painel de configuração da tarefa Conectores.
  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 escolha Obter 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 acionador 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 exibir 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 da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados como 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. Associe a variável de entrada do acionador (SalesforceTriggerCdcRecordID) à variável de entrada entityId(Fetch Salesforce Data) do conector gerado automaticamente.

    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 Salesforce à tarefa Ver ID do caso.
  8. Adicione uma conexão de borda da tarefa Ver ID do caso ao conector Buscar dados do Salesforce.

Extrair tipo de ocorrência

Depois de recuperar todos os detalhes do caso do conector do Salesforce, extraia o tipo de caso e o encaminha 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 exibir uma lista das tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Data Mapping no designer para visualizar o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados como 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 dados
    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 Ver tipo de caso.

Criar novo problema do Jira

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

Conectar ao projeto do Jira

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

  1. No editor de integração, clique em Tarefas para exibir 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 Editor de tarefas de conectores:
    1. Em Selecionar conexão, escolha a região us-central1.
    2. Selecione sua conexão 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 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 de problemas

Para transformar e mapear os detalhes do caso em um problema do Jira, faça o seguinte:

  1. No editor de integração, clique em Tarefas para exibir uma lista das tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Data Mapping no designer para visualizar o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados como 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 dados 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 destes ID de tipo de problema:
    • 1000: para Epic
    • 1001: para Story
    • 1002 - para Task
    • 1003 para Subtarefa
    • 1004 - para Bug
  7. Crie o mapeamento a seguir:
    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.

Conecte-se ao ServiceNow

Siga as etapas abaixo para configurar uma tarefa Connectors que cria um novo incidente para sua instância do ServiceNow:

  1. No editor de integração, clique em Tarefas para exibir 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 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 incidente 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 exibir uma lista das tarefas disponíveis.
  2. Clique e posicione o elemento Mapeamento de dados no editor de integração.
  3. Clique no elemento Data Mapping no designer para visualizar o painel de configuração da tarefa.
  4. Clique em e renomeie a tarefa Mapeamento de dados como 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 mapeamento a seguir:
    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 passe para a tarefa conectada pela borda. Agora que você adicionou e configurou as tarefas necessárias, pode adicionar uma condição de borda para definir o fluxo da integração.

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

  1. Adicione uma conexão de borda da tarefa Ver tipo de caso à tarefa Mapear para a criação de problemas com a seguinte condição de borda:
      $sf_case_type$ = "Engineering"
  2. Adicione outra conexão de borda da tarefa Obter 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 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 acessar 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: 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 caso. Insira Engineering no campo Type ao criar o caso.

Para verificar o sucesso da sua integração:

Acesse sua conta do Jira Cloud.

  • Confirme 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 caso. Insira Sales no campo Type ao criar o caso.

Para verificar o sucesso da sua integração:

Acesse sua instância do ServiceNow.

  • Confirme se um novo incidente foi criado na sua instância. Ele contém 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 nos Integration Connectors.

  • Para cancelar a publicação da 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 informações sobre como excluir uma conexão, consulte Gerenciar conectores.