ES2963546T3 - Sistemas y métodos para proporcionar un servicio de comunicación multicanal - Google Patents

Sistemas y métodos para proporcionar un servicio de comunicación multicanal Download PDF

Info

Publication number
ES2963546T3
ES2963546T3 ES20167389T ES20167389T ES2963546T3 ES 2963546 T3 ES2963546 T3 ES 2963546T3 ES 20167389 T ES20167389 T ES 20167389T ES 20167389 T ES20167389 T ES 20167389T ES 2963546 T3 ES2963546 T3 ES 2963546T3
Authority
ES
Spain
Prior art keywords
conversation
user
call
capi
communication
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
ES20167389T
Other languages
English (en)
Inventor
Eric Nadalin
Neil Stratford
Roland SELMER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vonage Business Inc
Original Assignee
Vonage Business Inc
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 Vonage Business Inc filed Critical Vonage Business Inc
Application granted granted Critical
Publication of ES2963546T3 publication Critical patent/ES2963546T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42221Conversation recording systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1831Tracking arrangements for later retrieval, e.g. recording contents, participants activities or behavior, network status
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4604LAN interconnection over a backbone network, e.g. Internet, Frame Relay
    • H04L12/462LAN interconnection over a bridge based backbone
    • H04L12/4625Single bridge functionality, e.g. connection of two networks over a single bridge
    • 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/5175Call or contact centers supervision arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/40Aspects of automatic or semi-automatic exchanges related to call centers
    • H04M2203/404Collaboration among agents
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/50Aspects of automatic or semi-automatic exchanges related to audio conference
    • H04M2203/5018Initiating a conference during a two-party conversation, i.e. three-party service or three-way call
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/56Arrangements for connecting several subscribers to a common circuit, i.e. affording conference facilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/58Arrangements for transferring received calls from one subscriber to another; Arrangements affording interim conversations between either the calling or the called party and a third party

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Telephonic Communication Services (AREA)

Abstract

Un servicio de comunicación multicanal utiliza un enfoque orientado a objetos para procesar las comunicaciones. El servicio de comunicación multicanal es capaz de grabar conversaciones que una parte que llama tiene con una o más partes llamadas en una grabación continua, incluso cuando varias partes llamadas están en conferencia en una llamada, e incluso cuando la parte que llama se transfiere entre múltiples llamadas diferentes. fiestas. En algunas realizaciones, la grabación puede incluir dos o más pistas de datos grabados. En ese caso, el audio y/o vídeo procedente de la parte que llama se graba en una primera pista, y el audio y/o vídeo procedente de todas las partes llamadas se graba en una segunda pista. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCION
Sistemas y métodos para proporcionar un servicio de comunicación multicanal
Antecedentes
La presente solicitud se refiere a servicios de comunicación que están diseñados para ayudar a las empresas a comunicarse con sus clientes.
Actualmente, cuando una empresa desea enviar comunicaciones a sus clientes, a menudo es necesario que utilice múltiples canales de comunicación diferentes para llegar a todos sus clientes. Por ejemplo, a los clientes que sólo poseen un teléfono analógico sólo se les puede contactar mediante una llamada telefónica de audio. A otros clientes que tienen un teléfono inteligente se les puede contactar mediante una llamada telefónica de audio, pero también mediante un mensaje de "texto" SMS o MMS. Es posible que otros clientes solo puedan ser contactados a través de una comunicación por correo electrónico.
Cuando una empresa debe utilizar múltiples canales de comunicación diferentes para llegar a sus clientes, la empresa a menudo se ve obligada a crear mensajes en múltiples formatos diferentes y, a continuación, enviar los mensajes con diferentes formatos a través de los canales de comunicación correspondientes. La situación se vuelve aún más compleja cuando la empresa debe entregar dichos mensajes a clientes en una amplia variedad de mercados o países diferentes. Cuando los mensajes deben entregarse en varios países diferentes, a menudo se utilizan diferentes idiomas. Además, el formato y los requisitos de entrega para comunicaciones de audio, mensajes de texto y mensajes de correo electrónico pueden variar de un país a otro, y cada ubicación utiliza un patrón diferente.
Sería deseable que una empresa utilizara los servicios de un tercero que pueda facilitar la entrega de comunicaciones a los clientes de la empresa. El tercero podría recibir un mensaje que una empresa desea difundir entre sus clientes, y el tercero podría encargarse del formato y la entrega del mensaje a través de los canales de comunicación más adecuados. Esto aliviaría a la empresa de la necesidad de desarrollar y mantener conocimientos en los requisitos de los distintos canales de comunicación, liberando a la empresas para concentrarse en su misión principal. Artículos del ETSI titulados:
•"Conferencing using IP Multimedia (IM) Core Network (CN) subsystem",que se encuentra en www.etsi.org/deliver/etsi_ts/124100_124199/124147/10.01.00_60/ts_124147v100100p.pdf; y
•"Parlay X web services; Part 12: Multimedia conference",que se encuentra en www.etsi.org/deliver/etsi_ts/129100_129199/12919912/09.00.00_60/ts_12919912v090000p.pdf
ambos divulgan procedimientos de manejo de llamadas telefónicas que utilizan la señalización del protocolo de inicio de sesión (SIP) para configurar una conexión telefónica a través de Internet entre dos puntos finales.
Los defectos del estado de la técnica se solucionan mediante el objeto de las reivindicaciones independientes. Se definen realizaciones preferidas mediante las reivindicaciones dependientes.
BREVE DESCRIPCIÓN DE LOS DIBUJOS
La Figura 1 es un diagrama de bloques que ilustra diferentes elementos de un entorno de comunicación que incluye un serviciode comunicación multicanal;
La Figura 2 es un diagrama de bloques que ilustra diversos elementos de un servicio de comunicación multicanal; La Figura 3 representa un modelo de objeto de ejemplo para facilitar el procesamiento de comunicaciones en un servicio de comunicación multicanal;
La Figura 4 es un diagrama de flujo que ilustra un ejemplo de procesamiento de llamadas entrantes realizado por el servicio de comunicación multicanal;
La Figura 5 es un diagrama de flujo que representa un método de procesamiento de llamadas realizado por el servicio de comunicación multicanal;
La Figura 6 es un diagrama de flujo que ilustra un ejemplo de procesamiento de llamadas realizado por el servicio de comunicación multicanal para unir miembros a una conversación;
La Figura 7 es un diagrama de flujo que representa un método para unir miembros a una conversación que se realiza mediante un servicio de comunicación multicanal;
La Figura 8 es un diagrama de flujo que representa un primer método para grabar una llamada realizada por un servicio de comunicaciones multicanal;
Las Figuras 9A-9C son diagramas que ilustran cómo se realiza la grabación en el método de la Figura 8; y
La Figura 9D es un diagrama que ilustra cómo se realiza una grabación mediante un método de la técnica anterior;
La Figura 10 es un diagrama de flujo que representa un segundo método de grabación de una llamada realizada por un servicio de comunicaciones multicanal;
Las Figuras 11A-11C son diagramas que ilustran cómo se realiza la grabación en el método de la Figura 10; y
La Figura 11D es un diagrama que ilustra cómo se realiza una grabación mediante un método de la técnica anterior.
DESCRIPCIÓN DETALLADA
La presente solicitud divulga un servicio de comunicación multicanal que una empresa puede utilizar para enviar comunicaciones a sus clientes. El servicio de comunicación multicanal también puede ayudar a establecer comunicaciones entre la empresa y los clientes de la empresa cuando los clientes inician el contacto con la empresa. Por ejemplo, el servicio de comunicación multicanal puede facilitar la configuración de la llamada de un cliente a los agentes de servicio al cliente de una empresa.
En la siguiente descripción, las referencias a una llamada, una llamada telefónica o una comunicación telefónica pretenden cubrir tanto llamadas de audio como de vídeo, independientemente del sistema que se utilice para realizar las llamadas. También, las referencias a SMS o mensajes de "texto" pretenden cubrir tanto los mensajes tradicionales del servicio de mensajería corta (SMS), los mensajes MMS como otras comunicaciones similares que pueden incluir texto, audio y video.
La Figura 1 ilustra un entorno de comunicaciones en el que existiría un servicio de comunicación multicanal 100. Como se muestra en la Figura 1, el servicio de comunicación multicanal 100 está conectado a Internet 110, una red telefónica pública conmutada (PSTN) 144, un proveedor de servicios de telefonía celular 140 y un proveedor de servicios de telefonía IP 150. Como resultado, el servicio de comunicación multicanal 100 puede recibir llamadas de clientes que están establecidas a través del proveedor celular 140, la PSTN 144 o un proveedor de servicios de telefonía IP 150. A continuación, el servicio de comunicación multicanal 100 conecta esas llamadas a una o más empresas a través de Internet 110.
La Figura 1 muestra una primera empresa 120 que también está conectada a Internet 110. La primera empresa 120 incluye un primer dispositivo de telefonía 122, un segundo dispositivo de telefonía 124 y un tercer dispositivo de telefonía 126. Los dispositivos de telefonía son utilizados por los agentes de atención al cliente de la empresa para realizar comunicaciones telefónicas con los clientes. Los dispositivos de telefonía 122, 124, 126 están conectados a una red de datos interna 121. Uno o más servidores conectados a la red de datos interna 121 también ejecutan aplicaciones de software 128. Como se explicará con mayor detalle a continuación, las aplicaciones de software 128 actúan como interfaz entre los dispositivos de telefonía 122, 124, 126 del agente de servicio al cliente y el servicio de comunicación multicanal 100.
Un entorno de comunicaciones típico también incluiría muchas otras empresas. La Figura 1 ilustra que una segunda empresa 129 y una tercera empresa 130 también están conectadas a Internet 110. La segunda empresa 129 y la tercera empresa 130 también incluirían uno o más dispositivos de telefonía utilizados por los agentes de servicio al cliente para manejar las llamadas entrantes del cliente y aplicaciones de software asociadas que vinculan los dispositivos de telefonía del agente de servicio al cliente con el servicio de comunicación multicanal 100.
La Figura 1 también ilustra un proveedor de mensajería de texto 132 y un proveedor de servicio "over the top" (OTT) 134. El proveedor de mensajes de texto 132 y el proveedor de OTT 134 actúan para coordinar la entrega de mensajes de texto entre clientes y empresas. Como se ha mencionado anteriormente, los mensajes de texto podrían incluir mensajes de texto tradicionales y también mensajes de audio y video.
Como se muestra en la Figura 1, los clientes pueden utilizar varios dispositivos telefónicos diferentes para comunicarse con las empresas. La Figura 1 muestra un teléfono analógico 146 que está conectado a la PSTN 144. Un cliente podría utilizar ese teléfono analógico 146 para realizar una llamada de audio tradicional a una empresa. Asimismo, una empresa podría enviar un mensaje de audio a un cliente enviándolo a través de la PSTN 144 al teléfono analógico 146.
La Figura 1 también ilustra que un cliente podría utilizar un teléfono celular 148 que esté conectado a un proveedor de servicios celulares 140. Otro cliente podría utilizar un teléfono inteligente 160 que también esté conectado al proveedor de servicios celulares 140. Los clientes podrían usar el teléfono celular 148 o el teléfono inteligente 160 para realizar llamadas telefónicas de audio o video a una empresa a través del proveedor de servicios celulares 140. Del mismo modo, una empresa podría enviar una comunicación de audio o un mensaje de texto a los clientes a través del proveedor de servicios celulares 140 que, a continuación, se entregan finalmente al teléfono celular 148 o al teléfono inteligente 160.
Algunos clientes pueden tener un teléfono de protocolo de Internet (IP) 164 que está conectado a Internet. El teléfono IP 164 podría ser capaz de establecer una comunicación basada en IP directamente con una empresa a través del servicio de comunicación multicanal 100. Alternativamente, un cliente podría utilizar el teléfono IP 164 para realizar una llamada telefónica a través del proveedor de servicios de telefonía IP 150. A continuación, esa llamada IP se enrutaría a través del servicio de comunicación multicanal 100 a una empresa.
De manera similar, un cliente podría utilizar un ordenador que esté ejecutando una aplicación de software de telefonía basada en IP 162 para establecer comunicaciones con una empresa. Nuevamente, el cliente podría establecer una llamada telefónica basada en IP directamente desde el ordenador 162 a una empresa a través del servicio de comunicación multicanal 100. Alternativamente, esa comunicación podría enrutarse a través del proveedor de servicios de telefonía IP 150.
La Figura 2 ilustra diferentes elementos de un servicio de comunicación multicanal 100. Los elementos incluyen un servicio de conversación 101, una interfaz de programación de aplicaciones de voz (VAPI) 102 y una interfaz de programación de aplicaciones de conversación (CAPI) 103. El servicio de comunicaciones multicanal 100 también podría incluir un conmutador de medios 104 que se utiliza para configurar comunicaciones a través de diferentes sistemas de telefonía. Se puede proporcionar una unidad de grabación 105 para grabar las comunicaciones que se establecen a través del servicio de comunicación multicanal 100. Esto puede incluir la grabación de llamadas de clientes con agentes de servicio de una empresa.
El servicio de comunicación multicanal 100 incluye además depósitos de datos 106. Los depósitos de datos pueden incluir múltiples bases de datos diferentes que incluyen una base de datos de historial de conversaciones 107, una base de datos de almacenamiento de mensajes 108 y una base de datos de grabación de comunicaciones 109. Por supuesto, los depósitos de datos 106 pueden incluir una variedad de otras bases de datos, según sea necesario.
El servicio de comunicación multicanal 100 puede comprender componentes de software, componentes de hardware y bases de datos que pueden implementarse en uno o más centros de datos en una o más ubicaciones geográficas, por ejemplo.
El conmutador de medios 104 del servicio de comunicación multicanal 100 puede incluir uno o más aparatos de procesamiento de datos para conectarse a la Red Telefónica Pública Conmutada (PSTN) 144 externa, a uno o más proveedores de servicios celulares 140 y a uno o más proveedores de servicios de telefonía IP 150. En algunas implementaciones, el conmutador de medios 104 conecta esas comunicaciones externas con el servicio de conversación 101 usando SIP. También, en algunas implementaciones, los mensajes enviados o recibidos a través de un proveedor de SMS 132 o un proveedor de OTT 134 pueden recibirse y enviarse directamente mediante el servicio de conversación 101, en lugar de pasar por el conmutador de medios 104.
El servicio de conversación 101 procesa llamadas de voz entrantes recibidas desde el conmutador de medios 104. Las llamadas de voz salientes que se originan a partir de la VAPI 102 como resultado del procesamiento de objetos de control de llamadas por parte de la VAPI 102 se enrutan a través del servicio de conversación 101 al conmutador de medios 104 y, a continuación, el conmutador de medios 104 reenvía las llamadas a la red de comunicación apropiada. La información sobre las llamadas entrantes y salientes (por ejemplo, información del registro de llamadas) se registra en la base de datos del historial de conversaciones 107 mediante el servicio de conversaciones 101.
El servicio de comunicación multicanal 100 puede hacer uso de un método de procesamiento de comunicaciones orientado a objetos. Prácticamente, cuando el servicio de comunicación multicanal 100 recibe una comunicación telefónica entrante, tal como una llamada telefónica, de un cliente que está intentando comunicarse con una empresa, el servicio de comunicación multicanal 100 se pone en contacto con una aplicación de software en la empresa con la que el cliente está intentando ponerse en contacto a través de Internet 110. El servicio de comunicación multicanal 100 alerta a la aplicación de la empresa sobre la existencia de la llamada telefónica entrante. Entonces, la aplicación en la empresa proporciona un objeto de control de llamadas al servicio de comunicación multicanal 100. El objeto de control de llamadas puede incluir múltiples objetos, incluyendo cada objeto una "acción" y un "interruptor" ("switch"). Como se explicará más adelante, el objeto de control de llamadas informa al servicio de comunicación multicanal 100 de cómo tratar la llamada entrante, y el servicio de comunicación multicanal 100 actúa entonces de acuerdo con esas instrucciones.
La Figura 3 representa un modelo de objeto de ejemplo 301 para la interfaz de programación de aplicaciones de voz 102 y el servicio de conversación 101 del servicio de comunicación multicanal 100 ilustrado en la Figura 2. El modelo de objetos 301 es una representación lógica de las entidades en el sistema mantenido por la VAPI 102 y la CAPI 103. En algunas implementaciones, los objetos en el modelo de objetos 301, tales como los objetos de aplicación 323 y los objetos de conversación 325, corresponden a instancias de clase o datos en un lenguaje de programación orientado a objetos o a otros tipos de estructuras de datos. Una aplicación, tal como la aplicación 128 de la primera empresa 120 ilustrada en la Figura 1, utiliza las API para manejar las comunicaciones entrantes y crear conversaciones entre los usuarios. En algunas implementaciones, la aplicación 128 comunica comandos y eventos y recibe comandos y eventos de la VAPI 102, la CAPI 103 o ambas, usando uno o más protocolos de comunicación tales como el protocolo de transferencia de hipertexto (HTTP), por ejemplo. En otras implementaciones, la aplicación 128 puede comunicarse directamente con la VAPI 102 y la CAPI 103 usando llamadas a funciones o métodos (suponiendo que la aplicación 128 esté en el mismo espacio de proceso del sistema operativo que la VAPI 102 y la CAPI 103). Son posibles otros tipos de comunicación entre la aplicación 128 y las API. Una API determinada puede implementarse como un proceso (uno o más programas informáticos) o como una biblioteca de software, por ejemplo.
La VAPI 102 es responsable de crear y mantener objetos de aplicación y realizar acciones especificadas por los objetos de control de llamadas. Un objeto de aplicación (por ejemplo, el objeto de aplicación 323) representa el estado de una aplicación (por ejemplo, la aplicación 128 dentro de la empresa 120). Puede haber múltiples aplicaciones dentro de la misma empresa o múltiples aplicaciones en diferentes empresas, cada una con un objeto de aplicación correspondiente. Como se ha mencionado anteriormente, una aplicación es un proceso (por ejemplo, uno o más programas informáticos) que es responsable de utilizar la VAPI 102, la CAPI 103 o ambas, para manejar mediante programación las comunicaciones entrantes y crear conversaciones entre los usuarios. Una conversación comprende comunicaciones entre dos usuarios más que son elementos de la conversación y pueden utilizar uno o más canales de comunicación simultáneamente, tales como el servicio de mensajería corta (SMS), el servicio telefónico tradicional (POTS) y la voz sobre protocolo de Internet (VoIP), WebRTC, el protocolo de inicio de sesión (SIP) y otros servicios tipo "over-the-top" (OTT). Por ejemplo, una llamada telefónica entre varios miembros que también permite a los miembros enviarse mensajes entre sí durante la llamada es un ejemplo de conversación.
OTT se refiere a la entrega de audio, video y otros medios a través de Internet sin la participación de un operador de sistemas múltiples en el control o distribución del contenido.
Una aplicación (tal como la aplicación 128 en la primera empresa 120) o el servicio de conversación 101 del servicio de comunicación multicanal 100 envía comandos a la VAPI 102 que la VAPI 102 procesa. Como parte del procesamiento, la VAPI 102 refleja cualquier cambio en el estado de una aplicación en el objeto de aplicación (por ejemplo, el objeto de aplicación 323). En algunas implementaciones, el objeto de aplicación 323 comprende números de contacto entrantes 311 registrados para la aplicación, una dirección de devolución de llamada 324 para notificar a la aplicación cuando entra una nueva llamada de voz entrante y para recibir un objeto de control de llamada para procesar la llamada, información sobre eventos 303 que a la aplicación le gustaría recibir de la VAPI 102 y la CAPI 103, e información sobre los usuarios 309 que la aplicación conoce. La VAPI 102 responde a comandos para registrar y eliminar números de contacto, agregar y eliminar usuarios y especificar qué eventos le gustaría recibir a la aplicación.
Los números de contacto entrantes 311 son uno o más identificadores que se pueden utilizar para llegar a una solicitud de comunicaciones entrantes. Un número de contacto entrante puede ser una cadena de dígitos numéricos que representan un número de teléfono para comunicaciones telefónicas, tales como llamadas de audio y mensajes SMS. Un número de contacto entrante también podría ser un número VoIP u otra información necesaria para comunicarse mediante SIP. En el caso de un SIP, el número de contacto podría comprender un identificador uniforme de recursos (URI) e información de autenticación, como un nombre de usuario y una contraseña.
Cuando entra una llamada de voz entrante, el servicio de conversación 101 del servicio de comunicación multicanal 100 identifica el objeto de aplicación (por ejemplo, el objeto de aplicación 323) que ha registrado el número de contacto 311 al que se llama. Entonces, el servicio de conversación 101 usa la dirección de devolución de llamada ("callback") 324 para solicitar un objeto de control de llamada desde la aplicación correspondiente al objeto de aplicación 323. En algunas implementaciones, la dirección de devolución de llamada 324 es un localizador uniforme de recursos (URL) que, cuando se contacta a través de HTTP, responderá con un objeto de control de llamada. En otras implementaciones, la dirección de devolución de llamada es el nombre de una función o un método que puede ser invocado por el servicio de conversación 101 para obtener un objeto de control de llamada. Son posibles otros tipos de direcciones de devolución de llamada. Entonces, el servicio de conversación 101 utiliza la VAPI 102 para realizar las acciones especificadas en el objeto de control de llamadas. Más adelante los objetos de control de llamadas se analizarán más.
La información de usuario 309 en el objeto de aplicación 323 comprende, para cada usuario, un identificador de usuario tal como un nombre y uno o más canales de comunicación a través de los cuales se puede contactar al usuario. Un canal de comunicación comprende información de contacto (por ejemplo, número de teléfono, nombre de cuenta y contraseña, etc.) que puede usarse para comunicarse con el usuario en un canal particular tal como PSTN, VoIP, SIP, SMS u otros. Cuando un usuario se une a una conversación, se pueden utilizar uno o más de sus canales de comunicación para comunicarse con el usuario. Los eventos 303 son mensajes enviados por el servicio de conversación 101, la VAPI 102 o la CAPI 103 en los que una aplicación (por ejemplo, la aplicación 128 de la primera empresa 120) puede registrarse, recibir y, opcionalmente, tomar acciones. A modo de ilustración, la CAPI 103 puede enviar a la aplicación un evento que indique que un usuario se ha unido a una conversación. Los eventos se analizan más adelante.
La CAPI 103 es responsable de crear y mantener objetos de conversación y de enviar mensajes de conversación. Cada aplicación puede crear una o más conversaciones usando la CAPI 103, teniendo cada una un objeto de conversación correspondiente (por ejemplo, el objeto de conversación 325 o 327). En el modelo de objetos, los objetos de conversación están relacionados con los objetos de aplicación que corresponden a las aplicaciones que crearon las conversaciones. Por ejemplo, el objeto de aplicación 323 tiene dos objetos de conversación 325 y 327. Una aplicación (por ejemplo, la aplicación 128 de la primera empresa 120) o el servicio de conversación 101 envía comandos a la CAPI 103 que la CAPI 103 procesa. Como parte del procesamiento, la CAPI 103 refleja cualquier cambio en el estado de la conversación particular en el objeto de conversación (por ejemplo, el objeto de conversación 325). Un objeto de conversación (por ejemplo, el objeto de conversación 325) representa el estado de una conversación particular, incluido el historial de conversación (por ejemplo, el historial de conversaciones 315a). El historial de conversaciones es un historial de eventos enviados, llamadas aceptadas, llamadas desconectadas, mensajes enviados y recibidos, tiempo de llamada para cada llamada y la cantidad de datos enviados y recibidos en cada canal de comunicación. Se pueden recopilar otros tipos de información como parte del historial de conversaciones. El historial de conversaciones se almacena en la base de datos 107 del historial de conversaciones.
En algunas implementaciones, además del historial de conversaciones 315a, el objeto de conversación 325 comprende miembros 317a. Los miembros de la conversación 317a corresponden a los usuarios de objeto de aplicación 309 que están unidos a una conversación particular. Los miembros de una conversación pueden comunicarse con otros miembros de la conversación utilizando uno o más de sus respectivos canales de comunicación. Un mensaje enviado por un miembro de una conversación, por ejemplo, se transmitirá automáticamente a los otros miembros de la conversación en el respectivo canal de comunicación de mensajes (por ejemplo, SMS) utilizado por cada miembro.
El objeto de conversación 325 puede incluir, opcionalmente, uno o más números de contacto entrantes 319a. Los números de contacto entrantes 319a son uno o más números a los que se puede acceder en la conversación 325 para comunicaciones entrantes. Un número de contacto entrante puede ser una cadena de dígitos numéricos que representan un número de teléfono para comunicaciones telefónicas o mensajes SMS. Un número de contacto entrante también podría ser un número VoIP u otra información necesaria para comunicarse mediante SIP.
Cuando entra una llamada de voz entrante, el servicio de conversación 101 identifica el objeto de conversación (por ejemplo, el objeto de conversación 325) que ha registrado el número de contacto 319a al que se llama. A continuación, el servicio de conversación 101 usa la dirección de devolución de llamada 327a del objeto de conversación identificado 325 para solicitar un objeto de control de llamada desde la aplicación que creó el objeto de conversación 325. En algunas implementaciones, la dirección de devolución de llamada 327a es un localizador uniforme de recursos (URL) que, cuando se contacta a través de HTTP, responderá con un objeto de control de llamada. En otras implementaciones, la dirección de devolución de llamada es el nombre de una función o un método que puede ser invocado por el servicio de conversación 101 para obtener un objeto de control de llamada. Son posibles otros tipos de direcciones de devolución de llamada. Entonces, el servicio de conversación 101 utiliza la VAPI 102 para realizar las acciones especificadas en el objeto de control de llamadas.
Otro tipo de comunicación procesada por el servicio de conversación 101 es la comunicación de mensajes. Los mensajes comprenden datos que pueden enviarse a los miembros de una conversación o a un miembro individual utilizando el servicio de conversación 101. Los mensajes enviados y recibidos por el servicio de conversación 101 se almacenan en la base de datos de almacenamiento de mensajes 108. En algunas implementaciones, el formato de un mensaje es como se describe en la TABLA 1. Otros formatos de mensajes son posibles.
TABLA 1: Formato de mensaje
El servicio de conversación 101 puede recibir mensajes SMS o MMS (texto) entrantes desde un proveedor de SMS 132 o un proveedor de OTT 134. El servicio de conversación 101 convierte los mensajes recibidos al formato de mensaje de la TABLA 1. El servicio de conversación 101 asigna a cada mensaje un número de secuencia, o identificador de transacción, como referencia que puede usarse para recuperar los mensajes en una fecha posterior de la base de datos de almacenamiento de mensajes 108. El servicio de conversación 101 relaciona cada número de teléfono del remitente de SMS con la información de contacto de un usuario determinado en el modelo de aplicación, y utiliza el identificador de usuario como identificador del remitente en el mensaje. Si no hay ninguna coincidencia para un usuario determinado, el identificador del remitente se establece en el número de teléfono del remitente del mensaje SMS. El servicio de conversación 101 relaciona el número de teléfono de cada destinatario de SMS con la información de contacto de un usuario determinado en el modelo de aplicación, y utiliza el identificador del usuario como identificador del destinatario en el mensaje. Si no hay ninguna coincidencia para un usuario determinado, el identificador del destinatario se establece en el número de teléfono del destinatario del mensaje SMS. El campo de tipo del mensaje lo establece el servicio de conversación 101 para que sea SMS, y el cuerpo del mensaje contendrá el contenido del mensaje SMS. Entonces, el servicio de conversación utiliza la CAPI 103 para enviar el mensaje a los usuarios indicados por los identificadores de destinatario.
Cuando se envía un mensaje utilizando la CAPI 103, la CAPI 103 envía el mensaje a cada usuario indicado por los identificadores de destinatario. En algunas implementaciones, para un usuario determinado, el mensaje se envía utilizando el canal de comunicación asociado con el usuario que es apropiado para el tipo de mensaje. Por ejemplo, si el tipo de mensaje es SMS, la CAPI 103 enviará el mensaje al usuario utilizando la información de contacto del canal SMS para el usuario. En otras implementaciones, la CAPI 103 envía el mensaje a un usuario determinado por tantos canales para ese usuario como sea posible. En implementaciones adicionales, se envía un mensaje a un usuario determinado por un único canal. Los mensajes salientes se envían a la red apropiada (por ejemplo, el proveedor de SMS 132, el proveedor de OTT
134 o uno de los sistemas de telefonía) por el servicio de conversación 101 en nombre de la CAPI 103.
Los mensajes se pueden utilizar para enviar acciones y eventos a conversaciones o aplicaciones (por ejemplo, la aplicación 128 del primer negocio 120) usando la CAPI 103. Las acciones pueden ser enviadas por miembros de la conversación o por conversaciones. Una acción es un mensaje que hace que el destinatario actúe de alguna manera. El campo de tipo del mensaje indica cuál es la acción, tal como, por ejemplo, silenciar o reactivar un micrófono, aumentar o disminuir el volumen, etc. Los miembros o las conversaciones pueden enviar eventos para mantener a los miembros al tanto de los cambios de estado en la conversación. El campo de tipo del evento indica el tipo de evento. Un evento de tipo llamada indica que un usuario desea unirse a una conversación. El servicio de conversación 101 puede generar un evento de llamada cuando una llamada de voz entrante es para un número de contacto asociado con una conversación.
Otros tipos de eventos indican que un miembro se unió o abandonó una conversación (por ejemplo, al finalizar una llamada) o que un miembro está invitado a unirse a una conversación. Los miembros de una conversación se presentan en uno de tres estados: invitados, unidos o abandonados. Un miembro invitado ha sido invitado a unirse a una conversación pero aún no se ha unido. Un miembro unido está actualmente unido a una conversación. Un miembro "abandonado" es un miembro que ha dejado una conversación. Otras acciones y eventos son posibles.
La Figura 4 es un diagrama de flujo que ilustra un ejemplo de procesamiento de llamadas entrantes descrito dentro del contexto del modelo de objeto 301 ilustrado en la Figura 3. En el paso 430, el conmutador de medios 104 recibe una llamada entrante, recibida desde la PSTN 144. El conmutador de medios 104 reenvía la llamada al servicio de conversación 101 en el paso 431. A continuación, el servicio de conversación 101 envía una solicitud 432 (por ejemplo, una solicitud HTTP) a la dirección de devolución de llamada 324 de la aplicación a la que se dirige la llamada entrante.
Es decir, el número de llamada entrante coincide con un número de contacto entrante 311 de la aplicación. En respuesta, la aplicación envía una respuesta 434 (por ejemplo, una respuesta HTTP) al servicio de conversación 101 que comprende un objeto de control de llamada 436 que describe cómo se debe manejar la llamada entrante. El objeto de control de llamada 436 es recibido por el servicio de conversación 101, que, a continuación, invoca la VAPI 102 para realizar las acciones 440 del objeto de control de llamada 436. Las acciones del objeto de control de llamada se describen con mayor detalle más adelante.
Durante la ejecución de las acciones, se encuentra una acción de transferencia. La acción de transferencia en el objeto de control de llamada hace que la VAPI 102 suspenda la ejecución de las acciones del objeto de control de llamada 436 en el paso 441. A continuación, en el paso 442, la VAPI 102 envía una solicitud (por ejemplo, una solicitud HTTP) a una dirección especificada por un parámetro de la acción de transferencia para obtener otro objeto de control de llamada para procesar la acción de transferencia. En este ejemplo, la dirección especificada por la acción de transferencia es la misma aplicación 128. Sin embargo, la dirección podría ser para una aplicación diferente. La VAPI 102 responde enviando un objeto de control de llamada 444 para la transferencia al servicio de conversación 101. El servicio de conversación 101 invoca la VAPI 102 en el paso 447 para realizar las acciones del objeto de control de llamada 444 en el paso 448. Una vez que el segundo objeto de control de llamada 444 ha terminado de procesarse (por ejemplo, como resultado de la terminación de la llamada transferida), la VAPI 102 reanuda la ejecución de las acciones del primer objeto de control de llamada 436 en el paso 450.
Un objeto de control de llamada es una secuencia o pila ordenada de uno o más objetos, tales como los objetos de notación de objetos JavaScript (JSON). Los objetos se procesan de acuerdo con el orden del objeto de control de llamada.
Cada objeto especifica una acción y uno o más interruptores opcionales que controlan el resultado de la acción. Los interruptores pueden tener parámetros adicionales que controlan la función del interruptor.
Una acción de conexión conecta un punto final con uno o más puntos finales conectables. Estos múltiples puntos finales pueden especificarse para que suenen simultáneamente o en secuencia anidando acciones de conexión dentro de la pila de objetos de control de llamada. La acción de conexión finaliza si el punto final está ocupado o no está disponible y se ejecuta la siguiente acción en la pila. Los interruptores admitidos por la acción de conexión se enumeran en la TABLA 2. TABLA 2
Otra acción es una acción de transferencia, que utiliza una URL para transferir el control de una llamada a otro objeto de control de llamada. A continuación, se muestran los interruptores admitidos por la acción de transferencia.
TABLA 3
La acción de hablar se utiliza para leer el texto de la llamada utilizando voz sintetizada. Los interruptores admitidos por esta acción se describen en la siguiente tabla.
TABLA 4
|______________________ | "lenguaje-ubicación". El valor predeterminado es "en-us".__________ |___________________ | La acción de transmisión se puede utilizar para reproducir de nuevo un archivo de audio almacenado en la llamada. Los interruptores admitidos por la acción de transmisión se describen a continuación.
TABLA 5
En algunas realizaciones, se puede utilizar una acción de grabación para grabar toda o parte de una llamada. Los interruptores admitidos por la acción de grabación se describen a continuación.
TABLA 6
En algunas realizaciones, se puede utilizar una acción de retraso para pausar la ejecución de la pila de llamada antes de continuar la ejecución de acciones adicionales en la pila. Los interruptores admitidos por la acción de retardo se describen a continuación.
TABLA 7
Una acción de entrada puede recopilar entradas de dígitos o de voz de una llamada y procesar esa entrada. La entrada de dígitos puede realizarse desde la persona que llama presionando las teclas numéricas de su dispositivo. Los interruptores admitidos por la acción de entrada se describen a continuación.
TABLA 8
Se puede utilizar una acción de rechazo para rechazar una llamada entrante sin contestarla primero. Los interruptores admitidos por la acción de rechazo se describen a continuación.
TABLA 9
Una acción de conferencia permite a un usuario crear una llamada telefónica. Los interruptores admitidos por esta acción permiten que un anfitrión modere y grabe la conferencia telefónica, entre otras cosas. En algunas realizaciones, la llamada telefónica puede ser destruida por la VAPI 102 cuando el número de participantes llega a cero. Una acción de conferencia admite los siguientes interruptores.
TABLA 10
Además, una acción de conferencia alojada admite los interruptores adicionales que se describen en la siguiente tabla.
TABLA 11
Las acciones pueden anidarse dentro de la pila de un objeto de control de llamada. Es decir, una acción puede comprender una o más acciones anidadas que realizan la VAPI 102 antes de la realización de la acción externa.
La Figura 5 es un diagrama de flujo que ilustra una técnica de ejemplo 500 para procesar una llamada de acuerdo con la invención. En el paso S502, la VAPI 102 recibe una notificación de una o más llamadas entrantes desde el servicio de conversación 101. En el paso S504, la VAPI 102 identifica qué aplicación está asociada con cada número de contacto de llamada entrante. A continuación, en S506, la VAPI 102 notifica a la aplicación identificada de la llamada entrante.
En S508, la aplicación envía a la VAPI 102 un objeto de control de llamada. Como se ha analizado anteriormente, el número de contacto entrante puede proporcionar parámetros que determinan las acciones en el objeto de control de llamada. En S510, la VAPI 102 ejecuta el objeto de control de llamada realizando las acciones ordenadas en la pila de objetos JSON.
En algunas realizaciones, en S512, la aplicación puede enviar a la VAPI 102 un segundo objeto de control de llamada resultante de la recepción de una segunda llamada entrante. Esta segunda llamada entrante puede generar un objeto de control de llamada único basado en sus propios parámetros. Como resultado de recibir un segundo objeto de control de llamada más reciente, la VAPI 102 suspende la realización de las acciones del primer objeto de control de llamada, como se describe en el paso S514. En el paso S516, la VAPI 106 ejecuta todas las acciones en el segundo objeto de control de llamada para la segunda llamada entrante recibida por la aplicación. Como ejemplo, una acción en este objeto de control de llamada puede ser transferir esta segunda llamada entrante a otro usuario utilizando la acción de transferencia. En el paso S518, la VAPI 102 reanuda y completa la ejecución de las acciones restantes en el primer objeto de control de llamada.
La Figura 6 es un diagrama de flujo que ilustra un ejemplo de cómo unir un miembro a una conversación de acuerdo con la presente invención. El servicio de conversación 101 recibe una comunicación entrante en el paso 612. Esta comunicación puede ser un mensaje SMS o puede provenir del conmutador de medios como una llamada telefónica de audio entrante. En el paso 614, la CAPI 103 recibe la comunicación entrante del servicio de conversación 101. Como se ha descrito anteriormente, la CAPI 103 crea un objeto de conversación para cada nueva comunicación.
La CAPI 103 comprueba los grupos de números de una pluralidad de aplicaciones para asociar la comunicación entrante a una aplicación (por ejemplo, la aplicación 128 del primer negocio 120) cuyo grupo de números contiene el número de contacto de la comunicación entrante. Es decir, para una o más llamadas entrantes, los números de llamadas entrantes coinciden con los respectivos números de contacto entrantes de una pluralidad de aplicaciones, como se ha descrito anteriormente. En el paso 616, la CAPI 103 notifica a la aplicación identificada de la comunicación entrante. En respuesta, en el paso 618, la aplicación envía una solicitud a la CAPI 103 para invitar al miembro asociado con la comunicación entrante a unirse a la conversación creada previamente por la CAPI 103. En algunas realizaciones, la solicitud enviada en el paso 618 puede estar cifrada. En el paso 620, la CAPI 103 envía una invitación al miembro para unirse a la conversación. En el paso 622, la CAPI 103 determina el estado de conversación del miembro, es decir, si el miembro se ha unido o no a la conversación. Si el miembro se ha unido a la conversación, el miembro puede activar un evento de "unión" al ingresar a la conversación. En el paso 624, el CAPI 103 transmite el estado de conversación del miembro a la aplicación asociada.
Hay otros eventos posibles correspondientes a diversas conversaciones y estados de miembro además de los ejemplos proporcionados anteriormente. Los eventos son registrados por el servicio de conversación 101 y son activados por varias conversaciones o estados o acciones del miembro. Estos eventos pueden etiquetarse con el número de secuencia del objeto de conversación y una marca de tiempo. Los posibles eventos y sus descripciones se enumeran en la siguiente tabla.
TABLA 12
La Figura 7 es un diagrama de flujo que muestra un método de ejemplo 700 para unir miembros a una conversación. En el paso S702, la CAPI 103 asocia una o más comunicaciones entrantes respectivamente a una pluralidad de aplicaciones. Como se ha analizado anteriormente, la CAPI 103 asocia cada comunicación entrante, a través de su protocolo de comunicación, a una aplicación, respectivamente, en función de su número de contacto entrante. En el paso S704, la CAPI 103 asocia cada comunicación entrante a un miembro particular de una aplicación. Esta comunicación entrante puede recibirse a través de cualquiera de los protocolos de comunicación discutidos anteriormente.
En el paso S706, la aplicación identificada envía a la CAPI 103 una solicitud cifrada para agregar cada miembro asociado con la comunicación entrante a una conversación. Se pueden invitar a varios miembros a unirse a una conversación a través de múltiples protocolos de comunicación simultáneamente. En el paso S708, la CAPI 103 envía una invitación a cada miembro para unirse a la conversación a través del protocolo de comunicación apropiado. En el paso S710, la CAPI 103 determina el estado de la conversación de cada miembro (por ejemplo, si cada miembro ha aceptado o no la invitación para unirse a la conversación). En el paso S712, la CAPI 103 envía el estado de la conversación de cada miembro a la aplicación identificada.
Las técnicas de procesamiento de llamada orientadas a objetos descritas anteriormente se pueden utilizar para ayudar a grabar conversaciones que son configuradas y manejadas por el servicio de comunicación multicanal 100. La Figura 8 es un diagrama de flujo que ilustra los pasos de un método 800 que se realizaría para grabar una conversación telefónica. De manera correspondiente, las Figuras 9A-9D ilustran esquemáticamente cómo diferentes miembros pueden participar en la comunicación telefónica, cómo se registra su participación en la comunicación telefónica mediante el servicio de comunicación multicanal 100, y cómo se grabaría la misma telefonía mediante un sistema de grabación de la técnica anterior. La Figura 9A ilustra los diferentes períodos de tiempo de una llamada. La Figura 9B ilustra qué partes participan en una llamada en los períodos de tiempo identificados en la Figura 9A. La Figura 9C ilustra cómo se registra la llamada mediante un servicio de comunicación multicanal. La Figura 9D ilustra cómo se grabaría la misma llamada mediante un método de grabación de la técnica anterior.
El método 800 comienza y continúa con el paso S802 donde una parte que llama se conecta a una línea de servicio al cliente de una empresa y, específicamente, a un sistema de respuesta de voz interactivo (IVR) operado por la empresa. Como saben bien los expertos en la materia, se puede utilizar un IVR para dirigir inicialmente a una persona que llama al agente de servicio al cliente más adecuado. Como se ilustra en la Figura 9B, durante el período de tiempo 1, la parte que llama interactúa con el IVR. Como también se ilustra en la Figura 9B, la llamada entrante se configura como una llamada telefónica y, durante el período de tiempo 1, los únicos dos participantes en la llamada telefónica son la parte que llama y el IVR.
Cuando la parte que llama se conecta por primera vez al IVR a través de la conferencia telefónica, el servicio de comunicación multicanal 100 comienza a grabar la llamada. Como se ilustra en la Figura 9C, la grabación puede ser una grabación de dos pistas, donde el audio generado por la parte que llama se graba en la pista 1, y donde el audio generado por el IVR y que escucha la parte que llama se graba en la pista 2. Mantener dos pistas separadas puede facilitar el uso de la grabación para diversos fines, tales como transcripciones. También, debido a que las dos pistas se graban simultáneamente en una única grabación, las dos pistas se sincronizan automáticamente entre sí.
Las interacciones de la parte que llama con el IVR darán como resultado que la parte que llama se conecte a un primer agente de servicio al cliente, etiquetado en las Figuras 9B-9D como Agente A. Como se muestra en la Figura 8, en el paso S804 la parte que llama se conecta al Agente A. Como se refleja en la Figura 9B, la comunicación todavía está configurada como una llamada telefónica. Por tanto, al final del período de tiempo 1, el IVR se elimina de la conferencia telefónica y el Agente A se agrega a la conferencia telefónica. Como se muestra en la Figura 9C, la grabación creada por el servicio de comunicación multicanal 100 será continua. Como resultado, el audio generado por la persona que llama todavía se graba en la pista 1. Sin embargo, durante el período de tiempo 2, mientras la parte que llama interactúa con el Agente A, el audio generado por el Agente A se graba en la pista 2 de la grabación.
Al final del período de tiempo 2, el Agente A decide que es mejor para la parte que llama hablar con un segundo agente de servicio al cliente, que se denomina Agente B en las Figuras 9B-9D. En el paso S806 del método ilustrado en la Figura 8, la parte que llama se conecta al Agente B. Esto significa que al final del período de tiempo 2, el Agente A se retira de la conferencia telefónica y el Agente B se agrega a la conferencia telefónica. Durante el período de tiempo 3, la parte que llama interactúa con el Agente B. Como se ilustra en la Figura 9C, el audio generado por la parte que llama todavía se graba en la pista 1 de la grabación continua, y el audio generado por el Agente B durante el período de tiempo 3 se graba en la pista 2 de la grabación continua.
Al final del período 3, el Agente B decide que es mejor para la parte que llama hablar con un tercer agente de servicio al cliente, denominado Agente C en las Figuras 9B-9D. En el paso S808 del método ilustrado en la Figura 8, la parte que llama se conecta al Agente C. Esto significa que al final del período de tiempo 3, el Agente B se elimina de la conferencia telefónica y el Agente C se agrega a la conferencia telefónica. Durante el período de tiempo 3, la parte que llama interactúa con el Agente C. Como se ilustra en la Figura 9C, el audio generado por la parte que llama todavía se graba en la pista 1 de la grabación continua, y el audio generado por el Agente C durante el período de tiempo 4 se graba en la pista 2 de la grabación continua. Finalmente, en el paso S810 del método ilustrado en la Figura 8, la parte que llama completa la llamada, la llamada en sí finaliza y finaliza la grabación.
La Figura 9D ilustra el tipo de grabaciones que se realizarían mediante los sistemas de la técnica anterior en las mismas circunstancias analizadas anteriormente. Como se muestra en la Figura 9D, cuando la parte que llama contacta con la empresa a través de un sistema de la técnica anterior, la parte que llama se conecta al IVR y se realiza una grabación de dos pistas. El audio generado por la persona que llama se graba en la pista 1 y el audio generado por el IVR se graba en la pista 2. Sin embargo, cuando la persona que llama se conecta con el Agente A, la primera grabación finaliza y comienza una nueva. La segunda grabación también es una grabación de dos pistas, donde el audio generado por la parte que llama se graba en la pista 1 y el audio generado por el Agente A se graba en la pista 2. Esta segunda grabación continúa hasta que la parte que llama se conecta con el Agente B. En este punto, finaliza la segunda grabación y comienza una tercera. Nuevamente, la tercera grabación tendrá audio generado por la parte que llama en la pista 1 y audio generado por el Agente B en la pista 2. Este mismo patrón se repite cuando la parte que llama cambia al Agente C y se genera una cuarta grabación de la interacción de la parte que llama con el Agente C.
Con un sistema de grabación de la técnica anterior, se crean cuatro grabaciones separadas, como se ilustra en la Figura 9D. Si una persona desea revisar lo que ocurrió durante la interacción de la parte que llama con la empresa, es necesario localizar y escuchar cuatro grabaciones separadas. Alternativamente, durante algún procesamiento posterior a la llamada, las cuatro grabaciones separadas se deben unir en el orden correcto y se debe guardar un nuevo archivo con la grabación completa.
Por el contrario, el servicio de comunicación multicanal 100 es capaz de generar una única grabación mientras la llamada está en curso. Esto significa que la grabación estará disponible para su revisión inmediata tan pronto como la persona que llama cuelgue. También, no es necesario utilizar recursos del sistema para el procesamiento posterior a la llamada para unir múltiples grabaciones y recrear la experiencia de la persona que llama.
También, un servicio de comunicación multicanal incluye una API que permite a la empresa especificar exactamente qué se registra durante las llamadas de servicio al cliente. Entonces, por ejemplo, la empresa podría especificar que solo se genere una grabación continua de dos pistas como se ha explicado anteriormente. Sin embargo, la empresa también podría especificar que también se generen una o más grabaciones adicionales para capturar la experiencia de cada Agente. Esto significa que al mismo tiempo que se crea una grabación continua de dos pistas como se ha explicado anteriormente, también se podría generar simultáneamente una grabación separada de dos pistas para capturar la experiencia del Agente A. Esa grabación de dos pistas sólo podría cubrir el período de tiempo 2 en los diagramas proporcionados en las Figuras 9A-9C. La primera pista de la grabación tendría el audio generado por el Agente A durante el período de tiempo 2, y la segunda pista de la grabación podría tener todo el audio generado por la parte que llama durante el período de tiempo 2. También se podrían realizar grabaciones similares para capturar la experiencia del Agente B y el Agente C, o incluso lo que experimenta el IVR durante el período de tiempo 1.
La Figura 10 ilustra un diagrama de flujo de un segundo método 1000 que se puede utilizar para registrar las interacciones de una parte que llama con el departamento de servicio al cliente de una empresa. En consecuencia, las Figuras 11A-11D ilustran cómo la parte que llama se conecta con varios individuos dentro de la empresa y cómo se realiza un registro de la experiencia del usuario. El método 1000 comienza y continúa con el paso S1002 donde una parte que llama se conecta a una línea de servicio al cliente de una empresa y, específicamente, a un IVR operado por la empresa. Como se ilustra en la Figura 11B, durante el período de tiempo 1, la parte que llama interactúa con el IVR. Como también se ilustra en la Figura 11B, la llamada entrante se configura como una llamada telefónica y, durante el período de tiempo 1, los únicos dos participantes en la llamada telefónica son la parte que llama y el IVR.
Cuando la parte que llama se conecta por primera vez al IVR a través de la conferencia telefónica, el servicio de comunicación multicanal 100 comienza a grabar la llamada, como se ilustra en la Figura 11C. En el presente documento de nuevo, la grabación puede ser una grabación de dos pistas, donde el audio generado por la parte que llama se graba en la pista 1, y donde el audio generado por el IVR y que escucha la parte que llama se graba en la pista 2.
Las interacciones de la parte que llama con el IVR darán como resultado que la parte que llama se conecte a continuación con un primer agente de servicio al cliente, etiquetado en las Figuras 11 b-11D como Agente A. Como se muestra en la Figura 10, en el paso S1004 la parte que llama se conecta con el Agente A. Como se refleja en la Figura 11B, la comunicación todavía está configurada como una conferencia telefónica. Por tanto, al final del período de tiempo 1, el IVR se elimina de la conferencia telefónica y el Agente A se agrega a la conferencia telefónica. Como se ilustra en la Figura 11C, la grabación creada por el servicio de comunicación multicanal 100 será continua. Como resultado, el audio generado por la persona que llama todavía se graba en la pista 1. Sin embargo, durante el período de tiempo 2, mientras la parte que llama interactúa con el Agente A, el audio generado por el Agente A se graba en la pista 2 de la grabación.
Al final del período 2, el Agente A decide contratar la asistencia de un segundo agente de servicio al cliente, el Agente B, para ayudar a satisfacer las solicitudes de la parte que llama. En el paso S1006 del método ilustrado en la Figura 10, se agrega el Agente B a la conferencia telefónica. Durante el período de tiempo 3, la parte que llama interactúa con los Agentes A y B. Como se ilustra en la Figura 11C, el audio generado por la parte que llama todavía se graba en la pista 1 de la grabación continua, y el audio generado por los Agentes A y B durante el período de tiempo 3 se graba en la pista 2 de la grabación continua.
Al final del período 3, el Agente A ya no es necesario, por lo que el Agente A se retira de la conferencia telefónica y la parte que llama continúa interactuando con el Agente B durante el período 4. En el paso S1008, el Agente A es eliminado de la conferencia telefónica. Durante el período de tiempo 4, la parte que llama interactúa solo con el Agente B. Como se ilustra en la Figura 11C, el audio generado por la parte que llama todavía se graba en la pista 1 de la grabación continua, y el audio generado por el Agente B durante el período de tiempo 4 se graba en la pista 2 de la grabación continua. Finalmente, en el paso S1010 del método ilustrado en la Figura 10, la parte que llama completa la llamada, la llamada en sí finaliza y finaliza la grabación.
Como se ilustra en la Figura 11D, en el sistema de grabación de la técnica anterior, cuando el Agente A decide realizar una conferencia con el Agente B al final del período de tiempo 2, incluso en el sistema de la técnica anterior, el Agente A ha creado una conferencia telefónica. Como resultado, incluso en el sistema de la técnica anterior, puede ser posible crear una grabación continua de los períodos de tiempo 2, 3 y 4. Sin embargo, el sistema de la técnica anterior seguirá realizando una grabación separada de las interacciones de la parte que llama con el IVR durante el período de tiempo 1.
Aunque los métodos y sistemas se han descrito en relación con realizaciones específicas de los mismos, no están tan limitados. Como tal, muchas modificaciones y variaciones pueden resultar evidentes a la luz de las enseñanzas anteriores. Los expertos en la materia pueden realizar muchos cambios adicionales en los detalles, materiales y disposición de las piezas, descritas e ilustradas en el presente documento. En consecuencia, se entenderá que los métodos, dispositivos y sistemas proporcionados en el presente documento no deben limitarse a las realizaciones divulgadas en el presente documento, pueden incluir prácticas distintas a las descritas específicamente y deben interpretarse de la forma más amplia permitida por la ley.
Las implementaciones de la materia objeto y las operaciones descritas en esta memoria descriptiva se pueden implementar en circuitería electrónica digital o en software informático, firmware o hardware, incluyendo las estructuras divulgadas en esta memoria descriptiva y sus equivalentes estructurales, o en combinaciones de uno o más de los mismos. Las implementaciones de la materia objeto descritas en esta memoria descriptiva pueden implementarse como uno o más programas informáticos, es decir, uno o más módulos de instrucciones de programa informático, codificados en un medio de almacenamiento informático para su ejecución por, o para controlar la operación de, el aparato de procesamiento de datos. Como alternativa, o adicionalmente, las instrucciones del programa pueden codificarse en una señal propagada generada artificialmente, por ejemplo, una señal eléctrica, óptica o electromagnética generada por una máquina que se genera para codificar información para su transmisión a un aparato receptor adecuado para su ejecución mediante un aparato de procesamiento de datos. Un medio de almacenamiento informático puede estar, o puede incluirse dentro de, un dispositivo de almacenamiento legible por ordenador, un sustrato de almacenamiento legible por ordenador, una matriz o dispositivo de memoria de acceso aleatorio o en serie o una combinación de los mismos. Además, mientras un medio de almacenamiento informático no es una señal propagada, un medio de almacenamiento informático puede ser una fuente o un destino de instrucciones de programa informático codificadas en una señal propagada generada artificialmente. El medio de almacenamiento informático también puede ser, o estar incluido en, uno o más componentes o medios físicos separados, (por ejemplo, múltiples CD, discos informáticos u otros dispositivos de almacenamiento).
Las operaciones descritas en esta memoria descriptiva pueden implementarse como operaciones realizadas por un aparato de procesamiento de datos en datos almacenados en uno o más dispositivos de almacenamiento legibles por ordenador o recibirse de otras fuentes.
La expresión "aparato de procesamiento de datos" abarca todo tipo de aparatos, dispositivos y máquinas para procesar datos, incluyendo a modo de ejemplo un procesador programable, un ordenador, un sistema en un chip, o múltiples, o combinaciones, de los anteriores. El aparato puede incluir circutería de lógica de propósito especial, por ejemplo, una FPGA (matriz de puertas programables en campo) o una ASIC (circuito integrado específico de aplicación). El aparato puede incluir también, además de hardware, un código que crea un entorno de ejecución para el programa informático en cuestión, por ejemplo, un código que constituye el firmware del procesador, una pila de protocolos, un sistema de gestión de base de datos, un sistema operativo, un entorno de tiempo de ejecución de plataforma cruzada, una máquina virtual o una combinación de uno o más de los mismos. El aparato y el entorno de ejecución pueden realizar diversas infraestructuras de modelos de computación diferentes, tales como servicios web, computación distribuida e infraestructuras de computación en red.
Un programa informático (también conocido como programa, software, aplicación de software, secuencia de comandos o código) se puede escribir en cualquier forma de lenguaje de programación, incluidos los lenguajes compilados o interpretados, o los lenguajes declarativos o de procedimiento, y se puede implementar en cualquier forma, incluso como un programa independiente o como un módulo, componente, subrutina, objeto u otra unidad adecuada para su uso en un entorno informático. Un programa informático, puede, pero no necesariamente, corresponder a un archivo en un sistema de archivos. Un programa puede almacenarse en una porción de un archivo que contiene otros programas o datos (por ejemplo, una o más secuencias de comandos almacenadas en una fuente de lenguaje de marcado), en un único archivo especializado al programa en cuestión, o en múltiples archivos coordinados (por ejemplo, archivos que almacenan uno o más módulos, subprogramas o porciones de código). Un programa informático puede implementarse para ejecutarse en un ordenador o en múltiples ordenadores que están ubicados en un sitio o distribuidos por múltiples sitios e interconectados por una red de comunicación.
Los procesos y flujos lógicos descritos en esta memoria descriptiva pueden realizarse por uno o más procesadores programables que ejecutan uno o más programas informáticos para realizar acciones operando en datos de entrada y generando una salida. Los procesos y flujos lógicos también pueden ser realizados por, y el aparato también puede implementarse como, circuitería de lógica de fin especial, por ejemplo, una FPGA (matriz de puertas programables en campo) o un ASIC (circuito integrado específico a aplicación).
Los procesadores adecuados para la ejecución de un programa informático incluyen, a modo de ejemplo, microprocesadores de propósito tanto general como especial, y uno o más procesadores cualesquiera de cualquier tipo de ordenador digital. En general, un procesador recibirá instrucciones y datos desde una memoria de solo de lectura o una memoria de acceso aleatorio, o ambas. Los elementos esenciales de un ordenador son un procesador para realizar acciones de acuerdo con las instrucciones y uno o más dispositivos de memoria para almacenar instrucciones y datos. En general, un ordenador también incluirá, o estará operativamente acoplado para recibir datos desde, o transferir datos a, o ambos, uno o más dispositivos de almacenamiento masivo para almacenar datos, por ejemplo, magnéticos, discos magneto-ópticos o discos ópticos. Sin embargo, un ordenador no necesita tener tales dispositivos. Además, un ordenador puede estar integrado en otro dispositivo, por ejemplo, un teléfono móvil, un asistente digital personal (PDA), un reproductor de audio o vídeo móvil, una consola de juegos, un receptor del sistema de posicionamiento global (GPS) o un dispositivo de almacenamiento portátil (por ejemplo, una unidad flash de bus serie universal (USB)), por nombrar sólo algunos. Los dispositivos adecuados para almacenar las instrucciones del programa informático y los datos incluyen todas las formas de memoria no volátil, medios y dispositivos de memoria, incluyendo a modo de ejemplo dispositivos de memoria de semiconductores, por ejemplo, EPROM, EEPROM y dispositivos de memoria flash; discos magnéticos, por ejemplo, discos duros internos o discos extraíbles; discos magneto-ópticos; y discos CD-ROM y DVD-ROM. El procesador y la memoria pueden ser complementados por, o incorporarse en, circuitería de lógica de fin especial.
Para proporcionar interacción con un usuario, las implementaciones de la materia objeto descritas en esta memoria descriptiva pueden implementarse en un ordenador que tiene un visualizador, por ejemplo, un monitor de CRT (tubo de rayos catódicos) o LCD (pantalla de cristal líquido), para visualizar la información al usuario y un teclado y un dispositivo apuntador, por ejemplo, un ratón o una bola de mando, mediante el que el usuario puede proporcionar una entrada al ordenador. También pueden utilizarse otros tipos de dispositivos para proporcionar interacción con un usuario; por ejemplo, la retroalimentación proporcionada al usuario puede ser cualquier forma de retroalimentación sensorial, por ejemplo, retroalimentación visual, retroalimentación auditiva o retroalimentación táctil; y la entrada del usuario puede recibirse en cualquier forma, incluyendo acústica, voz o entrada táctil. Además, un ordenador puede interactuar con un usuario enviando y recibiendo recursos de un dispositivo que utiliza el usuario; por ejemplo, enviando páginas web a un navegador web en el dispositivo cliente de un usuario en respuesta a solicitudes recibidas desde el navegador web.
Las implementaciones de la materia objeto descrita en esta memoria descriptiva pueden implementarse en un sistema informático que incluye un componente de respaldo ("back-end"), por ejemplo, como un servidor de datos, o que incluye un componente de soporte intermedio, por ejemplo, un servidor de aplicación, o que incluye un componente frontal ("frontend"), por ejemplo, un ordenador del cliente que tiene una interfaz gráfica de usuario o un explorador web a través del cual un usuario puede interactuar con una implementación de la materia objeto descrita en esta memoria descriptiva, o cualquier combinación de uno o más de dichos componentes de respaldo, soporte intermedio o frontal. Los componentes del sistema pueden interconectarse mediante cualquier forma o medio de comunicación de datos digital, por ejemplo, una red de comunicación. Ejemplos de redes de comunicación incluyen una red de área local ("LAN") y una red de área amplia ("WAN"), una interred (por ejemplo, Internet) y redes entre pares (por ejemplo, redes de entre pares ad hoc).
El sistema informático puede incluir clientes y servidores. Un cliente y servidor están generalmente remotos entre sí y habitualmente interactúan a través de una red de comunicación. La relación de cliente y servidor surge mediante programas informáticos que se ejecutan en los respectivos ordenadores y tienen una relación de cliente-servidor entre sí.
En algunas implementaciones, un servidor transmite datos (por ejemplo, una página HTML) a un dispositivo cliente (por ejemplo, con el fin de mostrar datos y recibir entradas de un usuario que interactúa con el dispositivo cliente). Los datos generados en el dispositivo cliente (por ejemplo, como resultado de la interacción del usuario) se pueden recibir desde el dispositivo cliente en el servidor.
Un sistema de una o más computadoras puede configurarse para realizar operaciones o acciones particulares en virtud de tener software, firmware, hardware o una combinación de ellos instalados en el sistema que en funcionamiento causa o hace que el sistema realice las acciones. Se pueden configurar uno o más programas informáticos para realizar operaciones o acciones particulares en virtud de incluir instrucciones que, cuando se ejecutan mediante un aparato de procesamiento de datos, hacen que el aparato realice las acciones.
Aunque esta memoria descriptiva contiene muchos detalles de implementación específicos, estos no deberían interpretarse como limitaciones sobre el alcance de ninguna invención o de lo que puede reivindicarse, sino como descripciones de características específicas a implementaciones particulares de invenciones particulares. Ciertas características que se describen en esta memoria descriptiva en el contexto de implementaciones separadas también pueden implementarse junto con una única implementación. A la inversa, diversas características que se describen en el contexto de una única implementación también pueden implementarse en múltiples implementaciones de forma separada en cualquier subcombinación adecuada. Además, aunque las características pueden haberse descrito anteriormente como actuando en ciertas combinaciones e incluso inicialmente reivindicadas como tal, una o más características de una combinación reivindicada pueden, en algunos casos, suprimirse de la combinación, y la combinación reivindicada puede dirigirse a una subcombinación o variación de una subcombinación.
De manera similar, aunque en los dibujos se representan operaciones en un orden particular, esto no debería entenderse como que se requiere que dichas operaciones se realicen en el orden particular mostrado o en orden secuencial, o que se realicen todas las operaciones ilustradas, para conseguir resultados deseables. En ciertas circunstancias, la multitarea y el procesamiento paralelo pueden ser ventajosos. Además, la separación de diversos componentes de sistema en las implementaciones anteriormente descritas no debe entenderse como que requieren dicha separación en todas las implementaciones, y debería entenderse que los componentes y sistemas de programa descritos pueden estar integrados en general juntos en un único producto de software o empaquetarse en múltiples productos de software.
Por tanto, se han descrito realizaciones particulares de la materia objeto. El alcance de protección se define por las reivindicaciones adjuntas.

Claims (15)

REIVINDICACIONES
1. Un método realizado por una interfaz de programación de aplicaciones de conversación, CAPI, (103) para gestionar las comunicaciones entre usuarios, que comprende:
recibir una comunicación entrante (614) dirigida a un número de contacto que fue enviada desde un servicio de comunicación (101);
identificar una conversación que tiene un objeto de conversación (325/327) que incluye el número de contacto; identificar una aplicación cliente (128) que solicitó que la CAPI (103) creara la conversación;
enviar una notificación (616) con respecto a la comunicación entrante (614) a la aplicación cliente identificada (128);
recibir (618), desde la aplicación cliente (128), una solicitud para invitar a un usuario asociado con la comunicación entrante (614) a unirse a la conversación que tiene el objeto de conversación (325/327) que incluye el número de contacto;
enviar una invitación (620) para unirse a la conversación al usuario asociado con la comunicación entrante (614); determinar un estado de conversación (622) del usuario asociado con la comunicación entrante (614); y transmitir el estado de la conversación (624) del usuario asociado con la comunicación entrante (614) a la aplicación cliente correspondiente (128).
2. El método de la reivindicación 1, en donde la comunicación entrante (614) se realiza en un canal de comunicaciones seleccionado del grupo que consiste en SMS, telefonía basada en POTS, telefonía basada en VoIP, WebRTC, SIP y un servicio tipo "over-the-top".
3. El método de la reivindicación 1, en donde la conversación creada por la CAPI (103) está representada por el objeto de conversación (325/327), y en donde el objeto de conversación (325/327) identifica al menos dos miembros que se comunican a través de uno o más canales de comunicación.
4. El método de la reivindicación 1, en donde el estado de conversación (622) del usuario se selecciona del grupo que consiste en invitado, unido y abandonado.
5. El método de la reivindicación 4, en donde un usuario "invitado" ha sido invitado a unirse a una conversación pero aún no se ha unido, un usuario "unido" está actualmente unido a una conversación y un usuario "abandonado" es un usuario que ha abandonado una conversación.
6. El método de la reivindicación 1, que comprende además:
solicitar un objeto de control de llamadas desde la aplicación cliente (128) que solicitó que la CAPI (103) creara la conversación; y
recibir el objeto de control de llamadas desde la aplicación cliente (128).
7. El método de la reivindicación 6, en donde el objeto de control de llamada comprende una secuencia ordenada de objetos, donde cada objeto especifica una acción y uno o más interruptores opcionales que controlan el resultado de la acción.
8. Un aparato para gestionar múltiples canales de comunicaciones entre usuarios que comprende:
una interfaz de programación de aplicaciones de conversación, CAPI, (103) que realiza los pasos de: recibir una comunicación entrante (614) dirigida a un número de contacto que fue enviada desde un servicio de comunicación (101);
identificar una conversación que tiene un objeto de conversación (325/327) que incluye el número de contacto; identificar una aplicación cliente (128) que solicitó que la CAPI (103) creara la conversación;
enviar una notificación (616) con respecto a la comunicación entrante (614) a la aplicación cliente identificada (128);
recibir (618), desde la aplicación cliente (128), una solicitud para invitar a un usuario asociado con la número de contacto;
enviar una invitación (620) para unirse a la conversación al usuario asociado con la comunicación entrante (614); determinar un estado de conversación (622) del usuario asociado con la comunicación entrante (614); y transmitir el estado de la conversación (624) del usuario asociado con la comunicación entrante (614) a la aplicación cliente correspondiente (128).
9. El aparato de la reivindicación 8, en donde la comunicación entrante (614) se realiza en un canal de comunicaciones seleccionado del grupo que consiste en SMS, telefonía basada en POTS, telefonía basada en VoIP, WebRTC, SIP y un servicio tipo "over-the-top".
10. El aparato de la reivindicación 8, en donde la conversación creada por la CAPI (103) está representada por el objeto de conversación (325/327), y en donde el objeto de conversación (325/327) identifica al menos dos miembros que se comunican a través de uno o más canales de comunicación.
11. El aparato de la reivindicación 8, en donde el estado de conversación (622) de un usuario se selecciona del grupo que consiste en invitado, unido y abandonado.
12. El aparato de la reivindicación 11, en donde un usuario "invitado" ha sido invitado a unirse a una conversación pero aún no se ha unido, un usuario "unido" está actualmente unido a una conversación y un usuario "abandonado" es un usuario que ha abandonado una conversación.
13. El aparato de la reivindicación 8, que comprende además asociar la comunicación entrante (614) a una segunda aplicación cliente (128).
14. El aparato de la reivindicación 8, en donde la CAPI (103) también realiza las etapas de:
solicitar un objeto de control de llamadas desde la aplicación cliente (128) que solicitó que la CAPI (103) creara la conversación; y
recibir el objeto de control de llamadas desde la aplicación cliente (128).
15. El aparato de la reivindicación 14, en donde el objeto de control de llamada comprende una secuencia ordenada de objetos, donde cada objeto especifica una acción y uno o más interruptores opcionales que controlan el resultado de la acción.
ES20167389T 2016-04-12 2017-04-07 Sistemas y métodos para proporcionar un servicio de comunicación multicanal Active ES2963546T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662321659P 2016-04-12 2016-04-12
US15/373,904 US9912808B2 (en) 2016-04-12 2016-12-09 Systems and methods for providing a multi-channel communication service

Publications (1)

Publication Number Publication Date
ES2963546T3 true ES2963546T3 (es) 2024-03-27

Family

ID=59999633

Family Applications (1)

Application Number Title Priority Date Filing Date
ES20167389T Active ES2963546T3 (es) 2016-04-12 2017-04-07 Sistemas y métodos para proporcionar un servicio de comunicación multicanal

Country Status (5)

Country Link
US (3) US9912808B2 (es)
EP (2) EP3694198B1 (es)
CA (2) CA3020697C (es)
ES (1) ES2963546T3 (es)
WO (1) WO2017180463A1 (es)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11079910B1 (en) * 2019-02-06 2021-08-03 Fuze, Inc. Softphone control integration
US11698891B2 (en) * 2019-07-30 2023-07-11 Salesforce.Com, Inc. Database systems and related multichannel communication methods
KR102835502B1 (ko) * 2020-10-23 2025-07-17 삼성전자주식회사 전자 장치 및 통화 녹음 방법
US20220215324A1 (en) * 2021-01-07 2022-07-07 Gladly, Inc. Data tracking and generation for workforce management

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8775511B2 (en) * 2003-02-10 2014-07-08 Open Invention Network, Llc Methods and apparatus for automatically adding a media component to an established multimedia collaboration session
US8094790B2 (en) * 2005-05-18 2012-01-10 Mattersight Corporation Method and software for training a customer service representative by analysis of a telephonic interaction between a customer and a contact center
US20080298253A1 (en) * 2007-05-30 2008-12-04 Nortel Networks Limited Managing Recordings of Communications Sessions
US9514444B2 (en) * 2009-01-15 2016-12-06 Sococo, Inc. Encapsulating virtual area based communicant assemblies
US9124662B2 (en) * 2009-01-15 2015-09-01 Social Communications Company Persistent network resource and virtual area associations for realtime collaboration
US8879547B2 (en) * 2009-06-02 2014-11-04 Oracle International Corporation Telephony application services
US9071684B2 (en) 2009-11-17 2015-06-30 Cisco Technology, Inc. Media forking
WO2011107656A1 (en) * 2010-03-04 2011-09-09 Nokia Corporation Method and apparatus for integrating applications and related communications
US9819700B2 (en) * 2011-05-30 2017-11-14 Telefonaktiebolaget Lm Ericsson (Publ) System and method for passive communication services
US20130013364A1 (en) * 2011-07-08 2013-01-10 Beers Ted W Managing establishment of a scheduled event
US9401989B2 (en) * 2013-09-05 2016-07-26 Avaya Inc. Work assignment with bot agents
US9819759B2 (en) * 2013-11-07 2017-11-14 Oracle International Corporation Inter-site integration platform for communication between social networking sites
US10666524B2 (en) * 2014-04-11 2020-05-26 Genband Us Llc Collaborative multimedia communication
US9948703B2 (en) * 2015-05-14 2018-04-17 Twilio, Inc. System and method for signaling through data storage
US9992331B2 (en) * 2015-08-25 2018-06-05 Avaya Inc. Continuous call recording

Also Published As

Publication number Publication date
WO2017180463A1 (en) 2017-10-19
EP3694198C0 (en) 2023-11-01
US10659604B2 (en) 2020-05-19
US20190253556A1 (en) 2019-08-15
EP3694198A1 (en) 2020-08-12
EP3443731A1 (en) 2019-02-20
CA3060500C (en) 2022-07-12
US20170295280A1 (en) 2017-10-12
CA3060500A1 (en) 2017-10-19
EP3443731B1 (en) 2020-05-27
CA3020697C (en) 2020-01-14
CA3020697A1 (en) 2017-10-19
US10313513B2 (en) 2019-06-04
EP3694198B1 (en) 2023-11-01
US9912808B2 (en) 2018-03-06
US20180176369A1 (en) 2018-06-21

Similar Documents

Publication Publication Date Title
AU2021200082B2 (en) Media channel management apparatus for network communications sessions
RU2499359C2 (ru) Управляемое клиентом динамическое перенаправление вызова
CN102461098B (zh) 用于将短消息服务消息收发与联络中心应用集成的系统和方法
US11895165B2 (en) In-line, in-call AI virtual assistant for teleconferencing
US20200153963A1 (en) Systems and methods for providing integrated computerized personal assistant services in telephony communications
ES2963546T3 (es) Sistemas y métodos para proporcionar un servicio de comunicación multicanal
US11606464B2 (en) System and method for facilitating setup and joining of conference calls
US20170192735A1 (en) System and method for synchronized displays
US10187529B2 (en) Systems and methods for conducting conference calls
CN110784443A (zh) 联络中心中共存的多通道交互的动态同步
CN107005618A (zh) 经由客户端应用控制pbx电话呼叫
US20250193314A1 (en) Transfer of a voice call at a software as a service platform
US20150281461A1 (en) Dynamic notification during a teleconference