Pré-requisitos

Atualmente, esse recurso se aplica apenas a agentes.

Antes de integrar a Webex Contact Center ao console ServiceNow CRM, certifique-se de ter o seguinte:

Siga um dos dois métodos abaixo:

Para casos de desenvolvedor, recomendamos seguir as etapas sob o guia de instância do desenvolvedor.

Se você possuir uma instância licenciada por empresa, siga as diretrizes para instâncias licenciadas por empresa.

Não recomendamos misturar o aplicativo licenciado pela empresa com instâncias de caixa de areia de desenvolvedor.

As seções a seguir descrevem as etapas para instalar o conector ServiceNow para instâncias do desenvolvedor.

1

Inicie uma sessão na sua conta do portal de desenvolvedor ServiceNow e abra o console de administração .

2

Na área Minha instância do menu Conta , clique em Iniciar construção.

ServiceNow developer portalcabeça com o botão 'Start Building' destacado.

3

No caso do seu desenvolvedor, no campo Filtrar navegador no canto superior esquerdo da janela, vá para Plugins.

Instância do desenvolvedor ServiceNow mostrando uma pesquisa do navegador do filtro 'plugins'.

4

Procure o plug-in Openframe que possui o título Openframe. Pode ser necessário percorrer a lista.

Instância do desenvolvedor ServiceNow na tela Aplicativos, mostrando a pesquisa e os resultados de 'OpenFrame'.

5

Clique em Instalar para instalar o plug-in Openframe.

6

Na caixa de diálogo Ativar plug-in, clique em Ativar.

Instância do desenvolvedor ServiceNow mostrando o pop-up de plug-up OpenFrame com o botão 'Ativar' realçado.

7

Quando a ativação do plug-in estiver concluída, clique em Fechar > Recarregar formulário na caixa de diálogo Ativação do plug-in .

Instância do desenvolvedor ServiceNow mostrando o carregamento da ativação de plug-in OpenFrame.

Instância do desenvolvedor ServiceNow mostrando a janela de sucesso de ativação de plug-in OpenFrame com o botão 'Fechar &reload Form' realçado.

8

Para verificar a ativação do plug-in, no campo Filtro do navegador no canto superior esquerdo da janela, navegue até OpenFrame.

9

Clique em Configurações e assegure-se de que o plug-in OpenFrame apareça na lista Configurações de estrutura aberta.

Instância do desenvolvedor ServiceNow mostrando Configurações OpenFrame na pesquisa do navegador de filtro.

1

Faça o download do arquivo XML mais recente conjunto de atualizações do sistema disponível no novo focalizado neste local: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Nome do arquivo: webexcc-servicenow-update-setV(X).xml

Tbsphub repo Webex integrações do CRM do Contact Center – ServiceNow.

2

Em sua instância ServiceNow, no campo Navegador de filtro , na parte superior esquerda da janela, navegue até Conjuntos de atualização do sistema> Retodos de configurações para confirmar.

A instância do desenvolvedor ServiceNow que mostra uma pesquisa no navegador do filtro, na guia 'Todos', para a opção 'Atualizar conjunto' e 'Atualizar conjuntos para confirmar' realçada.

3

Clique em Importar conjunto de atualização de XML link.

Instância do desenvolvedor ServiceNow na página de resultados Atualizar conjuntos com 'Links relacionados: Importar conjunto de atualizações de XML' realçada.

4

Clique em Escolher arquivo, selecione o Conjunto de atualizações do sistema XML arquivo e clique em Carregar.

Tela de importação da instância do desenvolvedor ServiceNow XML.

O portal de desenvolvedor ServiceNow recuperou a lista de conjuntos de atualizações.

O conjunto de atualização aparece na lista Conjuntos de atualização recuperados e está no estado Carregado .
5

Na lista Conjuntos de atualização recuperados, clique no Nome do arquivo do conjunto de atualizações (link) para abrir o Conjunto de atualizações.

O ServiceNow developer portal recuperou lista de conjuntos de atualizações para um arquivo atualizado.

6

No canto superior direito da janela, clique em Visualizar atualização definido para verificar o conjunto de atualizações dos problemas.

O portal de desenvolvedor ServiceNow recuperou lista de conjuntos de atualizações para um arquivo atualizado com o botão 'Conjunto de atualização de visualização' realçado.

7

Clique em Fechar , na caixa de diálogo Atualizar visualização do conjunto, depois que a visualização for concluída.

ServiceNow developer portal com a notificação de sucesso de visualização do conjunto de atualizações.

8

Clique em Confirmar conjunto de atualização.

O portal de desenvolvedor ServiceNow recuperou lista de conjuntos de atualizações para um arquivo atualizado com o botão 'Confirmar conjunto de atualizações' realçado.

9

Clique em Fechar , na caixa de diálogo Atualizar conjunto de confirmação , depois que a realização do Conjunto de Atualizações for concluída.

ServiceNow developer portal com a notificação de sucesso de comprometimento do conjunto de atualizações.

1

No campo Filtro do navegador no canto superior esquerdo da janela, digite sys_properties.list e pressione Enter.

Instância do desenvolvedor ServiceNow mostrando uma pesquisa no navegador do filtro na guia 'Todos' para 'sys_properties.list'

2

Na página Propriedades do sistema, classifique as propriedades pela data atualizada. Verifique se você pode ver as seguintes propriedades da Webex Central de contatos:

Página de propriedades do sistema de instância do desenvolvedor ServiceNow.

3

Clique em agentdesktop_url para abrir a página agentdesktop_url de propriedade do sistema.

4

No campo Valor , digite a URL da Webex Contact Center Desktop de acordo com a região de operação.

Detalhes de propriedade do sistema de instância do desenvolvedor ServiceNow para agentdesktop_url.

5

Clique em Atualizar para salvar as alterações.

6

(Opcional) Para alterar o nome da tabela Atividade, edite as propriedades da webexccitytable conforme necessário.

Na página Propriedades do sistema, clique em Webexccitytable.

Altere o campo Valor conforme necessário.

Detalhes da propriedade do sistema de instância do desenvolvedor ServiceNow para Webexactivitytable.

7

(Opcional) Adicione grupos de usuários das seguintes maneiras:

  1. No campo Filtro do navegador no canto superior esquerdo da janela, navegue para Grupos em Segurança do sistema.

    ServiceNow developer instance filter navigator search for ‘Groups’ under ‘System Security’
  2. Crie um novo grupo de usuários ou use um existente.

    Página de grupo de instância do desenvolvedor ServiceNow para WebexccAgentsGroup.

  3. Clique em Editar.

  4. Procure sn_openframe_user na Coleção e mova-o para seu grupo de usuários.

    A página de editar membros do grupo de instância do desenvolvedor ServiceNow mostrando uma pesquisa de uma coleção.

    A página de membros de edição do grupo de instância do desenvolvedor ServiceNow mostrando uma coleção movida para a lista de funções.

  5. Clique em Save (Salvar).

  6. Adicione o usuário como um membro do grupo.

    Página de grupo de instância do desenvolvedor ServiceNow com funções de usuário atribuídas.

1

No campo Navegador de filtro , navegue até OpenFrame > Configurações.

A instância do desenvolvedor ServiceNow filtra o navegador com 'openframe' no campo de pesquisa e 'Configurações' em 'OpenFrame' realçado nos resultados.

2

Clique em Novo.

Instância do desenvolvedor ServiceNow OpenFrame Configurations com 'Novo' destacado.

3

Digite as seguintes propriedades para o URL:

  • Nome: Webex Contact Center Desktop

  • Título: Webex Contact Center

  • Largura: 550 (recomendado)

  • Altura: 600 (recomendado)

4

À direita do campo URL , clique no botão Bloquear e adicione agentdesktop.do como URL. (Faça essa etapa para apontar a configuração para a página UI)

Instância do desenvolvedor ServiceNow OpenFrame Configurations – Página Novo registro com o ícone de cadeado realçado.

5

(Opcional) Selecione o Usuário/Grupos de Agentes para atribuir a configuração.

Instância do desenvolvedor ServiceNow OpenFrame Configurations – Seleção do grupo de usuários New Record.

6

Clique em Enviar. A URL é exibida como um link.

Instância do desenvolvedor ServiceNow OpenFrame Configurations – Página Novo registro mostrando o link da URL exibido após enviar as seleções do grupo de usuários.

7

Antes de tentar usar o telefone OpenFrame, assegure-se de fazer o upload do arquivo JSON de Layout de Área de Trabalho personalizado ServiceNow no Webex Contact Center Management Portal. Para obter mais informações, consulte Configurar o ServiceNow Desktop Layout na Webex Contact Center.

1

Faça o download do layout de Desktop para ServiceNow de https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Tela Diagrama a Webex Integrações do CRM do Centro de Contatos – Layouts de Área de Trabalho – ServiceNow.

2

Atualize as propriedades no arquivo Layout de área de trabalho, se necessário.

3

Vá para o Webex Portal de Gerenciamento de Central de Contatos.

4

Na barra de navegação do Portal de Gerenciamento, escolha Layout de Provisionamento > Desktop.

Webex página de provisionamento do Portal de Gerenciamento de Central de Contatos com Layout de Área de Trabalho destacado na navegação esquerda.

5

Clique em Novo Layout e insira os detalhes do layout da área de trabalho.

6

Carregue o arquivo JSON de layout de área de trabalho ServiceNow.

7

Clique em Salvar para salvar a configuração.

Agora você pode iniciar o Webex Contact Center Desktop no console ServiceNow.

8

No campo Navegador de filtro , navegue até a área de trabalho de operações de serviço.

Página inicial ServiceNow com o Webex Contact Center Agent Desktop integrado ao ServiceNow.

As seções a seguir descrevem as etapas para instalar o conector ServiceNow para instâncias empresariais licenciadas.

1

Inicie uma sessão na sua conta do portal de desenvolvedor ServiceNow e abra o console de administração .

2

Na área Minha instância do menu Conta , clique em Iniciar construção.

ServiceNow developer portalcabeça com o botão 'Start Building' destacado.

3

No caso do seu desenvolvedor, no campo Filtrar navegador no canto superior esquerdo da janela, vá para Plugins.

Instância do desenvolvedor ServiceNow mostrando uma pesquisa do navegador do filtro 'plugins'.

4

Procure o plug-in Openframe que possui o título Openframe. Pode ser necessário percorrer a lista.

Instância do desenvolvedor ServiceNow na tela Aplicativos, mostrando a pesquisa e os resultados de 'OpenFrame'.

5

Clique em Instalar para instalar o plug-in Openframe.

6

Na caixa de diálogo Ativar plug-in, clique em Ativar.

Instância do desenvolvedor ServiceNow mostrando o pop-up de plug-up OpenFrame com o botão 'Ativar' realçado.

7

Quando a ativação do plug-in estiver concluída, clique em Fechar > Recarregar formulário na caixa de diálogo Ativação do plug-in .

Instância do desenvolvedor ServiceNow mostrando o carregamento da ativação de plug-in OpenFrame.

Instância do desenvolvedor ServiceNow mostrando a janela de sucesso de ativação de plug-in OpenFrame com o botão 'Fechar &reload Form' realçado.

8

Para verificar a ativação do plug-in, no campo Filtro do navegador no canto superior esquerdo da janela, navegue até OpenFrame.

9

Clique em Configurações e assegure-se de que o plug-in OpenFrame apareça na lista Configurações de estrutura aberta.

Instância do desenvolvedor ServiceNow mostrando Configurações OpenFrame na pesquisa do navegador de filtro.

1

No campo Filtrar navegador no canto superior esquerdo da janela, digite sys_properties.list.

Instância do desenvolvedor ServiceNow mostrando uma pesquisa no navegador do filtro na guia 'Todos' para 'sys_properties.list'

2

Na página Propriedades do sistema, classifique as propriedades pela data atualizada. Verifique se você pode ver as seguintes propriedades da Webex Central de contatos:

Resultados da página propriedades do sistema de instância do desenvolvedor ServiceNow.

3

Clique em agentdesktop_url para abrir a página agentdesktop_url de propriedade do sistema.

4

No campo Valor , digite a URL da Webex Contact Center Desktop de acordo com a região de operação.

Página de detalhes da propriedade do sistema de instância do desenvolvedor ServiceNow para agentdesktop_url.

5

Clique em Atualizar para salvar as alterações.

6

(Opcional) Para alterar o nome da tabela atividade, edite as propriedades x_caci_webexcc.webexccitytable conforme necessário.

  1. Na página Propriedades do sistema, clique em x_caci_webexcc.webexccitytable.

    Resultados da página de propriedades do sistema de instância do desenvolvedor ServiceNow para x_caci_webexcc.webexccitytable.

  2. Altere o campo Valor conforme necessário.

    ServiceNow página de propriedade do sistema de instância do desenvolvedor para x_caci_webexcc.webexccitytable.

7

(Opcional) Adicione grupos de usuários das seguintes maneiras:

  1. No campo Filtro do navegador no canto superior esquerdo da janela, navegue para Grupos em Segurança do sistema.

    Os resultados do navegador do filtro de instância do desenvolvedor ServiceNow para 'Grupos'.

    Página de grupo de instância do desenvolvedor SeviceNow para o grupo de webexccagentsgroup.

  2. Clique em Editar e adicione as seguintes funções:

    • sn_openframe_user

    • x_caci_webexcc.agente

    • agent_workspace_user

    • x_caci_webexcc.webexcc_imp_activity_user

    • x_caci_webexcc.webex_contact_center

    Página de grupo de instância do desenvolvedor SeviceNow para grupo de webexccagentsgroup com rolos adicionados.

1

No campo Navegador de filtro , navegue até OpenFrame > Configurações.

O navegador de filtros de instância do desenvolvedor do ServiceNow tem "openframe" no campo de pesquisa e "Configurações" em "OpenFrame" destacado nos resultados.

2

Clique em Novo.

Página de configurações do OpenFrame da instância do desenvolvedor do ServiceNow com "Novo" destacado.

3

Insira as seguintes propriedades para o URL:

  • Nome: Webex Contact Center Desktop

  • Título: Webex Central de Contato

  • Largura: 550 (Recomendado)

  • Altura: 600 (Recomendado)

4

À direita do campo URL , clique no botão Bloquear e adicione x_caci_webexcc_agentdesktop.do como URL. (Siga esta etapa para apontar a configuração para a página da IU)

Instância do desenvolvedor ServiceNow Configurações OpenFrame – página Novo registro com o ícone de cadeado destacado.

5

(Opcional) Selecione os grupos de usuários/agentes para atribuir a configuração.

Configurações OpenFrame da instância do desenvolvedor ServiceNow – Seleção de grupo de usuários do Novo Registro.

6

Clique em Enviar. O URL aparece como um link.

Configurações OpenFrame da instância do desenvolvedor ServiceNow – Novo registro com URL adicionado.

7

No campo Navegador de filtros , navegue até Espaço de trabalho de operações de serviço.

Página inicial do ServiceNow com Webex Contact Center Agent Desktop integrado ao ServiceNow.

8

(Opcional) Na lista Grupo de usuários , mova os grupos de usuários que podem acessar o Contact Center Desktop Webex de Disponível para Selecionado.

9

Antes de tentar usar o telefone OpenFrame, certifique-se de carregar o arquivo JSON do Layout de Área de Trabalho personalizado do ServiceNow no Portal de Gerenciamento do Contact Center Webex. Para obter mais informações, consulte Configurar o layout da área de trabalho do ServiceNow no Webex Contact Center.

1

Baixe o layout da área de trabalho para o ServiceNow em https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow.

Tela do Github para Webex Integrações de CRM do Contact Center – Layouts de desktop – ServiceNow.

2

Atualize as propriedades no arquivo Desktop Layout, se necessário.

3

Acesse o Portal de Gerenciamento do Contact Center Webex.

4

Na barra de navegação do Portal de geranciamento, escolha Provisionamento > Layout da área de trabalho.

Webex Página de provisionamento do Portal de Gerenciamento do Contact Center com Layout de Desktop destacado na navegação à esquerda.

5

Clique em Novo layout e insira os detalhes do layout da área de trabalho.

6

Carregue o arquivo JSON do Layout da Área de Trabalho do ServiceNow.

7

Clique em Salvar para salvar a configuração.

Agora você pode iniciar o Contact Center Desktop Webex no console do ServiceNow.

8

No campo Navegador de filtros , navegue até Espaço de trabalho de operações de serviço.

Página inicial do ServiceNow com Webex Contact Center Agent Desktop integrado ao ServiceNow.

1

No campo Navegador de filtros , navegue até Incidentes > Abrir incidente.

2

Clique com o botão direito do mouse no campo do chamador e clique em Configurar dicionário.

Janela Incidentes da instância do desenvolvedor do ServiceNow com a opção Configurar diretório destacada.

3

Adicione atributos separados por vírgula "ref_contributions=show_phone,.

Janela de incidente de chamada de instância do desenvolvedor do ServiceNow para uma entrada de diretório.

Agora você pode começar a usar o Contact Center Desktop Webex no console do ServiceNow.

4

No campo Navegador de filtros , navegue até Espaço de trabalho de operações de serviço.

Página inicial do ServiceNow com Webex Contact Center Agent Desktop integrado ao ServiceNow.

Oferecemos suporte para login em Agent Desktop usando apenas conectores WebRTC para Salesforce (SFDC) e Microsoft Dynamics (MS Dynamics).

Agent Desktop no Console do ServiceNow

Antes de fazer chamadas externas, certifique-se de fazer o seguinte:

  • Crie o ponto de entrada de discagem externa e configure uma estratégia de ponto de entrada de discagem externa.

  • Habilitar ANI de discagem externa para o Perfil do Agente.

  • Defina o ANI de discagem externa para um mapeamento de número de discagem para ponto de entrada.

Para obter mais informações, consulte o capítulo Provisionamento do Guia de configuração e administração do Cisco Webex Contact Center.

No campo Navegador de filtros , navegue até Espaço de trabalho de operações de serviço.

Página inicial do ServiceNow com Webex Contact Center Agent Desktop integrado ao ServiceNow.

Para obter informações sobre como usar o Desktop, consulte a guia Agente na ajuda do Webex Contact Center.

Visão geral

Este artigo aborda várias maneiras de personalizar suas regras de negócios para o conector do ServiceNow CRM. Ele detalha como você pode personalizar os casos de uso com base em regras de negócios específicas do ServiceNow.

O cliente deve autogerenciar esses casos de uso no ServiceNow. A configuração é específica do ServiceNow e não do software ou experiência do Webex Contact Center.

Esta é uma documentação de referência para auxiliar na modificação de regras de negócios. Os desenvolvedores do ServiceNow criarão e gerenciarão as regras de negócios e fornecerão suporte.

A Cisco fornece apenas documentação de amostra.

As seções a seguir fornecem detalhes sobre como configurar, habilitar e gerenciar o widget Ações para instâncias de desenvolvedor e corporativas.

Confirme o conjunto de atualizações para o widget de ações

Para instâncias corporativas licenciadas, instale o aplicativo Contact Center mais recente Webex do Loja ServiceNow.

Para configurar o widget Ações para as instâncias do desenvolvedor, baixe o arquivo mais recente do Conjunto de Atualizações do Sistema XML disponível no repositório do GitHub neste local: https://github.com/CiscoDevNet/webex-contact-center-crm-integrations/tree/main/ServiceNow/ActionsWidget. O nome do arquivo é webexcc-servicenow-update-setv7-1-ActionsWidget.xml. Para confirmar o conjunto de atualizações para o widget Ações, consulte as etapas 2 a 9 em Confirme o conjunto de atualizações.

Habilitar widget de ações

Use a propriedade isWidgetDisplayEnabled para habilitar o widget Ações. Você não deve modificar o valor desta propriedade na seção headless do layout da área de trabalho personalizada. A propriedade é sempre definida como falsa na seção headless do layout da área de trabalho personalizada. Você deve atualizar o valor da propriedade somente na seção do painel do layout da área de trabalho personalizado.

Depois de habilitar o widget Ações no layout da área de trabalho personalizado, você pode executar as seguintes ações:

  • Gerenciar registros de atividades — Clique em Exibir/Editar registro de atividades para visualizar a lista de registros de atividades associados ao chamador.
  • Associar objetos de CRM — Clique em Associar aos registros de atividade para adicionar objetos de CRM, como tipo de chamada (entrada ou saída), objeto de chamada, notas de chamada e assim por diante ao registro de atividade.
  • Gerenciar incidentes — Clique em Criar incidente. Um novo incidente é criado com os detalhes do chamador pré-preenchidos. Você pode fazer as atualizações necessárias no incidente. Você pode escolher modificar o tipo de registro de incidente para caso, módulo de RH e assim por diante, com base em suas necessidades. Para alterar o tipo de registro, modifique o valor da propriedade typeOfRecord na configuração do widget Ações. Por exemplo:
    { "comp": "md-tab-panel", "attributes": { "slot": "panel", "class": "widget-pane" }, "children": [ { "comp": "agentx-custom-desktop", "script": "https://cx-crmconnector.ciscoccservice.com/servicenow/v5/dist/index.js", "properties": { "isWidgetDisplayEnabled": true, "typeOfRecord" : "Criar incidente" }, "wrapper": { "title": "Ações do SNOW!", "maximizeAreaName": "app-maximize-area" } } ] }
  • Adicionar notas de chamadas ao vivo — Você pode capturar informações adicionais sobre a chamada na área de texto e encerrá-la. Você pode ver essas notas adicionadas como notas de chamada no registro de atividades.

Alteração de código no ServiceNow

O script inclui mudanças
  1. Vá para o navegador de filtros e pesquise por O script inclui.

    Selecione Script Includes em System UI.

  2. Filtre o Nome e pesquise por propUtilitários.

  3. Alterar o método UsuárioObterSysId no Script.

    Atual:

    UserGetSysId: function () { var opened_for; var user = new GlideRecord("sys_user"); user.addQuery(this.getParameter('campo'),this.getParameter('valor')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = new GlideRecord('interação'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },

    Novo código de exemplo para o incidente:

    UserGetSysId: function () { var opened_for; //Alterações relacionadas ao incidente var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('field'),this.getParameter('value')); user.query(); if(user.next()) { opened_for=user.sys_id;//return user.sys_id; var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', opened_for); inc.addQuery('state','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='telefone'; inc.short_description='Chamada recebida de' + this.getParameter('valor'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interação'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist); },

Alteração de método nas páginas da IU
  1. Vá para o navegador de filtros e procure por Página da interface do usuário.

    Selecione Páginas da IU em IU do sistema.

  2. Filtre o Nome e pesquise por agentedesktop.

  3. Mudar o Tela pop Função em Script do cliente.

    Função atual:

    // função de tela pop screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('campo', 'telefone'); gaout.addParam('valor', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entity: 'interaction', query: 'sys_id='+sysid });

    Código de exemplo para o incidente:

    // função de tela pop screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('field', 'phone'); gaout.addParam('value', callerani); gaout.getXMLWait(); // Para alterações relacionadas a incidentes var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entity: 'incident', query: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entidade: 'incidente', consulta: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid //'a2ba0ba62fd121106446cc96f699b6b8' }); } }

Se as informações do chamador existirem no CRM e já houver um novo incidente aberto com esse contato, o aplicativo abrirá o incidente em andamento

Se as informações do chamador não existirem no CRM, o aplicativo abre um novo incidente

Se as informações do chamador existirem no CRM, o aplicativo abrirá um novo incidente com detalhes pré-preenchidos

Visão geral

Este caso de uso detalha o processo para adicionar uma coluna extra à tabela ServiceNow - webexcc_imp_activity e criar sn_openframe_phone_log após a instalação do CC Webex para o ServiceNow CRM Connector.

Por padrão, a tabela contém determinados campos e valores do sistema prontos para uso.

Você pode criar mais variáveis específicas de negócios (Variáveis CAD) dentro do WebexCC Flow Designer e adicionar as variáveis CAD dentro do log de atividades pós-chamada do ServiceNow, bem como persistir isso nos dados da tabela de atividades pós-chamada.

Esta é apenas uma documentação de referência e mostra como fazer isso para uma variável CAD de exemplo chamada Nome do Cliente, que armazena o nome do cliente dentro de IVR e o publica no ServiceNow.

Espera-se que os desenvolvedores do ServiceNow parceiro+cliente configurem e gerenciem essa configuração, pois é uma personalização do conector existente.

A Cisco fornece apenas técnicas sobre como personalizar e estender o conector.

A partir deste artigo, a equipe da Cisco validou o suporte para a adição da variável CAD ao Log de Atividades e à Tabela de Atividades usando a técnica descrita abaixo:

Adicionar coluna à atividade IMP do WebexCC

  1. Edite a tabela na versão de desenvolvedor do ServiceNow.

    Tabela de atividades do IMP do WebexCC da instância do desenvolvedor do ServiceNow.

  2. Vá até o navegador de filtros e procure por estúdio.

    Navegador de filtros de instância do desenvolvedor do ServiceNow na guia Todos com "studio" inserido no filtro.

    Selecionar Webex Contact Center

    Aplicativo Studio para ServiceNow com a janela Selecionar aplicativo aberta.

    ou

    Aplicativo Studio para ServiceNow com a janela Selecionar aplicativo aberta e 'Selecionar aplicativo da loja para personalizar' selecionado.

    Aplicativo Studio para ServiceNow com a janela 'Selecionar aplicativo da loja para personalizar' aberta e 'Webex Contact Center' selecionado.

    Aplicativo Studio para ServiceNow com detalhes do arquivo do aplicativo Contact Center Webex.

  3. Selecione o Atividade WebexCC IMP mesa

    Aplicativo Studio para tabela de atividades do ServiceNow WebexCC IMP.

  4. Adicione uma nova coluna, por exemplo, Nome do cliente

    Exemplo de nova coluna da tabela de atividades do aplicativo Studio para ServiceNow WebexCC IMP.

    Exemplo de nova coluna da tabela de atividades do aplicativo Studio para ServiceNow WebexCC IMP com nova coluna adicionada.

Adicionar coluna ao registro telefônico

  1. Edite a tabela de registro telefônico.

    Pesquisa de instância do desenvolvedor do ServiceNow para uma tabela de registro telefônico.

    Tabela de registro telefônico da instância do desenvolvedor do ServiceNow.

  2. Adicione uma nova coluna, por exemplo, Nome do cliente.

    Exemplos de novas colunas da tabela de registro telefônico da instância do desenvolvedor do ServiceNow.

    Exemplo de nova coluna da tabela de registro telefônico da instância do desenvolvedor do ServiceNow com nova coluna adicionada.

Mapa de transformação de atividade do WebexCC

Aplicativo Studio para o Mapa de Transformação de Atividades do ServiceNow WebexCC.

Adicione uma nova coluna, por exemplo, Nome do cliente Mapeamento de campo.

Exemplo de nova coluna do aplicativo Studio para ServiceNow WebexCC Activity Transform Map para mapeamento de campo CustomerName.

Exemplo de nova coluna do aplicativo Studio para ServiceNow WebexCC Activity Transform Map com CustomeName selecionado no campo Target.

Personalizar colunas de lista

Aplicativo Studio para ServiceNow WebexCC Activity Transform Map com janela pop-up para colunas de lista personalizadas. A opção de ação de escolha é destacada na coluna Selecionado.

Conforme recomendado pelo Service Now, altere a ação Escolha de criar para ignorar.

Aplicativo Studio para o ServiceNow WebexCC Activity Transform Map com a coluna de ação Choice, mostrando o menu suspenso para escolher "ignorar" ou "criar".

Aplicativo Studio para o Mapa de transformação de atividades do ServiceNow WebexCC com a coluna de ação Escolha e 'ignorar' destacado para o campo de origem do nome do cliente.

Configurar lista de registros telefônicos

Aplicativo Studio para ServiceNow configurando a lista de registros telefônicos com CustomerName destacado na coluna Selecionado.

Vá para Script Incluir

Adicione apenas uma linha webexcc.u_customername=actInfo.NomedoCliente Para propUtils.

Navegador de filtro de instância do desenvolvedor do ServiceNow para pesquisa por 'script includes'.

Página Inclui script de instância do desenvolvedor do ServiceNow.

Exemplo de script

Veja a linha: webexcc.u_customername=actInfo.CustomerName; com um comentário de apoio.

var propUtils = Class.create(); propUtils.prototype = Object.extendsObject(global.AbstractAjaxProcessor,{ getWebexccProp: function () { var webexccprop = {}; webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); // webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, UserGetSysId: function () { var opened_for; var user = new GlideRecord("sys_user"); user.addQuery(this.getParameter('campo'),this.getParameter('valor')); user.query(); if (user.next()) aberto_para=user.sys_id;//retornar user.sys_id; // senão // retornar nulo; var grInt = new GlideRecord('interação'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefone'; grInt.aberto_para= aberto_para; var sysid=grInt.insert(); retornar sysid; }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_webexcc.webexccactivitytable')); webexcc.addQuery("callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; webexcc.ringingtime =actInfo.ringingtime; webexcc.activitydate =actInfo.ActivityDate; webexcc.callobject =actInfo.CallObject; webexcc.calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; // Esta linha foi adicionada para capturá-la no Log de atividades webexcc.u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); //Atividades no registro de incidentes; var actInfoString =this.getParameter('actInfo'); var suser = new GlideRecordSecure("sys_user"); suser.addQuery("telefone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incidente'); inc.addQuery('id_do_chamador', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(actInfoString),null,2); inc.comments =jsonPretty; inc.update(); } } } return sys_id; }, digite: 'propUtils' });

Crie uma variável CAD no Flow Designer

Webex Designer de fluxo variável CAD do Contact Center com pop-up Adicionar variável de fluxo para CustomerName.

Adicione a variável CAD ao Layout da Área de Trabalho

Exemplo

"CadName1:SnowField1,CadName2:SnowField2" CadName1 é CustomerName SnowField1 também é usado como CustomerName, que faz parte do script de exemplo mostrado acima "actInfo.CustomerName".

Exemplo de código-fonte para adicionar a variável CAD ao Layout da Área de Trabalho.

Capturas de tela de demonstração

Veja a variável CAD recém-adicionada na tabela de atividades do WebexCC.

Exemplo do ServiceNow da variável CAD recém-adicionada na tabela de atividades do WebexCC, mostrando "Nome do cliente" no pop-up do Cisco WebexCC.

Exemplo do ServiceNow da variável CAD recém-adicionada na tabela de atividades do WebexCC, mostrando 'CustomerName' na seção de comentários em 'Atividade' e 'Administrador do sistema'.

Exemplo de instância de desenvolvedor do ServiceNow da variável CAD recém-adicionada na tabela de atividades do WebexCC, mostrando a coluna 'CustomerName'.

Criar variável CAD para o Flow Designer

Urgência do incidente

Webex Tela de criação de variável CAD do designer de fluxo do Contact Center mostrando o pop-up de edição de variável de fluxo para uma variável de fluxo de urgência de incidente.

Impacto do incidente

Webex O designer de fluxo do Contact Center cria uma tela de variável CAD mostrando o pop-up de edição de variável de fluxo para uma variável de fluxo de urgência de incidente.

Atualização do script do Service Now

Atualizações no script incluem

  1. Vá para o navegador de filtros e pesquise por script includes

    Selecione a opção Script Includes em System UI.

    Navegador de filtro de instância do desenvolvedor ServiceNow para pesquisa de 'script includes'

  2. Filtrar o Nome com propUtilitários.

    O script de instância do desenvolvedor ServiceNow inclui filtro de nome por 'propUtils'

  3. Alterar o método UsuárioObterSysId no Roteiro campo.

    O script de instância do desenvolvedor ServiceNow inclui – página de detalhes do propUtils.

    Roteiro atual:

    UserGetSysId: function () { var opened_for; var user = new GlideRecord("sys_user"); user.addQuery(this.getParameter('campo'),this.getParameter('valor')); user.query(); if (user.next()) opened_for=user.sys_id; var grInt = new GlideRecord('interação'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); return sysid; },

    Novo código de exemplo para o incidente:

    UserGetSysId: function () { var opened_for; var sysidlist = {}; var user = new GlideRecordSecure("sys_user"); user.addQuery(this.getParameter('campo'),this.getParameter('valor')); user.query(); if(user.next()) { opened_for=user.sys_id;//retornar user.sys_id; var inc = new GlideRecordSecure('incidente'); inc.addQuery('id_do_chamador', opened_for); inc.addQuery('estado','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { sysidlist.incsysid=inc.getUniqueValue(); }else{ inc.initialize(); inc.caller_id=opened_for; inc.contact_type='telefone'; inc.urgency=this.getParameter('IncUrgência'); inc.impact=this.getParameter('Impacto'); inc.short_description='Chamada recebida de' + this.getParameter('valor'); sysidlist.incsysid=inc.insert(); } } var grInt = new GlideRecordSecure('interação'); grInt.initialize(); grInt.assigned_to= gs.getUserID(); grInt.type= 'telefone'; grInt.opened_for= opened_for; var sysid=grInt.insert(); sysidlist.sysid=sysid; return JSON.stringify(sysidlist);//sysid; },

Uma mudança de método nas páginas da IU
  1. Vá até o navegador de filtros e pesquise por Páginas da interface do usuário.

    Selecione o Páginas da interface do usuário opção sob Interface do sistema.

    Navegador de filtro de instância do desenvolvedor ServiceNow para pesquisa de 'página de interface do usuário'

  2. Filtrar o Páginas da interface do usuário com Nome e procurar por agentedesktop.

    Filtro de nome de páginas da IU da instância do desenvolvedor do ServiceNow para pesquisar 'agentdesktop'

  3. Mudar o Tela pop Função no campo de script.

    Página de interface do usuário da instância do desenvolvedor do ServiceNow – página de detalhes do agentdesktop.

    Função atual:

    // função de tela pop screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('campo', 'telefone'); gaout.addParam('valor', callerani); gaout.getXMLWait(); var sysid = gaout.getAnswer(); openFrameAPI.openServiceNowForm({ entidade: 'interação', consulta: 'sys_id='+sysid }); }

    Código de exemplo para o incidente:

    // função pop-up de tela screenpop(callerani,callSessionInfo) { var Impact=3; if(callSessionInfo.callAssociatedData.Impact != null && callSessionInfo.callAssociatedData.Impact != undefined) { Impact=callSessionInfo.callAssociatedData.Impact.value; } var IncUrgency=3; if(callSessionInfo.callAssociatedData.Urgency != null && callSessionInfo.callAssociatedData.Urgency != undefined) { IncUrgency=callSessionInfo.callAssociatedData.Urgency.value; } if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('campo', 'telefone'); gaout.addParam('valor', chamador); gaout.addParam('IncUrgency', IncUrgency); gaout.addParam('Impact', Impact); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entidade: 'incidente', consulta: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entidade: 'incidente', consulta: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); }

Se as informações do chamador existirem no CRM e não houver nenhum incidente novo ou em andamento, o aplicativo abrirá um novo incidente

Exemplo de incidente do ServiceNow.

Exemplo de interação do ServiceNow.

Alterar o código no ServiceNow

Adicionar novas colunas ao Atividade IMP do WebexCC mesa

Abra o Atividade IMP do WebexCC mesa

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap.

Página de detalhes do TransformMap da atividade do WebexCC da instância do desenvolvedor do ServiceNow.

Adicionar uma nova coluna - InteractionsNumber

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap nova coluna, InteractionNumber.

Página de detalhes do TransformMap da atividade do WebexCC da instância do desenvolvedor do ServiceNow mostrando a nova coluna 'interactionnumber' adicionada.

Adicionar uma nova coluna - IncidentNumber

Página de detalhes do TransformMap da atividade do WebexCC da instância do desenvolvedor do ServiceNow mostrando a adição de uma nova coluna 'incidentnumber'.

Clique em Atualizar.

Página de detalhes do TransformMap da atividade do WebexCC da instância do desenvolvedor do ServiceNow mostrando a edição do comprimento máximo da coluna IncidentNumber.

Página de detalhes do TransformMap da atividade do WebexCC da instância do desenvolvedor do ServiceNow mostrando a nova coluna 'incidentnumber' adicionada.

Adicionar novas colunas ao Registro de telefone mesa

Abra o Registro de telefone mesa

Tabela de registro telefônico da instância do desenvolvedor do ServiceNow.

Adicionar uma nova coluna - InteractionsNumber

Instância do desenvolvedor ServiceNow Entrada de diretório – página Novo registro mostrando uma nova coluna para InteractionsNumber.

Tabela de registro telefônico da instância do desenvolvedor do ServiceNow com coluna InteractionsNumber adicionada.

Adicionar uma nova coluna - IncidentNumber

Instância do desenvolvedor ServiceNow Entrada de diretório – página Novo registro mostrando uma nova coluna para IncidentNumber.

Tabela de registro telefônico da instância do ServiceNow Developer com coluna IncidentNumber adicionada.

Mapa de transformação de atividade do WebexCC

Abrir Transformar mapa Do navegador de filtros

Navegador de filtro de instância do desenvolvedor ServiceNow para pesquisa de 'mapa de transformação'

Mapas de transformação de tabela de instância de desenvolvedor do ServiceNow mostrando o WebexCC Activity TransformMap nos resultados.

Clique em Atividade WebexCC TransformMap

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap.

Adicionar novo - para Mapa de Número de Interação

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap com 'InteractionNumber' inserido no 'campo Destino'

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap com 'InteractionNumber' adicionado.

Adicionar novo - para Mapa de Número de Incidente

Instância do desenvolvedor ServiceNow WebexCC Activity TransformMap com 'IncidentNumber' inserido no 'campo Destino'

Clique em Update (Atualizar).

Instância de desenvolvedor do ServiceNow WebexCC Activity TransformMap com 'IncidentNumber' adicionado.

Mudanças no script incluem

  1. Vá para o navegador de filtros e procure por "script includes".

    Selecione Script Includes em System UI.

    Navegador de filtro de instância do desenvolvedor ServiceNow com pesquisa por 'script includes'

  2. Filtrar o Nome com propUtilitários.

    O script de instância do desenvolvedor do ServiceNow inclui o filtro Nome aplicado à pesquisa e 'propUtils' inserido no campo de pesquisa.

  3. Alterar o método definirWebexcctable.

    Script de instância do desenvolvedor ServiceNow inclui - página propUtils

    Novo código de exemplo para Incidente:

    setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('webexccactivitytable')); webexcc.addQuery("u_callobject", actInfo.CallObject); webexcc.query(); if(!webexcc.next()) { //Atividades no registro de incidente; //var actInfoString =this.getParameter('actInfo'); var incsysid=actInfo.incident_sys_id; var interactionsysid=actInfo.interaction_sys_id; var incnum=""; var intenum=""; delete actInfo['interaction_sys_id']; delete actInfo['incident_sys_id']; if( interactionsysid!= null && interactionsysid != undefined){ var inte = new GlideRecordSecure('interaction'); //inte.get('sys_id', interactionsysid ); inte.addQuery('sys_id', interactionsysid ); inte.query(); if (inte.next()) { intenum=inte.number; // inte.setValue('state','Fechado Concluído'); inte.work_notes='Atualizar Estado para fechado.'; inte.update(); } } if( incsysid!= null && incsysid != undefined){ var inci = new GlideRecordSecure('incident'); inci.addQuery('sys_id', incsysid ); inci.query(); if (inci.next()) { incnum=inci.number; var jsonPretty = JSON.stringify(actInfo,null,2); //JSON.stringify(JSON.parse(actInfoString),null,2); inci.comments =jsonPretty; inci.update(); } }else{ var suser = new GlideRecordSecure("sys_user"); suser.addQuery("telefone", this.getParameter('ani')); suser.query(); if(suser.next()) { var inc = new GlideRecordSecure('incidente'); inc.addQuery('id_do_chamador', suser.sys_id); inc.addQuery('estado','IN','1,2'); inc.orderByDesc('sys_created_on'); inc.query(); se (inc.next()) { var jsonPretty = JSON.stringify(actInfo,null,2); inc.comments =jsonPretty; inc.update(); } } } webexcc.u_ani = actInfo.ani; webexcc.u_dnis =actInfo.dnis; webexcc.u_queuename =actInfo.queuename; webexcc.u_wrapuptime =actInfo.wrapuptime; webexcc.u_callduration =actInfo.CallDurationInSeconds; webexcc.u_ringingtime =actInfo.ringingtime; webexcc.u_activitydate =actInfo.ActivityDate; webexcc.u_callobject =actInfo.CallObject; webexcc.u_calltype =actInfo.CallType; webexcc.u_calldisposition=actInfo.CallDisposition; webexcc.u_incidentnumber=incnum; webexcc.u_interactionsnumber=intenum; sys_id=webexcc.insert(); } retornar sys_id; },

Alterações de método nas páginas da IU

  1. Vá para o navegador de filtros e pesquise por Páginas da interface do usuário

    Selecione o Páginas da interface do usuário opção sob Interface do sistema.

    Navegador de filtro de instância do desenvolvedor ServiceNow com pesquisa por 'página da interface do usuário'

  2. Filtrar as páginas da IU com Nome e procurar por agentedesktop.

    Páginas da interface do usuário da instância do desenvolvedor do ServiceNow com filtro de nome aplicado à pesquisa.

  3. Mudar o nowActivities e screenpop Função no script.

    Página de interface do usuário da instância do desenvolvedor do ServiceNow – agentdesktop.

    Função atual:

    função nowActivities(actInfo, ani) { var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); }

    Código de exemplo para o incidente:

    função nowActivities(actInfo, ani) { var sysObjstr = window.localStorage.getItem("screenpopinteraction"); if(sysObjstr != null && sysObjstr != undefined) { var sysObjjson=JSON.parse(sysObjstr); actInfo.interaction_sys_id=sysObjjson.sysid; actInfo.incident_sys_id=sysObjjson.incsysid; } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'setWebexcctable'); gaout.addParam('actInfo', JSON.stringify(actInfo)); gaout.addParam('ani', stripPrefixes(ani)); gaout.getXML(SetCCsysId); } função screenpop(callerani,callSessionInfo) { if(callerani===callSessionInfo.phoneNumber){ callerani=stripPrefixes(callerani); } var gaout = new GlideAjax('propUtils'); gaout.addParam('sysparm_name', 'UserGetSysId'); gaout.addParam('campo', 'telefone'); gaout.addParam('valor', callerani); gaout.getXMLWait(); // var sysid = gaout.getAnswer(); var sysObj = JSON.parse(gaout.getAnswer()); if(sysObj.incsysid){ openFrameAPI.openServiceNowForm({ entidade: 'incidente', consulta: 'sys_id='+sysObj.incsysid, 'interaction_sys_id': sysObj.sysid }); }else{ openFrameAPI.openServiceNowForm({ entidade: 'incidente', consulta: 'sys_id=-1', 'interaction_sys_id': sysObj.sysid }); } window.localStorage.setItem("screenpopinteraction",JSON.stringify(sysObj)); } 

Resultados após a atualização

Página de registros telefônicos da instância do desenvolvedor do ServiceNow.

As personalizações a seguir se aplicam às versões 1.0.5 e abaixo. Para as personalizações para as versões mais recentes 1.0.7 e superiores, siga as etapas acima.

Personalização n.º 1 - Adicionar regras comerciais personalizadas para ocorrências de uso de fluxo de chamada

Crie um novo registro de incidente para cada chamada

Para cada nova chamada no conector WebexCC CRM no ServiceNow, crie um Novo Registro de Incidente.

  1. Pesquisar regras de negócios no navegador do filtro

    ServiceNow developer instance Business Rules page header.
  2. Clique em Novo.

    ServiceNow developer instance Business Rule – New Record.

    Código de exemplo para referência:

    função customcti() { url var = null; nome do var = sysparm_caller_name; eid = sysparm_caller_id; telefone var = sysparm_caller_phone; var taskID = sysparm_task_id; var fQuery = sysparm_query; if (fQuery == null) fQuery = ''; var view = sysparm_view; if (view == null || view == '') view = "itil"; var userID = null; if (eid != null &ll&eid != '') { userID = UserGetSysId("employee_number",eid); } if (userID == null &ll &name != null &> name != '') { userID = UserGetSysId("name", nome); } if (userID == null &&phone != null && phone != '') { userID = UserGetSysId("phone", phone); } if (userID != null) { if (fQuery.length > 0) fQuery += "ˆ"; fQuery += "caller_id=" + userID; } if (url == null) { url = "incident.do?sys_id=-1"; if (fQuery != null) url += "&sysparm_query=" + fQuery; } answer = url; url de retorno; } função UserGetSysId(campo, valor) { usuário var = novo GlideRecord("sys_user"); user.addQuery(campo, valor); user.query(); if (user.next()) return user.sys_id; else return null; }

    Exemplo de configuração da regra comercial

    ServiceNow developer instance Business Rule – CTI Processing For Incident page as a sample configuration of the business rule.
  3. Ativar cliente para chamada

    ServiceNow developer instance Business Rules page with the Personalized List Columns popup screen showing ‘Client callable’ in the ‘Selected’ column.

    O processamento de Integração entre telefonia e computador (CTI) para Incidente é marcado como Verdadeiro.

    ServiceNow developer instance Business Rules page showing the Client callable column with options to select ‘true’ or ‘false’
  4. Atualize a url do screenpop com a Regra de CTI personalizada" cti.do?sysparm_cti_rule=createIncident&sysparm_caller_phone="

    System Property page for screenpop_url showing update to the custom CTI rule in the ‘Value’ field.
Exemplo

O sysparm_cti_rule=nome em que 'nome' é o nome de uma função a ser invocada CTI Processamento , em vez de usar o script padrão.

Defina a função em uma entrada sys_script marcada para o cliente como callable.

Se precisar inserir, atualizar ou excluir quaisquer GlideRecords na função, chame uma função nãocliente à parte para efetuar as atualizações.

Para tornar um cliente de script callable, você deve marcar a caixa de seleção cliente-callable no formulário exibido quando o sys_script entrada é exibido.

A caixa de seleção cliente-callable não aparece por padrão. Para visualizar, você deve modificar os campos que aparecem no formulário usando o ícone de engrenagem e o mecanismo de recipiente de slush.

Referências

Personalização nº 2 - Adicionar variável CAD na tabela de atividades Webex Central de contatos

Visão geral

Este artigo detalha o processo para adicionar uma coluna adicional à tabela ServiceNow - webexcc_activity criada após a instalação do Webex CC para o ServiceNow CRM Connector.

Por padrão, a tabela contém campos e valores de sistema fora de caixa.

Você pode criar mais variáveis específicas de negócios (Variáveis CAD) dentro do Designer de Fluxos WebexCC e adicionar essas variáveis CAD no log de atividades pós-chamada ServiceNowe manter isso nos dados da tabela de atividades pós-chamada.

  • Essa é apenas a documentação de referência - e mostra como fazer isso para uma variável CAD de exemplo chamada Nome do cliente que armazena o nome do cliente dentro da IVR e publica isso no ServiceNow.

  • Os desenvolvedores partner+customer ServiceNow configurarão e gerenciarão essa configuração, uma vez que é uma personalização para o conector existente.

  • A Cisco somente fornecerá as técnicas de como personalizar e estender o conector.

  • A partir deste artigo, a equipe da Cisco validou o suporte para a adição da variável CAD à Tabela de Log de Atividades e Atividades usando a técnica descrita abaixo.

Adicionar coluna à atividade do WebexCC
  1. Edite a tabela na versão do desenvolvedor do ServiceNow.

    ServiceNow developer instance Table – WebexCC Activity page.
  2. Vá para o Estudio > Webex Central de Contatos.

    ServiceNow developer instance filter navigator search for ‘studio’  highlighting the cross launch search result for ‘App Engine Studio’

    App Engine Studio Select Application screen showing Webex Contact Center in the search results.

    App Engine Studio Webex Contact Center screen.

  3. Selecione a tabela de Atividades do WebexCC.

    App Engine Studio WebexCC Activity table.
  4. Por exemplo, CustomerName.

    App Engine Studio WebexCC Activity table column edit example for ‘CustomerName’ column.

    App Engine Studio WebexCC Activity table screen.

  5. Selecione Layout de lista para atividades WebexCC.

    App Engine Studio WebexCC Activity table list layout showing ‘CustomerName’ highlighted in the ‘Selected’ column.
Crie um novo Script Inclui

Esta etapa não será necessária se você estiver usando a XML Do conjunto de atualizações - somente uma linha será necessária para ser adicionada "webexcc.u_customername=actInfo.CustomerName" ao propUtils.

ServiceNow developer instance filter navigator search for ‘script includes’

ServiceNow developer instance Script Includes page with ‘Application’ in the filter.

ServiceNow developer instance Script Includes – New Record page.

Exemplo de script

Consulte a linha com:webexcc.u_customername=actInfo.CustomerName; com um comentário de suporte.

var propUtils2 = Class.create(); propUtils2.prototype = Object.extendsObject(global. AbstractAjax Encapsulaor,{ getWebexccProp: function () { var webexccprop = {}; Webexccprop.instanceurl= 'https://'+gs.getProperty('instance_name')+'.service-now.com/'; webexccprop.url=gs.getProperty('x_caci_webexcc.agentdesktop_url'); webexccprop.popupurl=gs.getProperty('x_caci_webexcc.screenpop_url'); return JSON.stringify(webexccprop); }, setWebexcctable: function () { var sys_id=0; var actInfo = JSON.parse(this.getParameter('actInfo')); var webexcc = new GlideRecordSecure(gs.getProperty('x_caci_ Webexcc.webexccactivitytable')) webexcc.addQuery("callobject", actInfo.CallObject); Webexcc.query(); if(!webexcc.next()) { webexcc.ani = actInfo.ani; webexcc.dnis =actInfo.dnis; webexcc.queuename =actInfo.queuename; webexcc.wrapuptime =actInfo.wrapuptime; webexcc.callduration =actInfo.CallDurationInSeconds; Webexcc.ringingtime =actInfo.ringingtime; webexcc.activitydate =actInfo.ActivityDate; webexcc.callobject =actInfo.CallObject; webexcc.calltype =actInfo.CallType; webexcc.calldisposition=actInfo.CallDisposition; // Esta linha é adicionada - para capturá-la no Webexcc de atividade. u_customername=actInfo.CustomerName; sys_id=webexcc.insert(); Atividades no registro de incidente; var actInfoString =this.getParameter('actInfo'); var suser = novo GlideRecordSecure("sys_user"); suser.addQuery("telefone", isto.getParameter('ani')); suser.consulta(); if(suser.next()) { var inc = new GlideRecordSecure('incident'); inc.addQuery('caller_id', suser.sys_id); inc.orderByDesc('sys_created_on'); inc.query(); if (inc.next()) { var jsonPretty = JSON.stringify(JSON.parse(acting string),null,2); inc.comments =jsonPretty; inc.update(); } } retornar sys_id; }, tipo: 'propUtils2' });
Editar a página de interface de usuário com um novo nome de scriptApp Engine Studio agentdesktop UI page with new script name.

Criar uma variável CAD no Designer de FluxosWebex Contact Center flow designer with Add Flow Variable popup showing adding a CustomerName variable.

Adicione a variável CAD ao Layout da Área de TrabalhoWebex Contact Center CAD variable to the desktop layout script with ‘CustomerName:CustomerName’ highlighted.

Demonstração de que a demo se torna uma demo,

Visualize a variável CAD recém-adicionada na tabela de Atividades WebexCC.

ServiceNow developer instance showing newly added CAD variable in the WebexCC Activity table.

ServiceNow developer instance WebexCC Activities screen.