BR112021012439A2 - Método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos - Google Patents

Método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos Download PDF

Info

Publication number
BR112021012439A2
BR112021012439A2 BR112021012439-0A BR112021012439A BR112021012439A2 BR 112021012439 A2 BR112021012439 A2 BR 112021012439A2 BR 112021012439 A BR112021012439 A BR 112021012439A BR 112021012439 A2 BR112021012439 A2 BR 112021012439A2
Authority
BR
Brazil
Prior art keywords
communication
chat
standardized text
natural language
responsive
Prior art date
Application number
BR112021012439-0A
Other languages
English (en)
Inventor
Brent Rager
Original Assignee
Greeneden U.S. Holdings Ii, Llc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Greeneden U.S. Holdings Ii, Llc filed Critical Greeneden U.S. Holdings Ii, Llc
Publication of BR112021012439A2 publication Critical patent/BR112021012439A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/50Centralised arrangements for answering calls; Centralised arrangements for recording messages for absent or busy subscribers ; Centralised arrangements for recording messages
    • H04M3/51Centralised call answering arrangements requiring operator intervention, e.g. call or contact centers for telemarketing
    • H04M3/5183Call or contact centers with computer-telephony arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/02User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail using automatic reactions or user delegation, e.g. automatic replies or chatbot-generated messages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42382Text-based messaging services in telephone networks such as PSTN/ISDN, e.g. User-to-User Signalling or Short Message Service for fixed networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/20Aspects of automatic or semi-automatic exchanges related to features of supplementary services
    • H04M2203/2061Language aspects

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Marketing (AREA)
  • Business, Economics & Management (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephonic Communication Services (AREA)

Abstract

método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos. em um sistema para gerenciar o agente de atendimento e o bate-papo automatizado em um ambiente de central de contatos, o sistema da presente invenção inclui: um servidor de bate-papo que invoca o processamento de linguagem natural em uma comunicação recebida, que seleciona uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural e que transmite a comunicação por texto padronizado para um dispositivo de agente; e um servidor de gerenciamento de conhecimento para determinar valores de confiança e listas classificadas preenchidas de comunicações responsivas por texto padronizado.

Description

1 / 52 MÉTODO E SISTEMA PARA GERENCIAMENTO DE BATE-PAPO EM
UM AMBIENTE DE CENTRAL DE CONTATOS ANTECEDENTES DA INVENÇÃO
[001] No campo de comunicações e serviços destinados a clientes, uma organização, como uma empresa de varejo, uma empresa de serviços ou uma organização sem fins lucrativos pode operar um site da web para fornecer informações aos consumidores e clientes e/ou para fornecer um ponto de entrada de comunicação com uma central de contatos. Além do site da web, a organização pode também operar uma central de contatos (por exemplo, uma central de atendimento ao cliente ou uma central de contatos de vendas) composta por agentes de atendimento ("blended agents") que se comunicam com clientes através de uma variedade de mídias, como um telefone ou outro canal de comunicação de áudio/visual, sistemas interativos de bate-papo, serviço de mensagens curtas (SMS), mídias sociais, conavegação, e-mail, cartas, fax etc.
[002] Os visitantes de um site da organização podem receber informações e oportunidades para contatar representantes da organização nas centrais de contatos. Essas oportunidades podem incluir caixas de bate-papo e janelas integradas em uma página da web para comunicações baseadas em texto em tempo real ou links para endereços de e-mail para comunicações baseadas em texto com "time-shifting" (gravação em uma mídia para uso posterior).
[003] Partes das comunicações baseadas em texto de saída originadas na central de contatos podem ser automatizadas. Esta revelação se refere genericamente ao aprimoramento da eficiência na geração de comunicações baseadas em texto de saída fornecidas por um agente em uma central de contatos em resposta a uma comunicação baseada em texto de entrada fornecida por um cliente da central de contatos.
SUMÁRIO
2 / 52
[004] Em uma modalidade, é revelado um método para gerenciar um bate-papo em um ambiente de central de contatos, sendo que o bate-papo compreende um agente de atendimento e um bate-papo automatizado, sendo que o método executa as etapas de receber, de um servidor de orquestração de bate-papo, um primeiro sinal indicando uma comunicação inicial; invocar por meio do servidor de orquestração de bate-papo o processamento de linguagem natural na comunicação inicial; recuperar, por meio do servidor de orquestração de bate-papo, uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento; determinar, por meio do servidor de gerenciamento de conhecimento, o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; preencher, por meio do servidor de gerenciamento de conhecimento, uma ordem de classificação determinada de comunicações por texto padronizado, sendo que a ordem de classificação é configurada em resposta ao valor de confiança da comunicação por texto padronizado; transmitir, por meio do servidor de orquestração de bate-papo, uma instrução para exibir em um dispositivo de agente a ordem de classificação determinada; receber, por meio do servidor de orquestração de bate-papo, um segundo sinal indicando uma seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural; direcionar, por meio do servidor de orquestração de bate-papo, um bate-papo de comunicação por texto padronizado automatizado para comunicação com um usuário final com base no segundo sinal recebido indicando a seleção, por parte do dispositivo do agente, da comunicação por texto padronizado; e, então, repetir as etapas acima até que ocorra uma ação conforme indicado por um terceiro sinal recebido pelo servidor de orquestração de bate-papo.
[005] Em uma modalidade, um método revelado inclui iniciar a
3 / 52 comunicação como uma comunicação baseada em bate-papo de um usuário final.
[006] Em uma modalidade, um método revelado inclui o usuário final interagindo com a central de contatos por meio de um bate-papo da web.
[007] Em uma modalidade, um método revelado inclui as etapas de recuperar, por meio do servidor de orquestração, de bate-papo uma comunicação por texto padronizado, em resposta à comunicação processada em linguagem natural, de uma memória acoplada a um servidor de gerenciamento de conhecimento, e determinar, por meio do servidor de gerenciamento de conhecimento, o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural, que são repetidas para uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural, e a ordem de classificação das comunicações por texto padronizado determinada é compreendida da dita pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural.
[008] Em uma modalidade, um método revelado inclui o servidor de gerenciamento de conhecimento treinar ao vivo o valor de confiança da comunicação por texto padronizado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
[009] Em uma modalidade, um método revelado inclui determinar, por meio do servidor de gerenciamento de conhecimento, um limite para o valor de confiança determinado da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; e transmitir, por meio do servidor de gerenciamento de conhecimento, a comunicação por texto padronizado para preenchimento na ordem de classificação se o valor de confiança determinado for igual ou maior que o limite determinado.
[0010] Em uma modalidade, um método revelado inclui os valores de
4 / 52 confiança determinados de uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural que influencia o limite determinado.
[0011] Em uma modalidade, um método revelado inclui o servidor de gerenciamento de conhecimento configurado para treinar ao vivo o valor de confiança da comunicação por texto padronizado se o valor de confiança estiver abaixo do limite determinado.
[0012] Em uma modalidade, um método revelado inclui o treinamento ao vivo do valor de confiança da comunicação por texto padronizado que é determinado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
[0013] Em uma modalidade, um método revelado inclui o terceiro sinal recebido pelo servidor de orquestração de bate-papo que indica a conclusão de uma conversa de bate-papo entre o usuário final e um agente que opera o dispositivo do agente.
[0014] Em uma modalidade, é revelado um sistema para gerenciar bate-papo em um ambiente de central de contatos, sendo que o bate-papo compreende um agente de atendimento e um bate-papo automatizado, sendo que o sistema compreende um processador de servidor de orquestração de bate-papo; uma memória acoplada ao processador do servidor de orquestração de bate-papo, sendo que a memória armazena instruções que, quando executadas pelo processador do servidor de orquestração de bate-papo, fazem com que o processador do servidor de orquestração de bate-papo: receba um primeiro sinal indicando uma comunicação inicial; invoque o processamento de linguagem natural na comunicação inicial; recupere uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento; transmita uma instrução para exibir em um dispositivo de
5 / 52 agente uma ordem de classificação determinada de comunicações por texto padronizado; receba um segundo sinal indicando uma seleção, por parte de um dispositivo de agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural; direcione um bate-papo de comunicação por texto padronizado automatizado para comunicação com um usuário final com base no segundo sinal recebido indicando a seleção, por parte do dispositivo do agente, das comunicações por texto padronizado; um processador de servidor de gerenciamento de conhecimento; uma memória acoplada ao processador do servidor de gerenciamento de conhecimento, sendo que a memória armazena instruções que, quando executadas pelo processador do servidor de gerenciamento de conhecimento, fazem com que o processador do servidor de gerenciamento de conhecimento: determine o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; preencha a ordem de classificação determinada de comunicações por texto padronizado, sendo que a ordem de classificação é configurada em resposta ao valor de confiança da comunicação por texto padronizado.
[0015] Em uma modalidade, um sistema revelado inclui a comunicação inicial como uma comunicação baseada em bate-papo de um usuário final.
[0016] Em uma modalidade, um sistema revelado inclui o usuário final interagindo com a central de contatos por meio de um bate-papo da web.
[0017] Em uma modalidade, um sistema revelado inclui as instruções que fazem com que o processador do servidor de orquestração de bate-papo recupere uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento, e as instruções que fazem com que o processador do servidor de gerenciamento de conhecimento determine o valor de confiança da comunicação por texto padronizado responsiva à
6 / 52 comunicação processada em linguagem natural serem repetidas para uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural, sendo que a ordem de classificação das comunicações por texto padronizado preenchidas pelo processador do servidor de gerenciamento de conhecimento é compreendida da dita pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural.
[0018] Em uma modalidade, um sistema revelado inclui as instruções que fazem com que o processador do servidor de gerenciamento de conhecimento treine ao vivo o valor de confiança da comunicação por texto padronizado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
[0019] Em uma modalidade, um sistema revelado inclui as instruções que fazem adicionalmente com que o processador do servidor de gerenciamento de conhecimento determine um limite para o valor de confiança determinado da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; e transmita a comunicação por texto padronizado para preenchimento na ordem de classificação se o valor de confiança determinado for igual ou maior que o limite determinado.
[0020] Em uma modalidade, um sistema revelado inclui os valores de confiança determinados de uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural que influencia o limite determinado.
[0021] Em uma modalidade, um sistema revelado inclui o processador do servidor de gerenciamento de conhecimento configurado com instruções para treinar ao vivo o valor de confiança da comunicação por texto padronizado se o valor de confiança estiver abaixo do limite determinado.
[0022] Em uma modalidade, um sistema revelado inclui o treinamento
7 / 52 ao vivo do valor de confiança da comunicação por texto padronizado determinado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
[0023] Em uma modalidade, um sistema revelado inclui as instruções para o processador do servidor de orquestração de bate-papo e o servidor de gerenciamento de conhecimento configuradas para se repetirem até que ocorra uma ação conforme indicado por um terceiro sinal recebido pelo processador do servidor de orquestração de bate-papo.
BREVE DESCRIÇÃO DOS DESENHOS
[0024] A Figura 1 é uma modalidade de diagrama de blocos de um sistema de central de contatos.
[0025] A Figura 2 é uma modalidade de diagrama de blocos esquemático que ilustra um servidor de orquestração de bate-papo operando como parte do sistema da central de contatos.
[0026] A Figura 3 é uma modalidade de diagrama de fluxo que ilustra um método para gerenciar um sistema de orquestração de bate-papo hibridizado.
[0027] A Figura 4 é uma modalidade de diagrama de fluxo que ilustra um método para gerenciar um sistema de orquestração de bate-papo hibridizado.
[0028] A Figura 5A é um diagrama que ilustra uma modalidade de dispositivo de computação; e
[0029] A Figura 5B é um diagrama que ilustra uma modalidade de dispositivo de computação.
DESCRIÇÃO DETALHADA
[0030] A presente revelação se refere ao aprimoramento em eficácia e eficiência da implantação de automação de comunicações baseadas em texto de uma central de contatos. A implantação e a integração de protocolos
8 / 52 automatizados de comunicação baseada em texto, comumente conhecidos como chatbot (robô de bate-papo), tentam minimizar ou eliminar completamente a necessidade de agentes para fornecer comunicações baseadas em texto em tempo real em uma central de contatos. Um chatbot pode utilizar sistemas que empregam inúmeras tecnologias de automação (por exemplo, processo de linguagem natural, aprendizado de máquina e inteligência artificial etc.) que tentam imitar as comunicações baseadas em texto de saída provenientes de uma central de contatos. Entretanto, como as tecnologias artificiais usadas para implantar os chatbots continuam a evoluir, os chatbots apresentam o problema do "vale da estranheza" da interação humana. Embora o diálogo do chatbot tenha semelhança com o diálogo de um ser humano, porque se parece, mas não exatamente, com uma conversa com um ser humano real, ele desperta um sentimento estranho, ou estranhamente familiar, de desconforto e repulsa em um observador. Os clientes de uma central de contatos que esperam ter uma interação humana em uma comunicação baseada em texto podem evitar ou parar de usar a comunicação baseada em texto se acharem a interação inquietante quando as respostas do chatbot não forem suficientemente semelhantes às humanas. Dessa forma, pode não ser desejável substituir por chatbots todas as comunicações baseadas em texto em tempo real em uma central de contatos, mas, em vez disso, hibridizar a automação de chatbots que trabalham em conjunto com um agente ao vivo.
[0031] As respostas de texto padronizado pré-escritas são um exemplo de automação em comunicações originadas a partir de uma central de contatos. A implantação de uma central de contatos pode incluir uma base de dados configurável de respostas de texto padronizado fornecidas por um agente da central de contatos que respondem a declarações e perguntas típicas que os clientes de uma central de contatos podem fazer. Essas respostas de texto padronizado podem ser usadas para responder a qualquer interação de
9 / 52 saída de um agente para o cliente de uma central de contatos, como um e-mail ou uma mensagem de bate-papo, ou as respostas de texto padronizado podem ser lidas por um agente para o cliente durante uma interação telefônica. Um exemplo de resposta de texto padronizado pode incluir, em resposta a uma pergunta prevista apresentada por um cliente da central de contatos, "Qual seu horário de funcionamento?", com uma resposta de texto padronizado disponível para dizer "De segunda-feira a sexta-feira, das 8 h às 18 h". As respostas de texto padronizado podem ser implantadas como texto estático, com pouca capacidade de o agente que utiliza as respostas de texto padronizado alterar o conteúdo da resposta de texto padronizado, exceto algumas vezes em que é possível substituir marcadores de posição dentro da declaração por atributos de interação. Os agentes da central de contatos podem revisar a comunicação baseada em texto de entrada de um cliente e usar uma resposta de texto padronizado para se comunicar com seus respectivos clientes. Entretanto, pode ser necessário que os agentes recebam e respondam manualmente às informações sobre as solicitações de resposta de texto padronizados para continuar a conversa com o cliente.
[0032] A presente revelação baseia-se em respostas de texto padronizado por meio da criação de conversas por texto padronizado implantadas em sistemas de comunicação baseados em texto de uma central de contatos. Uma conversa por texto padronizado compreende uma conversa curta baseada em texto em tempo real, em uma central de contatos, que um chatbot pode ter com o cliente em nome do agente, conforme implantado por um agente. Uma conversa por texto padronizado pode ser implantada de maneira similar a uma resposta de texto padronizado. Em uma modalidade revelada, um agente de uma central de contatos pode selecionar uma conversa por texto padronizado em resposta a uma conversa recebida de um cliente para coletar um conjunto específico de informações do cliente. A coleta de informações e o gerenciamento de perguntas comuns ou de fluxos de trabalho
10 / 52 em nome do agente podem ser executados por meio de conversas por texto padronizado. Como um exemplo de conversa por texto padronizado, um cliente que utiliza o recurso de bate-papo de uma central de contatos poderia pedir para ver sua fatura. Em resposta, o agente pode usar uma conversa por texto padronizado para obter as informações necessárias para recuperar a fatura, como o nome do cliente, data de nascimento e os últimos quatro dígitos do número do seguro social etc. O uso de conversas por texto padronizado aumenta a eficiência da central de contatos por deixar que o sistema reúna as informações do cliente, dando ao agente mais tempo para lidar com outras interações, enquanto mantém algum grau de controle sobre a conversa com o cliente. Com a hibridização entre um agente humano e um chatbot automatizado, é possível otimizar recursos humanos e computacionais no suporte de sistemas de comunicação baseados em texto.
[0033] A Figura 1 é um diagrama de blocos de uma modalidade de sistema de central de contatos 100, de acordo com uma modalidade revelada. Em algumas modalidades, o sistema da central de contatos 100 pode operar como um sistema para estabelecer e gerenciar conversas entre um robô de bate-papo automatizado e usuários humanos (doravante chamado de sistema de automação de bate-papo 102). O sistema de automação de bate-papo 102 pode ser uma instalação dentro de um negócio ou empresa 104 para executar funções de vendas e assistência relacionadas aos produtos e serviços disponibilizados pela empresa. Em um outro aspecto, o sistema da central de contatos 100 pode ser operado por um fornecedor de serviços terceirizado. De acordo com outra modalidade, o sistema da central de contatos 100 pode operar como um sistema híbrido, no qual alguns componentes do sistema da central de contatos 100 são hospedados nas instalações da central de contatos e outros componentes são hospedados remotamente (por exemplo, em um ambiente baseado em nuvem). O sistema da central de contatos 100 pode ser implantado em equipamento dedicado à empresa ou ao fornecedor de serviços
11 / 52 terceirizado e/ou implantado em um ambiente de computação remoto como, por exemplo, um ambiente de nuvem privado ou público com infraestrutura para dar suporte a múltiplas centrais de contatos de múltiplas empresas. Os vários componentes da central de contatos podem também ser distribuídos por várias localizações geográficas e ambientes de computação, não estando necessariamente contidos em uma única localização, ambiente de computação ou mesmo dispositivo de computação.
[0034] De acordo com uma modalidade exemplificadora, o sistema da central de contatos 100 inclui recursos (por exemplo, equipes, computadores, equipamentos de telecomunicação etc.) para possibilitar a prestação de serviços via telefone ou outros mecanismos de comunicação. Esses serviços podem variar dependendo do tipo de central de contatos e podem se estender do atendimento ao cliente à equipe de suporte (help desk), resposta a emergências, telemarketing, registro de pedidos e similares.
[0035] Clientes, clientes potenciais ou outros usuários finais (coletivamente chamados de clientes ou usuários finais, por exemplo, usuários finais 106a a 106c, e coletivamente chamados de usuário final 106) que desejam receber serviços do sistema da central de contatos 100 ou da empresa 104 podem iniciar uma comunicação de entrada com o sistema da central de contatos 100 através de seus dispositivos de usuário final 108a a 108c (coletivamente chamados de dispositivo eletrônico 108).
[0036] Cada um dos dispositivos eletrônicos 108 pode ser um dispositivo de comunicação convencional na técnica, como, por exemplo, um telefone, telefone sem fio, telefone inteligente, computador pessoal, tablet eletrônico e/ou similares, que é configurado para estabelecer comunicações baseadas em texto (por exemplo, bate-papo) com outros dispositivos eletrônicos. De acordo com algumas modalidades, os usuários que operam os dispositivos eletrônicos 108 podem se comunicar com o sistema da central de contatos 100 por meio de um canal de voz, e a comunicação pode ser
12 / 52 convertida em texto no lado do usuário final ou da central de contatos. O texto pode, então, ser transmitido para um chatbot (descrito em mais detalhes abaixo) e a resposta do chatbot pode ser convertida de volta em fala ou aplicada ao dispositivo do usuário final como texto. Usuários que operam os dispositivos eletrônicos 108 podem iniciar, gerenciar e responder a chamadas telefônicas, e-mails, bate-papos, mensagens de texto, sessões de navegação na web e outras transações multimídia.
[0037] Comunicações de entrada e saída de e para os dispositivos eletrônicos 108 podem passar por um telefone, celular e/ou uma rede de comunicação de dados 110, dependendo do tipo de dispositivo que estiver sendo usado. Por exemplo, a rede de comunicação 110 pode incluir uma rede telefônica privada ou pública comutada (PSTN - "Private or Public Switched Telephone Network"), uma rede local (LAN - "Local Area Network"), uma rede privada local (WAN - "Private Wide Network") e/ou uma rede pública de área ampla como, por exemplo, a Internet. A rede de comunicação 110 pode incluir também uma rede portadora sem fio, incluindo uma rede de acesso múltiplo por divisão de código (CDMA), uma rede de sistema global para comunicações móveis (GSM) e/ou qualquer rede 3G ou 4G convencional na técnica.
[0038] De acordo com uma modalidade exemplificadora, o sistema de automação de bate-papo 102 inclui um comutador/gateway de comunicação de mídia 112 acoplado à rede de comunicação 110 para receber e transmitir interações de telefonia entre usuários finais e o sistema de automação de bate- papo 102. O comutador/gateway de mídia 112 pode incluir um comutador de telefonia ou um comutador de comunicação configurado para funcionar como um comutador central para roteamento em nível de agente dentro da central. O comutador pode ser um sistema de comutação por hardware ou um comutador implementado via software. Nesse sentido, o comutador 112 pode incluir um distribuidor automático de chamadas, uma central de comunicação
13 / 52 de ramal privado (PBX - "Private Branch Exchange"), um comutador de software baseado em IP e/ou qualquer outro comutador com hardware e software especializados, configurado para receber interações oriundas da Internet e/ou interações oriundas da rede telefônica de um cliente e rotear essas interações para, por exemplo, um dispositivo de telefonia do agente. Nesse exemplo, o comutador/gateway de mídia estabelece uma trajetória/conexão de voz (não mostrada) entre o cliente que está fazendo a chamada e o dispositivo de telefonia do agente, mediante o estabelecimento, por exemplo, de uma conexão entre o dispositivo de telefonia do cliente e o dispositivo de telefonia do agente.
[0039] De acordo com uma modalidade exemplificadora da invenção, o comutador é acoplado a um servidor de comunicação 118 que pode, por exemplo, servir como um adaptador ou uma interface entre o comutador e os demais componentes de roteamento e monitoramento, bem como outros componentes de gerenciamento de comunicação da central de contatos.
[0040] O servidor de comunicação 118 pode ser configurado para processar chamadas de PSTN, chamadas de VoIP e similares. Por exemplo, o servidor de comunicação 118 pode ser configurado com um software de integração computador-telefonia (CTI - "Computer-Telephony Integration") para fazer interface com o comutador/gateway de mídia e o equipamento da central de contatos. Em uma modalidade, o servidor de comunicação 118 pode incluir um servidor de protocolo de início de sessão (SIP - "Session Initiation Protocol") para processar chamadas de SIP. De acordo com algumas modalidades exemplificadoras, o servidor de comunicação 118 pode, por exemplo, extrair dados sobre a interação do cliente, como o número de telefone da pessoa que telefona, frequentemente conhecido como o número de identificação de número automático (ANI), ou o endereço de protocolo de Internet (IP) do cliente, ou endereço de e-mail, e se comunicar com outros componentes da central de contatos no processamento da interação.
14 / 52
[0041] De acordo com uma modalidade exemplificadora da invenção, o sistema inclui adicionalmente um servidor de resposta de mídia interativa (IMR) 122, que pode também ser chamado de um sistema de autoajuda, assistente virtual ou similares. O servidor de IMR 122 pode ser similar a um servidor de resposta interativa por voz (IVR - "Interactive Voice Response"), exceto pelo fato de que o servidor de IMR 122 não está restrito à voz e pode adicionalmente abranger vários canais de mídia que incluem voz. Entretanto, tomando-se voz como um exemplo, o servidor IMR pode ser configurado com um script de IMR para consultar os clientes sobre suas necessidades. Por exemplo, uma central de contatos de um banco pode dizer aos clientes, por meio do script de IMR, para 'pressionar 1' se desejarem obter o saldo de sua conta. Se esse for o caso, por meio de interação continuada com o servidor de IMR 122, os clientes poderão concluir o serviço sem precisar falar com um agente. O servidor de IMR 122 pode também fazer uma pergunta aberta, como, por exemplo, "Como posso ajudar?" e o cliente pode falar, ou inserir de outro modo, o motivo para entrar em contato com a central de contatos. A resposta do cliente pode ser então usada pelo servidor de roteamento 124 para rotear a chamada ou comunicação para um recurso adequado do sistema de automação de bate-papo 102.
[0042] Caso a comunicação precise ser roteada para um agente, o servidor de comunicação 118 interage com um servidor de roteamento 124 para encontrar um agente adequado para o processamento da interação. A seleção de um agente adequado para o roteamento de uma interação de entrada pode ser baseada, por exemplo, em uma estratégia de roteamento empregada pelo servidor de roteamento 124 e adicionalmente baseada em informações sobre a disponibilidade do agente, habilidades e outros parâmetros de roteamento fornecidos, por exemplo, por um servidor de estatísticas 132.
[0043] Em algumas modalidades, o servidor de roteamento 124 pode
15 / 52 consultar uma base de dados de clientes, que armazena informações sobre os clientes existentes, como informações de contato, requisitos do acordo de nível de serviço (SLA - "Service Level Agreement"), natureza dos contatos anteriores do cliente e ações tomadas pela central de contatos para resolver quaisquer questões do cliente etc. A base de dados pode ser gerenciada por qualquer sistema de gerenciamento de base de dados convencional na técnica, como Oracle, IBM DB2, servidor Microsoft SQL, Microsoft Access, PostgreSQL, MySQL, FoxPro, NoSQL, SQLite e similares, e pode ser armazenada em um dispositivo de armazenamento em massa 126. O servidor de roteamento 124 pode consultar as informações do cliente na base de dados de clientes por meio de um ANI ou quaisquer outras informações coletadas pelo servidor de IMR 122.
[0044] Uma vez que um agente adequado seja identificado como estando disponível para lidar com uma comunicação, pode ser estabelecida uma conexão entre o cliente e um dispositivo de agente 130a a 130c (coletivamente chamados de 130) do agente identificado. As informações coletadas sobre o cliente e/ou as informações de histórico do cliente podem também ser fornecidas ao dispositivo do agente para auxiliar o agente a se comunicar melhor. Nesse sentido, cada dispositivo de agente 130 pode incluir um telefone adaptado para chamadas telefônicas regulares, chamadas via VoIP e similares. O dispositivo do agente 130 pode também incluir um computador para comunicar-se com um ou mais servidores da central de contatos e executar o processamento de dados associado a operações da central de contatos, bem como para fazer interface com clientes via voz e outros mecanismos de comunicação multimídia.
[0045] O sistema da central de contatos pode também incluir um servidor de multimídia/mídias sociais 154 para engajar em interações de mídia além de interações de voz com os dispositivos de usuário final 108. As interações de mídia podem estar relacionadas, por exemplo, a e-mail, v-mail
16 / 52 (correio de voz através de e-mail), bate-papo, vídeo, mensagens de texto, web, mídias sociais, conavegação e similares. Nesse sentido, o servidor de multimídia/mídias sociais 154 pode assumir a forma de qualquer roteador de IP convencional na técnica com hardware e software especializados para receber, processar e encaminhar eventos multimídia. De acordo com algumas modalidades, o servidor de multimídia/mídias sociais 154 pode ser configurado para manter conversas de bate-papo, gerar transcrições de bate- papo e determinar se uma comunicação por bate-papo está ou não concluída (por exemplo, com base no tempo limite ou por um cliente ter fechado uma janela de bate-papo). Adicionalmente, o servidor de multimídia/mídia social 154 pode ser configurado para manter uma sessão de bate-papo ao vivo mesmo quando uma instância de servidor de bate-papo específica falhar, e também processar ou facilitar as transferências de bate-papo e sessões de conferência.
[0046] Os servidores web 120 podem incluir, por exemplo, hosts de sites de interação social para vários sites de interação social conhecidos, nos quais um usuário final pode se inscrever, como, por exemplo, Facebook, Twitter e similares. Nesse sentido, embora na modalidade da Figura 1 os servidores web 120 sejam mostrados como parte do sistema de automação de bate-papo 102, os servidores web podem também ser fornecidos por terceiros e/ou mantidos fora da central de contatos. Os servidores web podem também fornecer páginas da web à empresa que está sendo atendida pelo sistema da central de contatos. Os usuários finais podem navegar pelas páginas da web e obter informações sobre os produtos e serviços da empresa. As páginas da web podem também fornecer um mecanismo para entrar em contato com a central de contatos por meio, por exemplo, de bate-papo via web, chamada de voz, e-mail, comunicação em tempo real via web (WebRTC - "Web Real- Time Communication") ou similares.
[0047] De acordo com uma modalidade exemplificadora da invenção,
17 / 52 além de interações em tempo real, interações/atividades adiáveis (também chamadas de "backoffice" ou offline) também podem ser direcionadas aos agentes de central de contatos. Tais atividades adiáveis podem incluir, por exemplo, responder a e-mails, responder a cartas, participar de seminários de treinamento, ou qualquer outra atividade que não envolva comunicação em tempo real com um cliente. Nesse sentido, um servidor de interação (iXn) 156 interage com o servidor de roteamento 124 para selecionar um agente adequado para lidar com a atividade. Uma vez atribuída a um agente, uma atividade pode ser passada ao agente, ou pode aparecer na workbin do agente 136a a 136c (coletivamente chamadas de workbin 136) do agente sob a forma de uma tarefa a ser concluída pelo agente. A workbin do agente pode ser implementada via qualquer estrutura de dados convencional na técnica como, por exemplo, uma lista encadeada, um conjunto e/ou similares. A workbin 136 pode ser mantida, por exemplo, na memória temporária (buffer) de cada dispositivo de agente 130.
[0048] De acordo com uma modalidade exemplificadora da invenção, o dispositivo (ou dispositivos) de armazenamento em massa 126 pode armazenar uma ou mais bases de dados relacionadas aos dados do agente (por exemplo, perfis de agente, agendas etc.), dados do cliente (por exemplo, perfis de cliente), dados de interação (por exemplo, detalhes de cada interação com um cliente incluindo, mas não se limitando a: motivo para a interação, dados de disposição, tempo de espera, tempo de interação etc.) e similares.
[0049] De acordo com uma modalidade, alguns dos dados (por exemplo, dados de perfil do cliente) podem ser mantidos em uma base de dados de gerenciamento de relações com o cliente (CRM - "Customer Relations Management") hospedada no dispositivo de armazenamento em massa 126 ou em outro lugar. O dispositivo de armazenamento em massa pode assumir a forma de um disco rígido ou uma matriz de discos, memória flash, tabela magnética ou outro dispositivo de armazenamento em massa
18 / 52 adequado, como é convencional na técnica, para armazenar as informações usadas como parte do sistema da central de contatos 100 e do sistema de automação de bate-papo 102.
[0050] De acordo com algumas modalidades, o sistema de automação de bate-papo pode incluir um servidor de contato universal (UCS - "Universal Contact Server") 127, configurado para recuperar informações armazenadas na base de dados de CRM e direcionar informações a serem armazenadas na base de dados de CRM. Por exemplo, o UCS 127 pode ser utilizado como parte do sistema de automação de bate-papo 100 para facilitar a manutenção de um histórico de quão bem um chatbot específico (descrito em mais detalhes abaixo) funciona para um determinado cliente como uma referência para futuras comunicações de bate-papo. O UCS 127 pode também ser configurado para facilitar a manutenção de um histórico das preferências dos clientes em relação aos canais de mídia, como casos em que as comunicações de bate-papo são aceitáveis e casos em que os clientes preferem canais de mídia alternativos. Adicionalmente, o UCS 127 pode ser configurado para capturar e armazenar dados referentes a comentários de agentes, histórico de comunicação do cliente e similares.
[0051] O sistema de automação de bate-papo 102 pode incluir adicionalmente um servidor de gerenciamento de conhecimento 150 para facilitar as interações entre os clientes que operam os dispositivos de usuário final 108a a 108c e um sistema de conhecimento 152 (que pode ser incluído como parte do sistema de automação de bate-papo 102 ou pode ser operado remotamente por terceiros). O servidor de gerenciamento de conhecimento 152 é um sistema de computador capaz de receber perguntas e fornecer respostas como saída. De acordo com alguns exemplos de modalidades, o sistema de conhecimento pode ser incorporado como IBM Watson®. Obviamente, qualquer outro sistema de conhecimento pode ser usado como será reconhecido por um versado na técnica. Em algumas modalidades, o
19 / 52 sistema de conhecimento 152 é um sistema de computador artificialmente inteligente capaz de responder a perguntas feitas em linguagem natural mediante a recuperação de informações de fontes de informação, como enciclopédias, dicionários, artigos de jornal, trabalhos literários ou outros documentos enviados ao sistema de conhecimento 152 como materiais de referência, conforme é bem conhecido na técnica. Detalhes adicionais do servidor de gerenciamento de conhecimento são fornecidos na patente US n°
9.864.952, concedida em 9 de janeiro de 2018, intitulada "Controlled Question and Response Knowledge System Management Confirming Customer Does Not Want to Terminate/Cancel Service/Relationship", cujo conteúdo está aqui incorporado a título de referência.
[0052] O sistema de automação de bate-papo 102 pode incluir adicionalmente um servidor de orquestração de bate-papo 140 para conduzir e gerenciar comunicações de bate-papo automatizadas/eletrônicas com os usuários finais 106 que operam os dispositivos de usuário final 108. De acordo com algumas modalidades, o servidor de orquestração de bate-papo 140 pode despachar conversas reais de bate-papo para vários chatbots ou bate-papos de agente. A lógica de processamento do servidor de orquestração de bate-papo 140 pode ser acionada por regras e pode fazer uso, por exemplo, de protocolos de distribuição de carga de trabalho inteligentes e várias regras comerciais para rotear comunicações.
[0053] Adicionalmente, o servidor de orquestração de bate-papo 140 pode ser configurado para facilitar (por exemplo, supervisionar e coordenar) a autoaprendizagem por chatbots individuais. Por exemplo, antes de as características de chatbots individuais serem modificadas, o servidor de orquestração de bate-papo 140 pode determinar se várias informações inseridas pelo usuário final ou retroinformações que podem modificar o chatbot são suspeitas ou maliciosas (por exemplo, procurando ou identificando palavras-chave ou frases e/ou sinalizando problemas potenciais
20 / 52 a serem revisados por um agente).
[0054] De acordo com uma modalidade, o servidor de orquestração de bate-papo 140 é acoplado ao servidor de interação 156, ao servidor de estatísticas 132 e/ou similares, para permitir que sessões de bate-papo automatizadas sejam passadas/transferidas/direcionadas para agentes humanos quando adequado. O servidor de orquestração de bate-papo 140 pode também ser acoplado ao servidor de gerenciamento de conhecimento 150 para receber, por exemplo, sugestões sobre respostas a consultas apresentadas pelos clientes durante uma sessão automatizada de bate-papo, para fornecer links para artigos de conhecimento e/ou similares. Embora o servidor de orquestração de bate-papo 140 seja mostrado na modalidade da Figura 1 como sendo um componente de servidor separado, um versado na técnica deve reconhecer que funcionalidades do servidor de automação de bate-papo podem ser incorporadas ao servidor de multimídia/mídia social 154, ao servidor de gerenciamento de conhecimento 105, ao servidor de IMR 122 ou similares.
[0055] O sistema de automação de bate-papo 102 pode também incluir um servidor de emissão de relatórios 134 configurado para gerar relatórios a partir de dados agregados pelo servidor de estatísticas 132. Esses relatórios podem incluir relatórios quase em tempo real ou relatórios históricos referentes ao estado dos recursos como, por exemplo, tempo médio de espera, taxa de abandono, ocupação do agente e similares. Os relatórios podem ser gerados automaticamente ou em resposta a solicitações específicas de um solicitante (por exemplo, agente/administrador, aplicativo da central de contatos e/ou similares).
[0056] Cada um dentre os vários servidores da Figura 1 pode incluir um ou mais processadores que executam instruções de programa de computador e interagem com outros componentes do sistema para executar as várias funcionalidades aqui descritas. As instruções de programa de
21 / 52 computador são armazenadas em uma memória e implementadas com o uso de um dispositivo de memória padrão, como, por exemplo, uma memória de acesso aleatório (RAM - "Random-Access Memory"). As instruções de programa de computador podem também ser armazenadas em outras mídias não transitórias legíveis por computador como, por exemplo, um CD-ROM, pen drive ou similares. Além disso, embora a funcionalidade de cada um dos servidores seja descrita como sendo fornecida pelo servidor específico, uma pessoa versada na técnica reconhecerá que a funcionalidade de vários servidores pode ser combinada ou integrada em um único servidor, ou a funcionalidade de um servidor específico pode ser distribuída por um ou mais outros servidores sem que se afaste do escopo das modalidades reveladas.
[0057] A Figura 2 é um diagrama de layout conceitual de trajetórias potenciais de conversa que podem ser invocadas durante uma conversa de bate-papo que utiliza uma comunicação por texto padronizado de acordo com uma modalidade revelada.
[0058] Conforme ilustrado na Figura 2, uma sessão de comunicação por bate-papo 202 é invocada (por exemplo, como um recepcionista ou atendente automatizado) como parte do sistema de comunicação por bate- papo 200, alertando um usuário final de que a comunicação por bate-papo está disponível. Por exemplo, a iniciação da sessão de bate-papo 202 pode transmitir, por meio da interface de usuário final 160, uma mensagem para o dispositivo de usuário final 108 uma mensagem baseada em conversa ou texto perguntando sobre a finalidade/intenção da comunicação (por exemplo, "Como posso ajudá-lo hoje?").
[0059] Em resposta, o sistema de comunicação por bate-papo 200, que pode ser compreendido do servidor de orquestração de bate-papo 140 e componentes adicionais do sistema de automação de bate-papo 102, pode receber uma ou mais comunicações baseadas em texto ou bate-papo 204 provenientes do dispositivo de usuário final 108. O sistema de comunicação
22 / 52 por bate-papo 200 pode, então, analisar as comunicações baseadas em texto para identificar um ou mais possíveis propósitos ou tópicos para a comunicação.
[0060] De acordo com uma modalidade revelada, com base em um propósito ou tópico identificado para a comunicação do usuário final 106, possivelmente em conjunto com o histórico de comunicação anterior (por exemplo, com a empresa 104 ou em uma plataforma de terceiros, como um site de web da rede social) do usuário final 106, o sistema de comunicação por bate-papo 200 pode preencher várias conversas por texto padronizado 206a a 206c que são consideradas compatíveis com o propósito ou tópico identificado para a comunicação do usuário final 106. Por exemplo, o sistema de comunicação por bate-papo 200 pode identificar o propósito ou tópico da conversa com o usuário final 106 que diz respeito à recuperação das informações de cobrança do cliente a partir da empresa 104. Em resposta, o sistema de comunicação em bate-papo 200 pode preencher várias comunicações por texto padronizado (STC - "Standardized Text Communications") 206a a 206c referentes às informações de cobrança do cliente. O número de comunicações por texto padronizado (STC) representadas na Figura 2 é meramente ilustrativo e não limita o número de comunicações por texto padronizado (STC) que podem ser preenchidas em resposta a um propósito ou tópico de conversa identificado a partir de uma ou mais comunicações de conversa recebidas ou baseadas em texto 204. Adicionalmente, de acordo com algumas modalidades, em circunstâncias nas quais o sistema de comunicação por bate-papo 200 é incapaz de identificar um tópico ou propósito, o sistema de comunicação por bate-papo 200 pode não preencher nenhuma comunicação por texto padronizado (STC) e precisar de uma resposta direta de um agente ao vivo.
[0061] De acordo com uma modalidade revelada, cada uma das comunicações por texto padronizado (STC) 206a a 206c pode ter várias
23 / 52 trajetórias de conversa ou scripts que podem seguir com base, por exemplo, na intenção do cliente. De acordo com uma modalidade revelada, o sistema de comunicação por bate-papo 200 pode identificar ou calcular o nível de confiança do propósito da comunicação para cada uma das comunicações por texto padronizado (STC) dentre uma pluralidade de possíveis propósitos ou trajetórias diferentes de comunicação 208a a 208c (coletivamente trajetórias de comunicação 208) que são predeterminadas. O número de possíveis trajetórias ou propósitos de comunicação ou conversa predeterminados pode variar de acordo com o design e a função do sistema de comunicação por bate-papo 200 e não se limita ao número ilustrado na Figura 2. Entretanto, o sistema de comunicação por bate-papo 200 pode ser projetado de modo que todas (ou substancialmente todas) as comunicações conduzidas com um usuário final possam ser organizadas em um número finito de categorias (por exemplo, suporte de conta, suporte técnico de produtos ou serviços, vendas, cobrança, outras etc.). A título de exemplo, o sistema de comunicação do bate-papo 200, depois de receber indicação de que a comunicação por texto padronizado 1 (STC 1) 206a foi selecionada, pode prosseguir percorrendo etapas ou estágios subsequentes ao longo das trajetórias de comunicação 208a.
[0062] Várias mensagens de conversa 210a a 210c (coletivamente 210), 212a a 212c (coletivamente 212) e 214a a 214c (coletivamente 214) podem estar contidas em cada uma das trajetórias de comunicação 208a a 208c, respectivamente. A seleção de uma rota de comunicação 208a pode solicitar que o sistema de comunicação por bate-papo 200 inclua a mensagem de conversa 210a na comunicação com o usuário final 106. Uma resposta do usuário final 106 à mensagem de conversa 210a pode solicitar que a trajetória de comunicação 208a prossiga para incluir a mensagem de bate-papo 212a ou a mensagem de bate-papo 214a, dependendo do conteúdo da resposta do usuário final 106, conforme discutido adicionalmente abaixo. As trajetórias de
24 / 52 comunicação 208 representadas na Figura 2 não devem ser vistas como uma restrição ou limitação do número de mensagens de conversa 210-214 que podem estar contidas em uma trajetória de comunicação 208, uma vez que o número de mensagens de conversa 210-214 mostradas na Figura 2 serve meramente a propósitos ilustrativos.
[0063] As conversas por texto padronizado 206 podem ser sugeridas para uso com base em qual entrada o cliente está fornecendo durante o bate- papo em tempo real. Um mínimo de dados de treinamento é necessário para que os chatbots de propósito limitado possam ser facilmente configurados por uma central de contatos sem muito conhecimento prévio.
[0064] De acordo com uma modalidade revelada, uma consulta de um usuário final 106 a um sistema da central de contatos 100 de uma empresa 104 que vende ao usuário final 106 mercadorias ou serviços (por exemplo, um negócio de varejo ou uma empresa de serviços públicos) solicitando a visualização de um demonstrativo de cobrança recente do usuário final 106, um exemplo de entrada esperada necessária para recuperar essas informações, incluiria o nome, a data de nascimento e o endereço do cliente. A conversa por texto padronizado poderia ser implementada para inserir essas informações do cliente em vez de exigir que o agente insira instruções uma por uma para as informações do cliente. Como um exemplo, quando o agente seleciona a conversa por texto padronizado "Obter Fatura do Cliente" no dispositivo do agente 130, uma conversa de bate-papo curto é tida pelo sistema de conversa por texto padronizado com o cliente para coletar as informações necessárias. Durante esse tempo, o agente estaria livre para trabalhar em outros bate-papos atribuídos enquanto o sistema obtém do cliente as informações necessárias mencionadas acima, uma vez que um sistema da central de chamadas 100 pode exigir que um agente lide com mais de uma conversa de bate-papo ao mesmo tempo. Os agentes são notificados sobre os novos bate-papos recebidos em uma interação específica pela janela
25 / 52 de bate-papo na interface de usuário dos agentes para essa interação sendo mostrada como a primeira. Uma janela de bate-papo na interface de usuário dos agentes pode notificar o agente quando uma conversa por texto padronizado tiver terminado pela janela dessa interação sendo mostrada como a primeira no dispositivo do agente 130.
[0065] Quando o sistema de conversa por texto padronizado tiver concluído a conversa por texto padronizado selecionada, a conversa por texto padronizado alertará o agente e apresentará a ele as informações coletadas. Quando fosse a hora de o agente voltar a falar com o cliente depois que a conversa por texto padronizado com o cliente tiver sido concluída, a janela de bate-papo para essa interação apareceria como a primeira para alertar o agente, de acordo com um fluxo de trabalho que ele está designado a seguir. Depois de voltar a falar com o cliente, o agente prosseguiria com o bate-papo normal sem o uso de uma conversa por texto padronizado, ou o agente poderia selecionar outra conversa por texto padronizado para continuar a conversa com o cliente em nome do agente. Alternativamente, a conversa por texto padronizado poderia usar as informações recebidas por meio da conversa por texto padronizado para executar uma ação, como recuperar automaticamente a fatura do cliente. Como a central de contatos teria os dados do cliente que a conversa por texto padronizado coletou, uma chamada de API ou uma consulta à base de dados poderia ser utilizada para trazer a fatura do cliente para o agente revisar como parte do bate-papo, ou a fatura do cliente poderia ser enviada diretamente ao cliente.
[0066] Os chatbots que compreendem a conversa por texto padronizado podem ser treinados ao vivo para melhorar o sistema de conversa por texto padronizado. O treinamento pode ser baseado em quais conversas por texto padronizado 206 o agente escolhe enquanto interage com o cliente. O sistema treina as conversas por texto padronizado 206 com base em entradas no sistema de conversa por texto padronizado que incluem as
26 / 52 mensagens de entrada do cliente e a conversa (ou conversas) por texto padronizado específica que o agente seleciona. O sistema de conversa por texto padronizado pode, então, usar a conversa por texto padronizado treinada ao vivo para sugerir no futuro conversas por texto padronizado adequadas 206 a um agente com base nas entradas fornecidas pelo cliente através do bate- papo. Por exemplo, durante uma primeira iteração do sistema de conversa por texto padronizado, um cliente insere no bate-papo da web "Pode ver minha conta?" e o agente seleciona a conversa por texto padronizado "Obter Fatura do Cliente". O sistema de conversa por texto padronizado usa essa entrada e seleção de agente como parte do treinamento ao vivo do sistema de conversa por texto padronizado. Durante a próxima iteração, por exemplo, em resposta a uma nova inserção do cliente "Gostaria de ver minha conta" no bate-papo da web, o sistema de conversa por texto padronizado sugeriria ao agente usar a conversa por texto padronizado "Obter Fatura do Cliente" nesse momento.
[0067] Em uma modalidade revelada, conversas por texto padronizado 206 que são utilizadas para recuperar dados dos clientes fazendo perguntas específicas podem ser configuradas de modo que o sistema de conversa por texto padronizado sinalize quando os dados solicitados já tiverem sido recuperados anteriormente e não solicite ao cliente as mesmas informações sobre uma interação posterior. Por exemplo, se o agente usa múltiplas conversas por texto padronizado 206, a primeira conversa por texto padronizado poderia exigir a data de nascimento do cliente. Se as segundas conversas por texto padronizado 206 que o agente selecionar exigissem a data de nascimento do cliente e os últimos quatro dígitos do número do seguro social do cliente, o sistema entenderia que ele já recuperou a data de nascimento do cliente na primeira conversa por texto padronizado e não solicitaria ao cliente sua data de nascimento nas segundas conversas por texto padronizado 206.
[0068] Em uma modalidade revelada, uma conversa por texto
27 / 52 padronizado pode fazer novamente a mesma pergunta quando o cliente não responder à pergunta solicitada pela conversa por texto padronizado em uma primeira tentativa. O sistema de conversa por texto padronizado pode configurar o número de tentativas para tentar recuperar informações responsivas de um cliente durante uma conversa. Quando o limite para o número de tentativas fosse atingido sem sucesso na recuperação das informações responsivas de um cliente, o sistema de conversa por texto padronizado interromperia o processo, finalizaria a conversa por texto padronizado e alertaria o agente que a conversa por texto padronizado falhou e que seria necessário o envolvimento do agente. Nessa situação, o sistema de conversa por texto padronizado pode alertar o agente concentrando o foco nessa interação, como trazendo a conversa para a frente da interface de usuário do agente. No processo de interrupção, os dados que foram recuperados pelo sistema de conversa por texto padronizado na conversa por texto padronizado podem ser apresentados ao agente para que ele tenha as informações necessárias para continuar a conversa com o cliente.
[0069] Em uma modalidade revelada, o sistema de conversa por texto padronizado pode ser configurado para criar conversas por texto padronizado mais complexas 206 a partir de conversas por texto padronizado mais simples
206. Um exemplo de uma conversa por texto padronizado simples poderia ser um cliente solicitando uma cópia da fatura do cliente, o que pode exigir apenas entradas do nome do cliente, data de nascimento e os últimos quatro dígitos do número de seu seguro social para a recuperação da conta. Um exemplo de conversa por texto padronizado mais complexa é a adição de um novo serviço para o usuário, o que pode exigir todas as entradas da conversa simples de recuperação de fatura do cliente, além de entradas adicionais do cliente, como identificação de serviços que o cliente deseja adicionar. A conversa por texto padronizado simples para recuperar uma fatura pode ser usada para criar a conversa por texto padronizado complexo para adicionar
28 / 52 um novo serviço ao cliente. "data": [ { "id": "name", "entity": "wit$", "doc": "O nome completo do cliente.", "parse": [ "let names = data.split(/[ ]+/);", "let parsedData = {};", "parsedData.name = data;", "parsedData.name = names[0];" "if (names.length > 1) {parsedData.last_name = names[1]}" "return parsedData;" ], "training": [ { "text": "Meu nome é <Adam Johnson>.", "intent": "name" }, { "text": "<Bob Smith>", "intent": "name" }, { "text": "<Charles Jones> é meu nome.", "intent": "name" }
29 / 52
] }, ] [ { "id": "get_customer_info", "name": "Obter informações sobre o cliente", "prereqs": [ ], "steps": [ { "statement": "Deixe-me ver se tenho todas as informações que preciso de você." }, { "data": "name", "question": "Pode me dizer seu nome?", "retry_phrase": "Não entendi.", "success_phrase": "Ótimo!" }, { "data": "birthdate", "question": "Pode me dizer sua data de nascimento?", "retry_phrase": "Não entendi.", "success_phrase": "Ótimo!" }, { "data": "account_id", "question": "Pode me dizer o ID da sua conta?",
30 / 52 "retry_phrase": "Não entendi.", "success_phrase": "Ótimo!" } ] }, { "id": "get_customer_bill", "name": "Obter Fatura do Cliente", "prereqs": [ { "conversation": "get_customer_info" } ], "steps": [ { "statement": "Ok, <first_name>, estou obtendo a fatura da sua conta <account_id >." } ] } ] Tabela 2
[0070] O código acima (Tabela 2) mostra um exemplo de conversa por texto padronizado de "get_customer_info" (obter informações do cliente). A conversa por texto padronizado "get_customer_info" verifica se a mesma tem o nome, a data de nascimento e o ID da conta do cliente, e solicita ao cliente cada uma delas se o sistema ainda não tiver essas informações. A conversa por texto padronizado "get_customer_bill" usa "get_customer_info"
31 / 52 como um pré-requisito para que o sistema de conversa por texto padronizado use "get_customer_info" para recuperar o nome, a data de nascimento e o ID da conta do cliente antes de prosseguir com etapas adicionais para recuperar a fatura do cliente. Dessa maneira, conversas complexas podem ser construídas facilmente, tornando conversas mais simples pré-requisitos de conversas mais complexas. O sistema de conversa por texto padronizado seguirá as etapas supracitadas e fará perguntas para coletar as informações necessárias que ainda não tiverem sido recuperadas, e usará essas informações inseridas para executar as "etapas" da conversa por texto padronizado "get_customer_info".
[0071] De acordo com uma modalidade revelada, o sistema de conversa por texto padronizado inclui uma funcionalidade para notificar o agente que a conversa por texto padronizado selecionada específica foi concluída depois de receber todas as entradas indispensáveis do cliente, ou que falhou em coletar as entradas indispensáveis do cliente após várias tentativas, ou então que falhou em sua tarefa. Caso o sistema de conversa por texto padronizado determine que um cliente não parece estar respondendo às solicitações da conversa por texto padronizado com informações responsivas, a conversa por texto padronizado deve ser capaz de notificar o agente assim que for prático para que o agente possa voltar a interagir com o cliente para garantir que o cliente tenha uma experiência positiva com a interação. Um agente poderia voltar a conversar com o cliente concentrando o foco na janela de interação de bate-papo no espaço de trabalho do agente. O método para o qual o agente é alertado para retomar uma conversa por texto padronizado malsucedida também pode ser o mesmo método para quando uma nova mensagem de bate-papo é recebida por um agente. Dessa maneira, o bate- papo com o cliente pode estar em segundo plano no espaço de trabalho do agente enquanto uma conversa por texto padronizado está sendo executada e o agente saberá que o bate-papo precisa de sua atenção quando o bate-papo retornar à parte frontal do espaço de trabalho do agente.
32 / 52
[0072] Em uma modalidade revelada, o sistema de conversa por texto padronizado pode ser capaz de se coordenar com outros sistemas e/ou servidores no sistema da central de contatos e/ou outros sistemas e/ou servidores como parte do negócio ou empresa fora do sistema da central de contatos. No exemplo de uma conversa por texto padronizado que recupera a fatura de um cliente, o sistema de conversa por texto padronizado pode ser capaz de recuperar automaticamente a fatura do cliente com base na conclusão da conversa por texto padronizado. Adicionalmente, no mesmo exemplo, o sistema de conversa por texto padronizado pode sugerir artigos da base de conhecimento em função do tópico de conversa para auxiliar o agente durante o bate-papo com o cliente. A título de outro exemplo, para uma conversa por texto padronizado configurada para recuperar informações necessárias para verificar a identidade do cliente e recuperar o saldo de sua conta, a conversa por texto padronizado pode solicitar nome, endereço, data de nascimento e os últimos quatro dígitos do número do seguro social do cliente. Uma vez recuperadas essas informações, o sistema de conversa por texto padronizado poderia ser instruído a usar essas informações de uma maneira personalizada. O servidor de orquestração de bate-papo poderia instruir o sistema de conversa por texto padronizado a fazer automaticamente uma chamada de API nos sistemas de dados da empresa da central de chamadas que fornecem os dados necessários e retornar com o saldo da conta diretamente no bate-papo com o cliente sem nenhuma interação com o agente.
[0073] Em uma outra modalidade, o servidor de orquestração de bate- papo pode ser capaz de apresentar uma interface de usuário (UI) para entrada de dados. Alguns canais suportam UIs de clientes enviadas ao cliente para recuperar informações, por exemplo, datas. A título de exemplo, um caso de uso desse recurso pode ser uma conversa por texto padronizado que é configurada para exigir a data de nascimento do cliente. Em vez de tentar recuperar esses dados solicitando a data de nascimento e tentando reconhecer
33 / 52 a resposta, quando possível, a conversa por texto padronizado poderia apresentar ao cliente uma caixa de diálogo de seleção de dados para permitir uma troca mais contínua de informações e assegurar uma entrada mais aceitável.
[0074] A Figura 3 é um diagrama de fluxo de um método para gerenciamento de um sistema de orquestração de bate-papo de acordo com algumas das modalidades reveladas.
[0075] O método 300 se inicia e, na operação 302, o servidor de orquestração de bate-papo 140 recebe uma comunicação de entrada. Por exemplo, um usuário final 106 pode acessar, por meio de um dispositivo de usuário final 108, uma interface de usuário de comunicação por bate-papo (por exemplo, através de um site da Internet) operada pela empresa 104 ou em nome dela, para transmitir uma solicitação de interação com a central de contatos. A interface de comunicação por bate-papo pode, por exemplo, ser facilitada pelo servidor de orquestração de bate-papo 140 e pela interface de usuário final 160. A comunicação por bate-papo de entrada pode ser uma nova comunicação de um usuário final 106 ou pode ser a continuação de uma comunicação em andamento do usuário final 106. O servidor de orquestração de bate-papo 140 pode solicitar ao usuário final 106 informações tópicas para comunicação por bate-papo. Por exemplo, de acordo com algumas modalidades, o servidor de orquestração de bate-papo 140 pode fazer uma ou mais perguntas diretamente ao usuário final 106 consultando a natureza ou o propósito da comunicação por bate-papo (por exemplo, "Como posso ajudá-lo hoje?"). De acordo com algumas modalidades, o servidor de orquestração de bate-papo 140 pode receber entradas do usuário final 106 a partir das quais o servidor de orquestração de bate-papo 140 pode determinar ou inferir a natureza ou o propósito da comunicação por bate-papo, sem que o servidor de orquestração de bate-papo 140 pergunte primeiro sobre o propósito da comunicação por bate-papo. Ou seja, em alguns casos, o usuário final 106
34 / 52 pode iniciar a comunicação por bate-papo com o servidor de orquestração de bate-papo 140 e descrever proativamente o propósito da comunicação.
[0076] Na operação 304, o servidor de orquestração de bate-papo 140 identifica uma comunicação por bate-papo de entrada e utiliza processamento de linguagem natural (NLP) na comunicação por bate-papo de entrada recebida do usuário final 106. O processamento de linguagem natural para as conversas por texto padronizado 206 pode utilizar soluções de NLP atualmente conhecidas, como wit.ai, api.ai, luis.ai e IBM Watson. As conversas por texto padronizado 206 podem ser compreendidas de pelo menos uma pluralidade de chatbots de propósito limitado, ou "mini" chatbots, que são projetados para manter pequenas conversas com clientes em nome de agentes. Os chatbots de propósito limitado podem coletar informações dos clientes sem intervenção de agentes. Os chatbots de propósito limitado são treinados para fornecer intenções e entidades (informações, como nome ou data de nascimento) derivadas do processamento de linguagem natural. As informações coletadas pelos chatbots de propósito limitado podem ser aquelas usadas para lidar com problemas típicos de clientes da empresa que opera a central de contatos que implanta as conversas por texto padronizado 206. Em uma modalidade revelada, os chatbots de propósito limitado podem analisar uma comunicação por bate-papo de entrada em múltiplas entidades. Por exemplo, o recebimento de uma entidade de nome completo pode ser analisado em múltiplas entidades – nome e sobrenome. Expressões regulares também podem ser usadas quando os dados tiverem um formato claro, como um número de conta. As sentenças de treinamento podem também ser fornecidas para iniciar um NLP, como wit.ai. "data": [ { "id": "name", "entity": "wit$",
35 / 52 "doc": "O nome completo do cliente.", "parse": [ "let names = data.split(/[ ]+/);", "let parsedData = {};", "parsedData.name = data;", "parsedData.name = names[0];" "if (names.length > 1) {parsedData.last_name = names[1]}" "return parsedData;" ], "training": [ { "text": "Meu nome é <Adam Johnson>.", "intent": "name" }, { "text": "<Bob Smith>", "intent": "name" }, { "text": "<Charles Jones> é meu nome.", "intent": "name" } ] }, ] Tabela 1
[0077] O código acima (Tabela 1) é um fragmento de dados de
36 / 52 treinamento exemplificadores para treinar o sistema de conversa por texto padronizado para reconhecer quando um cliente está fornecendo seu nome em linguagem natural de acordo com uma modalidade revelada, utilizando um nome como um exemplo de entidade em processamento de linguagem natural. Esse exemplo usa o wit.ai e sua entidade integrada wit$contact que representa nomes. Isso permite que o sistema de conversa por texto padronizado reconheça as declarações típicas usadas para fornecer um nome e onde, na sentença, ele tipicamente residiria. Além disso, o exemplo acima tem algum código adicional que analisa a entidade detectada, por exemplo, o nome do cliente, e o divide ainda mais em nome e sobrenome, caso ambos sejam fornecidos.
[0078] Na operação 306, é apresentado ao servidor de orquestração de bate-papo 140 várias conversas por texto padronizado 206 em resposta à comunicação por bate-papo de entrada processada por NLP. O número de conversas por texto padronizado 206 responsivas apresentadas ao servidor de orquestração de bate-papo 140 pode ser determinado por um número predeterminado (isto é, enviar três conversas por texto padronizado 206) ou por um limite de capacidade de resposta (isto é, enviar todas as conversas por texto padronizado 206 que excederem um certo nível de confiança para capacidade de resposta), ou por uma combinação dessas situações, ou por outros meios para selecionar várias conversas por texto padronizado 206. Após as conversas por texto padronizado 206 serem fornecidas ao servidor de orquestração de bate-papo 140, o método 300 prossegue para a operação 306.
[0079] Na operação 308, o servidor de orquestração de bate-papo 140 fornece a um dispositivo de agente 130 uma ordem de classificação de várias conversas por texto padronizado 206 com identificações de cada uma dentre as várias conversas por texto padronizado. O servidor de orquestração de bate-papo 140 classifica as conversas por texto padronizado 206 na ordem de conversas por texto padronizado 206 mais bem ajustadas. O servidor de
37 / 52 orquestração de bate-papo 140 corresponde à conversa por texto padronizado responsiva mais provável com um tópico de conversa identificado na comunicação por bate-papo de entrada processada por NLP. O servidor de orquestração de bate-papo 140 pode, então, repetir os processos de correspondência, correlacionando a comunicação por bate-papo de entrada processada por NLP com conversas por texto padronizado adicionais 206 e apresentar as conversas por texto padronizado adicionais 206 como opções adicionais. O número de conversas por texto padronizado 206 apresentadas ao dispositivo do agente 130 pode ser limitado por um número predefinido de conversas por texto padronizado. Alternativamente, o número de conversas por texto padronizado 206 apresentadas ao dispositivo do agente 130 pode ser limitado por um nível de confiança definido para cada comunicação por texto padronizado, sendo que o servidor de orquestração de bate-papo 140 apresentará apenas conversas por texto padronizado 206 que atinjam um certo nível limite com base na correspondência com a comunicação por bate-papo de entrada processada por NLP. Alternativamente, um híbrido de número predefinido de conversas e níveis de confiança pode ser usado, ou outros meios de classificação das conversas por texto padronizado correspondentes 206 para apresentar um certo número de conversas por texto padronizado 206 ao dispositivo do agente 130.
[0080] Na operação 310, o servidor de orquestração de bate-papo 140 recebe uma entrada do dispositivo do agente 130 para determinar se qualquer uma das conversas por texto padronizado apresentadas na ordem de classificação 206 apresentadas ao dispositivo do agente 130 na operação 308 é responsiva à indagação do usuário final 106. Em uma modalidade revelada, o dispositivo do agente 130 fornece uma indicação específica de que uma dentre as conversas por texto padronizado apresentadas 206 é ou não responsiva à indagação do usuário final 106. Em uma outra modalidade revelada, o dispositivo do agente 130 envia um sinal para o servidor de
38 / 52 orquestração de bate-papo 140 indicando: (1) a seleção de uma dentre conversas por texto padronizado apresentadas na ordem de classificação 206, ou (2) que nenhuma das conversas por texto padronizado apresentadas na ordem de classificação 206 foi responsiva à indagação do usuário final 106. Se o servidor de orquestração de bate-papo 140 receber um sinal indicando que não há conversa por texto padronizado responsiva, então o método 300 termina. Se o servidor de orquestração de bate-papo 140 receber um sinal indicando uma conversa por texto padronizado responsiva, então o método 300 prossegue para a operação 312.
[0081] Na operação 312, o servidor de orquestração de bate-papo 140 recebe uma entrada do dispositivo do agente 130 que seleciona uma das conversas por texto padronizado apresentadas na ordem de classificação 206. O servidor de orquestração de bate-papo 140 prosseguirá, então, com o início da conversa por texto padronizado selecionada usando o bloco de bate-papo adequado para a conversa por texto padronizado selecionada.
[0082] Uma vez que uma trajetória de conversa é selecionada, ela pode ser percorrida na operação 314. Para essa finalidade, uma conversa por texto padronizado selecionada pode, por exemplo, fazer e responder a várias perguntas para e a partir do usuário final 106, por meio da interface de usuário final 160 para tentar obter todas as informações necessárias para o tópico identificado da conversa por texto padronizado.
[0083] Durante a sessão de comunicação por bate-papo, o servidor de orquestração de bate-papo 140 pode monitorar, na operação 316, a conversa de comunicação por bate-papo (por exemplo, a entrada recebida do usuário final 106) para vários eventos desencadeadores e calcular e/ou modificar o nível de confiança que o lote de bate-papo selecionado está lidando adequadamente com a sessão de comunicação por bate-papo. Por exemplo, o servidor de orquestração de bate-papo 140 pode monitorar a linguagem recebida do usuário final 106 e detectar a linguagem indicando se o servidor
39 / 52 de orquestração de bate-papo 140 está recebendo ou não respostas satisfatórias para as perguntas feitas na conversa por texto padronizado. O servidor de orquestração de bate-papo 140 pode também monitorar a linguagem recebida do usuário final 106 para detectar se o usuário final 106 está satisfeito, frustrado, confuso ou se está entendendo a saída do servidor de orquestração de bate-papo 140.
[0084] Na operação 318, o servidor de orquestração de bate-papo 140 determina se são necessárias informações adicionais do cliente para concluir a conversa por texto padronizado. Se nenhuma informação adicional for necessária para que o usuário final 106 conclua a conversa por texto padronizado, então o método 300 termina. Se forem necessárias informações adicionais do usuário final 106 para concluir a conversa por texto padronizado, o servidor de orquestração de bate-papo 140 que implementa a conversa por texto padronizado apresentará a próxima pergunta ao usuário final 106 e, então, o processo continuará na operação 320.
[0085] Na operação 320, o servidor de orquestração de bate-papo 140 determina se o cliente forneceu informações responsivas à pergunta apresentada a partir do resultado da operação 318. De maneira similar à operação 304, o servidor de orquestração de bate-papo 140 identifica a comunicação por bate-papo de entrada em resposta à pergunta proposta e utiliza processamento de linguagem natural (NLP) na comunicação por bate- papo de entrada recebida do usuário final 106. O servidor de orquestração de bate-papo 140 usa NLP para determinar intenções e entidades da comunicação recebida. Se o servidor de orquestração de bate-papo determinar que a comunicação recebida processada por NLP não responde à pergunta apresentada ao usuário final 106 na operação 318, então o método 300 termina. Se o servidor de orquestração de bate-papo determinar que a comunicação de entrada processada por NLP responde à pergunta apresentada ao usuário final 106 na operação 318, então o processo continua na
40 / 52 operação 322.
[0086] Em uma modalidade revelada, a operação 320 pode também se repetir por um certo número de tentativas sobre uma pergunta específica apresentada ao usuário final. O número de tentativas pode ser determinado por vários critérios predefinidos, que poderiam incluir um número máximo de tentativas, um nível de confiança definido para comunicação recebida processada por NLP e/ou um número definido de palavras-chave identificáveis pelo servidor de orquestração de bate-papo 140 (isto é, busca por palavras-chave que expressem a insatisfação do usuário final com a conversa e que a intervenção do agente é necessária).
[0087] Na operação 322, o servidor de orquestração de bate-papo 140 determina se todas as informações necessárias para a conversa por texto padronizado foram obtidas do usuário final 106. Por exemplo, se forem necessárias três informações de identificação do cliente para concluir a conversa por texto padronizado (por exemplo, nome, data de nascimento e os últimos quatro dígitos do número do seguro social) e o usuário final 106 tiver fornecido apenas uma das informações de identificação de cliente, então serão necessárias informações adicionais do usuário final 106. Se o servidor de orquestração de bate-papo 140 determinar que todas as informações foram obtidas do usuário final 106, então o método 300 termina. Se o servidor de orquestração de bate-papo 140 determinar que são necessárias informações adicionais para concluir a conversa por texto padronizado, então o processo retorna à etapa 314 para continuar a percorrer a trajetória de conversa.
[0088] A Figura 4 é um diagrama de fluxo para um método, em parte, de gerenciamento de um sistema de orquestração de bate-papo de acordo com uma modalidade revelada. Em particular, a Figura 4 é uma modalidade exemplificadora de treinamento ao vivo do sistema de conversa por texto padronizado.
[0089] O método 400 começa de maneira similar ao método 300,
41 / 52 sendo que a operação 406 inclui a etapa em que o servidor de orquestração de bate-papo 140 identifica uma comunicação por bate-papo de entrada e utiliza processamento de linguagem natural (PLN) na comunicação por bate-papo de entrada recebida do usuário final 106; e, então, a operação 408 inclui a etapa do servidor de orquestração de bate-papo 140 que usa a comunicação por bate-papo de entrada processada por NLP e fornece a um dispositivo de agente 130 uma ordem de classificação de várias conversas por texto padronizado 206 com identificações de cada uma dentre as várias conversas por texto padronizado 206. A operação 406 pode ser executada com o uso dos mesmos métodos aqui descritos para a operação 304 como parte do método
300. A operação 408 pode ser executada com o uso dos mesmos métodos aqui descritos para a operação 308 como parte do método 300.
[0090] Na operação 410, o servidor de orquestração de bate-papo 140 determina um nível de confiança para as conversas por texto padronizado apresentadas na ordem de classificação 206. O nível de confiança para as conversas por texto padronizado apresentadas na ordem de classificação 206 determina quão bem as conversas por texto padronizado 206 combinam com a comunicação de cliente processada por NLP. Por exemplo, uma comunicação de cliente processada por NLP que determina que o tópico da conversa do cliente é "cobrança" pode ter um alto nível de confiança para as conversas por texto padronizado apresentadas 206 relativas à cobrança. Por outro lado, uma comunicação de cliente processada por NLP que determina que o tópico da conversa do cliente pertence a "finanças" pode ter um baixo nível de confiança para as conversas por texto padronizado apresentadas 206 relativas à cobrança.
[0091] Se o servidor de orquestração de bate-papo 140 determinar que o nível de confiança para as conversas por texto padronizado apresentadas na ordem de classificação 206 está acima de um nível de confiança, seja um nível predefinido ou um nível dinamicamente definido, então o método 400
42 / 52 prossegue para preencher a lista de conversas 412 do dispositivo do agente
130. Depois que a lista de conversas preenchida 412 é concluída, o método 400 prossegue para fazer com que o agente selecione a conversa 414 da lista de conversas preenchida 412 o qual, por sua vez, prossegue para percorrer a trajetória de conversa 420. A operação 414 pode ser executada com o uso dos mesmos métodos aqui descritos para a operação 312 como parte do método
300. A operação 420 pode ser executada com o uso dos mesmos métodos aqui descritos para a operação 314 como parte do método 300. O método 400 pode, então, continuar a percorrer a trajetória de conversa 420, como percorrendo a trajetória de conversa 314 no método 300.
[0092] Se o servidor de orquestração de bate-papo 140 determinar que o nível de confiança para as conversas por texto padronizado apresentadas na ordem de classificação 206 está abaixo de um nível de confiança, seja um nível predefinido ou um nível dinamicamente definido, o servidor de orquestração de bate-papo 140 que executa o sistema de conversa por texto padronizado receberá um sinal do dispositivo do agente 130 indicando se o agente selecionou uma conversa por texto padronizado 416 em resposta à comunicação do cliente. Como parte da determinação de se o agente seleciona uma conversa 416, um certo número de respostas do agente de ordem de classificação 408 pode ser mostrado no dispositivo do agente 130, ou todas as conversas por texto padronizado 206 atualmente disponíveis podem ser mostradas no dispositivo do agente 130. Se o sinal recebido do dispositivo do agente 130 indicar que o agente não selecionou uma conversa por texto padronizado em resposta à comunicação com o cliente, então o método 400 termina. Se o sinal recebido do dispositivo do agente 130 indicar que o agente selecionou uma conversa por texto padronizado em resposta à comunicação com o cliente, então o método 400 prossegue para a operação 418.
[0093] Na operação 418, o servidor de orquestração de bate-papo 140 treina ao vivo a conversa por texto padronizado conforme indicado pelo
43 / 52 agente na operação 416. O treinamento ao vivo 418 aumentará a associação entre o tópico determinado da comunicação processada por NLP 406 e a conversa por texto padronizado selecionada pelo agente 416. Consequentemente, em iterações futuras do método 400 por meio do servidor de orquestração de bate-papo 140, será mais provável que o mesmo tópico de comunicação processado por NLP do cliente esteja acima do nível de confiança estabelecido e, dessa forma, mais propenso a ser diretamente preenchido no dispositivo do agente 130 e a melhorar a eficiência do sistema de conversa por texto padronizado. O método 400 prossegue para percorrer a trajetória de conversa 420, como faria se o agente selecionasse uma conversa por texto padronizado que estivesse acima do nível de confiança 410.
[0094] Em uma modalidade, cada um dos vários servidores, controles, comutadores, gateways, motores e/ou módulos (coletivamente chamados de servidores) nas figuras descritas é implementado via hardware ou firmware (por exemplo, ASIC) conforme será entendido pelo versado na técnica. Cada um dos vários servidores pode ser um processo ou uma linha de execução (thread) executada em um ou mais processadores, em um ou mais dispositivos de computação (por exemplo, Figuras 5A, 5B), que executa instruções de programa de computador e interage com outros componentes de sistema para executar as várias funcionalidades descritas na presente invenção. As instruções de programa de computador são armazenadas em uma memória, a qual pode ser implementada em um dispositivo de computação com o uso de um dispositivo de memória padrão como, por exemplo, uma memória RAM. As instruções de programa de computador podem também ser armazenadas em outras mídias legíveis por computador não transitórias como, por exemplo, um CD-ROM, um pen drive, etc. Um versado na técnica deve reconhecer que um dispositivo de computação pode ser implementado através de firmware (por exemplo, um circuito integrado para aplicação específica), hardware ou uma combinação de software,
44 / 52 firmware e hardware. Uma pessoa versada na técnica também reconhecerá que a funcionalidade de vários dispositivos de computação pode ser combinada ou integrada a um único dispositivo de computação, ou que a funcionalidade de um dispositivo de computação específico pode ser distribuída por um ou mais outros dispositivos de computação sem que se afaste do escopo das modalidades reveladas. Um servidor pode ser um módulo de software, o qual pode também ser simplesmente chamado de módulo. O conjunto de módulos na central de contatos pode incluir servidores e outro módulos.
[0095] Os vários servidores podem estar situados em um dispositivo de computação interno à mesma localização física que os agentes da central de contatos, ou podem estar situados externamente (ou na nuvem) em uma localização geograficamente diferente, por exemplo em um centro de dados remoto, conectados à central de contatos por meio de uma rede como a Internet. Além disso, alguns dos servidores podem estar situados em um dispositivo de computação interno à central de contatos, enquanto outros podem estar situados em um dispositivo de computação externo ao local, ou servidores fornecendo funcionalidade redundante podem ser fornecidos via dispositivos de computação tanto internos como externos ao local para fornecer maior tolerância a falhas. Em algumas modalidades, a funcionalidade fornecida pelos servidores situados em dispositivos de computação externos ao local pode ser acessada e fornecida em uma rede privada virtual (VPN - "Virtual Private Network"), como se esses servidores fossem internos ao local, ou a funcionalidade pode ser fornecida com o uso de software como serviço (SaaS - "Software as a Service") para fornecer funcionalidade via internet usando vários protocolos, como fazendo intercâmbio de dados com o uso de codificação em linguagem de marcação extensível (XML - "eXtensible Markup Language") ou notação de objeto em JavaScript (JSON - "JavaScript Object Notation").
45 / 52
[0096] As Figuras 5A e 5B são diagramas que ilustram uma modalidade de dispositivo de computação como pode ser empregado em uma modalidade da invenção, indicado genericamente por 500. Cada dispositivo de computação 500 inclui uma CPU 505 e uma unidade de memória principal
510. Conforme ilustrado na Figura 5A, o dispositivo de computação 500 pode também incluir um dispositivo de armazenamento 515, uma interface de mídia removível 520, uma interface de rede 525, um controlador de entrada/saída (E/S) 530, um ou mais dispositivos de exibição 535A, um teclado 535B e um dispositivo apontador 535C (por exemplo, um mouse). O dispositivo de armazenamento 515 pode incluir, sem limitação, armazenamento para um sistema operacional e software. Conforme mostrado na Figura 5B, cada dispositivo de computação 500 pode também incluir elementos opcionais adicionais, como uma porta de memória 540, uma ponte 545, um ou mais dispositivos adicionais de entrada/saída 535D, 535E e uma memória cache 550 em comunicação com a CPU 505. Os dispositivos de entrada/saída 535A, 535B, 535C, 535D e 535E podem ser coletivamente chamados na presente invenção de 535.
[0097] A CPU 505 é qualquer conjunto de circuitos lógicos que responda a e processe instruções trazidas da unidade de memória principal
510. Ela pode ser implementada, por exemplo, em um circuito integrado, sob a forma de um microprocessador, microcontrolador ou unidade de processamento gráfico, ou em uma matriz de portas programável em campo (FPGA - "Field-Programmable Gate Array") ou um circuito integrado de aplicação específica (ASIC). A unidade de memória principal 510 pode ser um ou mais chips de memória capazes de armazenar dados e de permitir que qualquer local de armazenamento seja diretamente acessado pela unidade central de processamento 505. Conforme mostrado na Figura 5A, a unidade central de processamento 505 se comunica com a memória principal 510 por meio de um barramento de sistema 555. Conforme mostrado na Figura 5B, a
46 / 52 unidade central de processamento 505 pode também se comunicar diretamente com a memória principal 510 por meio de uma porta de memória 540.
[0098] Em uma modalidade, a CPU 505 pode incluir uma pluralidade de processadores e pode fornecer funcionalidade para execução simultânea de instruções, ou para execução simultânea de uma instrução em mais de um dado. Em uma modalidade, o dispositivo de computação 500 pode incluir um processador paralelo com um ou mais núcleos. Em uma modalidade, o dispositivo de computação 500 compreende um dispositivo paralelo de memória compartilhada, com múltiplos processadores e/ou múltiplos núcleos de processador, que acessam toda a memória disponível como um único espaço global de endereçamento. Em outra modalidade, o dispositivo de computação 500 é um dispositivo paralelo de memória distribuída com múltiplos processadores, cada qual acessando apenas a memória local. O dispositivo de computação 500 pode ter tanto alguma memória que é compartilhada como alguma que só pode ser acessada por processadores ou subconjuntos de processadores específicos. A CPU 505 pode incluir um microprocessador de múltiplos núcleos, o qual combina dois ou mais processadores independentes em um único volume, por exemplo em um único circuito integrado (IC - "Integrated Circuit"). Por exemplo, o dispositivo de computação 500 pode incluir pelo menos uma CPU 505 e pelo menos uma unidade de processamento gráfico.
[0099] Em uma modalidade, uma CPU 505 fornece funcionalidade de instrução única, múltiplos dados (SIMD - "Single Instruction, Multiple Data"), por exemplo, a execução de uma única instrução simultaneamente em múltiplos dados. Em outra modalidade, vários processadores na CPU 505 podem fornecer funcionalidade para execução de múltiplas instruções simultaneamente em múltiplos dados (MIMD - "Multiple Instruction, Multiple Data"). A CPU 505 pode também usar qualquer combinação de
47 / 52 núcleos SIMD e MIMD em um único dispositivo.
[00100] A Figura 5B mostra uma modalidade na qual a CPU 505 se comunica diretamente com a memória cache 550 por meio de um barramento secundário, às vezes chamado de barramento traseiro. Em outras modalidades, a CPU 505 se comunica com a memória cache 550 com o uso do barramento de sistema 555. A memória cache 550 tipicamente tem um tempo de resposta mais rápido que o da memória principal 510. Conforme ilustrado na Figura 5A, a CPU 505 se comunica com vários dispositivos de E/S 535 por meio do barramento de sistema local 555. Vários barramentos podem ser usados como barramento de sistema local 555, incluindo, mas não se limitando a: um barramento local de acordo com a Associação de Padrões para Eletrônicos com Vídeo (VESA - "Video Electronics Standards Association") (VLB - "VESA Local Bus"), um barramento com arquitetura padrão da indústria (ISA - "Industry Standard Architecture"), um barramento estendido com arquitetura padrão da indústria (EISA - "Extended Industry Standard Architecture"), um barramento com arquitetura de microcanais (MCA - "Micro Channel Architecture"), um barramento para interconexão de componentes periféricos (PCI - "Peripheral Component Interconnect"), um barramento PCI estendido (PCI-X - "PCI Extended"), um barramento PCI-Express ou um NuBus. Para modalidades nas quais um dispositivo de E/S é um dispositivo de exibição 535A, a CPU 505 pode se comunicar com o dispositivo de exibição 535A por meio de uma porta gráfica avançada (AGP - "Advanced Graphics Port"). A Figura 5B mostra uma modalidade de computador 500 na qual a CPU 505 se comunica diretamente com o dispositivo de E/S 535E. A Figura 5B mostra também uma modalidade na qual barramentos locais e comunicação direta são misturados: a CPU 505 se comunica com o dispositivo de E/S 535D com o uso de um barramento de sistema local 555 enquanto se comunica com o dispositivo de E/S 835 diretamente.
[00101] Uma ampla variedade de dispositivos de E/S 535 pode estar
48 / 52 presente no dispositivo de computação 500. Os dispositivos de entrada incluem um ou mais teclados 535B, mouses, trackpads, trackballs, microfones e mesas de desenho, para citar alguns exemplos não limitadores. Os dispositivos de saída incluem dispositivos de exibição de vídeo 535A, alto-falantes e impressoras. Um controlador de E/S 530, conforme mostrado na Figura 5A, pode controlar o um ou mais dispositivos de E/S, como um teclado 535B e um dispositivo apontador 535C (por exemplo, um mouse ou caneta óptica), por exemplo.
[00102] Com referência à Figura 5A, o dispositivo de computação 500 pode ser compatível com uma ou mais interfaces de mídia removível 520, como uma unidade de disquete, uma unidade de CD-ROM, uma unidade de DVD-ROM, unidades de fitas de vários formatos, uma porta USB, uma porta para cartão de memória SD ("Secure Digital") ou COMPACT FLASH®, ou qualquer outro dispositivo adequado para ler dados a partir de mídias somente de leitura, ou para ler dados de, ou gravar dados em, mídias para gravação e leitura. Um dispositivo de E/S 535 pode ser uma ponte entre o barramento de sistema 555 e uma interface de mídia removível 520.
[00103] A interface de mídia removível 520 pode, por exemplo, ser usada para instalar software e programas. O dispositivo de computação 500 pode incluir adicionalmente um dispositivo de armazenamento 515, como uma ou mais unidades de disco rígido ou arranjos de unidades de disco rígido, para armazenar um sistema operacional e outros softwares relacionados, e para armazenar programas de software aplicativos. Opcionalmente, uma interface de mídia removível 520 pode também ser usada como dispositivo de armazenamento. Por exemplo, o sistema operacional e o software podem ser executados a partir de uma mídia inicializável, por exemplo um CD inicializável.
[00104] Em uma modalidade, o dispositivo de computação 500 pode incluir ou estar conectado a múltiplos dispositivos de exibição 535A, cada um
49 / 52 dos quais pode ser de tipos e/ou formas iguais ou diferentes. Dessa forma, qualquer um dentre os dispositivos de E/S 535 e/ou o controlador de E/S 530 pode incluir qualquer tipo e/ou forma de hardware, software ou combinação de hardware e software adequada para suportar, habilitar ou proporcionar a conexão a, e o uso de, múltiplos dispositivos de exibição 535A pelo dispositivo de computação 500. Por exemplo, o dispositivo de computação 500 pode incluir qualquer tipo e/ou forma de adaptador de vídeo, placa de vídeo, driver e/ou biblioteca para fazer interface, comunicar-se, conectar-se ou usar de outro modo os dispositivos de exibição 535A. Em uma modalidade, um adaptador de vídeo pode incluir múltiplos conectores para fazer interface com múltiplos dispositivos de exibição 535A. Em outra modalidade, o dispositivo de computação 500 pode incluir múltiplos adaptadores de vídeo, com cada adaptador de vídeo conectado a um ou mais dentre os dispositivos de exibição 535A. Em outras modalidades, um ou mais dentre os dispositivos de exibição 535A podem ser fornecidos por um ou mais outros dispositivos de computação conectados, por exemplo, ao dispositivo de computação 500 por meio de uma rede. Essas modalidades podem incluir qualquer tipo de software projetado e construído para usar o dispositivo de exibição de outro dispositivo de computação como um segundo dispositivo de exibição 535A para o dispositivo de computação 500. Uma pessoa versada na técnica reconhecerá e entenderá as várias maneiras e modalidades em que um dispositivo de computação 500 pode ser configurado para ter múltiplos dispositivos de exibição 535A.
[00105] Uma modalidade de dispositivo de computação indicado genericamente nas Figuras 5A e 5B pode operar sob o controle de um sistema operacional, o qual controla a programação de tarefas e o acesso aos recursos do sistema. O dispositivo de computação 500 pode estar executando qualquer sistema operacional, qualquer sistema operacional integrado, qualquer sistema operacional em tempo real, qualquer sistema operacional open source,
50 / 52 qualquer sistema operacional proprietário, quaisquer sistemas operacionais para dispositivos de computação móvel, ou qualquer outro sistema operacional capaz de ser executado no dispositivo de computação e de executar as operações descritas na presente invenção.
[00106] O dispositivo de computação 500 pode ser qualquer estação de trabalho, computador de mesa, computador portátil ou computador do tipo notebook, computador servidor, computador de mão, telefone móvel ou outro dispositivo portátil de telecomunicação, dispositivo reprodutor de mídias, sistema para jogos, dispositivo móvel de computação, ou qualquer outro tipo e/ou forma de computação, telecomunicações ou dispositivo de mídia que tenha a capacidade de comunicação e que tenha suficiente poder de processamento e capacidade de memória para executar as operações descritas na presente invenção. Em algumas modalidades, o dispositivo de computação 500 pode ter diferentes processadores, sistemas operacionais e dispositivos de entrada consistentes com o dispositivo.
[00107] Em outras modalidades, o dispositivo de computação 500 é um dispositivo móvel. Os exemplos podem incluir um telefone celular habilitado para Java ou um assistente pessoal digital (PDA - "Personal Digital Assistant"), um smartphone, um reprodutor de áudio digital ou um reprodutor de mídia portátil. Em uma modalidade, o dispositivo de computação 500 inclui uma combinação de dispositivos, como um telefone móvel combinado com um reprodutor de áudio digital ou um reprodutor de mídia portátil.
[00108] Um dispositivo de computação 500 pode ser um dentre uma pluralidade de máquinas conectadas por uma rede, ou pode incluir uma pluralidade de máquinas assim conectadas. Um ambiente de rede pode incluir um ou mais dentre máquinas locais, clientes, nós de cliente, máquinas clientes, computadores clientes, dispositivos clientes, pontos de extremidade ou nós de ponto de extremidade em comunicação com uma ou mais máquinas remotas (as quais podem também ser genericamente chamadas de máquinas
51 / 52 servidoras ou máquinas remotas) por meio de uma ou mais redes. Em uma modalidade, uma máquina local tem a capacidade de funcionar tanto como um nó de cliente buscando acesso a recursos fornecidos por uma máquina servidora, quanto como uma máquina servidora fornecendo a outros clientes acesso a recursos hospedados. A rede pode ser enlaces LAN ou WAN, conexões de banda larga, conexões sem fio ou uma combinação de quaisquer ou todos os supracitados. As conexões podem ser estabelecidas com o uso de vários protocolos de comunicação. Em uma modalidade, o dispositivo de computação 500 se comunica com outros dispositivos de computação 500 por meio de qualquer tipo e/ou forma de gateway ou protocolo de túnel, como camada de soquete seguro (SSL - "Secure Socket Layer") ou segurança de camada de transporte (TLS - "Transport Layer Security"). A interface de rede pode incluir um adaptador de rede integrado, como uma placa de interface de rede, adequada para fazer interface do dispositivo de computação a qualquer tipo de rede capaz de comunicação e execução das operações aqui descritas. Um dispositivo de E/S pode ser uma ponte entre o barramento de sistema e um barramento de comunicação externa.
[00109] Em uma modalidade, um ambiente de rede pode ser um ambiente de rede virtual, onde os vários componentes da rede são virtualizados. Por exemplo, as várias máquinas podem ser máquinas virtuais implementadas como um computador baseado em software sendo executado em uma máquina física. As máquinas virtuais podem compartilhar o mesmo sistema operacional. Em outras modalidades, diferentes sistemas operacionais podem ser executados em cada instância de máquina virtual. Em uma modalidade, uma virtualização de tipo "hipervisor" é implementada onde múltiplas máquinas virtuais são executadas na mesma máquina física hospedeira, cada qual atuando como se tivesse seu próprio gabinete dedicado. As máquinas virtuais podem também ser executadas em diferentes máquinas físicas hospedeiras.
52 / 52
[00110] Outros tipos de virtualização são também contemplados como, por exemplo, a rede (por exemplo, via comunicação por rede definida por software (SDN - Software Defined Networking)). As funções, como funções de controlador de borda de sessão e outros tipos de funções, podem também ser virtualizados como, por exemplo, via virtualização de funções da rede (NFV - "Network Functions Virtualization").
[00111] De acordo com uma ou mais modalidades reveladas, várias operações descritas acima podem ser omitidas, ou operações adicionais podem ser incluídas, exceto onde indicado em contrário, sem que se desvie do caráter e âmbito das modalidades reveladas. Adicionalmente, a ordem das operações pode ser modificada ou alterada, exceto quando for indicado ou estiver implícito o contrário, sem que se desvie do caráter e âmbito das modalidades reveladas.
[00112] Muitas das unidades funcionais do sistema nas modalidades da invenção podem ser implementadas como rotinas de código em equipamento de telefonia computadorizado, servidores de computador e estações de trabalho individuais. É bem conhecido que os programadores são altamente individualizados e podem implementar funcionalidade similar por meio de rotinas consideravelmente diferentes. Além disso, a invenção pode ser aplicada a sistemas de hardware amplamente variáveis. Adicionalmente, o hardware usado para praticar a invenção pode variar de muitas maneiras. Existem, de modo similar, muitas outras alterações nas modalidades aqui descritas que se enquadram no caráter e escopo das modalidades reveladas nos vários aspectos descritos. A invenção é limitada apenas pela amplitude das reivindicações abaixo.

Claims (20)

REIVINDICAÇÕES
1. Método para gerenciamento de bate-papo em um ambiente de central de contatos, o bate-papo compreendendo um agente de atendimento e um bate-papo automatizado, sendo o método caracterizado por compreender: (a) receber, a partir de um servidor de orquestração de bate- papo, um primeiro sinal indicando uma comunicação inicial; (b) invocar por meio do servidor de bate-papo um processamento de linguagem natural na comunicação inicial; (c) recuperar, por meio do servidor de orquestração de bate- papo, uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento; (d) determinar, por meio do servidor de gerenciamento de conhecimento, o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; (e) preencher, por meio do servidor de gerenciamento de conhecimento, uma ordem de classificação determinada de comunicações por texto padronizado, sendo que a ordem de classificação é configurada em resposta ao valor de confiança da comunicação por texto padronizado; (f) transmitir, por meio do servidor de orquestração de bate- papo, uma instrução para exibir em um dispositivo de agente a ordem de classificação determinada; (g) receber, por meio do servidor de orquestração de bate- papo, um segundo sinal indicando uma seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural; (h) direcionar, por meio do servidor de orquestração de bate- papo, um bate-papo de comunicação por texto padronizado automatizado para comunicação com um usuário final com base no segundo sinal recebido indicando a seleção, por parte do dispositivo do agente, das comunicações por texto padronizado; e repetir as etapas (a) a (h) até que ocorra uma ação conforme indicado por um terceiro sinal recebido pelo servidor de orquestração de bate- papo.
2. Método de acordo com a reivindicação 1, caracterizado por a comunicação inicial ser uma comunicação baseada em bate-papo de um usuário final.
3. Método de acordo com a reivindicação 2, caracterizado por o usuário final interagir com a central de contatos por meio de um bate-papo da web.
4. Método de acordo com a reivindicação 1, caracterizado por as etapas (c) e (d) serem repetidas para uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural, sendo que a ordem de classificação das comunicações por texto padronizado determinada na etapa (e) é compreendida da dita pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural.
5. Método de acordo com a reivindicação 1, caracterizado por compreender adicionalmente o servidor de gerenciamento de conhecimento ao vivo treinar ao vivo o valor de confiança da comunicação por texto padronizado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
6. Método de acordo com a reivindicação 1, caracterizado por a etapa (d) para determinar, por meio do servidor de gerenciamento de conhecimento, o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural compreender:
(d1) determinar, por meio do servidor de gerenciamento de conhecimento, o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; (d2) determinar, por meio do servidor de gerenciamento de conhecimento, um limite para o valor de confiança determinado da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; e (d3) transmitir, por meio do servidor de gerenciamento de conhecimento, a comunicação por texto padronizado para preenchimento na ordem de classificação se o valor de confiança determinado for igual ou maior que o limite determinado.
7. Método de acordo com a reivindicação 6, caracterizado por os valores de confiança determinados de uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural influenciarem o limite determinado.
8. Método de acordo com a reivindicação 6, caracterizado por o servidor de gerenciamento de conhecimento ser configurado para treinar ao vivo o valor de confiança da comunicação por texto padronizado se o valor de confiança estiver abaixo do limite determinado.
9. Método de acordo com a reivindicação 8, caracterizado por o treinamento ao vivo do valor de confiança da comunicação por texto padronizado ser determinado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
10. Método de acordo com a reivindicação 1, caracterizado por o terceiro sinal recebido pelo servidor de orquestração de bate-papo indicar o término de uma conversa de bate-papo entre o usuário final e um agente que opera o dispositivo do agente.
11. Sistema para gerenciamento de bate-papo em um ambiente de central de contatos, o bate-papo compreendendo um agente de atendimento e um bate-papo automatizado, sendo o sistema caracterizado por compreender: um processador de servidor de orquestração de bate-papo; e uma memória acoplada ao processador do servidor de orquestração de bate-papo, sendo que a memória armazena instruções que, quando executadas pelo processador do servidor de orquestração de bate- papo, fazem com que o processador do servidor de orquestração de bate-papo: receba um primeiro sinal indicando uma comunicação inicial; invoque o processamento de linguagem natural na comunicação inicial; recupere uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento; transmita uma instrução para exibir em um dispositivo de agente uma ordem de classificação determinada de comunicações por texto padronizado; receba um segundo sinal indicando uma seleção, por parte de um dispositivo de agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural; e direcione um bate-papo de comunicação por texto padronizado automatizado para comunicação com um usuário final com base no segundo sinal recebido indicando a seleção, por parte do dispositivo do agente, das comunicações por texto padronizado; e um processador do servidor de gerenciamento de conhecimento; e uma memória acoplada ao processador do servidor de gerenciamento de conhecimento, sendo que a memória armazena instruções que, quando executadas pelo processador do servidor de gerenciamento de conhecimento, fazem com que o processador do servidor de gerenciamento de conhecimento: determine o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; e preencha a ordem de classificação determinada de comunicações por texto padronizado, sendo que a ordem de classificação é configurada em resposta ao valor de confiança da comunicação por texto padronizado.
12. Sistema de acordo com a reivindicação 11, caracterizado por a comunicação inicial ser uma comunicação baseada em bate-papo de um usuário final.
13. Sistema de acordo com a reivindicação 12, caracterizado por o usuário final interagir com a central de contatos por meio de um bate- papo da web.
14. Sistema de acordo com a reivindicação 11, caracterizado por as instruções que fazem com que o processador do servidor de orquestração de bate-papo recupere uma comunicação por texto padronizado responsiva à comunicação processada em linguagem natural a partir de uma memória acoplada a um servidor de gerenciamento de conhecimento e as instruções que fazem com que o processador do servidor de gerenciamento de conhecimento determine o valor de confiança da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural serem repetidas para uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural, e sendo que a ordem de classificação das comunicações por texto padronizado preenchidas pelo processador do servidor de gerenciamento de conhecimento é compreendida da dita pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural.
15. Sistema de acordo com a reivindicação 11, caracterizado por compreender adicionalmente as instruções que fazem com que o processador do servidor de gerenciamento de conhecimento treine ao vivo o valor de confiança da comunicação por texto padronizado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
16. Sistema de acordo com a reivindicação 11, caracterizado por as instruções fazerem adicionalmente com que o processador do servidor de gerenciamento de conhecimento: determine um limite para o valor de confiança determinado da comunicação por texto padronizado responsiva à comunicação processada em linguagem natural; e transmita a comunicação por texto padronizado para preenchimento na ordem de classificação se o valor de confiança determinado for igual ou maior que o limite determinado.
17. Sistema de acordo com a reivindicação 16, caracterizado por os valores de confiança determinados de uma pluralidade de comunicações por texto padronizado responsivas à comunicação processada em linguagem natural influenciarem o limite determinado.
18. Sistema de acordo com a reivindicação 16, caracterizado por processador do servidor de gerenciamento de conhecimento ser configurado com instruções para treinar ao vivo o valor de confiança da comunicação por texto padronizado se o valor de confiança estiver abaixo do limite determinado.
19. Sistema de acordo com a reivindicação 18, caracterizado por o treinamento ao vivo do valor de confiança da comunicação por texto padronizado ser determinado em resposta à seleção, por parte do dispositivo do agente, de uma comunicação por texto padronizado responsiva à comunicação inicial processada em linguagem natural.
20. Sistema de acordo com a reivindicação 11, caracterizado por as instruções para o processador do servidor de orquestração de bate-papo e o servidor de gerenciamento de conhecimento serem configuradas para se repetirem até que ocorra uma ação conforme indicado por um terceiro sinal recebido pelo processador do servidor de orquestração de bate-papo.
BR112021012439-0A 2018-12-28 2019-10-09 Método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos BR112021012439A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/235,628 2018-12-28
US16/235,628 US10484542B1 (en) 2018-12-28 2018-12-28 System and method for hybridized chat automation
PCT/US2019/055327 WO2020139438A1 (en) 2018-12-28 2019-10-09 System and method for hybridized chat automation

Publications (1)

Publication Number Publication Date
BR112021012439A2 true BR112021012439A2 (pt) 2021-09-08

Family

ID=68536205

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021012439-0A BR112021012439A2 (pt) 2018-12-28 2019-10-09 Método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos

Country Status (7)

Country Link
US (1) US10484542B1 (pt)
EP (1) EP3903475A4 (pt)
JP (1) JP7352633B2 (pt)
AU (1) AU2019417030A1 (pt)
BR (1) BR112021012439A2 (pt)
CA (1) CA3122928A1 (pt)
WO (1) WO2020139438A1 (pt)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10679160B1 (en) * 2012-05-24 2020-06-09 Jpmorgan Chase Bank Enterprise fulfillment system with dynamic prefetching capabilities, secured data access capabilities and system monitoring
US20190111565A1 (en) * 2017-10-17 2019-04-18 True Systems, LLC Robot trainer
US11748422B2 (en) * 2019-03-15 2023-09-05 ContactEngine Limited Digital content security and communications system using artificial intelligence (AI) based machine learning and predictive analysis
US11558339B2 (en) * 2019-05-21 2023-01-17 International Business Machines Corporation Stepwise relationship cadence management
US11928737B1 (en) * 2019-05-23 2024-03-12 State Farm Mutual Automobile Insurance Company Methods and apparatus to process insurance claims using artificial intelligence
US11669907B1 (en) * 2019-06-27 2023-06-06 State Farm Mutual Automobile Insurance Company Methods and apparatus to process insurance claims using cloud computing
US20210406293A1 (en) 2020-06-25 2021-12-30 Pryon Incorporated Systems and methods for data curation in a document processing system
EP4222634A1 (en) * 2020-09-30 2023-08-09 Genesys Cloud Services, Inc. Method and system for dynamic adaptive routing of deferrable work in a contact center
US11663421B2 (en) * 2021-04-27 2023-05-30 Jpmorgan Chase Bank, N.A. Systems and methods for intent-based natural language processing
US11989502B2 (en) * 2022-06-18 2024-05-21 Klaviyo, Inc Implicitly annotating textual data in conversational messaging
CN116011430B (zh) * 2023-03-22 2024-04-02 暗链科技(深圳)有限公司 韵脚去重方法、非易失性可读存储介质及电子设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040162724A1 (en) * 2003-02-11 2004-08-19 Jeffrey Hill Management of conversations
US20130046571A1 (en) 2011-08-18 2013-02-21 Teletech Holdings, Inc. Method for proactively predicting subject matter and skill set needed of support services
US20140237057A1 (en) * 2013-02-21 2014-08-21 Genesys Telecommunications Laboratories, Inc. System and method for processing private messages in a contact center
US9699298B2 (en) * 2015-08-10 2017-07-04 Microsoft Technology Licensing, Llc Smart automatic composition of short messaging responses
JP6510379B2 (ja) * 2015-10-07 2019-05-08 Nttテクノクロス株式会社 情報処理システム、情報処理方法及びプログラム
KR20180070659A (ko) * 2015-12-21 2018-06-26 구글 엘엘씨 메시징 애플리케이션들을 위한 자동적인 제안들 및 다른 콘텐츠
US9866693B2 (en) * 2016-05-06 2018-01-09 Genesys Telecommunications Laboratories, Inc. System and method for monitoring progress of automated chat conversations
US11321759B2 (en) 2016-06-30 2022-05-03 International Business Machines Corporation Method, computer program product and system for enabling personalized recommendations using intelligent dialog
US10104232B2 (en) * 2016-07-12 2018-10-16 International Business Machines Corporation System and method for a cognitive system plug-in answering subject matter expert questions
US20180316636A1 (en) * 2017-04-28 2018-11-01 Hrb Innovations, Inc. Context-aware conversational assistant
US10582055B2 (en) * 2017-06-27 2020-03-03 Genesys Telecommunications Laboratories, Inc. System and method for managing contact center system
JP7099829B2 (ja) 2018-02-20 2022-07-12 エヌ・ティ・ティ・コミュニケーションズ株式会社 制御装置、制御方法及びコンピュータプログラム
JP7042693B2 (ja) * 2018-05-30 2022-03-28 株式会社野村総合研究所 対話型業務支援システム
JP2020077083A (ja) * 2018-11-06 2020-05-21 株式会社日立製作所 応対支援システム、及び応対支援方法

Also Published As

Publication number Publication date
WO2020139438A1 (en) 2020-07-02
US10484542B1 (en) 2019-11-19
CA3122928A1 (en) 2020-07-02
JP7352633B2 (ja) 2023-09-28
EP3903475A1 (en) 2021-11-03
AU2019417030A1 (en) 2021-06-17
EP3903475A4 (en) 2022-09-21
JP2022515483A (ja) 2022-02-18

Similar Documents

Publication Publication Date Title
BR112021012439A2 (pt) Método e sistema para gerenciamento de bate-papo em um ambiente de central de contatos
US11425254B2 (en) Systems and methods for chatbot generation
US10951554B1 (en) Systems and methods facilitating bot communications
US10645225B1 (en) Systems and methods relating to chat interfaces
US11057476B2 (en) System and method for managing communication system
US10461945B2 (en) System and method for managing communications
US11218594B1 (en) System and method for creating bots for automating first party touchpoints
US11301160B2 (en) System and method for a replication protocol in a real-time statistical engine
US20200294101A1 (en) System and method for predictive routing to personalized bots
BR112020023552A2 (pt) métodos para treinar um modelo de confiança em um sistema de reconhecimento automático de fala e para converter entrada de fala em texto usando modelagem de confiança com uma abordagem multiclasse, e, sistema destinado a converter fala de entrada em texto.
US11367029B2 (en) System and method for adaptive skill level assignments
US20240211693A1 (en) Technologies for error reduction in intent classification
JP2022538757A (ja) コンテンツをコンタクトセンターのインタラクションに追加するためのシステム及び方法
WO2024137242A1 (en) Technologies for error reduction in intent classification