Neste artigo
dropdown icon
Visão geral
    Voz em nuvem do Webex Contact Center para serviço Salesforce
    Pré-requisitos e limitações
    Licenças
    Ativar todo-canal
    Limitações
dropdown icon
Requisitos
    Códigos inativos
dropdown icon
Integrar
    Instalação
    Instalar e configurar o Webex Contact Center para o serviço de voz em nuvem
    Atribuir status de presença aos agentes
dropdown icon
Configuração
    Centro de contatos
    Importar o Contact Center
    Configurar o centro de contatos
dropdown icon
Personalizar
    Aplicativo de cliente externo para integração do Webex Contact Center
    Configuração e script do Webex Contact Center para criar registros de chamadas de voz
Permissões do Salesforce exigidas pela função do usuário
dropdown icon
Wrapper da API de voz em nuvem de serviço
    Pré-requisitos
    Usar o wrapper da API de voz em nuvem de serviço
    Recuperar o Access_Token
    Executar as solicitações
    Criar chamada de voz (seção)
    Atualizar chamada de voz
    Executar Omni-flow
    Limpar roteamento
dropdown icon
Traduções de números de telefone
    Criando regras de tradução
dropdown icon
Configuração da página do VoiceCall
    Configurar a página de gravação do VoiceCall
    Exibir o componente Motivo de conclusão
    Exibir o reprodutor de gravações de chamadas
dropdown icon
Administradores Webex
    Configuração do fluxo
Integrar o Webex Contact Center com a voz em nuvem do serviço Salesforce
list-menuNeste artigo
list-menuComentários?

O Webex Contact Center para o serviço do Salesforce Cloud Voice integra o robusto CCaaS da Cisco (Contact Center as a Service) com o CRM do Salesforce, permitindo que as empresas gerenciem interações omnicanal com o cliente (voz, digital) na interface do Salesforce, usando a IA do Webex para agentes virtuais, transcrição e roteamento inteligente, transformando agentes em "superagentes" com dados unificados para melhores experiências do cliente.

Visão geral

Voz em nuvem do Webex Contact Center para serviço Salesforce

O Webex Contact Center para Service Cloud Voice é uma solução de integração pronta que leva o poder do Webex Contact Center para o console de agente omnicanal do Salesforce Service Cloud Voice.

Antes de prosseguir com a instalação, consulte a seguinte seção:

para saber mais sobre os pré-requisitos e limitações do Salesforce Service Cloud Voice e garantir que sua organização do Salesforce esteja pronta para ativar e instalar o pacote Webex Contact Center para Service Cloud Voice.

Pré-requisitos e limitações

Pré-requisitos (subtópico)

Interfaces de usuário: A voz da nuvem de serviço está disponível apenas no Salesforce Lightning Experience.

O serviço de voz em nuvem está disponível nestas edições.

  • Empresa
  • Ilimitado
  • Desenvolvedor

Licenças

  • Os clientes precisam comprar a nova licença de complemento A-SF-VOICE por agente conectado, além das licenças Flex 3 padrão ou Premium do Webex Contact Center. Para obter mais informações, consulte o guia de pedidos do Flex 3.

  • Voz do Salesforce para telefonia do parceiro

Antes de ativar o Voice, você precisa configurar os serviços de pré-requisitos em sua organização.

  • Navegue até Informações da empresa > Licença de definição de permissão
    • Verifique o Usuário de voz em nuvem de serviço (Telefonia de parceiros).

      Todas as Edições do desenvolvedor agora vêm com 5 Licenças de telefonia do parceiro disponíveis para teste.

  • Como alternativa, você pode verificar isso acessando a Configuração do Salesforce e pesquisando "voice" na barra lateral esquerda.

    • Se "Centros de contatos de telefonia do parceiro" aparecer, você tem a licença SCV.
    • Se a opção de "Centros de contatos de telefonia do parceiro" não estiver visível, então "Ativar voz de serviço em nuvem" seguindo as etapas abaixo.
      • Vá até a configuração do Salesforce, pesquise, selecione "Configuração de telefonia do parceiro" e alterne o botão para "Ativar voz de nuvem de serviço".

      • Ative o Omni-Channel para permitir que seus agentes façam e recebam chamadas.

Ativar todo-canal

Se o Omni-Channel já estiver habilitado em sua organização, pule esta etapa.

  1. Na configuração, insira Omni-Channel Settings na caixa Localização rápida, em seguida, selecione Omni-Channel Settings.

  2. Selecionar Enable Omni-Channel.
  3. Clique em Save.

Limitações

  • A voz está disponível apenas no Lightning Experience.
  • A voz é suportada na nuvem de serviços e na nuvem de vendas como uma licença complementar.
  • A voz não é suportada no Salesforce Mobile ou no iPad Safari.
  • A voz é suportada apenas nos navegadores da web Google Chrome, Microsoft Edge (Chromium) e Mozilla Firefox. Os cookies devem ser ativados para permitir o registro único (SSO).
  • A Navegação padrão não é suportada.
  • A telefonia é altamente regulamentada, portanto, verifique com seu representante do Salesforce a disponibilidade do Voice em sua região.

Requisitos

Códigos ociosos

Encontrar códigos inativos

Para definir códigos de inatividade, siga estas etapas:
1

Faça logon no Portal de gerenciamento.

2

Navegue até Contact Center > DESKTOP EXPERIENCE > Idle/Wrap-up Codes.

3

Certifique-se de que os códigos inativos sejam exibidos, caso contrário clique no botão suspenso de filtro e selecione Idle Code na parte superior da página.

4

Clique em um código inativo para abrir a exibição de detalhes. Lá você pode encontrar a ID do código inativo.

As IDs podem ser copiadas e, em seguida, usadas para a configuração do Mapeamento do estado de presença. Uma das IDs deve ser usada como o Motivo padrão para não pronto da Cisco.

Integrar

Instalação

Antes de continuar com a instalação, consulte a seção Pré-requisitos e limitações para saber mais sobre os pré-requisitos e limitações do Salesforce Service Cloud.

Instalar e configurar o Webex Contact Center para o serviço de voz em nuvem

Quando uma licença Licença de voz em nuvem de serviço para telefonia de parceiro é obtida, a página Configuração de telefonia de parceiro é exibida no menu Configuração.

Mais informações podem ser encontradas na referência oficial do Salesforce ( link direto).

1

Na configuração, insira Partner Telephony Setup no Quick Find e, em seguida, selecione Partner Telephony Setup.

2

Ativar Turn on Voice with Partner Telephony.

O comando Partner Telephony Contact Centers página aparece na Setup menu.

Se você planeja implantar o pacote em um sandbox do Salesforce, substitua o login.salesforce.com parte do link de instalação com test.salesforce.com. Observe que este pacote é removido da sua organização de sandbox sempre que você criar uma nova cópia de sandbox.

Instalar o pacote

Para instalar o pacote:

1

Abra o link fornecido do pacote para iniciar a instalação.

2

Faça logon na organização do Salesforce onde o pacote deve ser instalado.

3

No assistente de instalação, escolha a opção de segurança "Instalar apenas para administradores" (1) e clique em Instalar (2).

Determine quais usuários obtêm determinadas permissões para os objetos e componentes que vêm com o pacote Webex Contact Center para voz em nuvem de serviço. Além disso, conceda a eles essas permissões; os conjuntos de permissões que acompanham o pacote Webex Contact Center para voz em nuvem de serviço ajudam nesse processo.

Assistente de instalação do pacote – A tela de boas-vindas é exibida:

O pacote de instalação não é diretamente acessível através do Salesforce AppExchange. Os clientes devem usar o botão "Obter agora" da listagem do AppExchange, que abre um formulário de contato para solicitar o link de instalação 1 e a ativação da Cisco.

4

Conceda os seguintes conjuntos de permissão a pelo menos um usuário para que você possa criar o Contact Center:

Contact Center Admin (Partner Telephony).
5

Clique em Configurar | Usuários | Usuários.

6

Pesquise e selecione um usuário.

7

Role para baixo até "Atribuições de definição de permissões".

8

Clique em Edit Assignments

9

Para administradores do centro de contatos: atribua a permissão de administrador do centro de contatos (telefonia do parceiro) definida.

10

Para agentes da central de contatos: atribua o conjunto de permissão do agente da central de contatos (telefonia do parceiro) e o conjunto de permissão do agente SCV do Webex Contact Center.

Não é recomendado escolher o Install for All Users opção, pois isso concede todas as permissões (ler, criar, editar e excluir) sobre os componentes do pacote e objetos a qualquer usuário que use um Perfil de usuário personalizado.

11

Atribua uma licença de pacote para que os usuários trabalhem com o Connects for Service Cloud Voice.

  • Clique em Configuração | Aplicativos | Embalagem | Pacotes instalados.
  • Clique em Gerenciar licenças ao lado do Webex Contact Center para Service Cloud Voice instalado recentemente.
  • Clique em Adicionar usuários.
  • Selecione os usuários aos quais o muse de licença será atribuído e clique em Adicionar.

12

Como alternativa, você pode clicar em Configurar | Usuários | Usuários..

13

Pesquise e selecione usuário.

14

Role para baixo até Managed Packages.

15

Clique em Assign Licenses.

16

Escolher Webex Contact Center for Service Cloud Voice pacote da lista.

17

Clique em Add.

18

Crie os Status de presença para definir quais canais de serviço são atribuídos a diferentes status. Os agentes podem iniciar sessão no Omni-Channel com status diferentes, dependendo do tipo de trabalho que têm direito a receber.

19

Na configuração, insira Presence Statuses na caixa Localização rápida, em seguida, selecione Presence Statuses.

20

Clique em New. Crie pelo menos um status para "On-line" e um para "Ocupado".

  • Crie um status de presença ocupada dedicado para RONA. A configuração de presença pode ser usada para definir automaticamente o status do Omni-Channel para um status designado sempre que um RONA ocorrer no lado do CTI ou no Salesforce.
  • Se você configurar um status RONA no Presence Configuration, certifique-se de não usar a configuração de presença padrão. Atualmente, o Webex Contact Center para Service Cloud Voice não recupera o status RONA configurado na configuração padrão.

Atribuir status de presença aos agentes

1

Em Configuração, insira Conjuntos de permissão na caixa Localização rápida e, em seguida, selecione Conjuntos de permissão.

2

Clique para abrir Partner Telephony Permission Set.

3

Clique em Service Presence Statuses Access.

4

Clique em Edit.

5

Na guia de Available Service Presences lista, selecione os status de presença criados anteriormente e clique em Add associá-los ao conjunto de permissão. Os agentes atribuídos a esse conjunto de permissão poderão iniciar sessão no Omni-Channel com qualquer um dos status de presença disponibilizados a eles.

6

Clique em Save.

7

Clique em Manage Assignments na mesma página. Em seguida, clique Add Assignment no canto superior direito, selecione o usuário desejado, clique em Next, selecione um Expiration Option para os usuários atribuídos (opcional) e clique em Assign.

O Service Cloud Voice usa um domínio externo para operar com o registro do VoiceCall. As seguintes URLs devem ser adicionadas às "Configurações do site remoto" na Configuração (clique aqui para abrir a documentação oficial):

Exemplo: Como encontrar a URL da ocorrência.

8

Observe a URL na barra de endereços do seu navegador após fazer logon. O URL da ocorrência é a parte antes de ".my.salesforce.com" ou ".salesforce.com" ou .” lightning.force.com”. Por exemplo, se a URL for https://orgfarm-54a38e30ad-dev-ed.develop.my.salesforce-setup.com/, "orgfarm-54a38e30ad-dev-ed.develop" será a URL da sua ocorrência.

Exemplo:

URL da organização de origem: https://cisco.lightning.force.com

Exemplo: URL para adicionar:

  • https://cisco.my.salesforce-scrt.com

9

O item de utilitário omnichannel é necessário no aplicativo Lightning Service Console para que o agente use o Service Cloud Voice.

  • Em Configuração, insira Aplicativos na caixa Localização rápida e, em seguida, selecione Gerenciador de aplicativos.
  • Clique na lista suspensa ao lado do aplicativo Console de serviço ou no aplicativo que você deseja usar e, em seguida, clique em Editar.
  • Em Configurações do aplicativo, clique em Itens de utilitário (somente desktop).
  • Clique em Adicionar item de utilitário.
  • Na janela modal, procure o Omni-Channel.
  • Clique em Omni-Channel.
  • Clique em Salvar e saia do Gerenciador de aplicativos.

A referência oficial do Salesforce pode ser encontrada clicando no Let's Do This botão que abre a página Configurar a experiência do agente para o serviço de voz em nuvem com telefonia do parceiro no Portal de ajuda do Salesforce ( direct link).

10

Na configuração, insira Partner Telephony Setup na caixa Localização rápida, em seguida, selecione Partner Telephony Setup.

11

Role para baixo até a seção 5 More Voice Settings.

12

Para Ativar a proteção de clickjack para páginas do Visualforce com cabeçalhos desativados enquanto trabalha com o softphone na Experiência Lightning, você deve adicionar os domínios dos quais o softphone e as barras de ferramentas personalizadas são carregadas como domínios confiáveis, além da URL da ocorrência do Salesforce.

Essas configurações e a lista de Domínios confiáveis podem ser encontradas em Configuração | Segurança | Configurações da sessão.

Para recuperar o domínio correto do Visualforce, navegue até Configuração | Código personalizado | Páginas do Visualforce e clique no botão de Pré-visualização do CiscoScvMainWxCC. O Salesforce pode redirecionar automaticamente para uma URL diferente, dependendo da configuração da ORGANIZAÇÃO do Salesforce. Copie a URL e adicione-a ao Trusted Domains for Inline Frames lista selecionando "Visualforce Pages" como tipo IFrame.

Exemplo: Meu nome de domínio--cisco_wxcc_scv.vf.force.com

Para obter o domínio da ocorrência do Salesforce, copie a URL exibida na barra de URL do navegador e adicione-a ao Trusted Domains for Inline Frames List seleção de lista Visualforce Pages como tipo IFrame.

Exemplo: MyDomainName.lightning.force.com

Se você não tiver um Meu domínio implantado na sua organização, o formato da URL será diferente. Se você tiver um Meu domínio implantado e os domínios aprimorados não estiverem habilitados na sua organização, o formato da URL será diferente. Se os domínios aprimorados não estiverem ativados, a configuração Estabilizar URLs no Visualforce, Experience Builder, Site.com estúdio e arquivos de conteúdo Meu domínio também afetará esse formato. Para obter detalhes, consulte Formatos de URL do meu domínio na Ajuda do Salesforce.

Configurações de Proteção Clickjack e domínios de confiança para Lightning Experience

13

Para exibir os controles de gravação durante as chamadas, os agentes precisam do Control Call Recording permissão do aplicativo.

Para atribuí-lo, adicione-o ao conjunto de permissões criado na etapa de Status de presença.

  • Abra o conjunto de permissões.
  • Clique no App Permissions link.
  • Clique no Edit Botão.
  • Adicionar o call center Control Call Recording permissão e salvar.

Configuração

Contact Center

Um arquivo de definição do Contact Center especifica um conjunto de campos e valores que são usados para definir um contact center no Salesforce para um sistema CTI específico. O Salesforce usa arquivos de definição do Contact Center para oferecer suporte à integração com vários fornecedores de sistemas CTI.

Mais informações podem ser encontradas na documentação oficial do Salesforce ( link direto).

Importar o Contact Center

Baixe a versão mais recente do Contact Center aqui.

Atualizando a partir do Beta: Este guia descreve uma instalação limpa da versão de Disponibilidade Geral (GA) da integração do Webex Contact Center para o Salesforce Service Cloud Voice.

Se você estiver atualizando de uma versão Beta da integração, não reutilize um registro existente do Centro de contatos do parceiro. Em vez disso:

  1. Importe o arquivo XML do Centro de contatos do parceiro incluído com a versão GA.
  2. Crie um novo registro do Centro de contatos de parceiro usando o XML importado.
  3. Atualize sua configuração para usar o Centro de contatos do parceiro recém-criado.

O XML do centro de contatos do parceiro GA contém valores de configuração atualizados, incluindo a URL correta do conector e outros metadados. Reutilizar um registro do Centro de contatos do parceiro criado a partir do Beta XML pode reter valores de configuração desatualizados e impedir que a integração funcione corretamente.

1

Na configuração, insira Partner Telephony Contact Centers no Quick Find caixa, então selecione Partner Telephony Contact Centers.

A lista de Contact Centers existentes (se houver) é exibida.
2

Clique em Create Contact Center no lado direito da página.

3

Selecionar Webex Contact Center como seu provedor de telefonia. Em seguida, clique Next.

Um navegador de arquivos é aberto.
4

Selecionar o .xml arquivo que contém a definição do Contact Center.

5

Clique em Open.

O arquivo é importado.
6

Verifique se o Contact Center está exibido na exibição da lista Contact Centers.

Configurar o centro de contatos

1

Na configuração, insira Partner Telephony Contact Centers no Quick Find caixa, então selecione Partner Telephony Contact Centers.

2

Clique no Contact Center importado anteriormente.

3

Clique em Edit.

Table 1. Contact Center details
CampoDescrição
Exibir nome Este é o nome do centro de contatos que aparece na lista de centros de contatos disponíveis. O mesmo arquivo de definição do Contact Center (.xml) pode ser importado várias vezes e receber nomes de exibição diferentes.
Chave pública

Para usar as funcionalidades de voz, é necessário um certificado com chaves pública e privada. Para obter uma chave privada, é possível Gerar um certificado autoassinado, Gerar um certificado assinado por uma autoridade de certificação ou importar diretamente arquivos de keystore Java (JKS) ou arquivos de keystore Bouncy castle fips (BCFKS) usando o Import from keystore Botão.

Depois que o certificado for gerado:

  • Clique no Certificate rótulo.
  • Clique em Download Certificate.
  • Abra o certificado baixado com um editor de texto.
  • Copie seu conteúdo no Public key campo do Contact Center.

Necessário Sim

Nome exclusivo do certificado

O comando Unique Name do certificado autoassinado criado para a Chave pública.

Necessário Sim

ID do estado pronto
  • Abrir a Presence Statuses página em Configuração.
  • Clique no Online e copie sua ID do Salesforce da barra da URL.
  • Cole a ID nesse campo.

Necessário Sim

ID do estado não pronto
  • Abrir a Presence Statuses página em Configuração.
  • Clique no Busy e copie sua ID do Salesforce da barra da URL.
  • Cole a ID nesse campo.

Necessário Sim

Motivo padrão de Cisco não pronto

ID do código inativo Cisco que é usada como um código inativo padrão caso nenhum mapeamento seja fornecido para um determinado estado de presença.

Necessário Sim

Para verificar as IDs de códigos inativos configurados, consulte a seção Códigos inativos.

Mapeamento do estado de presença

Usado para mapear os status do Salesforce Omni Presence para os códigos de motivo Cisco pronto e Não pronto.

O comando Idle Code Os status devem ser adicionados:

  • Abrir a Presence Statuses página em Configuração.
  • Clique em uma das Busy e copie sua ID do Salesforce da barra de URL. As IDs de status de presença começam com 0N5. por exemplo 0N51X0000000AUT.
  • Cole a ID nesse campo, seguida de uma vírgula e a ID do código ocioso da Cisco.
  • Um ou mais Busy Os mapeamentos podem ser adicionados usando a separação por vírgula.

Para evitar problemas de sincronização, o Default Not Ready ID também deve ser configurado no mapeamento.

Se você configurou os status para Decline e Push Timeout dentro do Presence Configuration, adicione-os também ao mapeamento com o estado Cisco não pronto correspondente.

Formato:

  • Mapeamento de ocupado: busyPresenceID1,ciscoAuxCodeID1
  • Mapeamento padrão de não pronto: defaultNotReadyPresenceID,ciscoDefaultNotReadyAuxCodeID
  • Mapeamento on-line: onlinePresenceId,0

Separe cada mapeamento completo com um ponto e vírgula.

Necessário Sim

Aqui está um exemplo de códigos inativos concluídos para almoço, reunião, intervalo.

Variável de chamada para ID da chamada de voz

A variável de chamada usada para armazenar o ID da chamada de voz atual. Ele é usado para atualizar corretamente o estado da chamada.

Formato: Nome da variável conforme configurado no fluxo do Webex Contact Center. Por exemplo SCV_VoiceCallRecordId

Necessário Sim

Valor padrão: SCV_VoiceCallRecordId

Se você tiver combinado a ID de registro de chamada de voz e a chave de chamada de fornecedor em uma variável de fluxo, é possível configurar seu nome nesse campo. Consulte também a variável de fluxo para a ID do registro de chamada de voz e a chave de chamada do fornecedor.

Variável de chamada para a chave de chamada do fornecedor

A variável de chamada usada para armazenar a chave de chamada de fornecedor da chamada de voz atual. Ele é usado para abrir o registro correto de chamadas de voz.

Formato: Nome da variável conforme configurado no fluxo do Webex Contact Center. Por exemplo SCV_VendorCallKey

Necessário Sim

Valor padrão: SCV_VendorCallKey

Se você tiver combinado a ID de registro de chamada de voz e a Chave de chamada de fornecedor em uma variável de fluxo, poderá deixar esse campo em branco e configurar o nome da variável de fluxo com a ID de registro de chamada de voz e a Chave de chamada de fornecedor no campo "Variável de chamada para ID de chamada de voz". Consulte também Variável de fluxo para a ID de registro de chamada de voz e chave de chamada do fornecedor.

Tradução do número de telefone de discagem

Regras de tradução do número de telefone que são aplicadas ao número antes de ele ser discado.

Consulte Traduções de números de telefone

Necessário Não

Região do Webex Contact Center

O locatário é usado para determinar a região do Webex Contact Center. Ele pode ser encontrado na URL do portal do Webex Contact Center, do portal do desenvolvedor ou do desktop. Por exemplo, devportal.wxcc-eu2.cisco.com usa a região eu2.

Formato: eu2

Necessário Sim

Regiões do Webex Contact Center e strings correspondentes:

  • EUA: us1
  • Canadá: ca1
  • Reino Unido: eu1
  • Alemanha: eu2
  • Austrália: anz1
  • Cingapura: sg1
  • Japão: jp1
Domínio WebRTC do centro de contatos Webex

O domínio será usado para estabelecer a conexão WebRTC correta. Use a localização do locatário do Webex Contact Center:

  • EUA: rtw.prod-us1.rtmsprod.net
  • ANZ: rtw.prod-as1.rtmsprod.net
  • CA: rtw.prod-ca1.rtmsprod.net
  • JP: rtw.prod-ja1.rtmsprod.net
  • EU1: rtw.prod-uk1.rtmsprod.net
  • EU2: rtw.prod-gm1.rtmsprod.net

Necessário Sim para WebRTC

Ativar transcrição WCCAI

Usado para ativar ou desativar a transcrição WCCAI.

Formato: True ou False

Necessário Não

Valor padrão: False

Salvar link de gravação

Usado para salvar o link de gravação de chamadas Webex no registro de chamadas de voz.

Formato: True ou False

Necessário Não

Valor padrão: True

4

Na parte inferior do Contact Center página, clique em Add botão abaixo Contact Center Users .

5

Clique em + ao lado dos usuários que têm acesso ao Contact Center aberto.

Apenas usuários com Contact Center Agent (Partner Telephony) permissão definida e ainda não atribuída a outros centros de contatos aparecem nesta lista.

Personalizar

Aplicativo de cliente externo para integração do Webex Contact Center

Configurar o aplicativo de cliente externo para o conector do Salesforce do Webex Contact Center

Para usar o serviço de voz em nuvem em sua extensão total, o fluxo de chamadas da central de contatos pode ser adaptado para criar o registro de chamadas de voz e executar um fluxo omni-canal do Salesforce enquanto a chamada estiver na IVR.

Criar certificado

Certifique-se de que você já criou um certificado digital de acordo com a política de segurança da sua organização.

Para gerar um certificado digital, consulte a documentação do Salesforce em https://developer.salesforce.com/docs/atlas.en-us.voice_pt_developer_guide.meta/voice_pt_developer_guide/voice_pt_generate_certificate.htm.

Exemplo

openssl genrsa -des3 -passout pass:<password> -out server.pass.key 2048
openssl rsa -passin pass:<password> -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr

    Country Name (2 letter code) [AU]:CH
    State or Province Name (full name) [Some-State]:
    Locality Name (eg, city) []:
    Organization Name (eg, company) [Internet Widgits Pty Ltd]:
    Organizational Unit Name (eg, section) []:
    Common Name (e.g. server FQDN or YOUR name) []:
    Email Address []: my-api-user@my-example-org.com
    Please enter the following 'extra' attributes
    to be sent with your certificate request
    A challenge password []:<password>
    An optional company name []:

openssl x509 -req -sha256 -days 365 -in server.csr -signkey server.key -out server.crt

server.crt => Certificado para o aplicativo cliente externo do Salesforce

server.key => Chave privada para o conector do Salesforce no Webex Control Hub

Permissão definida para o usuário de integração SCV

O Conjunto de permissões a seguir concede acesso às classes Apex usadas pelo Conects para SCV para integração com fluxos IVR do Centro de contatos e Webex Contact Center para Salesforce para SCV.

Veja a seguir uma configuração de exemplo e descreve as permissões mínimas necessárias para que a integração do Contact Center/IVR funcione.

  • Em Configuração, navegue até Usuários | Conjuntos de permissão.
  • Clique em New Botão.
    • Insira um rótulo, por exemplo: Acesso IVR às classes de Apex SCV
    • O nome da API é preenchido automaticamente
    • Licença: Nenhum
    • Clique no Save Botão.
  • O novo conjunto de permissões é aberto.
  • Navegue até Apex Class Access.
  • Clique no Edit botão e adicione as seguintes classes Apex:
    • cisco_wxcc_scv.ServiceRouting
  • Navegue até System Permissions.
  • Clique no Edit botão e habilite as seguintes Permissões:
    • Serviços REST da Apex
    • API ativada

Acesso mínimo - Perfil de integrações somente API

Esse Perfil é usado para se integrar ao Webex Contact Center para Salesforce para SCV para criar registros de Chamada de voz e Executar o Omni-Flow do fluxo IVR.

Veja a seguir uma configuração de exemplo e descreve as permissões mínimas necessárias para que a integração do Contact Center/IVR funcione.

Este é um clone do perfil de Acesso mínimo - Integrações somente API.

  • Em Configuração, navegue até Usuários | Perfis.
  • Na lista de Perfis, pesquise o Perfil Acesso mínimo - Integrações somente API.
  • Clique no nome do perfil para abrir o Minimum Access - API Only Integrations perfil.
  • Na Minimum Access - API Only Integrations perfil, clique no Clone Botão.
  • Insira um novo nome de perfil, por exemplo: Integração SCV.
  • Clique em Save Botão.
  • O novo perfil é aberto.
  • Verifique se o perfil de Acesso mínimo – Integrações somente API tem todas as permissões removidas do próprio perfil.
  • Navegue até System Permissions.
  • Certifique-se de que as seguintes Permissões estejam ativadas:
    • API ativada
    • Usuário Apenas Api

Usuário de integração SCV

Veja a seguir uma configuração de exemplo e descreve as permissões mínimas necessárias para que a integração do Contact Center/IVR funcione. Nenhuma licença do Serviço em nuvem do Salesforce ou licença do Webex Contact Center para Salesforce para SCV é necessária para o usuário de integração com SCV.

  • Em Configuração, navegue até Usuários | Usuários.
  • Clique em New User Botão.
    • Insira nome, sobrenome e todos os outros campos obrigatórios.
    • Licença do usuário: Integração do Salesforce
    • Perfil: selecione o perfil criado na etapa anterior ("perfil de integração SCV", clone do Acesso mínimo - perfil de integrações somente API)
  • Clique em Save Botão.
  • Abra o novo registro do usuário.
  • Atribuir o Permission Set criado antes ("Acesso IVR a classes de Apex SCV").
  • Atribua a licença de definição de permissão Integração da API do Salesforce.
Criar aplicativo de cliente externo do Salesforce
Criar um novo aplicativo de cliente externo

Existem duas opções para conectar seus dados do Salesforce com aplicativos de terceiros. Ambos Connected Apps e External Client Apps são estruturas para integrar dados. Os aplicativos de clientes externos são a próxima geração de aplicativos conectados.

Para configurar o aplicativo de cliente externo do Salesforce usado pelo Cisco Webex Contact Center:

  1. De Setup, navegue para Apps | External Client Apps | External Client App Manager.
  2. Clique em New External Client App.
  3. External Client App—Basic Information
    • Nome do aplicativo do cliente externo: WxCC - SCV
    • Nome da API: WxCC_SCV
    • E-mail de contato: < o seu e-mail >
    • Estado de distribuição: selecione local

    Informações básicas

    External Client App—API (Enable OAuth Settings)

    • Selecione: Ativar OAuth
    • Configurações do aplicativo
    • URL de retorno de chamada: http://localhost:1717/OauthRedirect como uma URL de retorno de chamada de amostra
    • Escopos OAuth
    • Selecione os escopos OAuth:
    • Gerenciar dados de usuário por meio de APIs (api)
    • Executar solicitações a qualquer momento (refresh_token, acesso_offline)

    API (Ativar configurações oAuth)

    Flow Enablement

    • Selecione: Ativar o fluxo do portador JWT
    • Clique em Carregar arquivos e carregue o server.crt arquivo que contém seu certificado digital.

    Ativação de inundação

    Security

    Desmarque a Require secret for the Web Server Flow opção.

    Segurança

  4. Clique em Create Botão.
  5. Alterar para Tab Policies e clique em Edit Botão.
  6. Políticas—Políticas OAuth
    • Políticas do 'Plugin'
      • Usuários permitidos: selecione os usuários aprovados pelo Administrador que são pré-autorizados
      • Confirme a alteração
    • Autorização do aplicativo
      • Política de token de atualização: selecione Token de atualização de expiração imediatamente
      • Relaxamento de IP: selecione Aplicar restrições de IP

    Políticas OAuth

  7. Políticas—Políticas do aplicativo
    • Página inicial—nenhum
    • Selecionar conjuntos de permissão — Atribuir o conjunto de permissão criado antes ("Acesso IVR às classes de apex SCV") 

    Políticas do aplicativo

  8. Clique em Save.
  9. Altere para Configurações da guia.
    • Configurações da seção OAuth, clique em Consumer Key e Secret botão; aguarde pelo e-mail e verifique sua identidade. Uma nova guia do navegador abre uma tela com detalhes do consumidor.

      Configurações de OAuth

    • Clique em Copy e salve o Consumer Key. A chave do consumidor será usada mais tarde para criar o conector do Salesforce no Hub de controle do Webex Contact Center. 

      Nome do aplicativo do cliente externo

Configuração e script do Webex Contact Center para criar registros de chamadas de voz

Para obter o valor total do serviço de voz em nuvem do Salesforce, o fluxo de chamadas no Centro de contatos Webex deve ser modificado para criar o registro de chamadas de voz no serviço de voz em nuvem assim que a chamada chegar no centro de contatos.

Um Omni-Flow opcional pode ser executado para decisões de roteamento e automação no Salesforce.

Para obter detalhes sobre as APIs usadas, consulte o Wrapper da API de voz em nuvem de serviço.

Pré-requisitos

Para usar o Wrapper da API de voz em nuvem de serviço, um aplicativo do cliente externo do Salesforce para integração de IVR deve ser configurado.

Configurar o conector do Salesforce no Webex Control Hub

Configure os conectores de integração do Salesforce para o Webex Contact Center, conforme descrito no artigo em https://help.webex.com/en-us/article/7fuy63/Set-Up-Integration-Connectors-for-Webex-Contact-Center#id_133211.

1

Faça logon na organização do cliente em https://admin.webex.com e navegue até Serviços > Centro de contatos > Configurações do locatário > Integrações>Conectores.

2

No cartão do Salesforce, clique em Configurar ou Adicionar conector.

  • ID do cliente: Chave de consumidor do aplicativo de cliente externo
  • ID de e-mail do Salesforce: Nome de usuário do Salesforce da "Integração SCV" (consulte o usuário da integração SCV)
  • URL: para uso de produção https://login.salesforce.com ou se você estiver configurando um uso de dev/sandbox https://test.salesforce.com
  • Chave privada: conteúdo do arquivo server.key

IMPORTANTE: MANTER A SEGURANÇA ATRAVÉS DA ROTAÇÃO PERIÓDICA DE SEGREDOS

Certifique-se de girar regularmente sua Chave privada e seu certificado para manter suas integrações seguras.

Atualize a chave privada no Conector do Contact Center no Webex Hub e o certificado no aplicativo do cliente externo no Salesforce.

Dica de solução de problemas

Depois de clicar em Concluído e o conector não salva:

  • Verifique se você tem espaços antes/depois das suas entradas.
  • Certifique-se de que sua Chave privada (server.key) corresponde ao seu server.crt. Se você estiver configurando várias organizações e alternando os certificados, eles não funcionarão.
  • certifique-se de que o Server.key comece com. ----- Begin RSA Private Key -----

Fluxo principal do Webex Contact Center

Table 2. Flow variale
Variável de fluxoDescrição
Variável de fluxo da ID do registro de chamadas de voz ID exclusiva para identificar a chamada. Necessário para criar o registro de chamada de voz.

Formato: wxcc_<ID de interação>

Exemplo: wxcc_fc4ec7d8-4c91-49aa-b764-081fbba344a8

  • Nome: Chave de chamada SCV_Vendor
  • Tipo: sequência
  • Tornar o agente visível: Enabled
Variável local para a Hora de início da chamada

Usado para criar o registro de chamada de voz e ao atualizar a chamada de voz.

  • Nome: SCV_HoraInícioDaChamada
  • Tipo: sequência
  • Tornar o agente visível: não
Variável local para nome/ID da fila

Retornado por Execute o fluxo omni, usado para roteamento de chamadas.

Esta variável é necessária apenas ao usar o Executar fluxo omni

  • Nome: SCV_OmniFlowQueue
  • Tipo: sequência
  • Tornar o agente visível: não
Variável local para nome/ID do agente

Retornado por Execute o fluxo omni, usado para roteamento de chamadas.

Esta variável é necessária apenas ao usar o Executar fluxo omni

  • Nome: Agente SCV_OmniFlow
  • Tipo: sequência
  • Tornar o agente visível: não

Visão geral do fluxo principal

  1. Gerar chave de chamada de fornecedor
  2. Definir hora de início da chamada
  3. Solicitação HTTP: Criar registro de chamadas de voz
  4. Avaliar a resposta HTTP para criar registro de chamada de voz
  5. Erro no atendimento para criar registro de chamada de voz
  6. Solicitação HTTP: Executar o fluxo Omni
  7. Avaliar a resposta HTTP para executar o fluxo omni
  8. Erro no tratamento do fluxo Executar o Omni
  9. Continuar com o roteamento de chamadas
Table 3. Main Flow
FluxoDescrição
Gerar chave de chamada de fornecedor

Cada chamada tratada no Serviço de voz em nuvem cria um registro de Chamada de voz no Salesforce e requer uma ID exclusiva chamada Chave de chamada do fornecedor. Para registros de chamadas de voz criados no Webex Contact Center, a chave de chamada do fornecedor deve ser definida no fluxo WxCC e, em seguida, passada juntamente com a chamada para o agente usando uma variável de fluxo.

O valor vendorCallKey deve cumprir as seguintes regras:

  • O valor deve ter <= 255 caracteres.
  • O valor pode incluir caracteres alfanuméricos, além de sublinhado (_), traço (-) e ponto (.).
  • O valor deve começar com uma letra, não incluir espaços, não terminar com um sublinhado e não conter dois sublinhados consecutivos.

  • Rótulo da atividade: Gerar_VendorCallKey
  • Nome da variável: Chave de chamada SCV_Vendor
  • Tipo de variável: sequência
  • Valor variável - Valor definido: wxcc_{{NewPhoneContact.InteractionId}}

Definir hora de início da chamada

Carimbo de data/hora UTC da hora de início da chamada. Esse carimbo de data/hora é usado para criar o registro de chamadas de voz e para atualizá-lo se o chamador desligar antes de ser roteado para o agente.

  • Rótulo da atividade: Definir hora de início da chamada
  • Variável: SCV_HoraInícioDaChamada
  • Valor da variável - Valor definido: {{now() | substituir({'[UTC]': ''})}}
Solicitação HTTP: Criar registro de chamadas de voz

Essa etapa é necessária para cada chamada. Depois que o registro de chamada de voz é criado, a ID do registro de chamada de voz deve ser passada com a chamada para o agente em uma variável, juntamente com a chave de chamada de fornecedor. Configure a variável usada na configuração do centro de contatos no serviço de voz em nuvem.

Configurações de solicitação HTTP
  • Rótulo da atividade: Criar chamada de voz
  • Usar terminal autenticado: Enabled
  • Conector: Conector do Salesforce criado na etapa anterior
  • Caminho da solicitação: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • Método: PUBLICAR
  • Tipo de conteúdo da solicitação: Aplicação/JSON

Solicitação HTTP: Criar registro de chamadas de voz

Essa etapa é necessária para cada chamada. Depois que o registro de chamada de voz é criado, a ID do registro de chamada de voz deve ser passada com a chamada para o agente em uma variável, juntamente com a chave de chamada de fornecedor. Configure a variável usada na configuração do centro de contatos no serviço de voz em nuvem.

Configurações de solicitação HTTP

  • Rótulo da atividade: Criar chamada de voz
  • Usar terminal autenticado: Enabled
  • Conector: Conector do Salesforce criado na etapa anterior
  • Caminho da solicitação: /services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall
  • Método: PUBLICAR
  • Tipo de conteúdo da solicitação: Aplicação/JSON

Corpo da solicitação

Ao criar o registro de Chamada de voz, você também pode atualizar campos personalizados no registro de Chamada de voz com dados de chamadas. Abaixo estão dois exemplos do corpo da solicitação, um com todos os campos obrigatórios, mas sem atualizar campos personalizados, e um com campos personalizados.

Sem atualizar os campos personalizados no registro de chamadas de voz:

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "vendorCallKey": "{{SCV_VendorCallKey}}",
  "to": "{{NewPhoneContact.DNIS}}",
  "from": "{{NewPhoneContact.ANI}}",
  "initiationMethod": "Inbound",
  "startTime": "{{SCV_CallStartTime}}",
  "participants": [
    {
      "participantKey": "{{NewPhoneContact.ANI}}",
      "type" : "END_USER"
    }
  ]
}

Exemplo com a atualização de campos personalizados no registro de chamada de voz:

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "vendorCallKey": "{{SCV_VendorCallKey}}",
  "to": "{{NewPhoneContact.DNIS}}",
  "from": "{{NewPhoneContact.ANI}}",
  "initiationMethod": "Inbound",
  "startTime": "{{SCV_CallStartTime}}",
  "participants": [
    {
      "participantKey": "{{NewPhoneContact.ANI}}",
      "type" : "END_USER"
    }
  ],
  "callAttributes": "{\"custfield1__c\": \"<value1>\",\"custfield2__c\": \"<value2>\",\"custfield3__c\": \"<value3>\"}"
}

Parâmetros
Nome da propriedade Valor
callCenterDevName Nome do desenvolvedor do centro de contatos
certDevName Nome da API do certificado (conforme configurado no Contact Center)
vendorCallKey ID de chamada exclusiva: {{SCV_VendorCallKey}}
para Número chamado/DNIS: {{NewPhoneContact.DNIS}}
de Número de chamada/ANI: {{NewPhoneContact.ANI}}
Hora de início Carimbo de data/hora UTC {{SCV_CallStartTime}} (a ser definido logo após a chamada ser aceita no script)
atributos de chamada

Representa campos padrão e personalizados adicionais no registro de chamadas de voz, em que cada par de chave-valor corresponde a um campo padrão ou personalizado e seus valores.

Exemplo:

custfield1__c, custfield2__c, custfield3__c: Nome da API do campo personalizado no objeto de Chamada de voz

value1, value2, value3: Valor para o campo personalizado

Configuração do Processamento
  • Tipo de conteúdo: JSON
  • Variável de saída: SCV_VoiceCallRecordId
  • Expressão do caminho: $.data.voiceCallId

ID do registro de chamada de voz, a ser passada ao agente.

Avaliar a resposta HTTP para criar registro de chamada de voz

Verifique o status HTTP da solicitação HTTP Criar chamada de voz:

  • Rótulo: statusCodeCreateVoiceCall
  • Variável: CreateVoiceCall.httpStatusCode

Se o código de status == 200 => for bem-sucedido, caso contrário => a solicitação falhou, erro no atendimento

Erro no atendimento para criar registro de chamada de voz

Somente para demonstração / debug, reproduza a mensagem dependendo do código de status http.

Se a opção Criar chamada de voz foi bem-sucedida, continue com a opção Executar fluxo omni. Caso contrário, continue com o roteamento de chamadas.

Solicitação HTTP: Executar o Omni Flow (etapa opcional)

Use Execute Omni-Flow quando desejar:

  • executar tarefas automatizadas, por exemplo, procurar ou criar registros e vincular os registros ao registro de Chamada de voz
  • procure registros e faça a tela pop-up
  • sincronizar as filas do Salesforce e da Cisco
  • permitir que o Service Cloud Voice tome a decisão de roteamento

Essa solicitação sempre retorna a "fila" ou o "agente" para onde a chamada deve ser roteada.

Depois de executar esta solicitação, certifique-se de enviar o Limpar roteamento se o chamador desligar antes de ser atendido por um agente. Consulte o Fluxo de eventos do Webex Contact Center.

Configurações de solicitação HTTP

  • Rótulo da atividade: ExecutarOmniFlow
  • Usar terminal autenticado: Enabled
  • Conector: Conector do Salesforce criado na etapa anterior
  • Caminho da solicitação: /services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow
  • Método: PUBLICAR
  • Tipo de conteúdo da solicitação: Aplicação/JSON

Corpo da solicitação

Além dos campos obrigatórios, você pode passar dados adicionais como variáveis de entrada para o Omni-Flow. Seguem-se dois exemplos do corpo da solicitação. Primeiro, sem parâmetros de fluxo adicionais, apenas campos obrigatórios, o segundo com duas variáveis de entrada.

Exemplo com parâmetros Omni-Flow:

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "dialedNumber": "{{NewPhoneContact.DNIS}}",
  "flowDevName": "<flow api name>",
  "fallbackQueue": "<fallback queue name>"
}

Exemplo com a atualização dos campos personalizados no registro de chamadas de voz:

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "dialedNumber": "{{NewPhoneContact.DNIS}}",
  "flowDevName": "<flow api name>",
  "fallbackQueue": "<fallback queue name>",
  "flowInputParameters": 
  {
    "param1": "value1",
    "param2": "value2"
  }
}

Parâmetros
Nome da propriedade Valor
callCenterDevName Nome do desenvolvedor do centro de contatos
certDevName Nome da API do certificado (conforme configurado no Contact Center)
voiceCallId ID do registro de chamadas de voz, criado na etapa anterior: {{SCV_VoiceCallRecordId}}
número discado Número chamado/DNIS: {{NewPhoneContact.DNIS}}
Nome do desenvolvimento de fluxo Nome do desenvolvedor do Omni-Flow a ser executado
fallbackFila ID da fila ou nome da API da fila da fila do Salesforce de fallback
flowInputParameters

Entradas adicionais para o fluxo omnicanal (par chave-valor).

Exemplo:

param1, param2: Nome do parâmetro de entrada Omni-Flow

value1, value2: Valor do parâmetro

Configuração do Processamento

Fila

  • Tipo de conteúdo: JSON
  • Variável de saída: SCV_OmniFlowQueue
  • Expressão do caminho: $.data.queue

"Fila" retornada do Execute Omni-Flow pode ser usada para roteamento.

Agente
  • Tipo de conteúdo: JSON
  • Variável de saída: Agente SCV_OmniFlow
  • Expressão do caminho: $.data.agent

"Agente" retornado do Execute Omni-Flow, pode ser usado para roteamento.

Avaliar a resposta HTTP para executar o fluxo omni

Verifique o status HTTP da solicitação http Executar fluxo omni:

  • Label: statusCodeExecuteOmniFlow
  • Variável: ExecuteOmniFlow.httpStatusCode

Se o código de status == 200 => foi bem-sucedido, caso contrário => a solicitação falhou, erro no atendimento.

Erro no tratamento do fluxo Executar o Omni

Somente para demonstração / debug, reproduza a mensagem dependendo do código de status http.

Se a opção Executar o Omni Flow for bem-sucedida, as variáveis SCV_OmniFlowQueue e SCV_OmniFlowAgent não serão definidas. Decisão de roteamento no fluxo de chamadas.

Continuar com o roteamento de chamadas

Continue no fluxo de chamadas, encaminhe a chamada para o agente. Opcional, use SCV_OmniFlowQueue e SCV_OmniFlowAgent para selecionar fila e agente.

Fluxo de eventos do Webex Contact Center

Se o chamador desligar a chamada antes de ser atendida por um agente, devemos atualizar o serviço de voz em nuvem e encerrar a chamada.

  • Se a opção Executar Omni-Flow foi usada, envie o Limpar roteamento para excluir o Roteamento de serviço pendente (PSR)
  • Enviar a Atualização da chamada de voz para atualizar os horários de início e término no registro de Chamada de voz e alterar o status de Novo para Concluído

  1. PhoneContactEnded - Este evento é acionado quando uma chamada ao vivo é desconectada e todos os participantes são removidos.
  2. Solicitação HTTP: Limpar roteamento
  3. Solicitação HTTP: Atualizar chamada de voz
Solicitação HTTP: Limpar roteamento

  • Rótulo: Limpar roteamento
  • Usar terminal autenticado: Enabled
  • Conector: Conector do Salesforce criado na etapa anterior
  • Caminho da solicitação: /services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting
  • Método: PUBLICAR

Tipo de conteúdo da solicitação: Aplicação/JSON

Corpo da solicitação

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}"
}

Parâmetros

Nome da propriedadeValor
callCenterDevName Nome do desenvolvedor do centro de contatos
certDevName Nome da API do certificado (conforme configurado no Contact Center)
voiceCallId ID do registro de chamadas de voz, criado na etapa anterior: SCV_VoiceCallRecordId

Configuração do Processamento

Nenhum.

Solicitação HTTP: Atualizar chamada de voz

  • Rótulo: Atualizar chamada de voz
  • Usar terminal autenticado: Enabled
  • Conector: Conector do Salesforce criado na etapa anterior
  • Caminho da solicitação: /services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall
  • Método: PUBLICAR
  • Tipo de conteúdo da solicitação: Aplicação/JSON

Corpo da solicitação

{
  "callCenterDevName": "<Contact Center API name>",
  "certDevName": "<cert dev name>",
  "voiceCallId": "{{SCV_VoiceCallRecordId}}",
  "startTime": "{{SCV_CallStartTime}}",
  "endTime": "{{now() | replace({'[UTC]': ''})}}",
  "disconnectReason": { "value": "Abandoned in queue", "isError": true }
}

Parâmetros

Nome da propriedadeValor
callCenterDevName Nome do desenvolvedor do centro de contatos
certDevName Nome da API do certificado (conforme configurado no Contact Center)
voiceCallId ID do registro de chamadas de voz, criado na etapa anterior: SCV_VoiceCallRecordId
Hora de início Carimbo de data/hora UTC de início da chamada {{SCV_CallStartTime}} (conforme usado para criar o registro de Chamada de voz)
Horário de término Carimbo de data/hora atual UTC `{{now()
desconexãoMotivo Motivo para desconectar a chamada. A propriedade isError precisa ser definido para true para que ele seja exibido corretamente.

Configuração do Processamento

Nenhum.

Referências

Tradução de idiomas

(Opcional) Ativar bancada de trabalho de tradução

Essa configuração é aplicável somente se você usar as configurações do idioma de tradução.

1

Vá para Configuração → Banco de trabalho de tradução → Configurações de idioma de tradução.

2

Clique em Enable para selecionar o idioma de tradução.

(Opcional) Ativar idiomas de somente plataforma

Essa configuração é aplicável apenas a idiomas diferentes do EN-US.

1

Vá para Configuração → Configurações da empresa → Configurações de idioma.

2

Escolha os idiomas necessários.

3

Selecione as seguintes caixas de seleção:

  • Habilitar idiomas do usuário final - A Ajuda e a Configuração não foram traduzidas para os idiomas do usuário final
  • Ativar idiomas somente da plataforma - nenhuma tradução padrão é fornecida para idiomas somente da plataforma
4

Salve suas alterações.

Ative o idioma e selecione o usuário (tarefa)
1

Vá para Configuração → Banco de trabalho de tradução → Configurações de idioma de tradução.

2

Escolha o idioma e selecione o usuário que o traduzirá.

3

Salve suas alterações.

Configurações de vários idiomas
Traduzir rótulos personalizados
1

Vá para Configuração → Rótulos personalizados.

2

Selecione o nome da etiqueta personalizada a ser aberta.

3

Na lista de Traduções relacionada, clique em New para inserir uma nova tradução ou Editar (ao lado do idioma), para editar uma tradução.

4

Selecione o idioma para o qual você está traduzindo.

5

Insira o valor traduzido no campo Texto de tradução. Esse texto substitui o valor especificado no campo Valor do rótulo quando o idioma padrão de um usuário é o idioma de tradução.

6

Salve suas alterações.

Permissões do Salesforce exigidas pela função do usuário

O conjunto de permissão do agente SCV do Webex Contact Center contém todas as permissões necessárias para trabalhar com o gadget do Webex Contact Center e as integrações desenvolvidas para agentes.

Acesso de classe Apex (seção)

  • cisco_wxcc_scv.CiscoScvWxcc
  • cisco_wxcc_scv.ServiceResponseHandler
  • cisco_wxcc_scv.ServiceRouting
  • cisco_wxcc_scv.TelephonyIntegrationHandler

Acessos do tipo de metadados personalizados (seção)

  • Conexão cisco_wxcc_scv.WxCC

Acesso à página Visualforce (seção)

  • cisco_wxcc_scv.CiscoScvLoginWxCC
  • cisco_wxcc_scv.CiscoScvMainWxCC
  • cisco_wxcc_scv.CiscoScvOAuthRedirecionar
  • cisco_wxcc_scv.CiscoScvSwLoader

Wrapper da API de voz em nuvem de serviço

Pré-requisitos

Para usar o Wrapper da API de voz em nuvem de serviço, um aplicativo do cliente externo do Salesforce para integração de IVR deve ser configurado.

Usar o wrapper da API de voz em nuvem de serviço

O Service Cloud Voice (SCV) para o Salesforce usa a REST API de integração de telefonia para criar e atualizar VoiceCalls, executar fluxos de Omni-Channel e excluir registros PendingServiceRouting associados a um VoiceCall. Este serviço requer autorização JWT e o uso do método HTTP PATCH, que atualmente não é suportado pelo Cisco IP Interactive Voice Response (IVR).

A fim de simplificar o uso da API REST de integração de telefonia para SCV em (não apenas) um sistema IVR, um novo conjunto de APIs foi disponibilizado, que envolvem a API do Salesforce existente e são acessíveis diretamente da Salesforce Org, onde o pacote Webex Contact Center para Service Cloud Voice está instalado.

O Wrapper da API de voz em nuvem de serviço remove a necessidade de autenticar um token JWT, implementa verificações adicionais nos dados exigidos pela API do Salesforce e melhora os objetos de resposta.

Recuperar o Access_Token

Execute uma solicitação POST para https://<seu-domain-name>.my.salesforce.com/services/oauth2/token

Enviar os seguintes parâmetros no corpo:

{
 "grant_type": "client_credentials",
 "client_id": "<consumer key of the connected app>",
 "client_secret": "<consumer secret of the connected app>"
 }
If the request is successful, the following JSON response will be returned:
{
 "access_token": "<your-access-token>",
 "instance_url": "<your-org-base-url>",
 "id": "https://login.salesforce.com/id/<id>/<id>",
 "token_type": "Bearer",
 "issued_at": "<timestamp>",
 "signature": "<unique-signature-code>"
 }

Executar as solicitações

O URL da ocorrência deve conter my.salesforce.com.

Exemplo de uma URL de ocorrência correta: https://abc-123.my.salesforce.com

O uso de qualquer outro domínio como a URL de ocorrência (ou seja, https://abc-123.lightning.force.com ) resulta em um status 401 Não autorizado com um Código de error INVALID_SESSION_ID retornado.

Criar chamada de voz (seção)

Cria um registro do VoiceCall contendo os participantes (ou seja, o chamador e o destinatário) do registro do VoiceCall. Quando você cria um registro do VoiceCall, uma conversa é criada no Salesforce. Use esta API apenas em um contexto em tempo real, o que significa que você deve chamar essa API somente quando uma chamada for iniciada. Essa API também pode ser usada para criar registros de VoiceCall para chamadas de transferência e conferência, incluindo o parâmetro parentVoiceCallId na carga útil da solicitação.

URI do terminal

<instance_url>/serviços/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall

Método HTTP

PUBLICAR

Cabeçalhos

Autorização: Portador <access_token>

Tipo de conteúdo: application/json

Parâmetros

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "vendorCallKey": "5324881f-1e84-4367-8930-f69a74b30ca6",
 "to": "8002345678",
 "from": "4081456688",
 "initiationMethod": "Inbound",
 "startTime": "2019-07-02T17:32:28Z",
 "participants": [
 {
 "participantKey": "4081456688",
 "type" : "END_USER"
 }
 ],
 "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
 "parentVoiceCallId": "fsdfzuhsdfsa-43556fgef3-56g44gv4ew",
 "callOrigin": "Preview",
 "queue": "queue123"
 }

Uma descrição detalhada sobre os parâmetros aceitos por essa solicitação pode ser encontrada na documentação oficial do Salesforce, na seção de "Parâmetros".

Resposta (bem-sucedida)

{
 "data": {
 "voiceCallId": "00X000012345abc"
 },
 "errors": null,
 "success": true
 }

Resposta (com erros)

 
{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

Atualizar chamada de voz

Atualiza o VoiceCall após o término da chamada. Use essa API para atualizar parâmetros relacionados à chamada que não estão disponíveis durante o estágio de criação do VoiceCall. A atualização da API do VoiceCall é uma operação assíncrona. Não é possível consultar o status da chamada da API.

Esse terminal também pode ser usado para criar um VoiceCall, mesmo após o término da chamada. Esse comportamento é útil em cenários em que você deseja fazer um registro no Salesforce de chamadas abandonadas ou perdidas ou em qualquer outro cenário em que um VoiceCall ainda não tenha sido criado.

URI do terminal

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall

Método HTTP

PUBLICAR

Cabeçalhos

Autorização: Portador <access_token>

Tipo de conteúdo: application/json

Parâmetros

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "voiceCallId": "00X000012345abc",
 "startTime": "2020-08-26T21:21:14Z",
 "endTime": "2019-08-26T21:21:34Z",
 "isActiveCall": true,
 "fromNumber": "1234",
 "callOrigin": "Preview",
 "enqueueTime": "2019-08-26T21:21:34Z",
 "acceptTime": "2019-08-26T21:21:24Z",
 "numberOfHolds": 20,
 "queue": "queue123",
 "agent": "agent123",
 "agentInteractionDuration": 12,
 "longestHoldDuration": 10,
 "totalHoldDuration": 21,
 "recordingLocation": "Bern",
 "totalRecordingDuration": 55,
 "callAttributes": "{\"devscv24__AAA_Test__c\":\"field value\",\"Other_Field__c\":\"other value\"}",
 "disconnectReason": {
 "value": "TELECOM_PROBLEM",
 "isError": true
 }
 }

Uma descrição detalhada sobre os parâmetros aceitos por essa solicitação pode ser encontrada na documentação oficial do Salesforce, na seção de "Parâmetros".

Resposta (bem-sucedida)

{
 "data": {
 "status": "pending"
 },
 "errors": null,
 "success": true
 }

A atualização da API do VoiceCall é uma operação assíncrona. Não é possível consultar o status da chamada da API.

Resposta (com erros)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

Executar Omni-flow

Executa o fluxo omnicanal para rotear chamadas. Ele passa a ID da chamada (Salesforce VoiceCallId ou ContactId do fornecedor de telefonia) como parâmetros ao fluxo e retorna as instruções de roteamento do agente ou da fila ao fluxo do contato. Por padrão, o Service Cloud Voice usa o fluxo omnicanal (ou fila de fallback) especificado para o canal do telefone que corresponde ao número discado. Se o número discado não corresponder a um canal de telefone existente, você poderá, opcionalmente, definir um novo número discado, fluxo omnicanal e fila de fallback como parâmetros de entrada para esta chamada API.

O Service Cloud Voice usa esta ordem de precedência para encaminhar chamadas:

  1. Usa as configurações de fluxo omnicanal e fila de fallback para o canal do telefone que corresponde ao número discado. O fluxo tem precedência. Se o fluxo falhar, a fila de fallback será usada.
  2. Usa os parâmetros flowDevName e fallbackQueue especificados na chamada API Executar o Omniflow.

URI do terminal

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow

Método HTTP

PUBLICAR

Cabeçalhos

Autorização: Portador <access_token>

Tipo de conteúdo: application/json

Parâmetros

{
  "callCenterDevName": "contactCenterDevName123",
  "certDevName": "certDevName123",
  "voiceCallId": "00X000012345abc",
  "dialedNumber": "+18445791189",
  "flowDevName": "Route_VoiceCall",
  "fallbackQueue": "00G111222333444",
  "flowInputParameters":
  {
    "Input1": "one",
    "Input2": "two"
  }
}

  • O parâmetro voiceCallId é o voiceCallId do Salesforce ou a ID de contato do fornecedor de telefonia.
  • Uma descrição detalhada sobre os parâmetros aceitos por essa solicitação pode ser encontrada na documentação oficial do Salesforce, na seção de "Parâmetros".

Resposta (bem-sucedida)

{
  "data": {
    "queue": "queue info",
    "agent": "agent info"
  },
  "errors": null,
  "success": true
}

AGENT_INFO e QUEUE_INFO correspondem ao campo ExternalId no CallCenterRoutingMap

Resposta (com erros)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

Limpar roteamento

Exclui o registro do PendingServiceRouting (PSR) de uma chamada de voz. Essa API não precisa ser chamada para a maioria dos cenários; o registro do PSR é excluído automaticamente quando a chamada não está mais sendo roteada. No entanto, existem alguns cenários, como chamadas perdidas ou perdidas ao usar sistemas de telefonia de parceiros, em que você deve ligar explicitamente para esta API para limpar o registro PSR.

URI do terminal

<instance_url>/services/apexrest/cisco_wxcc_scv/voice/v1/clearRoteamento

Método HTTP

PUBLICAR

Cabeçalhos

Autorização: Portador <access_token>

Tipo de conteúdo: application/json

Parâmetros

{
 "callCenterDevName": "contactCenterDevName123",
 "certDevName": "certDevName123",
 "voiceCallId": "00X000012345abc"
 }

  • O parâmetro voiceCallId é o voiceCallId do Salesforce ou a ID de contato do fornecedor de telefonia.
  • Uma descrição detalhada sobre os parâmetros aceitos por essa solicitação pode ser encontrada na documentação oficial do Salesforce, na seção de "Parâmetros".

Resposta (bem-sucedida)

{
 "data": {
 "status": "Success"
 },
 "errors": null,
 "success": true
 }

Resposta (com erros)

{
 "data": null,
 "errors": ["Error message 1", "Error message 2"],
 "success": false
 }

Traduções de números de telefone

Várias interações entre o serviço de voz em nuvem e o Webex Contact Center dependem das traduções do número de telefone. Devido a diferenças internacionais e aplicativos específicos do cliente, uma ferramenta personalizável é necessária para transferir números de telefone do formato A para o formato B.

A solução Webex Contact Center para Serviço de voz em nuvem remove automaticamente todos os caracteres, exceto números, hashtags (#), asteriscos (*), vírgulas (,) e sinais de adição à esquerda (+). Ele também remove a primeira ocorrência de (0). Isso será feito ANTES das Traduções do número de telefone serem aplicadas.

Este guia descreve como configurar as traduções de números de telefone.

Campos

As traduções de números de telefone são armazenadas nos campos Nome-Valor. Isso permite configurar um número ilimitado de regras por recurso.

A configuração é armazenada como uma string JSON.

Repare que as barras invertidas precisam de ser escapadas, por exemplo, o \d+ torna- se o\\ d+.

{"Remove all characters but digits":"[1,17]->[^\\d]+","To internal number":"[7,17]->(\\d{7})(\\d{4})->$2"}

O nome do campo não é tecnicamente usado. É necessário adicionar uma cadeia de caracteres legível por humanos, a fim de identificar rapidamente o propósito desta regra. Bons nomes são, por exemplo: Remova todos os zeros à esquerda, Adicionar mais à esquerda etc.

Criando regras de tradução

As regras são fornecidas como Expressões Regulares. Para ser mais preciso: A implementação em JavaScript de Expressões Regulares.

Uma boa maneira de começar é lendo o documento RegExp dos documentos da web MDN.

No entanto, criar Expressões Regulares complexas é muitas vezes complicado. Portanto, adicionamos sintaxe extra para tornar a configuração o mais fácil possível.

A figura abaixo mostra a sintaxe geral de uma regra de tradução de número de telefone:

Predicação

O predicado é usado para especificar um intervalo que define o comprimento do número a ser correspondido.

O predicado acima especifica que todos os números com um comprimento entre 7 e 11 caracteres (incluindo bordas + espaços) correspondem.

Os predicados sempre correspondem ao comprimento original do número. Isso ajuda a simplificar a configuração, reduzindo o risco de colisão de regras em números internos/externos.

Padrão

O Padrão especifica o formato do número a corresponder.

O padrão acima indica que o número deve consistir apenas de dígitos e os seleciona.

Seletor

Os seletores definem o formato final do número. Se for necessário adicionar caracteres/dígitos que não estavam presentes originalmente, este é o lugar para fazê-lo.

O seletor é a última etapa na criação do número. Com base na saída do padrão, o seletor constrói o novo número.

Exemplo 1

O exemplo a seguir mostra como transferir um número recebido do Contact Center no formato 0319175200 para o formato Suíço E164 +41 31 917 52 00.

Este exemplo usa duas regras de tradução (1. e 2.)

A primeira regra neste exemplo na verdade não altera o número. Para números entre 1 e 17 caracteres, qualquer outro item, exceto dígitos, será removido. Como não há nenhum não-dígito presente, nada muda.

A segunda regra se aplica a números que têm exatamente 10 caracteres (originalmente). 0319175200 corresponde e, portanto, a regra é aplicada. O padrão especifica que o número deve começar com um grupo de um dígito (\d{1}), seguido por um grupo de dois dígitos (\d{2}), seguido por um grupo de três dígitos (\d{3}) e assim por diante.

O seletor acessa os grupos de padrões para definir a nova sequência de números. Isso significa que $2 faz referência ao primeiro (\d{2}) e, portanto, contém 31.

Exemplo 2

O exemplo a seguir mostra como transferir um número recebido do Contact Center no formato +14693150217 para o formato E164 dos EUA +1 469 315 0217.

Este exemplo usa duas regras de tradução (1. e 2.)

  1. Esse número tem exatamente 12 caracteres, portanto, a regra "Adicionar espaços a números dos EUA" é aplicada.
  2. (\+1) diz que o número deve começar com +1. Se o número tiver 12 caracteres, mas não começar com um +1, a regra será cancelada e nada será alterado.
  3. (\d{3}) diz que +1 deve ser seguido por 3 dígitos.
  4. (\d{3}) diz que os últimos 3 dígitos devem ser seguidos por outros 3 dígitos.
  5. (\d{4}) diz que os últimos 3 dígitos devem ser seguidos por 4 dígitos.

Se alguma destas opções não corresponder, o número não será alterado.

Portanto, todas as regras se aplicam a "+14693150217". Portanto, o número é alterado por "$1 $2 $3 $4":

  1. $1 refere-se ao grupo (\+1), o número a ser enviado ao Serviço de voz em nuvem parece +1.
  2. $2 refere-se ao primeiro dos dois (\d{3}), o número a ser enviado ao Serviço de voz em nuvem parece +1 469.
  3. $3 refere-se ao segundo dos dois (\d{3}), o número a ser enviado ao Serviço de voz em nuvem parece +1 469 315.
  4. $4 refere-se ao último grupo (\d{4}), o número a ser enviado ao Serviço de voz em nuvem parece +1 469 315 0217.

Os espaços na parte de substituição da regra "$1 $2 $3 $4" são usados diretamente. Então, se você usar "$1-$2-$3-$4", o número será traduzido para: +1-469-315-0217

E você também tem permissão para remover grupos: [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->$2 $3 $4 será traduzido para: 469 315 0217. [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})-> $3 $4 será traduzido para: 315 0217.

Também é possível converter um número internacional dos EUA em um local como: [12, 12]->(\+1)(\d{3})(\d{3})(\d{4})->($2) $3-$4.

Em seguida, o número de entrada "+14693150217" será traduzido para: (469) 315-0217.

Exemplo 3

O exemplo a seguir mostra como transferir um número recebido do Contact Center no formato +491515555531 para o formato E164 alemão +49 151 5555 531.

Este exemplo usa duas regras de tradução (1. e 2.)

  1. Esse número tem exatamente 13 caracteres, portanto, a regra "Adicionar espaços a números alemães" é aplicada.
  2. (\+49) diz que o número deve começar com +49. Se o número tiver 13 caracteres, mas não começar com um +49, a regra será cancelada e nada será alterado.
  3. (\d{3}) diz que +49 deve ser seguido por 3 dígitos.
  4. (\d{4}) diz que os últimos 3 dígitos devem ser seguidos por 4 dígitos.
  5. (\d{3}) diz que os últimos 4 dígitos devem ser seguidos por 3 dígitos.

Se alguma destas opções não corresponder, o número não será alterado.

Então todas as regras se aplicam a "+491515555531". Portanto, o número é alterado por "$1 $2 $3 $4":

  1. $1 refere-se ao grupo (\+49), o número a ser enviado ao Serviço de voz em nuvem parece +49.
  2. $2 refere-se ao primeiro dos dois (\d{3}), o número a ser enviado ao Serviço de voz em nuvem parece +49 151.
  3. $3 refere-se ao segundo dos dois (\d{4}), o número a ser enviado ao Serviço de voz em nuvem parece +49 151 5555.
  4. $4 refere-se ao último grupo (\d{3}), o número a ser enviado ao Serviço de voz em nuvem parece +49 151 5555 531.

O mesmo se aplica à primeira regra. Você pode usar a peça de substituição $1 $2 $3 $4 para escolher o que usar no número.

Mais exemplos Regex de tradução

Descrição Regex de tradução
Remover todos os caracteres, exceto dígitos [1,17]->[^\d]+
Remover todos os caracteres, excepto os dígitos & + [1,17]->[^+\d]+
Descrição Regex de tradução
Remover +1 [12,12]->(.{1})(\d{1})(\d{10})->$3
Remover +1 [10,12]->(^\+1+)(\d+)->$2
Remover +49 [10,15]->(^\+49+)(\d+)->$2
Remover +49 [10,15]->(.{1})(\d{2})(\d{9})->$3
Remover +41 [10,13]->(^\+41+)(\d+)->$2
Remover +41 [10,13]->(.{1})(\d{2})(\d{9})->$3
Remover +XX [10,14]->(^\++)(\d{2})(\d+)->$3
Descrição Regex de tradução
Remova + e substitua-o por zeros EUA E164 [10,12]->(.{1})(\d{1})(\d{10})-> 001 $3
Remova +1 e substitua-o por zeros EUA E164 [10,12]->(^\+1+)(\d+)-> 001$2
Remova + e substitua-o por zeros DE E164 [12,15]->(.{1})(\d{2})(\d{10})-> 0049 $3
Remova +49 e substitua-o por zeros DE E164 [10,12]->(^\+49+)(\d+)-> 0049$2
Remova + e substitua-o por zeros CH E164 [10,13]->(.{1})(\d{2})(\d{9})-> 0041 $3
Remova +41 e substitua-o por zeros CH E164 [10,12]->(^\+41+)(\d+)-> 0041$2
Descrição Regex de tradução
Número dos EUA com espaço [12,17]->(\d{1})(\d{3})(\d{3})(\d{4})->+1 $2 $3 $4
Número dos EUA com espaço [12,17]->(\+1)(\d{3})(\d{3})(\d{4})->$1 $2 $3 $4
Número DE com espaço [12,17]->(\d{2})(\d{3})(\d{4})(\d{3})->+49 $2 $3 $4
Número DE com espaço [12,17]->(\+49)(\d{3})(\d{4})(\d{3})->$1 $2 $3 $4
Número CH com espaço [12,17]->(\d{2})(\d{2})(\d{3})(\d{2})(\d{2})->+41 $2 $3 $4
Número CH com espaço [12,17]->(\+41)(\d{2})(\d{3})(\d{2})(\d{2})->$1 $2 $34

Configuração da página do VoiceCall

Configurar a página de gravação do VoiceCall

A página de registro do VoiceCall vem pré-configurada por padrão, com um layout de coluna 3 e os seguintes componentes:

  • Ações e recomendações
  • Notas de chamada
  • Detalhes da chamada
  • Gravações

Os componentes podem ser removidos ou adicionados à página livremente, dependendo das necessidades comerciais. Diferentes layouts de página também podem ser usados, mas alguns componentes, como o reprodutor de gravações de chamadas e o corpo da conversa, podem caber apenas em áreas médias e grandes do modelo.

Exibir o componente Motivo de conclusão

O componente Motivo de conclusão deve ser exibido durante a chamada e durante a conclusão.

Adicione o componente Motivo de conclusão da Cisco à página de registro do VoiceCall:

  1. Arraste o Cisco Wrap-Up Reason Componente da web Lightning da área Personalizada da lista de Componentes Lightning na página de Gravação de Voz.
  2. Clique em Save.
  3. Clique em Activate.
  4. Clique em Assign as Org Default.
  5. Clique em Save.
  6. Clique em Save novamente e clique em Back arrow para retornar à página.

O comando Cisco Wrap-Up Reason O componente será exibido automaticamente durante a chamada e durante o encerramento:

Se adicionado à página, o componente motivo de conclusão da Cisco será exibido para cada chamada, também se nenhum conclusão estiver configurado no Centro de contatos da Cisco.

Exibir o reprodutor de gravações de chamadas

O reprodutor de gravações de chamadas será exibido se um link de gravação tiver sido salvo para a chamada de voz correspondente.

Siga estas etapas para adicionar o componente do reprodutor de gravações de chamadas à página de gravação de chamadas VoiceCall:

  1. Arraste o componente da web Lightning do reprodutor de gravações de chamadas para a página de Gravação de chamadas de voz
  2. Clique em Save.
  3. Clique em Activate.
  4. Clique em Assign as Org Default.
  5. Clique em Save.
  6. Clique em Save novamente, em seguida, clique na seta Voltar para retornar à página.

Administradores Webex

Configuração do fluxo

Pop-up de tela

Um nó de "Tela pop" está disponível no fluxo do Webex Contact Center. Ele pode ser usado para acionar uma tela pop-up dentro do Service Cloud Voice ou em uma janela separada.

Mais informações sobre essa função podem ser encontradas na documentação do Flow Designer .

Tela pop-up em uma janela separada

Para abrir a tela pop-up em uma janela separada, uma URL absoluta deve ser fornecida no nó "Tela pop-up". Os queryParameters serão anexados como parâmetros de pesquisa ao URL.

Os seguintes modos são compatíveis:

  • Nova guia do navegador - Sempre abre uma nova guia do navegador.
  • Guia do navegador existente - Na primeira tela da guia do navegador Existente, uma nova guia do navegador é aberta. Essa guia será a guia dedicada às subsequentes exibições de tela da guia do navegador existente e a URL será atualizada nessa guia específica do navegador.
  • Dentro do desktop - É tratado da mesma maneira que Nova guia do navegador.

A página aberta no momento pode evitar um redirecionamento. Nesse caso, a tela pop-up da guia do navegador Existente é aberta em uma nova guia do navegador.

Este artigo foi útil?
Este artigo foi útil?