Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo explica como criar e conectar um Bot Salesforce Einstein a um agente do Copilot Studio. Ao integrar essas plataformas, você pode aprimorar a experiência do agente com as funcionalidades combinadas de ambas.
Nesse padrão de integração, o Bot do Einstein serve como interface e usa o Copilot Studio como um mecanismo de fallback através do tópico Confuso do Einstein. Em vez de mapear intenções entre as duas plataformas, o Bot Einstein encaminha qualquer consulta de usuário que não entenda para o Copilot Studio. O Copilot Studio processa a consulta e retorna uma resposta. Esse modelo de solicitação/resposta significa que o Copilot Studio fornece respostas baseadas em IA com base na consulta do usuário.
Bot do Einstein controla totalmente a entrega do agente para um agente humano. Essa implementação não escuta eventos de entrega do Copilot Studio. Você configura gatilhos de escalonamento diretamente no Einstein para rotear conversas para filas de Omnicanal do Salesforce.
Pré-requisitos
Antes de começar, verifique se você tem:
- Uma conta do Salesforce com bots do Einstein habilitados.
- Uma conta do Copilot Studio.
- Permissões de administrador ou desenvolvedor no Salesforce e no Microsoft Power Platform.
Etapa 1: recuperar o segredo da Linha Direta para seu agente
- No Copilot Studio, abra seu agente e vá para Configurações.
- Selecione Segurança>Segurança de canal da Web.
- Em Segredos e tokens, copie o Segredo 1 ou o Segredo 2.
Importante
Essa integração só dá suporte a agentes do Copilot Studio configurados sem autenticação. Fontes de conhecimento autenticadas, como o SharePoint, não têm suporte com essa abordagem.
Tip
Implantação automatizada: se você tiver a CLI do Salesforce instalada, poderá usar os scripts de implantação automatizados para concluir as etapas 2 a 5. Após a conclusão do script, siga os prompts para configurar o segredo da Linha Direta. Em seguida, pule para a Etapa 6: Configurar o bot do Einstein. Se você quiser configurar manualmente, continue para a Etapa 2.
Etapa 2: Definir configurações de site remoto do Salesforce
- Entre com sua conta do Salesforce.
- Vá para Instalação.
- Em Localização Rápida, insira Configurações de Site Remoto e selecione Configurações de Site Remoto.
- Adicione um novo site remoto, insira DirectLine para Nome do Site Remoto e insira https://directline.botframework.com a URL do Site Remoto.
- Clique em Salvar.
Observação
Para outras regiões, use a URL apropriada para a URL da DirectLine API. Consulte a referência da Direct Line API para endpoints regionais.
Etapa 3: criar Classes do Apex para conectar-se à DirectLine API
No Salesforce, vá para a Instalação.
Em Localização Rápida, insira classes Apex.
Crie as seguintes classes Apex copiando o código-fonte do exemplo de integração do Salesforce:
-
DL_GetConversation: inicia uma nova conversa no Direct Line e retorna oconversationId. -
DL_PostActivity: envia uma mensagem de usuário para a conversa por meio da API do DirectLine. -
DL_GetActivity: recupera a resposta do agente, com atraso embutido e lógica de tentativa para lidar com respostas assíncronas.
-
Etapa 4: Configurar uma credencial nomeada para autenticação segura
A Microsoft recomenda usar credenciais nomeadas em vez de codificar segredos em suas classes Apex. As credenciais nomeadas fornecem uma maneira segura de armazenar segredos e são mais fáceis de gerenciar e rotacionar sem modificar o código.
Criar uma credencial externa
- Na Instalação do Salesforce, pesquise credenciais nomeadas e selecione Credenciais Nomeadas.
- Selecione a guia Credenciais Externas .
- Selecione Novo e configure:
-
Rótulo:
Directline -
Nome:
Directline -
Protocolo de autenticação:
Custom
-
Rótulo:
- Clique em Salvar.
Criar uma entidade de segurança
- Na credencial externa que você criou, em Principais, selecione Novo.
- Configurar:
-
Nome do parâmetro:
Directline_Principal -
Número da sequência:
1 -
Tipo de identidade:
Named Principal
-
Nome do parâmetro:
- Clique em Salvar.
- Em Parâmetros de Autenticação, selecione Adicionar.
- Configurar:
-
Nome:
Token - Valor: o seu segredo o Direct Line da Etapa 1
-
Nome:
- Clique em Salvar.
Criar um cabeçalho personalizado
- Na credencial externa, em Cabeçalhos Personalizados, selecione Novo.
- Configurar:
-
Nome:
Authorization -
Valor:
{!'Bearer ' & $Credential.Directline.Token} -
Número da sequência:
1
-
Nome:
- Clique em Salvar.
Criar a credencial nomeada
- Volte para a aba Credenciais Nomeadas.
- Selecione Nova>Nova Credencial Nomeada.
- Configurar:
-
Rótulo:
Directline -
Nome:
Directline -
URL:
https://directline.botframework.com - Habilitado para chamadas: Marcado
-
Credencial Externa: Selecionar
Directline - Gerar cabeçalho de autorização: desmarcado
- Permitir fórmulas no cabeçalho HTTP: verificado
-
Rótulo:
- Clique em Salvar.
Etapa 5: Conceder permissões ao bot
Os Bots do Einstein exigem um conjunto de permissões dedicado para acessar classes Apex e credenciais externas. Você deve conceder ao bot acesso aos componentes que você criou.
Conceder acesso à classe Apex
- Na Instalação do Salesforce, pesquise Conjuntos de Permissões e selecione Conjuntos de Permissões.
- Localize e selecione o conjunto de permissões do Chatbot (nome da API:
sfdc_chatbot_service_permset). - Selecione Acesso à Classe Apex>Editar.
- Adicione as seguintes classes:
DL_GetConversationDL_PostActivityDL_GetActivity
- Clique em Salvar.
Conceder acesso à entidade de segurança da credencial externa
- No conjunto de permissões do Chatbot, selecione Acesso Principal de Credenciais Externas>Editar.
- Adicione
Directline - Directline_Principal. - Clique em Salvar.
Etapa 6: Configurar o bot do Einstein
- No Salesforce, vá para a Instalação.
- Em Localização Rápida, insira Einstein e selecione Bots de Einstein.
- Crie um novo bot do Einstein seguindo as instruções na Documentação do Salesforce Einstein.
Etapa 7: Conectar o Bot do Einstein ao Copilot Studio
No Bot do Einstein, configure dois diálogos para se conectar ao Copilot Studio: a caixa de diálogo Bem-vindo inicia a conversa de Linha Direta. Confused caixa de diálogo encaminha mensagens de usuário não reconhecidas para o Copilot Studio e retorna a resposta.
Configurar a caixa de diálogo Bem-vindo
A caixa de diálogo Bem-vindo inicializa a conversa do Direct Line quando um usuário começa a conversar.
Na caixa de diálogo Boas-vindas, adicione uma etapa de mensagem de saudação (opcional).
Adicione uma etapa de ação com o tipo de ação Apex e o nome da ação Iniciar Conversa DirectLine (
DL_GetConversation).Mapear o ID de conversa de saída para uma variável (por exemplo,
ConversationID). Essa variável é usada por ações subsequentes na caixa de diálogo Confuso.Defina a próxima etapa para o menu principal ou a caixa de diálogo de conversa.
O painel Propriedades da Etapa mostra o mapeamento de variáveis para a ação Iniciar uma Conversa DirectLine.
-
Entrada: Credencial Nomeada: Definida como
Directline(a Credencial Nomeada da Etapa 4) -
Saídas:
-
ID da conversa:
ConversationID(Texto): utilizado pelas ações da caixa de diálogo Confuso. -
Código de resposta:
responseCode(Número): código de status HTTP. -
Mensagem de erro:
errorMessage(Texto): Detalhes do erro se a chamada falhar.
-
ID da conversa:
Tip
Adicione uma etapa condição após essa ação para verificar a responseCode variável. Se o valor não for 200, exiba a mensagem de erro para diagnosticar problemas de conexão durante a instalação.
Configurar a caixa de diálogo Confused
A caixa de diálogo Confusa manipula qualquer mensagem de usuário que Einstein não entende, encaminhando-a para o Copilot Studio.
Adicione uma etapa de Ação com o Tipo de Ação Apex e o Nome da Ação Postar Mensagem no Copilot Studio (
DL_PostActivity).-
Entradas:
-
Mensagem do usuário:
[System] Last Customer Input(obrigatório) -
ID da conversa:
ConversationIDvariável da caixa de diálogo De boas-vindas (obrigatório) - Nome de Usuário, ID do Usuário, Credencial Nomeada: Opcional
-
Mensagem do usuário:
-
Saídas:
-
Código de resposta (
responseCode) [Número] -
Mensagem de erro (
errorMessage) [Texto] -
Marca d'água (
watermark) [Texto]: passado para a próxima ação.
-
Código de resposta (
-
Entradas:
Adicione uma etapa de Ação com Tipo de Ação Apex e Nome da Ação Get Copilot Studio Response (
DL_GetActivity).-
Entradas:
-
ID da conversa:
ConversationID: variável (obrigatório) -
Marca d'água:
watermarkvariável da ação anterior. -
Tentativas máximas:
5(padrão) -
Atraso Inicial (segundos):
5(padrão) -
Credencial Nomeada:
Directline
-
ID da conversa:
-
Saídas:
-
Código de resposta:
responseCode(Número) -
Mensagem:
mcsResponse(Texto): a resposta do agente do Copilot Studio. -
Mensagem de erro:
errorMessage(Texto) - Marca d'água: marca d'água atualizada para uso em chamadas subsequentes.
- Tem mais mensagens: (booliano): indica se há mais mensagens disponíveis.
- É Entrega: (Booliano): indica se o Copilot Studio está solicitando uma entrega do agente.
-
Código de resposta:
-
Entradas:
Observação
A classe DL_GetActivity atraso interno e lógica de repetição para lidar com respostas assíncronas do Copilot Studio. Por padrão, ele aguarda cinco segundos antes da primeira tentativa e tenta novamente até cinco vezes. Você pode personalizar esse comportamento usando os parâmetros opcionais delaySeconds e maxRetries de entrada.
- Adicione uma etapa mensagem para exibir a resposta ao usuário usando a
mcsResponsevariável. - Defina a próxima etapa para aguardar a entrada do cliente para que o loop de conversa continue.
O fluxo de diálogo Confuso completo tem esta aparência:
Etapa 8: Gerenciar transferência do agente
Para habilitar o escalonamento de agente ao vivo, configure os gatilhos de escalonamento diretamente no seu Bot do Einstein. Usando essa configuração, você pode rotear seus usuários para as filas apropriadas do Salesforce Omni-Channel quando precisarem de assistência humana.
Para obter mais informações, consulte a documentação do Salesforce Rotear Conversas de um Bot Avançado.