Integração de voz do Salesforce com o NiCE CXone

Arquitetura da integração do Agent Assist e do NiCE CXone com o Salesforce

Esta integração de voz usa a app Salesforce NiCE CXone Agent for Service Cloud Voice (BYOT) para permitir que os seus agentes aceitem chamadas do NiCE CXone no Salesforce Service Cloud Voice.

O Agent Assist usa o fluxo de chamadas de voz do NiCE CXone Agent Assist Hub para fornecer sugestões aos seus agentes na Salesforce Lightning Service Console.

Antes de começar

Para integrar os módulos da IU do Agent Assist com o Salesforce, precisa de acesso aos seguintes recursos:

  • Node.js

    Siga as instruções de instalação recomendadas para o seu sistema operativo.

  • CLI do Salesforce

    Siga as instruções de instalação recomendadas para o seu sistema operativo.

  • CLI do Google Cloud

    Instale o comando gcloud conforme indicado e autentique-se através do comando gcloud auth login.

  • IU do Salesforce

    1. Inicie sessão no URL da sua instância ou na página de início de sessão do Salesforce e tenha em atenção o seguinte:
    2. O URL do Meu domínio do Salesforce. Siga estes passos para encontrar o URL do meu domínio:
    3. Navegue para a barra de menu > menu Configuração.
    4. Clique em Configurar.
    5. Na caixa Localização rápida, introduza O meu domínio. O nome do domínio está no seguinte formato: MY-DOMAIN-NAME.develop.my.salesforce.com.
    6. O ID da sua organização do Salesforce. Siga estes passos para encontrar o ID da organização:
    7. Navegue para a barra de menu > menu Configuração.
    8. Clique em Configurar.
    9. Na caixa Localização rápida, introduza Informações da empresa.
  • Back-end de integração do Agent Assist

    1. Siga as instruções para configurar a integração.
    2. Antes de executar o script de implementação, configure as seguintes variáveis de ambiente com deploy.sh ou num ficheiro .env na raiz do projeto:
    3. AUTH_OPTION: defina esta opção como SalesforceLWC.
    4. SALESFORCE_DOMAIN: um nome de domínio semelhante a YOUR_SUBDOMAIN.develop.lightning.force.com. Anotou este valor no pré-requisito da IU do Salesforce. Tenha em atenção que não deve incluir https://.
    5. SALESFORCE_ORGANIZATION_ID: reparou neste valor no pré-requisito da IU do Salesforce.
  • Uma instância do NICE CXone

  • Uma licença do suplemento NiCE CXone Agent Assist Hub

    O suplemento NiCE CXone Agent Assist Hub permite que a sua instância do NiCE CXone envie streams de multimédia de chamadas de voz para o Agent Assist da Google Cloud. O NiCE CXone é um produto licenciado. Estão disponíveis mais detalhes na documentação do hub do agente do NiCE CXone Agent Assist.

Passo 1: configure o NiCE CXone Studio e o NiCE CXone Agent Assist Hub

Este passo descreve toda a configuração necessária na sua instância do NiCE CXone.

Configure o fluxo de chamadas com o NiCE CXone Studio

Neste passo, vai configurar um fluxo de chamadas programático com o NiCE CXone Studio para encaminhar as chamadas recebidas para os seus agentes e enviar os streams de multimédia de chamadas para o Agent Assist. Configure este fluxo de chamadas com os seguintes acionadores e ações do NiCE CXone Studio, por esta ordem:

  1. Inicie sessão na consola do NiCE CXone.
  2. Abra o menu Aplicações ().
  3. Abra o Encaminhamento omnicanal > Studio.
  4. Na página do Studio, crie um novo guião.

Configure este fluxo de chamadas com os seguintes acionadores e ações do NiCE CXone Studio:

  1. Início: este acionador é ativado quando recebe uma chamada no seu número de telefone do ponto de contacto (POC) do NiCE.
  2. Reqagent: esta ação envia a chamada para uma capacidade especificada. Selecione a competência associada aos agentes que quer que recebam chamadas.
  3. Música: esta ação toca música de espera.
  4. Aguardar: esta ação suspende o fluxo até que outro acionador seja ativado.

Em separado, mas no mesmo fluxo do Studio, configure o que acontece quando um agente atende a chamada recebida.

  1. Onanswer: este acionador é ativado quando um agente na capacidade.
  2. Ziptone: emite um sinal sonoro quando um agente atende o telemóvel num computador de agente do NiCE CXone (como o softphone do NiCE CXone Agent for Service Cloud Voice [BYOT]).
  3. Agente de assistência: esta ação é responsável por criar uma conversa e enviar as streams de multimédia de uma chamada recebida para o Dialogflow, para que os módulos LWC da IU do Agente de assistência possam renderizar a transcrição e as sugestões do Agente de assistência (como PGKA, GKA e preparação com IA) no Salesforce. Consulte esta documentação de integração para ver detalhes de configuração. Nota: este passo requer um perfil de conversa pré-configurado.

Também pode configurar o Agent Assist para chamadas efetuadas. A integração requer o acionamento da ação Agent Assist quando uma chamada de saída é atendida pela parte remota. Embora a implementação exata dependa da sua configuração, isto pode ser normalmente alcançado no script através da ação Placecall para iniciar a chamada e associando a ação Agent Assist ao ramo OnAnswer de Placecall. Consulte a documentação de ajuda do NiCE CXone Studio para Placecall, Onanswer e Agent Assist para mais informações.

Tome nota dos detalhes da conta do NiCE CXone

Siga este passo para recolher os detalhes da sua conta do NiCE CXone. Vai precisar destas informações para configurar o agente do NiCE CXone para o Service Cloud Voice (BYOT) no Salesforce mais tarde.

  • Tome nota do número da sua unidade empresarial da NiCE na consola do NiCE CXone. No seu projeto do Salesforce (que vai clonar num passo futuro), em ServiceCloudVoicePlatformService.js, atualize CONFIG.niceBusNo para refletir o número da sua unidade empresarial da NiCE. Isto permite que os módulos LWC da IU do Agent Assist determinem o conversationName que o NiCE CXone Agent Assist Hub cria (consulte o método generateNiCEConversationName no mesmo ficheiro para obter detalhes).
  • Tome nota do número de telefone do ponto de contacto (POC) do NiCE na consola do NiCE CXone. Este é o número para o qual os seus clientes vão ligar para falar com os seus agentes e que vai usar para testar esta integração do Agent Assist.

Passo 2: configure o seu projeto de desenvolvimento do Salesforce

Para começar a integrar os módulos da IU do Agent Assist, siga estes passos.

  1. Execute o seguinte código para clonar o repositório de integração do Agent Assist e abrir o seu projeto:

    git clone https://github.com/GoogleCloudPlatform/agent-assist-integrations
    cd salesforce/aa-lwc
    
  2. Execute os seguintes comandos para transferir os ficheiros JavaScript dos módulos da IU, que implementa mais tarde como recursos estáticos. O Salesforce requer que os recursos estáticos carreguem JavaScript de terceiros.

    npm run generate-static-resources
    npm install
    
  3. Atualize ServiceCloudVoicePlatformService.js com o número da unidade empresarial da NiCE que anotou num passo anterior:

    const CONFIG = {
    // For this.platform = "servicecloudvoice-nice", the NiCE Business Unit Number
    // https://help.nicecxone.com/content/acd/businessunits/managebusinessunit.htm
    niceBusNo: 1234567 // Make sure this matches your NiCE CXone Business Unit Number.
    };
    

Passo 3: configure o seu ambiente do Salesforce

Pode integrar módulos da IU do Agent Assist num ambiente específico, como produção ou desenvolvimento. O Salesforce chama a estes ambientes organizações.

Configure a sua organização com a CLI do Salesforce

Siga estes passos para usar a CLI do Salesforce para configurar a sua organização para a integração do Agent Assist.

  1. Execute o seguinte código e autentique a CLI com os detalhes de início de sessão do Salesforce que usa normalmente.

    npm run login
    
  2. Execute o seguinte código para implementar o LWC na organização.

    npm run deploy
    

Passo 4: crie uma app cliente externa

O LWC do Salesforce usa o fluxo OAuth 2.0 de credenciais de cliente para a sua autenticação. Uma app cliente externa ativa o fluxo de credenciais do cliente. Use a chave de consumidor e o segredo do consumidor da app para configurar o LWC do Salesforce para autenticar utilizadores com o Salesforce.

  1. Navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração.
  2. Na caixa Localização rápida, introduza Gestor de apps de cliente externas.
  3. Clique em Gestor de apps de cliente externas > Nova app de cliente externa > Criar e, de seguida, introduza as seguintes informações.
  4. Nome da app cliente externa: lwc auth
  5. Nome da API: lwc_auth
  6. Email de contacto: your_email@example.com
  7. API (ativar definições OAuth) > Ativar OAuth: selecionado
  8. API (Enable OAuth Settings) > Callback URL: https://login.salesforce.com/services/oauth2/callback
  9. API (ativar definições de OAuth) > Âmbitos de OAuth selecionados: aceder ao serviço de URL de identidade
  10. API (ativar definições OAuth) > Ativar fluxo de credenciais do cliente: selecionado
  11. Clique em Criar.
  12. Navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração.
  13. Na caixa Localização rápida, introduza Gestor de apps de cliente externas.
  14. Clique no nome da app cliente externa > Editar.
  15. Navegue para Políticas de OAuth > Fluxos de OAuth e melhorias da app cliente externa.
  16. Certifique-se de que a opção Ativar fluxo de credenciais de cliente está selecionada.
  17. Em Executar como, introduza o seu nome de utilizador de início de sessão.
  18. Clique em Guardar.
  19. Navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração. Na caixa Localização rápida, introduza Gestor de apps de cliente externas.
  20. Clique no nome da app cliente externa > Editar.
  21. Navegue para Definições do OAuth > Definições da app > Chave e segredo do consumidor.
  22. Introduza o código de validação enviado para o seu email.
  23. Copie a chave de consumidor e o segredo do consumidor para um local seguro. Vai precisar destas informações para um passo posterior.

Estabeleça políticas de segurança de conteúdos e CORS

  1. Navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração.
  2. Na caixa Localização rápida, introduza CORS e, de seguida, clique em Editar.
    1. Selecione Ativar CORS para pontos finais OAuth.
    2. Clique em Guardar.
  3. Navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração.
  4. Na caixa Localização rápida, introduza URLs fidedignos e, de seguida, clique em Novo URL fidedigno.
  5. Introduza as seguintes informações:
    1. Nome da API: ui_connector
    2. URL: introduza o URL do ponto final do serviço do Cloud Run do conector da IU que implementou com o back-end de integração do Agent Assist. Pode encontrar este URL na consola do Cloud Run. Por exemplo: https://UI_CONNECTOR_SUBDOMAIN.GCP_REGION.run.app.
    3. Diretivas CSP: selecione todas as caixas de verificação.
    4. Clique em Guardar e novo.
  6. Introduza as seguintes informações:
    1. Nome da API: ui_connector_wss
    2. URL: introduza o URL do ponto final do serviço do Cloud Run do conetor da IU que implementou com o back-end de integração do Agent Assist. Pode encontrar este URL na consola do Cloud Run. Altere o protocolo para wss para tráfego de WebSockets. Por exemplo: wss://UI_CONNECTOR_SUBDOMAIN.GCP_REGION.run.app.
    3. Diretivas CSP: selecione todas as caixas de verificação.
    4. Clique em Guardar e novo.
  7. Introduza as seguintes informações:
    1. Nome da API: salesforce_domain
    2. URL: introduza o URL do seu domínio do Salesforce no seguinte formato: https://YOUR_SUBDOMAIN.my.salesforce.com.
    3. Diretivas CSP: selecione todas as caixas de verificação.
    4. Clique em Guardar.

Passo 5: instale o NiCE CXone Agent para o Service Cloud Voice (BYOT)

O Salesforce fornece a licença do suplemento Service Cloud Voice, que permite a integração de softphones de terceiros com a sua instância do Salesforce. O NICE CXone oferece um suplemento do Service Cloud Voice denominado NICE CXone Agent for Service Cloud Voice (BYOT). Siga a documentação da NiCE para configurar o NiCE CXone Agent para o Service Cloud Voice (BYOT) na sua instância do Salesforce com o SCV ativado.

Passo 6: instale o componente Web do Lightning do Salesforce

Siga estes passos para usar o Editor do Lightning Experience para adicionar o componente Web do Salesforce Lightning à página de contacto onde o NiCE CXone Agent for Service Cloud Voice (BYOT) é aberto quando recebe uma nova chamada.

  1. Navegue para a Service Console.
  2. Inicie sessão no NiCE CXone Agent for Service Cloud Voice (BYOT) na barra de utilidades.
  3. Ligue para o número do POC da NiCE associado à conta da NiCE com a qual iniciou sessão.
  4. Aceite a chamada recebida. Isto deve resultar na abertura de um novo separador de registo de chamadas de voz.
  5. Clique no menu Configuração > Editar página.
  6. Clique em Modelo > Alterar.
    1. Selecione Cabeçalho e Duas regiões iguais.
    2. Clicar em Seguinte.
    3. Mapeie cada região para uma nova região.
    4. Clique em Concluído.
  7. Na barra lateral Componentes, mova o elemento agentAssistContainerModule para a barra lateral. Nota: o comando npm deploy forneceu este componente.
  8. Clique no componente que colocou no passo anterior e preencha os campos do formulário da seguinte forma para adicionar detalhes de configuração.
    • ponto final: o URL do conector da IU do back-end de integração. Por exemplo, um URL da consola do Cloud Run, como: https://UI_CONNECTOR_ENDPOINT.GCP_REGION.run.app.
    • funcionalidades: funcionalidades do Assistente do agente a incluir. Estas têm de estar ativadas no seu perfil de conversa. Algumas funcionalidades disponíveis incluem CONVERSATION_SUMMARIZATION,KNOWLEDGE_ASSIST_V2 e AGENT_COACHING. Tenha em atenção que algumas funcionalidades, como SMART_REPLY, não estão disponíveis para voice.
    • channel: indica que a integração é voice.
    • plataforma: indique que a plataforma é servicecloudvoice-nice.
    • conversationProfile: o nome do recurso do perfil de conversa do Assistente do agente. Por exemplo, projects/GCP_PROJECT_ID/locations/GCP_REGION/conversationProfiles/CONVERSATION_PROFILE_ID.
    • consumerKey: a chave de consumidor da app cliente externa do passo 4.
    • consumerSecret: o segredo do consumidor da app cliente externa do passo 4.

Passo 7: teste a integração

Pode testar a integração de voz com uma chamada de teste para o centro de chamadas do Salesforce.

  1. Inicie sessão no NiCE CXone Agent for Service Cloud Voice (BYOT) a partir do widget omnicanal na barra de utilidades da Service Console.
  2. Ligue para o número do POC do NiCE CXone. Pode encontrá-lo na consola do NiCE CXone.
  3. Na Service Console, aceite a chamada recebida. O ecrã deve abrir um novo registo de chamada de voz.
  4. No registo de chamadas de voz, o componente Web do Salesforce Lightning deve ser carregado na barra lateral.
  5. Teste ambos os lados da conversa, garantindo que a transcrição e as funcionalidades do Agent Assist estão a funcionar conforme as configurou no seu perfil de conversa na consola do Agent Assist.