Esta integração de voz usa a integração do Twilio Open CTI para trazer um centro de chamadas do Twilio Flex para a sua instância do Salesforce.
O Agent Assist usa a stream de multimédia da chamada do Twilio Flex para fornecer sugestões aos seus agentes na consola de serviço do Salesforce Lightning.
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 A Google testou e recomenda o Node.js 18.20.4 com esta integração. Existem problemas de compatibilidade conhecidos com o Node.js 20.18.0. Para obter instruções sobre como instalar versões específicas do Node.js, consulte nvm.
- CLI do Salesforce. Instale através do seguinte comando do terminal:
(sudo) npm install -g @salesforce/cli
- CLI gcloud
Instale o comando
gcloud
conforme indicado e faça a autenticação através do seguinte código:gcloud auth login
- IU do Salesforce
- Inicie sessão no URL da instância ou em login.salesforce.com e tenha em atenção o seguinte:
- O "URL do meu domínio" do Salesforce. Para encontrar esta opção, navegue até à barra de menu > menu Configuração e, de seguida, clique em Configuração. Introduza uma pesquisa de Localização rápida para "O meu domínio". O nome do domínio está no seguinte formato: MY-DOMAIN-NAME.develop.my.salesforce.com.
- O ID da sua organização do Salesforce. Para encontrar esta opção, navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração. Introduza uma pesquisa de Localização rápida para "Informações da empresa".
- Inicie sessão no URL da instância ou em login.salesforce.com e tenha em atenção o seguinte:
- Backend de integração do Agent Assist
- Siga as instruções para configurar a integração.
- 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:AUTH_OPTION
: defina esta opção comoSalesforceLWC
SALESFORCE_DOMAIN
: Um nome de domínio como: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://.SALESFORCE_ORGANIZATION_ID
: reparou neste valor no pré-requisito da IU do Salesforce.
Passo 1: configure o Twilio Flex
O Twilio Flex funciona como o softphone nesta integração. Pode iniciar sessão na consola do Twilio para configurar uma conta do Flex. Visite a página de configuração do Twilio para receber instruções detalhadas sobre como criar uma conta do Flex.
Instale o suplemento do conetor SIPREC
O suplemento do conetor SIPREC permite que a sua conta do Twilio Flex faça bifurcações SIPREC de streams de multimédia de chamadas de voz para o Agent Assist. Siga estes passos para instalar o suplemento do conetor SIPREC.
- Navegue para Página inicial do Twilio > Marketplace > Catálogo > Twilio > Siprec Connector.
- Clique em Instalar > a caixa de verificação de aceitação dos termos de utilização > Instalar.
- No separador Configurar, configure o plug-in da seguinte forma:
- Nome único:
SipRec1
- Servidor de gravação de sessões:
sip:+<GTP-provisioned-phone-number>@216.239.36.145:5672;transport=tls;secure=true;edge=umatilla
- Trabalhe com o seu representante da Google para aprovisionar o número GTP através da documentação de vista geral da integração de telefonia, que tem mais detalhes sobre o processo. Pode ignorar os passos de configuração e validação do SBC, uma vez que já estão concluídos para o conector Siprec da Twilio.
- Nome único:
- Navegue para Twilio Home > Functions and Assets.
- Se Funções e recursos não estiver visível na barra lateral, fixe-o a partir de Explorar produtos.
- Clique em Criar serviço.
- Atribua um nome ao novo serviço
ui-connector-auth
. - No editor apresentado, clique em Adicionar + > Adicionar função.
- Atribua o nome
conversation-name
à função. - Clique em e altere a visibilidade da função para Público.
- Copie e cole todo o conteúdo de
ui-connector-auth.js
do repositório do GitHub no editor. - Clique em Guardar.
- Clique em Implementar tudo.
Configure o IVR com o Flex Studio
A RVI consiste em configurar um fluxo de chamadas programático com o Studio do Twilio para fazer o fork SIPREC da stream multimédia para o Agent Assist. Também faz um HTTP post para partilhar o número de telefone e o ID da conversa com o Agent Assist. Siga estes passos para configurar o IVR com o Flex Studio.
- Navegue para a Twilio Console
- Clique em Desenvolver > Números de telefone > Gerir > Números ativos. Deve existir uma linha na tabela com o número do Twilio predefinido aprovisionado para a sua conta do Flex.
- Na secção Voz – Fluxo de trabalho do Studio, clique em IVR de voz.
- Arraste um widget Fazer pedido HTTP para o fluxo.
- Desligue a funcionalidade Chamada recebida da entrada do widget SendCallToAgent.
- Associe o evento Chamada recebida à entrada do widget Fazer pedido HTTP.
- Configure o widget Fazer pedido HTTP com os seguintes detalhes:
- Nome do widget:
register_twilio
- Método de pedido:
POST
- URL do pedido:
<your-ui-connector-cloud-run-url>.run.app/register-app
- Tipo de conteúdo: application/json
- Corpo do pedido:
{ "accountSid": "<yourTwilioAccountSid>", "authToken": "<yourTwilioAccountAuthToken>" }
- Nome do widget:
- Arraste um widget Executar função para o fluxo.
- Ligue as saídas Success e Fail do widget register_twilio à entrada do widget Run Function.
- Crie um widget com os seguintes detalhes:
- Nome do widget:
conversation_name
- Serviço:
ui-connector-auth
- Ambiente:
ui
- Função:
conversation-name
- Parâmetros da função:
- token:
{{ widgets.register_twilio.parsed.token }}
- endpoint:
<your-ui-connector-cloud-run-url>.run.app/conversation-name
- telemóvel:
{{ trigger.call.From | replace_first:'+','' }}
- conversationName:
projects/<project>/locations/<location>/conversations/TW-{{ trigger.call.From | replace_first:'+','' }}-{{ trigger.call.CallSid }}
- token:
- Nome do widget:
- Arraste um widget Fork Stream da barra lateral para o fluxo.
- Ligue as saídas Success e Fail do widget Make HTTP Request à entrada do widget Fork Stream.
- Ligue o nó Seguinte do widget Dividir stream ao widget SendCallToAgent.
Configure o widget Fork Stream da seguinte forma:
- Ação de stream: iniciar
- Tipo de stream: Siprec
- Nome do conetor:
Siprec1
- Faixas: ambas as faixas
Parâmetros da stream:
- Chave:
conversation
Valor:
projects/<gcp-project-id>/conversations/TW-{{trigger.call.From | replace_first:'+','' }}-{{trigger.call.CallSid}}
- Chave:
Clique em Guardar > Publicar.
Detalhes da conta
Siga este passo para recolher os detalhes da sua conta do Twilio Flex. Precisa destas informações para configurar o Flex CTI no Salesforce mais tarde.
- Navegue para Twilio Home > Account Dashboard e anote as seguintes informações:
- SID da conta
- O meu número de telefone do Twilio
Passo 2: configure o projeto de desenvolvimento
Para começar a integrar os módulos da IU do Agent Assist, siga estes passos.
- 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
- 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 JS de terceiros.
npm run generate-static-resources npm install
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.
- 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
- Execute o seguinte código para implementar o LWC na organização.
npm run deploy
Passo 4: crie uma app associada
O componente Web do Salesforce Lightning usa o fluxo OAuth 2.0 de credenciais de cliente para autenticar o utilizador. Uma aplicação (app) associada ativa o fluxo de credenciais do cliente. Use a chave de consumidor e o segredo do consumidor da app para configurar o LWC de modo a autenticar os utilizadores com o Salesforce.
Configure as definições básicas
- Navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração. Introduza uma pesquisa de Localização rápida para "Gestor de apps".
- Clique em Nova app associada > Criar uma app associada > Continuar e, de seguida, introduza as seguintes informações.
- Nome da app associada:
lwc auth
- Nome da API:
lwc_auth
- Email de contacto:
your_email@example.com
- Ativar definições OAuth:
checked
- URL de retorno de chamada:
https://login.salesforce.com/services/oauth2/callback
- Âmbitos OAuth selecionados: aceda ao serviço de URL de identidade
- Ative o fluxo de credenciais do cliente:
checked
- Nome da app associada:
- Clique em Guardar.
Para mais informações sobre as apps associadas, consulte os seguintes recursos do Salesforce.
- Configure as definições básicas da app associada
- Configure uma app associada para o fluxo de credenciais de cliente OAuth 2.0
Defina a autorização de execução e as credenciais
- Navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração.
- Introduza uma pesquisa de Localização rápida para "Gerir apps associadas".
- Clique no nome da app associada > Editar.
- Navegue para Fluxo de credenciais de cliente.
- Em Executar como, clique na lupa e, de seguida, selecione o seu nome de utilizador.
- Clique em Guardar.
- Navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração.
- Introduza uma pesquisa de Localização rápida para "Gestor de apps".
- Procure
lwc auth
e clique em .- Clique em Ver > Gerir detalhes do consumidor.
- Introduza o código de validação enviado para o seu email.
- Copie a Chave de consumidor e o Segredo do consumidor num local seguro. Precisa destes dados para um passo posterior.
Estabeleça políticas de segurança de conteúdos e CORS
- Navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração.
- Introduza uma pesquisa de Localização rápida para "CORS" e, de seguida, clique em Editar.
- Selecione Ativar CORS para pontos finais OAuth.
- Clique em Guardar.
- Navegue até à barra de menu > Menu de configuração e, de seguida, clique em Configuração.
- Introduza uma pesquisa de Localização rápida para "URLs fidedignos" e, de seguida, clique em Novo URL fidedigno.
- Introduza o nome da API:
ui_connector
- 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
. - Selecione todas as caixas em Diretivas de CSP.
- Clique em Guardar e novo.
- 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:
- Introduza o nome da API:
ui_connector_wss
- 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. Altere o protocolo para wss para tráfego de WebSockets. Por exemplo:
wss://UI_CONNECTOR_SUBDOMAIN.GCP-REGION.run.app
. - Selecione todas as caixas em Diretivas de CSP.
- Clique em Guardar e novo.
- 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. Altere o protocolo para wss para tráfego de WebSockets. Por exemplo:
- Introduza o nome da API:
salesforce_domain
- Introduza o URL do seu domínio do Salesforce no seguinte formato:
https://YOUR_SUBDOMAIN.my.salesforce.com
. - Selecione todas as caixas em Diretivas de CSP.
- Clique em Guardar.
- Introduza o URL do seu domínio do Salesforce no seguinte formato:
Passo 5: instale o plug-in de CTI do Twilio Flex
O Salesforce fornece o Salesforce Open CTI para permitir a integração de softphones de terceiros com a sua instância do Salesforce.
A CTI do Twilio Flex usa a CTI aberta do Salesforce para lhe permitir usar o Flex diretamente na sua instância do Salesforce. Siga as instruções da Twilio para configurar o CTI do Twilio Flex na sua instância do Salesforce.
Passo 6: instale o componente Web do Salesforce Lightning
Siga estes passos para usar o Editor do Lightning Experience para adicionar o componente Web do Lightning do Salesforce à página de contacto onde o CTI do Twilio Flex é aberto quando recebe uma nova chamada.
- Navegue para a Service Console e selecione Contactos.
- Selecione um registo de contacto.
- Clique no menu de configuração > Editar página.
- Clique em Modelo > Alterar.
- Selecione Cabeçalho e Duas regiões iguais.
- Clicar em Seguinte.
- Mapeie cada região para uma nova região.
- Clique em Concluído.
- Na barra lateral Componentes, mova o elemento
agentAssistContainerModule
para a barra lateral. Nota: o comandonpm deploy
forneceu este componente. - 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 conetor 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
eAGENT_COACHING
. Tenha em atenção que algumas funcionalidades, comoSMART_REPLY
, não estão disponíveis paravoice-twilio
. - channel: indicar que a integração é para voz.
- channelType: indique que o tipo de integração de voz é twilio.
- 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 associada do Passo 3.
- consumerSecret: o segredo do consumidor da app associada do Passo 3.
- ponto final: o URL do conetor da IU do back-end de integração. Por exemplo, um URL da consola do Cloud Run, como:
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.
- Inicie sessão no Twilio Flex a partir da consola de serviço do Salesforce.
- Ligue para o seu número do Twilio Flex. Tomou nota disto no passo 1.
- Na consola de serviço do Salesforce, aceite a chamada. O ecrã deve abrir uma página de contacto nova ou existente para o número que ligou.
- Se for uma nova página de contacto, guarde o contacto. Quando a página de contacto é carregada, o componente Web do Salesforce Lightning deve ser carregado na barra lateral.
- Teste ambos os lados da conversa, garantindo que as funcionalidades do Agent Assist estão a funcionar conforme as configurou.