- Página inicial
- /
- Artigo
O Webex Contact Center for salesforce Service Cloud Voice integra o robusto CCaaS (Contact Center as a Service) da Cisco com o CRM da Salesforce, permitindo que as empresas gerenciem interações omnicanais com clientes (voz, digital) na interface do Salesforce, usando o Webex AI para agentes virtuais, transcrição e roteamento inteligente, transformando agentes em “superagentes” com dados unificados para melhores experiências do cliente.
Visão geral
Centro de contato Webex para Salesforce Service Cloud Voice
O Webex Contact Center for Service Cloud Voice é uma solução de integração pronta para uso que traz 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 seção a seguir:
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 habilitar e instalar o pacote Webex Contact Center for Service Cloud Voice.
O SCV Voice Connector Release 1 está geralmente disponível. Este guia inclui os procedimentos de configuração, o provisionamento de telefonia de parceiros e a configuração de logon único (SSO).
Pré-requisitos e limitações
Pré-requisitos (subtópico)
Interfaces de usuário: o Service Cloud Voice está disponível somente no Salesforce Lightning Experience .
O Service Cloud Voice está disponível nas seguintes edições:
- Empresarial
- Ilimitado
- Desenvolvedor
Licenças
-
Os clientes precisam comprar a nova licença complementar A-SF-VOICE por agente conectado, além das licenças Flex 3 Standard ou Premium para o Webex Contact Center. Para obter mais informações, consulte o guia de pedidos do Flex 3.
- Salesforce Voice para telefonia de parceiros
Antes de ativar o Voice, você precisa configurar os serviços de pré-requisito em sua organização.
- Navegue até Informações da empresa > Licença do conjunto de permissões
- Verifique se há Service Cloud Voice User (Partner Telephony).
Todas as edições para desenvolvedores agora vêm com 5 licenças de telefonia de parceiros disponíveis para teste.

- Verifique se há Service Cloud Voice User (Partner Telephony).
- Como alternativa, você pode verificar isso acessando a Configuração do Salesforce e pesquisando por
“voz” na barra lateral esquerda.

- Se “Partner Telephony Contact Centers” aparecer, você tem a licença SCV .
- Se a opção “Centros de contato de telefonia de parceiros” não estiver visível, então
“Ativar o Service Cloud Voice” seguindo as etapas abaixo.
- Acesse a Configuração do Salesforce, pesquise e selecione "Configuração de telefonia do parceiro"
e alterne o botão para "Ativar o Service Cloud Voice”.

- Ative o Omni-Channel para permitir que seus agentes façam e recebam chamadas.
- Acesse a Configuração do Salesforce, pesquise e selecione "Configuração de telefonia do parceiro"
e alterne o botão para "Ativar o Service Cloud Voice”.
Ativar o Omni-Channel
Se o Omni-Channel já estiver ativado em sua organização, pule esta etapa.
- Em Configuração, insira Configurações do Omni-Channel na caixa Busca rápida e
selecione Configurações do Omni-Channel.


- Selecione Ativar Omni-Channel.
- Clique em Salvar.
Limitações
- A voz está disponível somente no Lightning Experience.
- O Voice é suportado no Service Cloud e no Sales Cloud como uma licença complementar.
- O Voice não é suportado no Salesforce Mobile ou no iPad Safari.
- A voz é suportada somente nos navegadores Google Chrome, Microsoft Edge (Chromium) e Mozilla Firefox. Os cookies devem estar habilitados para permitir o login único (SSO).
- A navegação padrão não é suportada.
- A telefonia é altamente regulamentada, portanto, verifique com seu representante da Salesforce a disponibilidade do Voice em sua região.
- A conferência multipartidária não é suportada pelo conector de voz do Salesforce Service Cloud.
Requisitos
Pacote Salesforce 1.2 e versões posteriores
Para o Salesforce Package 1.2 ou posterior, a implantação deve considerar a integração digital e de voz e o manuseio do WebSocket keep-alive.
Códigos inativos
Encontre códigos inativos
| 1 |
Faça login noManagement Portal. |
| 2 |
Navegue até Contact Center > EXPERIÊNCIA DE DESKTOP > Códigos ociosos/de encerramento. |
| 3 |
Certifique-se de que os códigos inativos sejam exibidos, caso contrário, clique no botão suspenso do filtro e selecione Código inativo na parte superior da página. |
| 4 |
Clique em um código inativo para abrir a visualização detalhada. Lá você pode encontrar o ID do código de inatividade.
Os IDs podem ser copiados e usados para a configuração do mapeamento do estado de presença. Um dos IDs deve ser usado como o motivo padrão do Cisco Not Ready. |
Limites de tarifa
Esta seção só se aplica ao Pacote de Acesso Antecipado caso um número maior de agentes esteja sendo testado no Pacote de Acesso Antecipado (por exemplo, 0,2). Isso NÃO é necessário para o pacote GA.
O Webex Contact Center aplica limites de taxa de API padrão à integração da organização do Contact Center. Consulte os limites de taxa da API para obter detalhes.
O limite da taxa precisa ser aumentado. Para conseguir isso:
- Crie um ticket com o suporte do Webex Contact Center.
- Especifique a organização do Webex Contact Center e o limite de taxa de API de integração padrão exigido (para cálculo, veja abaixo).
- Mencione que o aumento do limite de taxa da API é necessário porque você está usando o Webex Contact Center for Service Cloud Voice.
Webex Contact Center for Service Cloud Voice, 15 solicitações por agente por minuto para a integração da organização do Contact Center. Para calcular um bom ponto de partida para seu limite de taxa, você pode usar a seguinte fórmula:
Limite de taxa por minuto = 15* número máximo de agentes trabalhando em paralelo na organização do Webex Contact Center
Integrar
Instalação
Antes de prosseguir 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 Service Cloud Voice
Quando uma licença do Service Cloud Voice for Partner Telephony é obtida, a página Partner Telephony Setup aparece no menu Configurar.
Mais informações podem ser encontradas na referência oficial da Salesforce (link direto).
| 1 |
|
| 2 |
Ative a opção Ativar voz com a telefonia de parceiros. A página Partner Telephony Contact Centers aparece no menu Configuração.
Se você planeja implantar o pacote em uma sandbox do Salesforce, substitua a
|
Instale o pacote
Para instalar o pacote:
| 1 |
Abra o link fornecido do pacote para iniciar a instalação. |
| 2 |
Faça login na organização do Salesforce em que o pacote deve ser instalado. |
| 3 |
No assistente de instalação, escolha a opção de segurança “Instalar somente 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 for Service Cloud Voice. Além disso, conceda a eles essas permissões; os conjuntos de permissões que vêm com o pacote Webex Contact Center for Service Cloud Voice ajudam nesse processo. Assistente de instalação de pacotes — A tela de boas-vindas é exibida: O pacote de instalação não pode ser acessado diretamente pelo 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 e a ativação da Cisco. |
| 4 |
Conceda os seguintes conjuntos de permissões a pelo menos um usuário, para que você possa criar o Contact Center:
|
| 5 |
Clique em Configurar | Usuários | Usuários. |
| 6 |
Pesquise e selecione um usuário. |
| 7 |
Role para baixo até “Atribuições do conjunto de permissões”. |
| 8 |
Clique em Editar tarefas |
| 9 |
Para administradores do Contact Center: atribua o conjunto de permissões do administrador do contact center ( telefonia do parceiro).
|
| 10 |
Para agentes do Contact Center: atribua o conjunto de permissões do agente do Contact Center ( telefonia do parceiro) e o conjunto de permissões do agente Webex Contact Center SCV.
Não é recomendável escolher a opção Instalar para todos os usuários, pois isso concede todas as permissões (ler, criar, editar e excluir) nos componentes e objetos do pacote 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.
|
| 12 |
Como alternativa, você pode clicar em Configurar | Usuários | Usuários. . |
| 13 |
Pesquise e selecione o usuário. |
| 14 |
Role para baixo até Pacotes gerenciados. |
| 15 |
Clique em Atribuir licenças. |
| 16 |
Escolha o pacote Webex Contact Center para Service Cloud Voice na lista. |
| 17 |
Clique em Adicionar. |
| 18 |
Crie os Status de Presença para definir quais canais de serviço são atribuídos a diferentes status. Os agentes podem entrar no Omni-Channel com status diferentes, dependendo do tipo de trabalho que eles têm direito a receber. |
| 19 |
Em Configuração, insira
|
| 20 |
Clique em Novo. Crie pelo menos um status para “Online” e outro para “Ocupado”.
|
Atribua o (s) status (s) de presença aos agentes
| 1 |
Em Configuração, insira Conjuntos de permissões na caixa Busca rápida e selecione Conjuntos de permissões. |
| 2 |
Clique para abrir o Conjunto de permissões de telefonia do parceiro. |
| 3 |
Clique em Acesso aos status de presença do serviço. |
| 4 |
Clique em Editar. |
| 5 |
Na lista Presenças de serviço disponíveis, selecione os status de presença criados anteriormente e clique em Adicionar para associá-los ao conjunto de permissões. Os agentes atribuídos a esse conjunto de permissões podem entrar no Omni-Channel com qualquer um dos status de presença disponibilizados para eles. |
| 6 |
Clique em Salvar. |
| 7 |
Clique em Gerenciar atribuições na mesma página. Em seguida, clique em Adicionar atribuição no canto superior direito, selecione o usuário desejado, clique em Avançar, selecione uma opção de expiração para os usuários atribuídos (opcional) e clique em Atribuir. O Service Cloud Voice usa um domínio externo para operar com o registro VoiceCall. Os seguintes URLs devem ser adicionados às “Configurações do site remoto” em Configuração (clique aqui para abrir a documentação oficial):
Exemplo: Como encontrar o URL da instância. |
| 8 |
Veja o URL na barra de endereço do seu navegador depois de fazer login. O URL da instância é a parte antes de “.my.salesforce.com” ou “.salesforce.com” ou.” lightning.force.com”. Por exemplo, se sua URL for https://orgfarm-54a38e30ad-dev-ed.develop.my.salesforce-setup.com/, “orgfarm-54a38e30ad-dev-ed.develop” será a URL da sua instância. Exemplo: URL da organização de origem: https://cisco.lightning.force.com Exemplo: URL para adicionar:
|
| 9 |
O item utilitário Omni-Channel é necessário no aplicativo Lightning Service Console para que o agente use o Service Cloud Voice.
A referência oficial da Salesforce pode ser encontrada clicando no botão Vamos fazer isso, que abre a página Configurar a experiência do agente para o Service Cloud Voice with Partner Telephony no Portal de Ajuda da Salesforce (link direto). |
| 10 |
Em Configuração, insira Configuração de telefonia de parceiro na caixa Busca rápida e selecione Configuração de telefonia de parceiro. |
| 11 |
Role para baixo até a seção 5 Mais configurações de voz. |
| 12 |
Para ativar a proteção contra clickjack para páginas do Visualforce com cabeçalhos desativados ao trabalhar com o softphone no Lightning Experience, você deve adicionar os domínios dos quais o softphone e as barras de ferramentas personalizadas são carregados como domínios confiáveis, além do URL da instâ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 Visualizar para.
Exemplo: myDomainName-- .vf.force.com cisco_wxcc_scv Para obter o domínio Salesforce Instance, copie a URL exibida na barra de URL do navegador e adicione-a à lista de domínios confiáveis para quadros embutidos selecionando páginas do Visualforce como tipo de iFrame. Exemplo: mydomainname.lightning.force.com
Se você não tiver um Meu domínio implantado em sua organização, seu formato de URL é diferente. Se você tiver um Meu domínio implantado e os domínios aprimorados não estiverem habilitados em sua organização, seu formato de URL será diferente. Se os domínios aprimorados não estiverem habilitados, a configuração Estabilizar URLs no Visualforce, no Experience Builder, no Site.com studio e nos 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 contra cliques e domínios confiáveis para o Lightning Experience
|
| 13 |
Para exibir os controles de gravação durante as chamadas, os agentes precisam da permissão do
Para atribuí-lo, adicione-o ao conjunto de permissões criado na etapa Status de presença.
|
Configuração
Crie um registro de metadados personalizados de credenciais do Webex Contact Center
| 1 |
Em Configuração, insira o tipo de metadados personalizados na caixa Busca rápida e selecione Tipos de metadados personalizados. |
| 2 |
Na lista, encontre o tipo de metadados personalizados da conexão wxCC. |
| 3 |
Clique em Gerenciar registros na frente da conexão wxCC e, em seguida, em Novo. |
| 4 |
Insira um nome. Exemplo: WebExccMetadata |
| 5 |
Insira o URL padrão de autenticação wxCC e o segredo do cliente para sua organização. Para configuração de telefonia do Salesforce, siga Configurar o conector Salesforce no Webex Control Hub. |
| 6 |
Clique em Salvar. |
| 7 |
Lembre-se do nome da conexão wxCC. Você precisa desse nome na configuração do Contact Center.
|
Centro de contato
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. A Salesforce usa arquivos de definição do Contact Center para apoiar a integração com vários fornecedores de sistemas CTI.
Mais informações podem ser encontradas na documentação oficial da Salesforce (link direto).
Importar o Contact Center
Baixe a versão mais recente do Contact Center aqui.
Atualização da versão 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 fazendo o upgrade de uma versão beta da integração, não reutilize um registro existente do Partner Contact Center. Em vez disso:
- Importe o arquivo XML do Partner Contact Center incluído na versão GA.
- Crie um novo registro do Partner Contact Center usando o XML importado.
- Atualize sua configuração para usar o recém-criado Partner Contact Center.
O XML do GA Partner Contact Center contém valores de configuração atualizados, incluindo o URL correto do conector e outros metadados. A reutilização de um registro do Partner Contact Center criado a partir do Beta XML pode reter valores de configuração desatualizados e impedir que a integração funcione corretamente.
| 1 |
Em Configuração, insira Centros de contato de telefonia de parceiros na caixa Busca rápida e selecione Centrais de contato de telefonia de parceiros. A lista dos Contact Centers existentes (se houver) é exibida.
|
| 2 |
Clique em Criar central de contato no lado direito da página. |
| 3 |
Selecione o Webex Contact Center como seu provedor de telefonia. Em seguida, clique em Avançar.
Um navegador de arquivos é aberto.
|
| 4 |
Selecione o |
| 5 |
Clique em Abrir. O arquivo é importado.
|
| 6 |
Verifique se o seu Contact Center é exibido na visualização da lista de Contact Centers.
|
Configurar o Contact Center
| 1 |
Em Configuração, insira Centros de contato de telefonia de parceiros na caixa Busca rápida e selecione Centrais de contato de telefonia de parceiros. | ||||||||||||||||||||||||||||||
| 2 |
Clique no Contact Center importado anteriormente. | ||||||||||||||||||||||||||||||
| 3 |
Clique em Editar.
| ||||||||||||||||||||||||||||||
| 4 |
Na parte inferior da página do Contact Center, clique no botão Adicionar na seção Usuários do Contact Center. | ||||||||||||||||||||||||||||||
| 5 |
Clique em + ao lado dos usuários que têm acesso ao Contact Center aberto. Somente usuários com |
Personalizar
Aplicativo de cliente externo para integração com o Webex Contact Center
Configurar o aplicativo cliente externo para o Webex Contact Center Salesforce Connector
Para usar o Service Cloud Voice em toda a sua extensão, o fluxo de chamadas do Contact Center pode ser adaptado para criar o registro da chamada de voz e executar um fluxo Salesforce Omni-Channel enquanto a chamada estiver no 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_guidevoice_pt_developer_guide.meta/.htm. voice_pt_generate_certificate
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 => Certificate for the Salesforce External Client App
server.key => Private key for the Salesforce Connector in Webex Control Hub
Conjunto de permissões para o usuário de integração SCV
O conjunto de permissões a seguir concede acesso às classes do Apex usadas pelo Connects for SCV para a integração com os fluxos IVR do Contact Center e o Webex Contact Center for Salesforce for SCV.
A seguir está um exemplo de configuração e descreve as permissões mínimas necessárias para que a integração Contact Center/IVR funcione.
- Em Configuração, navegue até Usuários | Conjuntos de permissões.
- Clique no botão Novo.
- Insira um rótulo, por exemplo: Acesso IVR às classes SCV Apex
- O nome da API é preenchido automaticamente
- Licença: Nenhuma
- Clique no botão Salvar.
- O novo Conjunto de permissões é aberto.
- Navegue até Apex Class Access.
- Clique no botão Editar e adicione as seguintes classes do Apex:
- cisco_wxcc_scv. Roteamento de serviços
- Navegue até Permissões do sistema.
- Clique no botão Editar e ative as seguintes permissões:
- Serviços REST do Apex
- API ativada
Acesso mínimo - Perfil de integrações somente de API
Esse perfil é usado para se integrar ao Webex Contact Center for Salesforce for SCV para criar registros de chamadas de voz e executar o Omni-Flow a partir do fluxo IVR.
A seguir está um exemplo de configuração e descreve as permissões mínimas necessárias para que a integração Contact Center/IVR funcione.
Este é um clone do perfil Acesso mínimo - Integrações somente para API.
- Em Configuração, navegue até Usuários | Perfis.
- Na lista de perfis, pesquise o acesso mínimo ao perfil - Integrações somente de API.
- Clique no nome do perfil para abrir o perfil Acesso mínimo - Integrações somente para API.
- No perfil Acesso mínimo - Integrações somente de API, clique no botão Clonar.
- Insira um novo nome de perfil, por exemplo: Integração SCV.
- Clique no botão Salvar.
- O novo Perfil é aberto.
- Verifique se seu perfil de acesso mínimo — integrações somente de API tem todas as permissões removidas do próprio perfil.
- Navegue até Permissões do sistema.
- Certifique-se de que as seguintes permissões estejam habilitadas:
- API ativada
- Usuário somente da API
Usuário de integração SCV
A seguir está um exemplo de configuração e descreve as permissões mínimas necessárias para que a integração Contact Center/IVR funcione. Nenhuma licença Salesforce Service Cloud Voice ou Webex Contact Center for Salesforce para SCV é necessária para o usuário de integração SCV.
- Em Configuração, navegue até Usuários | Usuários.
- Clique no botão Novo usuário.
- Insira nome, sobrenome e todos os outros campos obrigatórios.
- Licença de usuário: Integração com Salesforce
- Perfil: selecione o perfil criado na etapa anterior (“Perfil de integração SCV”, clone do perfil Minimum Access - API Only Integrations)
- Clique no botão Salvar.
- Abra o novo registro de usuário.
- Atribua o conjunto de permissões criado anteriormente (“Acesso IVR às classes SCV Apex”).
- Atribua o conjunto de permissões License Salesforce API Integration.
Crie o aplicativo Salesforce External Client
Atualmente, a criação de aplicativos conectados é uma funcionalidade controlada pela preferência Permitir criação de aplicativos conectados, que é desativada por padrão para novas organizações e pode ser ativada na página de configurações da nova seção do menu Configuração de aplicativos clientes externos.
- Em Configuração, pesquise Aplicativos Clientes Externos | Configurações.
- Em Aplicativos conectados, defina a caixa de seleção Permitir criação de aplicativos conectados como Ativado para ativar o botão Novo aplicativo conectado.
- Clique no botão Novo aplicativo conectado.
Se o botão Novo aplicativo conectado não aparecer no menu Aplicativos do cliente externo, vá para Aplicativos | Gerenciador de aplicativos | Novo aplicativo conectado.

Configure o aplicativo Salesforce Connected que é usado peloCisco Webex Contact Center. Veja também o artigo: Configurar o aplicativo conectado para o Webex Contact Center Salesforce Connector em https://help.webex.com/en-us/article/n26v7heb/Configure-Connected-App-for-Webex-Contact-Center-Salesforce-Connector.
| 1 |
Para um novo aplicativo conectado, insira os seguintes detalhes:
|
| 2 |
Clique em Salvar e depois em Continuar. |
| 3 |
Na seção API (Ativar configurações do OAuth), clique em Gerenciar detalhes do consumidor.
|
| 4 |
Clique em Copiar e salve a chave do consumidor. A chave do consumidor é usada posteriormente para criar o conector Salesforce no Webex Contact Center Control Hub.
Importante: mantenha a segurança alternando segredos periodicamente Certifique-se de que seus tokens ClientIDs e Client Secrets estejam sendo alternados periodicamente. Consulte Rotate the Consumer Key e Consumer Secret Para garantir que suas integrações existentes não sejam interrompidas, atualize a ID do cliente e o segredo do cliente recém-gerados em todos os fluxos do Contact Center e scripts IVR em que esses segredos são usados. |
| 5 |
Clique em Voltar para gerenciar aplicativos conectados. |
| 6 |
Clique em Gerenciar.
|
| 7 |
Clique em Editar política. |
| 8 |
Na seção Políticas do OAuth, selecione Usuários aprovados pelo administrador são pré-autorizados para usuários permitidos.
|
| 9 |
Clique em Salvar. |
| 10 |
Role para baixo até a seção Conjunto de permissões e clique no botão Gerenciar conjuntos de permissões. Atribua o conjunto de permissões criado anteriormente (“Acesso IVR às classes SCV Apex”).
|
Criar aplicativo de cliente externo Salesforce
Crie um novo aplicativo cliente externo
Há duas opções para conectar seus dados do Salesforce a aplicativos de terceiros. Tanto os aplicativos conectados quanto os aplicativos clientes externos são estruturas para integrar dados. Os aplicativos clientes externos são a próxima geração de aplicativos conectados.
Para configurar o aplicativo Salesforce External Client que é usado por: Cisco Webex Contact Center
- Em Configuração, navegue até Aplicativos | Aplicativos de cliente externo | Gerenciador de aplicativos de cliente externo.
- Clique em Novo aplicativo de cliente externo.
- Aplicativo cliente externo — Informações básicas
- Nome do aplicativo cliente externo: wxCC - SCV
- Nome da API: WxCC_SCV
- E-mail de contato: < your email >
- Estado de distribuição: selecione Local

Aplicativo cliente externo — API (habilitar configurações de OAuth)
- Selecione: Habilitar OAuth
- Configurações do aplicativo
- URL de retorno de chamada: http://localhost:1717/OauthRedirect como um exemplo de URL de retorno de chamada
- Escopos do OAuth
- Selecione os escopos do OAuth:
- Gerencie dados do usuário por meio de APIs (api)
- Execute solicitações a qualquer momento (refresh_token,offline_access)

Ativação de fluxo
- Selecione: Habilitar JWT Bearer Flow
- Clique em Carregar arquivos e faça o upload
server.crtdo arquivo que contém seu certificado digital.

Segurança
Desmarque a opção Exigir segredo para o fluxo do servidor Web.

- Clique no botão Criar.
- Mude para a guia Políticas e clique no botão Editar.
- Políticas — Políticas de OAuth
- Políticas de plug-ins
- Usuários permitidos: selecione Usuários aprovados pelo administrador são pré-autorizados
- Confirme a alteração
- Autorização de aplicativo
- Política de atualização do token: selecione Expirar imediatamente o token de atualização
- Relaxamento de IP: selecione Aplicar restrições de IP

- Políticas de plug-ins
- Políticas — Políticas de aplicativos
- Página inicial — nenhuma
- Selecione conjuntos de permissões — Atribua o conjunto de permissões criado anteriormente (“Acesso IVR às classes SCV Apex”)

- Clique em Salvar.
- Mude para Configurações da guia.
-
Na seção Configurações do OAuth, clique no botão Chave do consumidor e segredo; aguarde o e-mail e verifique sua identidade. Uma nova guia do navegador abre uma tela com detalhes do consumidor.

- Clique em Copiar e salve a chave do consumidor. A chave do consumidor é
usada posteriormente para criar o conector Salesforce no Webex Contact Center Control Hub.

-
Configuração do Webex Contact Center e script para criar registros de chamadas de voz
Para obter o valor total do Salesforce Service Cloud Voice, o fluxo de chamadas no Webex Contact Center deve ser modificado para criar o registro de chamada de voz no Service Cloud Voice assim que a chamada chegar ao Contact Center.
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 Service Cloud Voice API Wrapper.
Pré-requisitos
Para usar o Service Cloud Voice API Wrapper, um aplicativo de cliente externo Salesforce para integração de IVR deve ser configurado.
Configurar o conector Salesforce no Webex Control Hub
| 1 |
Faça login na sua organização de clientes em https://admin.webex.com e navegue até Serviços > Contact Center > Configurações do locatário > Integrações > Conectores. |
| 2 |
No cartão Salesforce, clique em Configurar ou Adicionar conector.
IMPORTANT: MAINTAIN SECURITY BY PERIODICALLY ROTATING SECRETS Certifique-se de alternar regularmente sua chave privada e certificado para manter suas integrações seguras. Atualize a chave privada no conector do Contact Center no Webex Hub e o certificado no aplicativo cliente externo no Salesforce. Dicas de solução de problemas Depois de clicar em Concluído e o conector não salvar:
|
Fluxo principal do Webex Contact Center
| Variável de fluxo | Descrição |
|---|---|
| Variável de fluxo para ID de registro de chamada de voz | ID exclusivo para identificar a chamada. Necessário para criar o
registro da chamada de voz. Formato: wxcc_ <Interaction Id> Exemplo: wxcc_fc4ec7d8 -4c91-49aa-b764-081fbba344a8
|
| Variável local para a hora de início da chamada |
Usado para criar o registro da chamada de voz e ao atualizar a chamada de voz.
|
| Variável local para nome/ID da fila |
Retornado por Execute Omni Flow, usado para roteamento de chamadas. Essa variável só é necessária ao usar o Execute Omni Flow
|
| Variável local para nome/ID do agente |
Retornado por Execute Omni Flow, usado para roteamento de chamadas. Essa variável só é necessária ao usar o Execute Omni Flow
|
Visão geral do fluxo principal

- Gerar chave de chamada do fornecedor
- Definir hora de início da chamada
- Solicitação HTTP: Criar registro de chamada de voz
- Avalie a resposta HTTP para criar registro de chamada de voz
- Tratamento de erros para Criar registro de chamada de voz
- Solicitação HTTP: Execute o Omni Flow
- Avalie a resposta HTTP para executar o Omni Flow
- Tratamento de erros para Execute Omni Flow
- Continue com o roteamento de chamadas
| Fluxo | Descrição |
|---|---|
| Gerar chave de chamada do fornecedor |
Cada chamada tratada no Service Cloud Voice cria um registro de chamada de voz no Salesforce e exige 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 junto com a chamada para o agente usando uma variável de fluxo. O valor vendorCallKey deve estar em conformidade com as seguintes regras:
|
| Definir hora de início da chamada |
Timestamp UTC da hora de início da chamada. Esse carimbo de data/hora é usado para criar o registro da chamada de voz e atualizar o registro da chamada de voz se o chamador desligar antes de ser encaminhado para o agente.
|
| Solicitação HTTP: Criar registro de chamada de voz |
Essa etapa é necessária para cada chamada. Depois que o registro da chamada de voz for criado, o ID do registro da chamada de voz deve ser passado com a chamada para o agente em uma variável, junto com a chave de chamada do fornecedor. Configure a variável usada na configuração do Contact Center no Service Cloud Voice. |
| Configurações de solicitação HTTP |
|
Solicitação HTTP: Criar registro de chamada de voz
Essa etapa é necessária para cada chamada. Depois que o registro da chamada de voz for criado, o ID do registro da chamada de voz deve ser passado com a chamada para o agente em uma variável, junto com a chave de chamada do fornecedor. Configure a variável usada na configuração do Contact Center no Service Cloud Voice.
Configurações de solicitação HTTP
- Rótulo de atividade: CreateVoiceCall
- Use o endpoint autenticado: ativado
- Conector: Conector Salesforce criado na etapa anterior
-
Caminho da solicitação:
/services/apexrest/cisco_wxcc_scv/voice/v1/createVoiceCall - Método: POST
- Tipo de conteúdo da solicitação: aplicativo/JSON
Órgão de solicitação
Ao criar o registro da chamada de voz, você também pode atualizar os campos personalizados no registro da chamada de voz com os dados da chamada. Abaixo estão dois exemplos do corpo da solicitação, um com todos os campos obrigatórios, mas sem atualizar os campos personalizados, e outro com campos personalizados.
Sem atualizar os campos personalizados no registro da 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"
}
]
}
Exemplo de 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 |
|---|---|
| Nome do desenvolvedor do call center | Nome do desenvolvedor do Contact Center |
| Nome do CertDev | Nome da API do certificado (conforme configurado no Contact Center) |
| Chave de chamada do fornecedor | ID de chamada exclusivo: {{SCV_VendorCallKey}} |
| para | Número de chamada/DNIS: {{NewPhoneContact.DNIS}} |
| desde | Número de chamada/ANI: {{NewPhoneContact.ANI}} |
| Hora de início | Timestamp UTC {{SCV_CallStartTime}}(a ser definido logo após a
chamada ser aceita no script) |
| Atributos de chamada |
Use Não use Exemplo:
|
Configurações de análise
- Tipo de conteúdo: JSON
- Variável de saída: SCV_VoiceCallRecordId
-
Expressão de caminho:
$.data.voiceCallId
ID de gravação de chamada de voz, a ser passada ao agente.
Avalie a resposta HTTP para criar registro de chamada de voz
Verifique o status HTTP da solicitação http Create Voice Call:
- Rótulo: StatusCodeCreateVoiceCall
- Variável: createVoiceCall.httpStatusCode
Se o código de status == 200 => bem-sucedido, senão => a solicitação falhou, tratamento de erros
Tratamento de erros para Criar registro de chamada de voz
Somente para demonstração/depuração, reproduza a mensagem dependendo do código de status http.
Se a opção Criar chamada de voz tiver sido bem-sucedida, continue com Execute Omni Flow. Caso contrário, continue com o roteamento de chamadas.
Solicitação HTTP: Execute o Omni Flow (etapa opcional)
Use Execute Omni-Flow quando quiser:
- executar tarefas automatizadas, por exemplo, pesquisar ou criar registros e vincular os registros ao registro da chamada de voz
- pesquise registros e faça screen-pop
- sincronizar filas do Salesforce e da Cisco
- deixe o Service Cloud Voice tomar 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 essa solicitação, certifique-se de enviar Clear Routing 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 de atividade: ExecuteOmniFlow
- Use o endpoint autenticado: ativado
- Conector: Conector Salesforce criado na etapa anterior
- Caminho da solicitação:
/services/apexrest/cisco_wxcc_scv/voice/v1/executeOmniFlow - Método: POST
- Tipo de conteúdo da solicitação: aplicativo/JSON
Órgão de solicitação
Além dos campos obrigatórios, você pode passar dados adicionais como variáveis de entrada para o Omni-Flow. Abaixo estão dois exemplos do corpo da solicitação. Primeiro sem parâmetros de fluxo adicionais, somente campos obrigatórios, o segundo com duas variáveis de entrada.
Exemplo com parâmetros do 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 de atualização dos campos personalizados no registro de chamada 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 |
|---|---|
| Nome do desenvolvedor do call center | Nome do desenvolvedor do Contact Center |
| Nome do CertDev | Nome da API do certificado (conforme configurado no Contact Center) |
| ID de chamada de voz | ID do registro da chamada de voz, criado na etapa anterior:
{{SCV_VoiceCallRecordId}}
|
| Número discado | Número de chamada/DNIS: {{NewPhoneContact.DNIS}}
|
| Nome do FlowDevName | Nome do desenvolvedor do Omni-Flow a ser executado |
| Fila de fallback | ID da fila ou nome da API de fila da fila alternativa do Salesforce |
| Parâmetros de entrada de fluxo |
Entradas adicionais para o fluxo Omni-Channel (par de valores-chave). Exemplo:
|
Configurações de análise
Fila
- Tipo de conteúdo: JSON
- Variável de saída: SCV_OmniFlowQueue
- Expressão de caminho:
$.data.queue
A “fila” retornada de Execute Omni-Flow pode ser usada para roteamento.
Agente- Tipo de conteúdo: JSON
- Variável de saída: SCV_OmniFlowAgent
- Expressão de caminho:
$.data.agent
O “Agente” retornado de Execute Omni-Flow pode ser usado para roteamento.
Avalie a resposta HTTP para executar o Omni Flow
Verifique o status HTTP da solicitação http Execute Omni Flow:
- Etiqueta: StatusCodeExecuteOmniFlow
- Variável: executeOmniflow.httpStatusCode
Se o código de status == 200 => for bem-sucedido, senão => a solicitação falhar, o tratamento do erro.
Tratamento de erros para Execute Omni Flow
Somente para demonstração/depuração, reproduza a mensagem dependendo do código de status http.
Se o Execute Omni Flow for bem-sucedido, as variáveis SCV_OmniFlowQueue e não SCV_OmniFlowAgent serão definidas. Decisão de roteamento no fluxo de chamadas.
Continue 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 a fila e o agente.
Fluxo de eventos do Webex Contact Center
Se o chamador desligar a chamada antes de ser atendida por um agente, devemos atualizar o Service Cloud Voice e encerrar a chamada.
- Se Execute Omni-Flow foi usado, envie Clear Routing para excluir o Pending Service Routing (PSR)
- Enviar Atualizar chamada de voz, para atualizar os horários de início e término no registro da chamada de voz e alterar o status de Novo para Concluído

- PhoneContactEnded - Esse evento é acionado quando uma chamada ao vivo é desconectada e todos os participantes são removidos.
- Solicitação HTTP: roteamento claro
- Solicitação HTTP: Atualizar chamada de voz
Solicitação HTTP: roteamento claro
- Rótulo: ClearRouting
- Use o endpoint autenticado: ativado
- Conector: Conector Salesforce criado na etapa anterior
- Caminho da solicitação:
/services/apexrest/cisco_wxcc_scv/voice/v1/clearRouting - Método: POST
Tipo de conteúdo da solicitação: aplicativo/JSON
Órgão de solicitação
{
"callCenterDevName": "<Contact Center API name>",
"certDevName": "<cert dev name>",
"voiceCallId": "{{SCV_VoiceCallRecordId}}"
}
Parâmetros
| Nome da propriedade | Valor |
|---|---|
| Nome do desenvolvedor do call center | Nome do desenvolvedor do Contact Center |
| Nome do CertDev | Nome da API do certificado (conforme configurado no Contact Center) |
| ID de chamada de voz | ID do registro da chamada de voz, criado na etapa anterior: SCV_VoiceCallRecordId |
Configurações de análise
Nenhuma.
Solicitação HTTP: Atualizar chamada de voz
- Etiqueta: UpdateVoiceCall
- Use o endpoint autenticado: ativado
- Conector: Conector Salesforce criado na etapa anterior
-
Caminho da solicitação:
/services/apexrest/cisco_wxcc_scv/voice/v1/updateVoiceCall - Método: POST
- Tipo de conteúdo da solicitação: aplicativo/JSON
Órgão de 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 }
}
Quando você fornece os dois startTimee endTime, o
Salesforce CallDurationInSecondscalcula. Não
CallDurationInSecondsdesista callAttributes.
Parâmetros
| Nome da propriedade | Valor |
|---|---|
| Nome do desenvolvedor do call center | Nome do desenvolvedor do Contact Center |
| Nome do CertDev | Nome da API do certificado (conforme configurado no Contact Center) |
| ID de chamada de voz | ID do registro da chamada de voz, criado na etapa anterior: SCV_VoiceCallRecordId |
| Hora de início | Carimbo de data/hora UTC do início da chamada {{SCV_CallStartTime}}(conforme usado
para criar o registro da chamada de voz) |
| Horário de término | Carimbo de data/hora UTC atual `{{now () |
| Motivo de desconexão | Motivo para desconectar a chamada. A propriedade isError
precisa ser configurada truepara que seja exibida corretamente. |
Configurações de análise
Nenhuma.
Referências
- Crie uma chave privada e um certificado digital autoassinado
- Configurar o aplicativo conectado para o Webex Contact Center Salesforce Connector
- Configurar conectores de integração para o Webex Contact Center - Salesforce
- Cisco Webex Contact Center Guia de configuração e administração > Designer de fluxo
- API REST de integração telefônica
Tradução de idiomas
(Opcional) Habilitar o Translation Workbench
Essa configuração é aplicável somente se você usar as configurações de idioma de tradução.
| 1 |
Vá para Configuração → Translation Workbench → Configurações do idioma de tradução. |
| 2 |
Clique em Ativar para selecionar o idioma da tradução.
|
(Opcional) Habilitar idiomas somente da plataforma
Essa configuração é aplicável somente para idiomas diferentes de EN-US.
| 1 |
Vá para Configuração → Configurações da empresa → Configurações de idioma. |
| 2 |
Escolha os idiomas necessários. |
| 3 |
Marque as seguintes caixas de seleção:
|
| 4 |
Salve suas alterações.
|
Ative o idioma e selecione o usuário (tarefa)
| 1 |
Vá para Configuração → Translation Workbench → Configurações do idioma de tradução. |
| 2 |
Escolha o idioma e selecione o usuário que o traduzirá. |
| 3 |
Salve suas alterações.
|
Configurações em vários idiomas
Traduzir rótulos personalizados
| 1 |
Vá para Configuração → Etiquetas personalizadas. |
| 2 |
Selecione o nome da etiqueta personalizada a ser aberta.
|
| 3 |
Na lista de Traduções relacionadas, clique |
| 4 |
Selecione o idioma para o qual você está traduzindo.
|
| 5 |
Insira o valor traduzido no campo Texto da tradução. Esse texto substitui o valor especificado no campo Valor do rótulo quando o idioma padrão do 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ões do agente Webex Contact Center SCV contém todas as permissões necessárias para trabalhar com o gadget Webex Contact Center e as integrações desenvolvidas para agentes.
Acesso à classe Apex (seção)
- cisco_wxcc_scv.Cisco SCVWXCC
- cisco_wxcc_scv. Manipulador de respostas do serviço
- cisco_wxcc_scv. Roteamento de serviços
- cisco_wxcc_scv.Manipulador de integração telefônica
Acessos de tipos de metadados personalizados (seção)
- cisco_wxcc_scvConexão.wxCC
Acesso à página do Visualforce (seção)
- cisco_wxcc_scv. Login Cisco SCV WXCC
- cisco_wxcc_scv.Cisco SCVM no WXCC
- cisco_wxcc_scvRedirecionamento de autenticidade. Cisco SCVO
- cisco_wxcc_scv.Cisco SCVSW Loader
Empacotador de API de voz do Service Cloud
Pré-requisitos
Para usar o Service Cloud Voice API Wrapper, um aplicativo de cliente externo Salesforce para integração de IVR deve ser configurado.
Use o Service Cloud Voice API Wrapper
O Service Cloud Voice (SCV) para Salesforce usa a API REST de integração telefônica para criar e atualizar chamadas de voz, executar fluxos Omni-Channel e excluir registros pendingServiceRouting associados a uma chamada de voz. Esse serviço exige autorização do JWT e o uso do método HTTP PATCH, que atualmente não é suportado pelo Cisco IP Interactive Voice Response (IVR).
Para simplificar o uso da API REST de integração telefônica para SCV em (não apenas) um sistema IVR, um novo conjunto de APIs foi disponibilizado, que envolve a API existente do Salesforce e pode ser acessado diretamente da organização da Salesforce onde o pacote Webex Contact Center for Service Cloud Voice está instalado.
O Service Cloud Voice API Wrapper elimina a necessidade de autenticar um token JWT, implementa verificações adicionais nos dados exigidos pela API Salesforce e melhora os objetos de resposta.
Recupere o Access_Token
Execute uma solicitação POST para https://<your-domain-name>.my.salesforce.com/services/oauth2/token
Enviando 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>"
}
Execute as solicitações
O URL da instância deve conter my.salesforce.com.
Exemplo de URL de instância correta: https://abc-123.my.salesforce.com
Usar qualquer outro domínio como URL de instância (por exemplo, https://abc-123.lightning.force.com) resulta em um status 401 Não autorizado com um INVALID_SESSION_ID ErrorCode retornado.
Criar chamada de voz (seção)
Cria um registro de VoiceCall contendo os participantes (ou seja, o chamador e o destinatário) para o registro do VoiceCall. Quando você cria um registro de VoiceCall, uma conversa é criada no Salesforce. Use essa API somente em um contexto em tempo real, o que significa que você deve invocar essa API somente quando uma chamada for iniciada. Essa API também pode ser usada para criar registros de chamadas de voz para chamadas de transferência e conferência, incluindo o parâmetro parentVoiceCallID na carga útil da solicitação.
URI do endpoint
< instance_url >/services/apexrest/ /voice/v1/createVoiceCall cisco_wxcc_scv
Método HTTP
POST
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"
}
Use callAttributessomente para campos personalizados no objeto VoiceCall
.
Os campos padrão do VoiceCall, como Descriptione
CallDurationInSeconds, não são atualizados por meio de.
callAttributes Para preencher
CallDurationInSeconds, forneça startTimee para que o Salesforce
endTimepossa calcular o valor.
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 a chamada de voz após o término da chamada. Use essa API para atualizar os parâmetros relacionados à chamada que não estão disponíveis durante o estágio de criação da chamada de voz. A API Update VoiceCall é uma operação assíncrona. Você não pode consultar o status da chamada de API.
Esse endpoint também pode ser usado para criar uma chamada de voz mesmo após o término da chamada. Esse comportamento é útil em cenários em que você deseja registrar um registro no Salesforce para chamadas abandonadas ou perdidas, ou para qualquer outro cenário em que uma chamada de voz ainda não tenha sido criada.
URI do endpoint
< instance_url >/services/apexrest/ /voice/v1/updateVoiceCall cisco_wxcc_scv
Método HTTP
POST
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 da Salesforce na seção “Parâmetros”.
Resposta (bem-sucedida)
{
"data": {
"status": "pending"
},
"errors": null,
"success": true
}
A API Update VoiceCall é uma operação assíncrona. Você não pode consultar o status da chamada de API.
Resposta (com erros)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
Execute o Omni-Flow
Executa o fluxo do Omni-Channel para rotear chamadas. Ele passa o ID da chamada (Salesforce VoiceCallID ou ContactID do fornecedor de telefonia) como parâmetros para o fluxo e retorna as instruções de roteamento do agente ou da fila para o fluxo de contato. Por padrão, o Service Cloud Voice usa o fluxo Omni-Channel (ou fila alternativa) especificado para o canal telefônico que corresponde ao número discado. Se o número discado não corresponder a um canal telefônico existente, você poderá definir opcionalmente um novo número discado, fluxo do Omni-Channel e fila alternativa como parâmetros de entrada para essa chamada de API.
O Service Cloud Voice usa essa ordem de precedência para rotear chamadas:
- Usa as configurações Omni-Channel Flow e Fallback Queue para o canal telefônico que corresponde ao número discado. O fluxo tem precedência. Se o fluxo falhar, a fila alternativa será usada.
- Usa os parâmetros flowDevName e fallbackQueue especificados na chamada da API Execute Omniflow.
URI do endpoint
< instance_url >/services/apexrest/ cisco_wxcc_scv /voice/v1/executeOmniFlow
Método HTTP
POST
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 Salesforce VoiceCallID ou o 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 da Salesforce na seção “Parâmetros”.
Resposta (bem-sucedida)
{
"data": {
"queue": "queue info",
"agent": "agent info"
},
"errors": null,
"success": true
}
AGENT_INFOe QUEUE_INFO correspondem ao campo ExternalID no CallCenterRoutingMap
Resposta (com erros)
{
"data": null,
"errors": ["Error message 1", "Error message 2"],
"success": false
}
Roteamento claro
Exclui o registro PendingServiceRouting (PSR) de uma chamada de voz. Essa API não precisa ser chamada na maioria dos cenários; o registro PSR é excluído automaticamente quando a chamada não está mais sendo roteada. No entanto, existem alguns cenários, como para chamadas perdidas ou abandonadas ao usar sistemas de telefonia de parceiros, em que você deve chamar explicitamente essa API para limpar o registro PSR.
URI do endpoint
< instance_url >/services/apexrest/ /voice/v1/clearRouting cisco_wxcc_scv
Método HTTP
POST
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 Salesforce VoiceCallID ou o 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 da Salesforce na seção “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 Service Cloud Voice e o Webex Contact Center dependem das traduções de números de telefone. Devido às diferenças internacionais e às aplicações específicas do cliente, é necessária uma ferramenta personalizável para transferir números de telefone do formato A para o formato B.
A solução Webex Contact Center for Service Cloud Voice remove automaticamente todos os caracteres, exceto números, hashtags (#), asteriscos (*), vírgulas (,) e sinais de adição à esquerda (+). Também remove a primeira ocorrência de (0). Isso será feito ANTES que as traduções do seu número de telefone sejam 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 que você configure uma quantidade ilimitada de regras por recurso.
A configuração é armazenada como uma string JSON.
Observe que as barras invertidas precisam ser evitadas, por exemplo,\ d+ se torna \\ d+.
{"Remove all characters but digits":"[1,17]->[^\\d]+","To internal number":"[7,17]->(\\d{7})(\\d{4})->$2"}
Tecnicamente, o campo Nome não é usado. Ele existe para adicionar uma string legível por humanos a fim de identificar rapidamente o propósito dessa regra. Bons nomes são, por exemplo: remover todos os zeros iniciais, adicionar mais à esquerda, etc.
Criação de regras de tradução
As regras são fornecidas como expressões regulares. Para ser mais preciso: a implementação de expressões regulares em JavaScript.
Uma boa maneira de começar é lendo o documento RegExp dos documentos web da MDN.
No entanto, criar expressões regulares complexas geralmente é complicado. Portanto, adicionamos uma 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úmeros de telefone:
Predicado
O predicado é usado para especificar um intervalo que define o tamanho do número a ser correspondido.
O predicado acima especifica que todos os números com comprimento entre 7 e 11 caracteres (incluindo bordas e espaços) coincidem.
Os predicados sempre correspondem ao tamanho original do número. Isso ajuda a simplificar a configuração, reduzindo o risco de colisão de regras para números internos/externos.
Padrão
O Padrão especifica o formato do número a ser correspondido.
O padrão acima afirma que o número deve consistir apenas em dígitos e os seleciona.
Seletor
Os seletores definem o formato final do número. Se precisarem ser adicionados caracteres/dígitos que não estavam originalmente presentes, este é o lugar para fazer isso.
O seletor é a última etapa na construção do número. Com base na saída do padrão, o seletor cria 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 outra coisa, exceto dígitos, seria removida. Como não há nenhum dígito presente, nada muda.
A segunda regra se aplica a números com exatamente 10 caracteres (originalmente). 0319175200 coincide 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.
Em seguida, o seletor acessa os grupos de padrões para definir a nova sequência numérica. Isso significa que $2 faz referência à primeira (\ 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.)
- Esse número tem exatamente 12 caracteres, então a regra “Adicionar espaços aos números dos EUA” é aplicada.
- (\ +1) diz que o número deve começar com +1. Se o número tiver 12 caracteres, mas não começar com +1, a regra será cancelada e nada será alterado.
- (\ d {3}) diz que +1 deve ser seguido por 3 dígitos.
- (\ d {3}) diz que os últimos 3 dígitos devem ser seguidos por outros 3 dígitos.
- (\ d {4}) diz que os últimos 3 dígitos devem ser seguidos por 4 dígitos.
Se nada disso corresponder, o número não será alterado.
Portanto, todas as regras se aplicam a “+14693150217”. Portanto, o número é alterado para “$1 $2 $3 $4”:
- $1 se refere ao grupo (\ +1), o número a ser enviado ao Service Cloud Voice parece +1.
- $2 se refere ao primeiro dos dois (\ d {3}), o número a ser enviado ao Service Cloud Voice parece +1 469.
- $3 se refere ao segundo dos dois (\ d {3}), o número a ser enviado ao Service Cloud Voice parece +1 469 315.
- $4 se refere ao último grupo (\ d {4}), o número a ser enviado ao Service Cloud Voice parece +1 469 315 0217.
Os espaços na parte de substituição da regra “$1 $2 $3 $4” são usados diretamente. Portanto, se você usar “$1-$2-$3-$4”, o número será traduzido para: +1-469-315-0217
E você também pode remover grupos: [12, 12] -> (\ +1) (\ d {3}) (\ d {3}) (\ d {4}) ->$2 $3 $4 serão traduzidos 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 alemão E164 +49 151 5555 531.
Este exemplo usa duas regras de tradução (1. e 2.)
- Esse número tem exatamente 13 caracteres, então a regra “Adicionar espaços aos números alemães” é aplicada.
- (\ +49) diz que o número deve começar com +49. Se o número tiver 13 caracteres, mas não começar com +49, a regra será cancelada e nada será alterado.
- (\ d {3}) diz que +49 deve ser seguido por 3 dígitos.
- (\ d {4}) diz que os últimos 3 dígitos devem ser seguidos por 4 dígitos.
- (\ d {3}) diz que os últimos 4 dígitos devem ser seguidos por 3 dígitos.
Se nada disso corresponder, o número não será alterado.
Portanto, todas as regras se aplicam a “+491515555531”. Portanto, o número é alterado para “$1 $2 $3 $4”:
- $1 se refere ao grupo (\ +49), o número a ser enviado para o Service Cloud Voice parece +49.
- $2 se refere ao primeiro dos dois (\ d {3}), o número a ser enviado para o Service Cloud Voice parece +49 151.
- $3 se refere ao segundo dos dois (\ d {4}), o número a ser enviado ao Service Cloud Voice parece +49 151 5555.
- $4 se refere ao último grupo (\ d {3}), o número a ser enviado para o Service Cloud Voice parece +49 151 5555 531.
O mesmo se aplica à regra um. Você pode usar a peça de reposição $1 $2 $3 $4 para escolher o que usar no número.
Mais exemplos de Regex de tradução
| Descrição | Regex de tradução |
|---|---|
| Remova todos os caracteres, exceto os dígitos | [1,17] -> [^\ d] + |
| Remova todos os caracteres, exceto dígitos e + | [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 US E164 | [10,12] -> (. {1}) (\ d {1}) (\ d {10}) -> 001 $3 |
| Remova +1 e substitua-o por zeros US 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 $3 $4 |
Configuração da página de chamada de voz
Configurar a página de registro do VoiceCall
A página de registro do VoiceCall vem pré-configurada por padrão, com um layout de 3 colunas e os seguintes componentes:
- Ações e recomendações
- Notas da chamada
- Detalhes da chamada
- Gravações
Os componentes podem ser removidos ou adicionados livremente à página, dependendo das necessidades comerciais. Layouts de página diferentes também podem ser usados, mas alguns componentes, como o reprodutor de gravação de chamadas e o corpo da conversa, cabem somente em áreas médias e grandes do modelo.
Exibir o componente Wrap-Up Reason
O componente Wrap-Up Reason deve ser exibido durante a chamada e durante o encerramento.
Adicione o componente Cisco Wrap-Up Reason à página de registro do VoiceCall:
- Arraste o componente web Cisco Wrap-Up Reason Lightning da área Personalizada da lista de componentes do Lightning para a página de registro de chamadas de voz.
- Clique em Salvar.
- Clique em Ativar.
- Clique em Atribuir como padrão da organização.
- Clique em Salvar.
- Clique em Salvar novamente e, em seguida, clique na seta Voltar para retornar à página.
O componente Cisco Wrap-Up Reason será exibido automaticamente durante a chamada e durante o encerramento:
Se adicionado à página, o componente Cisco Wrap-Up Reason é exibido para cada chamada, também se nenhum encerramento estiver configurado no Cisco Contact Center.
Exibir o reprodutor de gravação de chamadas
O reprodutor de gravação 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 Leitor de Gravação de Chamadas à Página de Gravação de Chamadas de Voz:
- Arraste o componente Web do Call Recording Player Lightning para a página de gravação de chamadas de voz
- Clique em Salvar.
- Clique em Ativar.
- Clique em Atribuir como padrão da organização.
- Clique em Salvar.
- Clique em Salvar novamente e, em seguida, clique na seta Voltar para retornar à página.
Administradores do Webex
Configuração de fluxo
Screen Pop
Um nó “Screen Pop” está disponível no Webex Contact Center Flow. 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 .
Screen Pop em uma janela separada
Para abrir a tela pop-up em uma janela separada, uma URL absoluta deve ser fornecida no nó “Screen Pop”. Os queryParameters serão anexados como parâmetros de pesquisa ao URL.
Os seguintes modos são suportados:
- Nova guia do navegador - Sempre abre uma nova guia do navegador.
- Guia do navegador existente - Na primeira tela pop-up da guia do navegador existente, uma nova guia do navegador é aberta. Essa guia será a guia dedicada para as subsequentes exibições de tela da guia do navegador existente e o URL será atualizado nessa guia específica do navegador .
- Inside Desktop - É tratado da mesma forma que a nova guia do navegador.
A página aberta atualmente pode impedir um redirecionamento. Nesse caso, uma tela pop-up da guia do navegador existente é aberta em uma nova guia do navegador.











