ES2927296T3 - Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S - Google Patents

Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S Download PDF

Info

Publication number
ES2927296T3
ES2927296T3 ES19700708T ES19700708T ES2927296T3 ES 2927296 T3 ES2927296 T3 ES 2927296T3 ES 19700708 T ES19700708 T ES 19700708T ES 19700708 T ES19700708 T ES 19700708T ES 2927296 T3 ES2927296 T3 ES 2927296T3
Authority
ES
Spain
Prior art keywords
user
devices
user terminal
communication
user devices
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
ES19700708T
Other languages
English (en)
Inventor
Hans Hannu
Stefan Wänstedt
Tommy Arngren
Peter Ökvist
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.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
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 Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2927296T3 publication Critical patent/ES2927296T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/2803Home automation networks
    • 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/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45504Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
    • G06F9/45508Runtime interpretation or emulation, e g. emulator loops, bytecode interpretation
    • 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/2803Home automation networks
    • H04L12/2816Controlling appliance services of a home automation network by calling their functionalities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/1059End-user terminal functionalities specially adapted for real-time communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1069Session establishment or de-establishment
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1073Registration or de-registration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/08Protocols specially adapted for terminal emulation, e.g. Telnet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/59Providing operational support to end devices by off-loading in the network or by emulation, e.g. when they are unavailable
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • 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/2803Home automation networks
    • H04L2012/2847Home automation networks characterised by the type of home appliance used
    • H04L2012/2849Audio/video appliances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • General Business, Economics & Management (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Computer And Data Communications (AREA)

Abstract

Se proporciona un servidor de emulación de terminal de usuario (100) que proporciona la funcionalidad operativa de un terminal de usuario utilizando un conjunto en red de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de un usuario (Etiqueta de usuario # 1) y tienen usuario capacidades de interfaz que son combinables para proporcionar al usuario (UserTag#1) la capacidad de recibir o iniciar un servicio de comunicación (140) con otro terminal de usuario a través de una entidad de red (150). Las operaciones para emular un terminal de usuario pueden ser realizadas alternativamente por un dispositivo de usuario de E/S (130) que proporciona servicios de comunicación (140) utilizando otros dispositivos de usuario de E/S (130). (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S
Campo técnico
La presente descripción se refiere a un servidor de emulación de terminal de usuario para proporcionar servicios de comunicación utilizando conjuntos de dispositivos de usuario de entrada y/o salida (E/S), a un dispositivo de usuario de E/S que está configurado como un dispositivo de usuario de E/S de control que proporciona servicios de comunicación utilizando un conjunto de dispositivos de usuario de E/S, y a productos de programa informático correspondientes.
Antecedentes
El mercado de terminales de usuario está impulsado por el afán de proporcionar a los usuarios una comunicación cada vez más avanzada y otras características operativas dentro de las limitaciones de un factor de forma manual portátil. Los requisitos de desarrollo para terminales de usuario son cada vez más complejos, dado que los diseñadores buscan integrar una mayor variedad de interfaces de usuario y características operativas avanzadas dentro del factor de forma manual portátil. Los avances en las características operativas han requerido circuitos de procesamiento más rápidos y altamente integrados con mayores densidades de circuitos, lo que se hace más difícil debido a las limitaciones de costes y consumo de energía.
Este enfoque completo y rico en funciones para el desarrollo de terminales de usuario no satisface todos los innumerables deseos diferentes que tienen los consumidores que buscan soluciones para la variedad de servicios de comunicación en rápida expansión. Además, las expectativas siempre conectadas de la sociedad actual obligan a los usuarios a mantener activamente sus terminales de usuario al alcance de la mano o corren el riesgo de no poder recibir o iniciar servicios de comunicación a tiempo.
La patente US 2015/0022619 A1 da a conocer el intercambio de contenido multimedia con un receptor de televisión, durante una llamada de voz desde un terminal multimedia a un terminal heredado, asociando previamente el receptor de televisión con el terminal heredado, almacenando dicha asociación en un servidor de aplicaciones de televisión conectado al receptor de televisión, y registrando dicha asociación, dentro de la misma identidad pública, por un servidor de comunicaciones conectado al terminal multimedia y al terminal heredado. El servidor de comunicaciones expone la disponibilidad para establecer llamadas multimedia entre el terminal multimedia y dicha identidad pública, en particular una disponibilidad de llamadas multimedia del conjunto de comunicación enriquecida.
La patente WO 03/055259 A1 da a conocer permitir que un usuario acceda a un servidor, a través de diferentes terminales de telecomunicaciones diseñados para conectarse a dicho servidor a través de una red de telecomunicaciones, estableciendo para dicho usuario una primera sesión de acceso a dicho servidor desde un primer terminal de telecomunicaciones, estableciendo para el mismo usuario una segunda sesión de acceso a dicho servidor desde un segundo terminal de telecomunicaciones, a través de un terminal conectado a cada uno de dichos terminales de telecomunicaciones, para acceder a dicho servidor desde dicho segundo terminal de telecomunicaciones sin interrupción alguna para el usuario.
La patente US 2016/0042748 A1 da a conocer un sistema basado en voz que puede comprender un dispositivo de interfaz de voz local y un servicio de control remoto. Un usuario puede interactuar con el sistema utilizando la voz para obtener servicios y realizar funciones. El sistema puede permitir que un usuario instale aplicaciones para proporcionar una funcionalidad mejorada o personalizada. Dichas aplicaciones pueden instalarse en el dispositivo de interfaz de voz o en el servicio de control. El servicio de control recibe el discurso del usuario y determina la intención del usuario en función del discurso. Si una aplicación instalada en el servicio de control puede responder a la intención, la aplicación es invocada. De lo contrario, el intento se pasa al dispositivo de interfaz de voz que responde invocando una de sus aplicaciones para responder al intento.
La patente US 9,641,954 B1 da a conocer un dispositivo que incluye un micrófono y un altavoz, y que puede capturar audio pronunciado por un usuario. El dispositivo, u otro dispositivo, puede a continuación realizar una operación particular en respuesta al audio capturado. El número de teléfono celular de un usuario puede estar asociado con el dispositivo. Cuando una llamada entrante se dirige al teléfono celular del usuario, el dispositivo puede generar una notificación. El usuario puede pronunciar un comando que hace que el dispositivo establezca una conexión de audio con una red de operador de telefonía celular, lo que facilita la conversación telefónica sin pasar por el teléfono celular. De manera similar, un usuario puede realizar una llamada saliente asociada con el teléfono celular del usuario. La llamada saliente se facilita a través de una conexión de audio entre el dispositivo y la red del operador celular, sin pasar por el teléfono celular.
La patente US 2017/0374176 A1 da a conocer un asistente digital soportado por dispositivos tales como teléfonos inteligentes, tabletas, ordenadores ponibles, dispositivos informáticos portátiles, consolas de juegos y similares, que incluye un cliente de experiencia de usuario de extremo a extremo que interactúa con extensiones de aplicaciones y/o servicios remotos basados en la nube para que las experiencias, el contenido o las características del usuario se puedan integrar con el asistente digital y presentar como una experiencia de usuario nativa del asistente digital. El asistente digital está configurado para actuar como un participante activo en una experiencia de un usuario desde su inicio hasta su conclusión (es decir, de "extremo a extremo") al determinar la intención del usuario, realizar tareas y acciones, proporcionar estado e interactuar con el usuario según sea necesario. El asistente digital utiliza la detección de proximidad para que su participación de extremo a extremo en una experiencia de usuario pueda abarcar diferentes ubicaciones físicas. Dicha capacidad puede facilitar la realización de acciones específicas por ubicación, incluyendo autenticar al usuario para obtener acceso a ubicaciones, información o servicios que estarían restringidos para usuarios no autenticados.
La patente US 2015/0178652 A1 da a conocer asistencia específica en el registro de usuarios. Una ubicación de servicio puede proporcionar balizas en o cerca de la ubicación para determinar si un usuario que se acerca a, o está en la ubicación de servicio tiene alguna experiencia con la ubicación de servicio. Por ejemplo, un comerciante puede colocar una baliza en la entrada de una tienda para determinar si un usuario ha comprado en la tienda. Por lo tanto, cuando un usuario está cerca de la baliza, un dispositivo de usuario del usuario y la baliza pueden establecer un registro. A través de un identificador de usuario comunicado a la baliza, el proveedor de servicios en la ubicación puede determinar un historial de usuario, tal como un número de visitas del usuario a la ubicación del servicio. La ubicación del servicio puede entonces proporcionar asistencia específica, tal como información, ayuda personal, búsquedas de artículos, etc., según el historial del usuario con el comerciante.
La patente US 2013/0212287 A1 da a conocer la gestión de sesiones multimodales en tiempo real o casi en tiempo real, tales como voz, video, mensajería instantánea o conferencias web a través de múltiples dispositivos a través de una simple suscripción a un servicio de gestión de sesiones. Un usuario puede suscribirse al servicio desde muchos dispositivos (por ejemplo, dispositivo móvil, teléfono de escritorio, ordenador personal, dispositivo de internet, televisión por internet, terminal de comunicación, etc.) y, a través del servicio, mover sesiones sin problemas entre los dispositivos suscritos. En una realización preferida, un usuario utiliza un "deslizador virtual" en un procedimiento simple de "dos toques" para efectuar el movimiento de una sesión de comunicación de un dispositivo a otro dispositivo a través del servicio.
Compendio
Varias realizaciones dadas a conocer en este documento están dirigidas a proporcionar un enfoque basado en un servidor centralizado para emular un terminal de usuario utilizando un conjunto en red de dispositivos de usuario de entrada y/o salida (E/S) que se determina que están ubicados cerca de un usuario y que tienen capacidades de interfaz de usuario (UI) que son combinables para proporcionar a un usuario la capacidad de recibir y/o iniciar un servicio de comunicación con otro terminal de usuario a través de una entidad de red. Algunas otras realizaciones están dirigidas a uno de los dispositivos de usuario de E/S (denominado dispositivo de usuario de E/S de control) que emula un terminal de usuario mientras usa un conjunto en red de otros dispositivos de usuario de E/S que se determina que están ubicados cerca de un usuario y que tienen capacidades de UI que son combinables para proporcionar a un usuario la capacidad de recibir y/o iniciar un servicio de comunicación con otro terminal de usuario a través de una entidad de red.
Algunas realizaciones están dirigidas a un servidor de emulación de terminal de usuario para proporcionar servicios de comunicación utilizando conjuntos de dispositivos de usuario de E/S. El servidor de emulación de terminal de usuario realiza operaciones para mantener una base de datos que identifica direcciones de red de dispositivos de usuario de E/S e identifica además capacidades de UI de los dispositivos de usuario de E/S, según el contenido de los mensajes de registro recibidos. Las operaciones registran una dirección de red de una aplicación de emulación de terminal de usuario y una identidad de un usuario con una entidad de red que proporciona servicios de comunicación. La aplicación de emulación de terminal de usuario es ejecutada por el servidor de emulación de terminal de usuario. Las operaciones reciben una solicitud de comunicación de la entidad de red para establecer un servicio de comunicación entre el usuario y un terminal de usuario solicitante. En respuesta a la solicitud de comunicación, otras operaciones pueden identificar un conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S identificados por la base de datos que se determina que están ubicados cerca de una ubicación del usuario y se determina además, en función de las capacidades de UI identificadas por la base de datos para el conjunto de dispositivos de usuario de E/S y en función del contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinables para proporcionar una interfaz de usuario de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario para proporcionar el servicio de comunicación.
Además, en base a la determinación de que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, las operaciones proporcionan sesiones de comunicación entre la aplicación de emulación de terminal de usuario y los dispositivos de usuario de E/S en el conjunto, y entre la aplicación de emulación de terminal de usuario y el terminal de usuario solicitante a través de la entidad de red, y enrutan el tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S en el conjunto. hacia el terminal de usuario solicitante. Para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, las operaciones seleccionan uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos para el uno de los dispositivos de usuario de E/S y a continuación enrutan los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S.
Algunas ventajas potenciales de estas realizaciones incluyen que un usuario puede recibir e iniciar servicios de comunicación sin la necesidad de un terminal de usuario rico en funciones tradicional integral. El servidor de emulación de terminal de usuario puede combinar de forma adaptativa las capacidades de UI disponibles de los dispositivos de usuario de E/S que están próximos a un usuario para intentar proporcionar un servicio de comunicación. Los dispositivos de usuario de E/S pueden incluir, por ejemplo, altavoces aptos para comunicación inalámbrica (Bluetooth, WiFi, comunicación por luz LiFi y/o celulares), micrófonos, dispositivos de visualización, teclados, otros dispositivos de interfaz de usuario de entrada y/o salida de usuario, etc., que se están volviendo omnipresentes en casi todas partes debido a la revolución de internet de las cosas (IoT). El servidor de emulación de terminal de usuario puede responder dinámicamente a una solicitud de comunicación entrante dirigida al usuario o a una solicitud de comunicación saliente del usuario comunicándose operativamente con dispositivos de usuario de E/S disponibles que están cerca de un usuario para formar una interfaz de usuario combinada a través de la cual una aplicación de emulación de terminal de usuario ejecutada por el servidor proporciona funcionalidad de terminal de usuario para un servicio de comunicación. El enfoque basado en servidor puede proporcionar servicios de comunicación adaptables de bajo coste a los usuarios.
Algunas otras realizaciones dadas a conocer en este documento están dirigidas a un dispositivo de usuario de E/S de control que realiza al menos algunas de las operaciones del servidor de emulación de terminal de usuario anterior.
En algunas realizaciones, un dispositivo de usuario de E/S entre una pluralidad de dispositivos de usuario de E/S está configurado como un dispositivo de usuario de E/S de control que proporciona servicios de comunicación utilizando al menos uno de los dispositivos de usuario de E/S. El dispositivo de usuario de E/S de control realiza operaciones para mantener una base de datos que identifica direcciones de red de dispositivos de usuario de E/S e identifica además capacidades de UI de los dispositivos de usuario de E/S, según el contenido de los mensajes de registro recibidos. Las operaciones registran una dirección de red de una aplicación de emulación de terminal de usuario y una identidad de un usuario con una entidad de red que proporciona servicios de comunicación. La aplicación de emulación de terminal de usuario es ejecutada por el dispositivo de usuario de E/S de entrada de control. Las operaciones reciben una solicitud de comunicación de la entidad de red para establecer un servicio de comunicación entre el usuario y un terminal de usuario solicitante. En respuesta a la solicitud de comunicación, las operaciones identifican un conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S identificados por la base de datos que se determina que están ubicados cerca de una ubicación del usuario y se determina además, en función de las capacidades de UI identificadas por la base de datos para el conjunto de dispositivos de usuario de E/S en función del contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinables para proporcionar una interfaz de usuario de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario para proporcionar el servicio de comunicación.
En base a la determinación de que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, las operaciones proporcionan sesiones de comunicación entre la aplicación de emulación de terminal de usuario y cada uno de los dispositivos de usuario de E/S del conjunto, y entre la aplicación de emulación de terminal de usuario y el terminal de usuario solicitante a través de la entidad de red, y enrutan el tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S en el conjunto. hacia el terminal de usuario solicitante. Para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, las operaciones seleccionan uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos para el uno de los dispositivos de usuario de E/S y a continuación enrutan los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S.
Otros servidores, dispositivos de usuario de E/S y métodos y productos de programa informático correspondientes, de acuerdo con las realizaciones del objeto de la invención, serán evidentes para un experto en la técnica tras la revisión de los siguientes dibujos y la descripción detallada. Se prevé que todos estos servidores adicionales, dispositivos de usuario de E/S y métodos y productos de programa informático correspondientes se incluyen dentro de esta descripción, están dentro del alcance de la presente materia inventiva y están protegidos por las reivindicaciones adjuntas. Además, se prevé que todas las realizaciones dadas a conocer en este documento pueden implementarse por separado o combinarse de cualquier forma y/o combinación.
Breve descripción de los dibujos
Los aspectos de la presente descripción se ilustran a modo de ejemplo y no están limitados por los dibujos adjuntos. En los dibujos:
La figura 1 ilustra un sistema con un servidor de emulación de terminal de usuario que integra operativamente conjuntos de dispositivos de usuario de E/S que están ubicados cerca de los usuarios para formar lógicamente terminales de usuario virtualizados que proporcionan servicios de comunicación de acuerdo con algunas realizaciones de la presente descripción;
La figura 2 es un diagrama de bloques que ilustra el servidor de emulación de terminal de usuario comunicando con varios elementos de un sistema celular para proporcionar servicios de comunicación de acuerdo con algunas realizaciones de la presente descripción;
La figura 3 es un diagrama de bloques que ilustra el servidor de emulación de terminal de usuario comunicándose de una manera diferente con varios elementos de un sistema celular para proporcionar servicios de comunicación de acuerdo con algunas otras realizaciones de la presente descripción;
Las figuras 4 a 6 son diagramas de flujo combinados de operaciones y flujos de datos relacionados entre EtiquetasDeUsuario, dispositivos de usuario de E/S y el servidor de emulación de terminal de usuario de acuerdo con algunas realizaciones de la presente descripción;
Las figuras 7 y 8 son diagramas de flujo de operaciones que puede realizar un servidor de emulación de terminal de usuario para proporcionar servicios de comunicación a través de un conjunto de dispositivos de usuario de E/S de acuerdo con algunas realizaciones de la presente descripción;
La figura 9 es un diagrama de bloques de componentes de un dispositivo de usuario de E/S que están configurados para funcionar de acuerdo con algunas realizaciones; y
La figura 10 es un diagrama de bloques de componentes de un servidor de emulación de terminal de usuario que están configurados para funcionar de acuerdo con algunas realizaciones de la presente descripción.
Descripción detallada
Los conceptos inventivos se describirán más completamente a continuación haciendo referencia a los dibujos adjuntos, en los que se muestran ejemplos de realizaciones de conceptos inventivos. Sin embargo, los conceptos inventivos pueden realizarse de muchas formas diferentes y no deben interpretarse como limitados a las realizaciones expuestas en este documento. Más bien, estas realizaciones se dan a conocer para que esta descripción sea exhaustiva y completa, y transmita completamente el alcance de varios conceptos inventivos presentes a los expertos en la técnica. También debe señalarse que estas realizaciones no son mutuamente excluyentes. Se puede suponer tácitamente que los componentes de una realización están presentes o se utilizan en otra realización.
Varias realizaciones dadas a conocer en este documento están dirigidas a proporcionar un enfoque basado en un servidor centralizado para emular un terminal de usuario utilizando un conjunto en red de dispositivos de usuario de entrada y/o salida (E/S) que se determina que están ubicados cerca de un usuario y que tienen capacidades de interfaz de usuario (UI) que son combinables para proporcionar a un usuario la capacidad de recibir y/o iniciar un servicio de comunicación con otro terminal de usuario a través de una entidad de red. Algunas otras realizaciones están dirigidas a uno de los dispositivos de usuario de E/S (denominado dispositivo de usuario de E/S de control) que emula un terminal de usuario mientras usa un conjunto en red de otros dispositivos de usuario de E/S que se determina que están ubicados cerca de un usuario y que tienen capacidades de UI que son combinables para proporcionar a un usuario la capacidad de recibir y/o iniciar un servicio de comunicación con otro terminal de usuario a través de una entidad de red.
Algunas ventajas potenciales de estas realizaciones incluyen que un usuario puede recibir e iniciar servicios de comunicación sin la necesidad de un terminal de usuario rico en características integral tradicional, es decir, un teléfono inteligente, teléfono móvil, tableta, etc., convencional. El servidor de emulación de terminal de usuario puede combinar de forma adaptativa las capacidades de UI disponibles de los dispositivos de usuario de E/S que están cerca de un usuario para intentar proporcionar un servicio de comunicación. El servidor de emulación de terminal de usuario puede responder dinámicamente a una solicitud de comunicación entrante dirigida a un usuario, o a una solicitud de comunicación saliente del usuario, utilizando operativamente dispositivos de usuario de E/S disponibles que están cerca de un usuario, para formar una interfaz combinada a través de la cual una aplicación de emulación de terminal de usuario ejecutada por el servidor proporciona funcionalidad de terminal de usuario para un servicio de comunicación. El enfoque basado en servidor puede proporcionar servicios de comunicación adaptables de bajo coste a los usuarios.
La asignación dinámica de capacidades de dispositivos de usuario de E/S cuando y donde los dispositivos de usuario de E/S estén cerca de un usuario, permite el uso eficiente y flexible del hardware existente, tal como televisores, teléfonos de conferencia, ordenadores portátiles, cámaras de vigilancia, electrodomésticos conectados, automóviles conectados, etc., que es capaz de proporcionar alguna funcionalidad de UI al usuario durante un servicio de comunicación. Por lo tanto, el usuario tiene una necesidad reducida o nula de llevar un terminal de usuario caro e integral, por ejemplo, un teléfono inteligente, que incluye todas las capacidades de UI necesarias, dispositivo de visualización, teclado, altavoces, etc. En su lugar, el usuario puede llevar un dispositivo de hardware que funciona para identificar al usuario, denominado "EtiquetaDeUsuario", a través de una interfaz de comunicación inalámbrica, tal como una interfaz de comunicación de campo cercano (NFC), a uno o más de los dispositivos de usuario de E/S. Varias realizaciones dadas a conocer en el presente documento pueden perturbar la industria tradicional de comunicaciones móviles centrada en el teléfono, dado que las características y capacidades de lo que forma un terminal de usuario no están restringidas al dominio de los fabricantes de teléfonos móviles. Un servidor de emulación de terminal de usuario puede funcionar para proporcionar un terminal de usuario, que también puede denominarse SoftUE o una aplicación de emulación de terminal de usuario que es ejecutada por el servidor de emulación de terminal de usuario.
La figura 1 ilustra un sistema con un servidor de emulación de terminal de usuario 100 que integra operativamente conjuntos de dispositivos de usuario de E/S 130 que están ubicados cerca de los usuarios para emular lógicamente terminales de usuario que proporcionan servicios de comunicación de acuerdo con algunas realizaciones de la presente descripción.
Haciendo referencia a la figura 1, el servidor de emulación de terminal de usuario 100 puede ser un recurso en la nube que está conectado en red con el control remoto desde los dispositivos de usuario de E/S 130, o puede estar ubicado más cerca en una red compartida con los dispositivos de usuario de E/S 130. El servidor de emulación de terminal de usuario 100 está configurado para comunicarse con los dispositivos de usuario de E/S 130 para identificar cuáles, si los hay, están ubicados cerca de un usuario para su uso en la provisión de capacidades de UI durante un servicio de comunicación.
Los usuarios pueden llevar una etiqueta de hardware, también conocida como EtiquetaDeUsuario, que es capaz de transmitir un identificador de usuario único a través de una interfaz de comunicaciones, tal como una interfaz de comunicaciones de campo cercano (por ejemplo, Bluetooth, BLE, NFC, RFID, etc., o combinaciones de las mismas), para su recepción por uno o más de los dispositivos de usuario de E/S 130 que están ubicados cerca del usuario. Un tipo de EtiquetaDeUsuario puede ser un dispositivo electrónico independiente simple que tenga una capacidad limitada para transmitir un identificador a través de una interfaz de comunicaciones de campo cercano. Otro tipo de EtiquetaDeUsuario puede ser un teléfono inteligente o reloj inteligente que tenga conectividad celular que transmita una identidad celular (por ejemplo, desde una tarjeta SIM) o una identidad de aplicación a través de una interfaz celular o una interfaz de comunicaciones de campo cercano.
El identificador de usuario puede, alternativa o adicionalmente, determinarse operativamente mediante operaciones biométricas realizadas, por ejemplo, por uno o más de los dispositivos de usuario de E/S 130. Las operaciones biométricas pueden incluir, sin limitación, una o más de reconocimiento de voz, reconocimiento de imagen/cara, reconocimiento ocular, reconocimiento de huellas dactilares o una combinación de los mismos. La identidad de usuario puede determinarse en función de credenciales proporcionadas por el usuario cuando, por ejemplo, inicia sesión en una aplicación o cuenta. La identidad de usuario puede ser proporcionada por un teléfono celular usando información de la SIM de suscripción, y la proximidad del teléfono celular a uno o más de los dispositivos de usuario de E/S 130 puede determinarse usando la capacidad de comunicaciones de campo cercano (NFC) del teléfono.
Un identificador de usuario, un identificador de EtiquetaDeUsuario y una aplicación de emulación de terminal de usuario pueden asociarse lógicamente entre sí en una base de datos durante un proceso de registro de usuario o como parte de otro proceso de configuración. Por ejemplo, durante un proceso de registro de usuario, un usuario puede obtener un identificador de inicio de sesión de cuenta (que actúa como identificador de usuario) que está registrado en la base de datos como asociado con un identificador de EtiquetaDeUsuario para un EtiquetaDeUsuario física que se ha proporcionado al usuario (por ejemplo, que la ha comprado), y como asociado con una aplicación de emulación de terminal de usuario que emula un terminal de usuario que tiene capacidades definidas (por ejemplo, un teléfono celular que proporciona servicios de comunicación celular y de tipo voz sobre IP).
Las operaciones que puede realizar el sistema para proporcionar servicios de comunicación al usuario se describen a continuación haciendo referencia también a la figura 7, que es un diagrama de flujo de las operaciones realizadas por el servidor de emulación de terminal de usuario 100. Haciendo referencia a las figuras 1 y 7, el servidor de emulación de terminal de usuario 100 mantiene 700 una base de datos 120 que identifica direcciones de red de dispositivos de usuario de E/S 130 e identifica además las capacidades de UI de los dispositivos de usuario de E/S 130, basándose en el contenido de los mensajes de registro recibidos. Las capacidades de los dispositivos de usuario de E/S 130 pueden organizarse lógicamente en la base de datos 120 en función del tipo de capacidad de UI proporcionada, por ejemplo, dispositivo de visualización, micrófono, altavoz, teclado, y pueden organizarse además en función de la calidad del servicio proporcionado por la capacidad de UI. Un dispositivo de usuario de E/S 130 puede comunicar un mensaje de registro, que contiene su dirección de red y capacidades de UI, al servidor de emulación de terminal de usuario 100 en respuesta a una operación de configuración inicial, a su conexión a una nueva red de comunicación y/o en respuesta a otro evento definido para desencadenar la generación de un mensaje de registro. Los mensajes de registro pueden incluir una ubicación geográfica del dispositivo de usuario de E/S 130, que se puede almacenar en la base de datos 120. Los dispositivos de usuario de E/S 130 pueden comunicarse con el servidor 100 a través de una red de datos (por ejemplo, internet y/o red privada) utilizando un transceptor WiFi, un transceptor Bluetooth, un transceptor celular, un transceptor de comunicación por luz (LiFi) y/u otro transceptor de comunicaciones por luz o de RF.
El servidor de emulación de terminal de usuario 100 registra 702 una dirección de red de una aplicación de emulación de terminal de usuario 110 y una identidad de un usuario con una entidad de red 150 que proporciona servicios de comunicación. La entidad de red 150 proporciona una función de servicio de comunicación 140 que puede, por ejemplo, corresponder a un servicio superior de voz sobre protocolo de internet (VoIP), servicio de Netflix, servicio de Facebook, servicio de Skype, servicio de navegador de internet, un servicio de comunicación celular, etc. La aplicación de emulación de terminal de usuario 110 es ejecutada por el servidor de emulación de terminal de usuario 100. Una aplicación de emulación de terminal de usuario 110 puede ejecutar una o más aplicaciones que normalmente ejecuta un teléfono inteligente, tal como una aplicación de Netflix, una aplicación de Facebook, una aplicación de Skype, una aplicación de navegador de internet, etc.
Tal como se ilustra en la figura 1, el servidor 100 puede alojar una instancia diferente de la aplicación de emulación de terminal de usuario 110 para cada usuario a quien se va a proporcionar servicios de comunicación (es decir, las aplicaciones de emulación de terminal de usuario ilustradas #1 -#N correspondientes a los usuarios 1 -N). La aplicación de emulación de terminal de usuario 110 puede realizar el registro del usuario con la entidad de red 150 y configurar un servicio de comunicación con un usuario en respuesta a solicitudes de comunicación de acuerdo con las operaciones de la figura 7.
Cuando la función de servicio de comunicación 140 de la entidad de red 150 es un servicio de VoIP, la operación para registrar 702 la dirección de red de la aplicación de emulación de terminal de usuario y la identidad del usuario con la entidad de red 150 puede incluir registrar la dirección de red de la aplicación de emulación de terminal de usuario 110 y la identidad del usuario con un servidor de red de un proveedor de servicios de comunicación VoIP.
Cuando la función de servicio de comunicación 140 de la entidad de red 150 es un servicio de comunicación celular, la operación para registrar 702 la dirección de red de la aplicación de emulación de terminal de usuario y la identidad del usuario con la entidad de red 150 puede incluir registrar la dirección de red de la aplicación de emulación de terminal de usuario 110 y la identidad de usuario con un servidor de abonado doméstico (HSS) u otro nodo de red de una red central manejada por un proveedor de servicios de comunicación celular.
El servidor de emulación de terminal de usuario 100 puede recibir los mensajes de registro de los dispositivos de usuario de E/S utilizando el protocolo de inicio de sesión (SIP)/protocolo de descripción de sesión (SDP), donde cada uno de los mensajes de registro identifica la dirección de red y la capacidad de UI de uno de los dispositivos de usuario de E/S. La solicitud de comunicación puede recibirse de la entidad de red 150 utilizando el SIP/SDP, y la operación para proporcionar sesiones de comunicación entre la aplicación de emulación de terminal de usuario 110 y cada uno de los dispositivos de usuario de E/S en el conjunto, y entre la aplicación de emulación de terminal de usuario la aplicación 110 y el terminal de usuario solicitante pueden realizarse utilizando el SIP/SDP.
Un mensaje de registro de un dispositivo de usuario de E/S puede incluir, por ejemplo, una dirección IP y un número de puerto, una dirección MAC, un nombre de dominio completamente cualificado (FQDN) y/u otra dirección de red, e incluir además información que identifica la capacidad de UI del dispositivo de usuario de E/S. El dispositivo de usuario de E/S puede responder al encendido comunicando el mensaje de registro al servidor de emulación de terminal de usuario 100.
El servidor de emulación de terminal de usuario 100 recibe 704 una solicitud de comunicación de la entidad de red 150 para establecer un servicio de comunicación entre el usuario y un terminal de usuario solicitante, por ejemplo, un teléfono celular, un ordenador con la aplicación Skype, etc. En respuesta a la solicitud de comunicación, el servidor de emulación de terminal de usuario 100 identifica 706 un conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S 130 identificados por la base de datos 120 que se determina que están ubicados cerca de una ubicación del usuario y se determina además, en función de las capacidades de UI identificadas por la base de datos 120 para el conjunto de dispositivos de usuario de E/S y en función del contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinables para proporcionar una interfaz de usuario de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario 110 para proporcionar el servicio de comunicación.
En base a la determinación de que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, el servidor de emulación de terminal de usuario 100 proporciona 708 sesiones de comunicación entre la aplicación de emulación de terminal de usuario 110 y los dispositivos de usuario de E/S en el conjunto, y entre la aplicación de emulación de terminal de usuario 110 y el terminal de usuario solicitante a través de la entidad de red 150. La solicitud de comunicación que recibe 704 la aplicación de emulación de terminal de usuario 110 puede contener una indicación de una capacidad de UI mínima que se debe proporcionar al usuario durante el servicio de comunicación, tal como: solo altavoz; combinación de altavoz y micrófono; solo pantalla; combinación de dispositivo de visualización, altavoz y micrófono; etc. La regla de capacidad combinada que utiliza el servidor 100 para determinar si se puede proporcionar un servicio de comunicación y mediante qué conjunto de dispositivos de usuario de E/S, puede definirse en función de la capacidad de UI mínima indicada por la solicitud de comunicación.
El servidor de emulación de terminal de usuario 100 enruta a continuación el tráfico de comunicación 710 que se recibe desde al menos uno de los dispositivos de usuario de E/S en el conjunto hacia el terminal de usuario solicitante a través de la entidad de red 150. Para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, el servidor de emulación de terminal de usuario 100 selecciona uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos 120 para el uno de los dispositivos de usuario de E/S y enruta a continuación los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S.
Tal como se explicará con más detalle a continuación, el servidor 100 también puede combinar 716 flujos de datos recibidos de los dispositivos de usuario de E/S en el conjunto y enrutar los flujos de datos combinados hacia el terminal de usuario solicitante, por ejemplo, a través de la entidad de red 150.
El servidor de emulación de terminal de usuario 100 (por ejemplo, la aplicación 110 o un controlador de dispositivo de usuario de E/S descrito a continuación) puede ser responsable de rastrear qué dispositivos de usuario de E/S están ubicados cerca de una ubicación actual del usuario. La figura 8 es un diagrama de flujo de operaciones correspondientes. El servidor 100 puede recibir 800 informes de presencia de dispositivos individuales de los dispositivos de usuario de E/S, que contienen su dirección de red y un identificador de un usuario que el dispositivo de usuario de E/S ha determinado que se encuentra próximo. Por ejemplo, un dispositivo de usuario de E/S puede leer una etiqueta de hardware, también denominada "EtiquetaDeUsuario" en el presente documento, a través de una interfaz de comunicación NFC, puede detectar información biométrica del usuario y/o puede realizar otras operaciones para detectar la presencia de un usuario y para identificar al usuario. En respuesta a los informes de presencia, el servidor 100 actualiza 802 la base de datos 120 para indicar qué identificadores de usuario se encuentran próximos a cuáles de los dispositivos de usuario de E/S.
Haciendo referencia también al sistema de ejemplo de la figura 1, la aplicación de emulación de terminal de usuario instanciada #1 ha determinado que un conjunto de dispositivos de usuario de E/S 130 está ubicado cerca de una ubicación de un primer usuario que lleva la EtiquetaDeUsuario#1, y además que tiene capacidades de UI que son combinables para satisfacer la regla de capacidad combinada para proporcionar una interfaz de usuario de E/S combinada para su uso por el primer usuario durante un servicio de comunicación solicitado. La aplicación #1 utiliza en respuesta ese conjunto de dispositivos de usuario de E/S 130 para proporcionar una interfaz de usuario de E/S combinada para su uso por el primer usuario durante un servicio de comunicación a través de la entidad de red 150 entre el primer usuario y otro terminal de usuario.
De manera similar, la aplicación de emulación de terminal de usuario instanciada #2 ha determinado que otro conjunto de dispositivos de usuario de E/S 130 está situado cerca de una ubicación de un segundo usuario que lleva la EtiquetaDeUsuario#2, y además que tiene capacidades de UI que son combinables para satisfacer la regla de capacidad combinada para proporcionar una interfaz de usuario de E/S combinada para su uso por el segundo usuario durante un servicio de comunicación solicitado. La aplicación #2 utiliza en respuesta ese conjunto de dispositivos de usuario de E/S 130 para proporcionar una interfaz de usuario de E/S combinada para su uso por el segundo usuario durante un servicio de comunicación a través de la entidad de red 150 entre el segundo usuario y otro terminal de usuario.
La figura 1 también ilustra que otro conjunto de dispositivos de usuario de E/S 130 no está ubicado cerca de la EtiquetaDeUsuario#1 o la EtiquetaDeUsuario#2.
Tal como se explicó anteriormente, la solicitud de comunicación que solicita el establecimiento de un servicio de comunicación con un usuario identificado puede ser iniciada por la entidad de red 150 utilizando la dirección de red de la aplicación de emulación de terminal de usuario y la identidad del usuario que se registraron anteriormente con la entidad de red 150. Sin embargo, la solicitud de comunicación puede adicional o alternativamente ser generada por uno de los dispositivos de usuario de E/S 130 en respuesta a un comando recibido de un usuario ubicado cerca. Por ejemplo, un usuario puede hacer funcionar una interfaz de usuario proporcionada por uno de los dispositivos de usuario de E/S 130 para iniciar una llamada de audio y video combinada, con otro usuario. El servidor de emulación de terminal de usuario 100 (por ejemplo, el IODH o la aplicación 110 para ese usuario) recibe la solicitud de comunicación junto con la identidad del usuario, que puede detectarse por medio de la EtiquetaDeUsuario. La aplicación 110 realiza las operaciones de identificación 706, suministro 708, enrutamiento 710, selección 712 y combinación 716 descritas anteriormente para la figura 7 para configurar y hacer funcionar un servicio de comunicación entre el usuario y el otro usuario a través de la entidad de red 150.
A continuación se describirán más sistemas de ejemplo y operaciones relacionadas para ilustrar mejor cómo los dispositivos de usuario de E/S que tienen diferentes capacidades de UI pueden combinarse operativamente para proporcionar una UI combinada que puede ser utilizada por el usuario para satisfacer los requisitos de comunicación de un servicio de comunicación.
Se describen operaciones ilustrativas adicionales con respecto a una realización de ejemplo en la que un dispositivo de altavoz es uno de los dispositivos de usuario de E/S 130 en el conjunto capaz de reproducir un flujo de audio recibido y un dispositivo de micrófono es uno de los dispositivos de usuario de E/S 130 en el conjunto capaz de detectar audio para emitir un flujo del micrófono. Las operaciones de la aplicación de emulación de terminal de usuario incluyen actualizar la base de datos 120 en función del contenido de mensajes de registro del dispositivo de altavoz y el dispositivo de micrófono para identificar direcciones de red del dispositivo de altavoz y el dispositivo de micrófono, y para identificar capacidades de UI del dispositivo de altavoz como que tienen una capacidad de altavoz y del dispositivo de micrófono como que tienen una capacidad de micrófono. Las capacidades de UI del altavoz pueden identificar una cantidad de altavoces dispuestos, la capacidad de volumen del sonido y/u otras características operativas. Las capacidades de UI del micrófono pueden identificar una cantidad de micrófonos dispuestos, la sensibilidad de los micrófonos y/u otras características operativas. Cada uno del dispositivo de altavoz y el dispositivo de micrófono se identifican como pertenecientes al conjunto de dispositivos de usuario de E/S que se determina que están ubicados cerca de la ubicación del usuario (por ejemplo, EtiquetaDeUsuario#1) y se determina además, en función de las capacidades de UI identificadas por la base de datos 120, que satisfacen la regla de capacidad combinada para ser combinables para proporcionar una UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario 110 para proporcionar el servicio de comunicación. En base a determinar que el dispositivo de altavoz y el dispositivo de micrófono satisfacen la regla de capacidad combinada, se realizan operaciones adicionales para enrutar un flujo del micrófono recibido desde el dispositivo de micrófono hacia el terminal de usuario solicitante (por ejemplo, a través de la entidad de red 150). Cuando se recibe un flujo de audio como tráfico de comunicación desde el terminal de usuario solicitante, las operaciones seleccionan el dispositivo de altavoz en función de hacer coincidir una característica de audio del flujo de audio con la capacidad del altavoz identificada por la base de datos para el dispositivo de altavoz, y enrutan a continuación el flujo de audio hacia la dirección de red del dispositivo de altavoz.
La realización de ejemplo puede incluir, cuando un dispositivo de visualización es uno de los dispositivos de usuario de E/S en el conjunto capaz de mostrar un flujo de video recibido, las operaciones actualizan la base de datos 120 en función del contenido de los mensajes de registro para identificar direcciones de red del dispositivo de visualización, y para identificar capacidades de UI del dispositivo de visualización como que tienen una capacidad de visualización. Las capacidades de UI de la pantalla pueden identificar el tamaño de la pantalla, la relación de aspecto, la resolución de píxeles, las velocidades de fotogramas de video soportadas, si el dispositivo de visualización soporta el soporte con usuarios compartidos a través de la configuración de pantalla dividida y/u otras características operativas. El dispositivo de visualización también se identifica como entre el conjunto de dispositivos de usuario de E/S que se determina que están ubicados cerca de la ubicación del usuario y se determina además, en función de las capacidades de UI identificadas por la base de datos 120, que satisface la regla de capacidad combinada para ser combinables para proporcionar la UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario 110 para proporcionar el servicio de comunicación. En base a determinar que el dispositivo de altavoz, el dispositivo de visualización y el dispositivo de micrófono satisfacen la regla de capacidad combinada, otras operaciones adicionales responden a la recepción de flujo de video como tráfico de comunicación del terminal de usuario solicitante seleccionando el dispositivo de visualización en función de la coincidencia de una característica de video del flujo de video con la capacidad de visualización identificada por la base de datos 120 para el dispositivo de visualización, y a continuación enrutan el flujo de video hacia la dirección de red del dispositivo de visualización.
En la realización de ejemplo, las operaciones para enrutar el flujo de audio y el flujo de video hacia las direcciones de red del dispositivo de altavoz y el dispositivo de visualización, respectivamente, pueden incluir cuando se reciben datos de audio y datos de video se reciben dentro de un mismo flujo desde el terminal de usuario solicitante a través de una primera sesión de comunicación: separar los datos de audio de los datos de video; enrutar los datos de audio hacia la dirección de red del dispositivo de altavoz a través de una segunda sesión de comunicación; y enrutar los datos de video hacia la dirección de red del dispositivo de visualización a través de la segunda sesión de comunicación o de una tercera sesión de comunicación.
La realización de ejemplo puede incluir que, cuando un dispositivo de cámara es uno de los dispositivos de usuario de E/S en el conjunto capaz de emitir un flujo de la cámara, las operaciones actualizan la base de datos 120 en función del contenido de un mensaje de registro para identificar una dirección de red del dispositivo de cámara e identificar una capacidad de UI del dispositivo de cámara como que tiene una capacidad de cámara. Las capacidades de UI de la cámara pueden identificar la cantidad de píxeles de la cámara, la calidad de la imagen, la sensibilidad a la luz y/u otras características operativas. El dispositivo de cámara se identifica además como miembro del conjunto de dispositivos de usuario de E/S que se determina que están ubicados cerca de la ubicación del usuario y se determina además, en función de la capacidad de UI identificada por la base de datos 120, que satisface la regla de capacidad combinada para ser combinable con los otros dispositivos de usuario de E/S en el conjunto para proporcionar la UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario 110 para proporcionar el servicio de comunicación. En base a determinar que el dispositivo de cámara cumple la regla de capacidad combinada, se realizan operaciones adicionales para enrutar el flujo de la cámara recibido desde el dispositivo de cámara hacia el terminal de usuario solicitante, por ejemplo, a través de la entidad de red 150.
Las operaciones para enrutar el flujo del micrófono recibido desde el dispositivo de micrófono y el flujo de la cámara recibido desde el dispositivo de cámara hacia el terminal de usuario solicitante pueden incluir: recibir el flujo del micrófono desde el dispositivo de micrófono a través de una primera sesión de comunicación; recibir el flujo de la cámara desde el dispositivo de cámara a través de la primera sesión de comunicación o de una segunda sesión de comunicación; combinar el flujo del micrófono y el flujo de la cámara en un flujo combinado; y enrutar el flujo combinado hacia el terminal de usuario solicitante a través de una tercera sesión de comunicación, por ejemplo, a través de la entidad de red 150.
La realización de ejemplo puede incluir que, cuando un dispositivo de teclado es uno de los dispositivos de usuario de E/S en el conjunto capaz de emitir datos de selección de teclas en respuesta a selecciones de teclas realizadas por un usuario entre las teclas del dispositivo de teclado, las operaciones pueden actualizar la base de datos 120 en función del contenido de un mensaje de registro para identificar una dirección de red del dispositivo de teclado y para identificar una capacidad de UI del dispositivo de teclado como que tiene una capacidad de teclado. Las capacidades del dispositivo de teclado pueden identificar la cantidad de teclas, una indicación de si el teclado es un teclado físico o un dispositivo de entrada sensible al tacto y/u otras capacidades del teclado. El dispositivo de teclado está identificado además como miembro del conjunto de dispositivos de usuario de E/S que se determina que están ubicados cerca de la ubicación del usuario y se determina además, en función de la capacidad de UI identificada por la base de datos 120, que satisface la regla de capacidad combinada para ser combinable con los otros dispositivos de usuario de E/S en el conjunto para proporcionar la UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario 110 para proporcionar el servicio de comunicación. En base a determinar que el dispositivo de teclado cumple la regla de capacidad combinada, se realizan operaciones adicionales para identificar comandos formados por los datos de selección de teclas recibidos del teclado y para realizar operaciones cuya activación se ha definido en base a la recepción de los comandos identificados.
Las operaciones para enrutar los datos de selección de teclas recibidos del dispositivo de teclado y el flujo del micrófono recibido del dispositivo de micrófono pueden incluir: recibir los datos de selección de teclas del dispositivo de teclado a través de una primera sesión de comunicación, recibir el flujo del micrófono del dispositivo de micrófono a través de la primera sesión de comunicación o de una segunda sesión de comunicación; combinar los datos de selección de teclas y el flujo del micrófono en un flujo combinado; y enrutar el flujo combinado hacia el terminal de usuario solicitante a través de una tercera sesión de comunicación, por ejemplo, a través de la entidad de red 150.
Aunque se han descrito varias operaciones en el contexto de la configuración exitosa del servicio de comunicación cuando se determina que el usuario solicitado está ubicado cerca de un conjunto de dispositivos de usuario de E/S que satisfacen la regla de capacidad combinada para el servicio de comunicación, esto no ocurrirá cuando no se determina de esa manera un conjunto suficiente de dispositivos de usuario de E/S. Las operaciones correspondientes que puede realizar la aplicación de emulación de terminal de usuario 110 cuando no se puede configurar un servicio de comunicación se explican a continuación. En este ejemplo, la aplicación de emulación de terminal de usuario 110 recibe otra solicitud de comunicación de la entidad de red 150 para establecer otro servicio de comunicación entre otro usuario y otro terminal de usuario solicitante. En respuesta a la otra solicitud de comunicación, las operaciones realizan una determinación de si otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S identificados por la base de datos 120 están ubicados cerca de una ubicación del otro usuario y disponibles para uso para el otro servicio de comunicación y se determina además, en función de las capacidades de UI identificadas por la base de datos 120 para el otro conjunto de dispositivos de usuario de E/S, que satisfacen la regla de capacidad combinada para ser combinables para proporcionar una UI de E/S combinada para el otro usuario para interactuar con otra aplicación de emulación de terminal de usuario para proporcionar el otro servicio de comunicación. En base a la determinación de que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada y está ubicado cerca de la ubicación del otro usuario, las operaciones comunican un mensaje a la entidad de red 150 que indica que el otro servicio de comunicación no se puede establecer. De esta manera, se informa a la entidad de red 150 de que solicitar un servicio de comunicación que no se puede establecer en este momento con el usuario identificado.
La figura 2 es un diagrama de bloques que ilustra el servidor de emulación de terminal de usuario 100 como un elemento de un nodo de servicio de operador 202 dentro de un sistema celular 200. Haciendo referencia a la figura 2, la función de servicio de comunicación 140 de la entidad de red 150 (figura 1) puede ser proporcionada por el nodo de servicio del operador 202 o puede ser alcanzada a través de una infraestructura externa 240, por ejemplo, internet. El servidor 100 puede, por ejemplo, implementarse en la red de acceso de radio 220 para proporcionar informática perimetral con una capacidad de respuesta más rápida o puede implementarse dentro de otro nodo del sistema celular 200. El servidor de emulación de terminal de usuario 100 puede incluir un controlador de dispositivo de usuario de E/S (IODH) 212, una función de control (CF) 214, las aplicaciones de emulación de terminal de usuario instanciadas 110 y una puerta de enlace de servicio (GW) 216. Una aplicación de emulación de terminal de usuario 110 puede ejecutar una o más aplicaciones que normalmente son ejecutadas en un teléfono inteligente, tales como una aplicación de Netflix, una aplicación de Facebook, una aplicación de Skype, una aplicación de navegador de internet, etc.
El IODH 212 puede realizar operaciones para administrar los dispositivos de usuario de E/S, tal como manejar el mantenimiento (700 en la figura 7) de la base de datos 120 y/o realizar el registro (702 en la figura 7) de las aplicaciones de emulación de terminal de usuario 110. Por ejemplo, el IODH 212 puede funcionar para registrar con un servidor de servicio de Skype la dirección IP de una aplicación de Skype, que es ejecutada por, o interconectada con la aplicación de emulación de terminal de usuario 110, y el nombre de Skype del usuario. El CF 214 puede ser responsable de asignar una dirección IP a cada aplicación de emulación de terminal de usuario 110. La dirección IP a asignar por el CF 214 puede recibirse de la funcionalidad de la red central 210, tal como una PDN-GW. El servicio GW 216 puede interconectar el servidor de emulación de terminal de usuario 100 a una red PSTN, una puerta de enlace de red de paquetes de datos de un sistema 3GPP (proyecto de asociación de tercera generación), etc. El sistema celular 200 puede incluir una red central 210 que tiene un servidor de abonado local (HSS), una función de roles de política y cobro (PCRF), una puerta de enlace (GW) y una entidad de gestión de movilidad (MME) que proporciona señalización de control relacionada con la seguridad y la movilidad del terminal móvil para el acceso de radio. El HSS contiene información relacionada con el abonado y proporciona funcionalidad de soporte para la autenticación del usuario y el acceso del usuario al sistema. La PCRF permite el control de QoS por flujo de datos y portadora de radio, al establecer reglas de QoS para cada flujo de datos, según políticas establecidas por el operador e información de abonado. La GW puede incluir una GW de servicio (S-GW) y una GW de red de paquetes de datos (PDN-GW), donde la S-GW interconecta la red central 210 con la red de acceso de radio 220 y enruta paquetes entrantes y salientes para los dispositivos de usuario de E/S 232 y/o 130 y los terminales de usuario 230. La PDN-GW interconecta la red central 210 con la infraestructura externa 240, tal como internet, y asigna direcciones IP y realiza control de políticas y facturación.
Algunos dispositivos de usuario de E/S 232 que tienen capacidad de comunicación celular pueden comunicarse a través de, por ejemplo, eNB u otros nodos de acceso de radio de una red de acceso de radio 220 con el nodo de servicio del operador 202 a través de la red central 210. En el sistema de la figura 2, el servidor de emulación de terminal de usuario 100 puede manejar la configuración de un servicio de comunicación entre un conjunto seleccionado de dispositivos de usuario de E/S que están cerca de un usuario y un terminal de usuario remoto 230 (por ejemplo, un teléfono inteligente) a través del sistema celular 200.
La figura 3 es un diagrama de bloques que ilustra el servidor de emulación de terminal de usuario 100 que comunica de una manera diferente con varios elementos de un sistema celular 200, que puede funcionar como la entidad de red 140 (figura 1), para proporcionar servicios de comunicación de acuerdo con algunas realizaciones de la presente descripción. El sistema de la figura 3 difiere del sistema de la figura 2 en que el servidor de emulación de terminal de usuario 100 es un servicio de internet dentro de la infraestructura externa 240 fuera del sistema celular 200. En el sistema de la figura 3, el CF 214 puede determinar la dirección IP a asignar a diferentes aplicaciones de emulación de terminal de usuario 110 en función de señalización del servicio de internet dentro de la infraestructura externa 240.
Las operaciones anteriores y otras se describirán a continuación con mayor detalle en el contexto de tres "casos de uso" de ejemplo diferentes: 1) escenario de llamada entrante; 2) escenario de llamada saliente; y 3) compartición del escenario de dispositivos de usuario de E/S (compartir recursos físicos y/o capacidades).
Caso de uso 1: escenario de llamada entrante
Este caso de uso implica que un usuario, con una EtiquetaDeUsuario u otra forma de ser identificado, está ubicado cerca de dispositivos de usuario de E/S 130 que tienen diferentes capacidades de UI cuando el servidor de emulación de terminal de usuario recibe una llamada entrante. Aunque las operaciones se explican a continuación en el contexto de la identificación de un usuario a través de una EtiquetaDeUsuario física que lleva el usuario, estas operaciones no se limitan a ellas y pueden usarse con cualquier otra forma de identificar a un usuario, tal como detectando información biométrica que identifica al usuario.
Una aplicación de emulación de terminal de usuario 110 puede instanciarse o activarse de otro modo en respuesta a una llamada entrante (servicio, sesión) dirigida a la EtiquetaDeUsuario. La aplicación de emulación de terminal de usuario 110 puede identificar suscripciones asociadas con la EtiquetaDeUsuario (es decir, el usuario físico) y métodos de comunicación preferidos (por ejemplo, audio y no video, audio y video, etc.) que han sido especificados por el usuario, y determina las capacidades de UI de los dispositivos de usuario de E/S que se necesitarán para satisfacer las capacidades de UI que pueden especificarse para la sesión de comunicación entrante. La aplicación de emulación de terminal de usuario 110 puede solicitar al IODH que identifique qué dispositivos de usuario de E/S 130 están ubicados cerca de la EtiquetaDeUsuario, y además puede solicitar al IODH que determine, o puede determinar por sí mismo si los dispositivos de usuario de E/S 130 identificados son combinables para satisfacer las capacidades de UI especificadas por la sesión de comunicación entrante. La aplicación de emulación de terminal de usuario 110 y/o el IODH pueden recibir un ACK o NACK de vuelta sobre si se puede usar un conjunto suficiente de dispositivos de usuario de E/S 130 para proporcionar el servicio de comunicación. Si ACK, entonces el IODH también establece el estado de los dispositivos de usuario de E/S 130 en el conjunto en uso para evitar que otra aplicación de emulación de terminal de usuario 110 intente utilizar los mismos dispositivos de usuario de E/S 130 que están actualmente en uso. En el caso de NACK, la aplicación de emulación de terminal de usuario 110 y/o el IODH pueden adoptar diferentes acciones para configurar un servicio de comunicación de capacidad de UI reducida con el usuario dependiendo de la configuración del usuario, por ejemplo, solo permitir comunicaciones basadas en sonido en lugar de una combinación de sonido y video en función de si no hay ningún dispositivo de visualización disponible para su uso. Un ejemplo de dispositivo de visualización que no está disponible puede ocurrir cuando el único dispositivo de visualización que está ubicado cerca del usuario está siendo utilizado por otro usuario para recibir información de otra aplicación de emulación de terminal de usuario durante un servicio de comunicación en curso o cuando no hay ningún dispositivo de visualización situado cerca del usuario.
La figura 4 es un diagrama de flujo combinado de operaciones y flujos de datos relacionados entre EtiquetasDeUsuario, dispositivos de usuario de E/S y el servidor de emulación de terminal de usuario de acuerdo con algunas realizaciones de la presente descripción. Haciendo referencia a la figura 4, una EtiquetaDeUsuario entra en una habitación y señaliza 400 su presencia a cualquier dispositivo de usuario capaz de E/S y ubicado cerca en la habitación, usando una señal de baliza de descubrimiento. Alternativamente, uno o más de los dispositivos de usuario de E/S determina la presencia de la EtiquetaDeUsuario mediante sondeo 402, tal como transmitiendo periódicamente señales de baliza de detección que activan la señalización de respuesta por parte de la EtiquetaDeUsuario. Los dispositivos de usuario de E/S que reciben la presencia indicada por señalización de la EtiquetaDeUsuario 404 notifican al IODH en el servidor de emulación de terminal de usuario junto con una dirección de red del dispositivo de usuario de E/S (por ejemplo, dirección IP, número de puerto, dirección MAC, FQDN, etc.). La aplicación de emulación de terminal de usuario correspondiente al usuario específico (es decir, la EtiquetaDeUsuario) se actualiza 406 con respecto a la presencia del usuario detectado. El IODH puede funcionar para recibir las notificaciones de los dispositivos de usuario de E/S ubicados cerca de la EtiquetaDeUsuario. Otras comunicaciones 410 de descubrimiento de capacidad de UI (sincronización) se realizan entre el servidor de emulación de terminal de usuario y los dispositivos de usuario de E/S. Los dispositivos de usuario de E/S están asociados al usuario en la base de datos, junto con suscripciones de indicaciones asociadas, capacidades de UI combinables proporcionadas por el conjunto de dispositivos de usuario de E/S que están ubicados cerca de la EtiquetaDeUsuario. Uno o más de los dispositivos de usuario de E/S se pueden seleccionar para la ACK/NACK de recepción de llamada por defecto. Mediante la operación 412, ahora se sabe que el usuario a través de la EtiquetaDeUsuario es accesible dentro del sistema a través de un conjunto identificado de dispositivos de usuario de E/S con capacidades de UI identificadas (por ejemplo, altavoces sí/no, pantalla sí/no, micrófono sí/no, teclado sí/no, etc.), creando así un terminal de usuario virtualizado lógico a través del cual se puede proporcionar al usuario un servicio de comunicación. El usuario puede iniciar un servicio de comunicación a través de una pantalla táctil, un comando de voz detectado por un micrófono, realizando un gesto definido observable por una cámara y/u mediante otra entrada proporcionada a uno de los dispositivos de usuario de E/S ubicados cerca.
En la operación 414, una sesión entrante (por ejemplo, una videollamada) desde un terminal de usuario solicitante que se dirige al usuario (EtiquetaDeUsuario) llega al servidor de emulación de terminal de usuario para el usuario que lleva la EtiquetaDeUsuario. En la operación 416, las capacidades de UI combinables de los dispositivos de usuario de E/S disponibles se comparan con los requisitos de UI de la sesión entrante. Cuando los requisitos de UI de la sesión entrante no se satisfacen con las capacidades de UI combinables de los dispositivos de usuario de E/S, el servidor de emulación de terminal de usuario puede renegociar 416 las capacidades de UI requeridas (por ejemplo, QoS) de la sesión entrante. Por el contrario, cuando los requisitos de UI de la sesión entrante se satisfacen con las capacidades de UI combinables de los dispositivos de usuario de E/S, el servidor de emulación de terminal de usuario solicita, a través de uno o más de los dispositivos de usuario de E/S disponibles (.por ejemplo dispositivo de respuesta preseleccionado) al usuario que lleva la EtiquetaDeUsuario que proporcione una respuesta a la solicitud de sesión (ACK/NACK). El usuario responde a través del dispositivo de respuesta preseleccionado 420 para aceptar (ACK) o rechazar (NACK) la sesión entrante, para proporcionar señalización 422 al servidor de emulación de terminal de usuario. Cuando se recibe un ACK, las operaciones 424 enrutan un flujo de audio desde el terminal de usuario solicitante a uno de los dispositivos de usuario de E/S en el conjunto que tiene capacidad de altavoz a través de una o más sesiones 426, y enruta un flujo de video desde el terminal de usuario solicitante a otro de los dispositivos de usuario de E/S en el conjunto que tiene una capacidad de visualización a través de una o más sesiones 426. Un flujo de datos que se recibe desde uno de los dispositivos de usuario de E/S en el conjunto a través de una o más sesiones 429 se enruta 430 hacia el terminal de usuario solicitante. Cuando se reciben dos o más flujos de datos a través de una o más sesiones 429 desde los dispositivos de usuario de E/S, estos se pueden combinar en un flujo de datos combinado que se enruta 424 al terminal de usuario solicitante.
El servidor de emulación de terminal de usuario puede realizar operaciones 428 para monitorizar continuamente la presencia de los dispositivos de usuario de E/S para determinar cuándo uno o más de los dispositivos de usuario de E/S ya no están ubicados cerca del usuario, de modo que ya no se pueden incluir como parte de la UI combinada proporcionada durante la sesión de comunicación en curso. El servidor de emulación de terminal de usuario puede sustituir la capacidad de UI de otro dispositivo de usuario de E/S por el conjunto que utiliza el usuario para la sesión de comunicación en curso en respuesta a que un miembro anterior del conjunto ya no tiene la presencia requerida.
Caso de uso 2, llamada saliente
Este caso de uso implica que un usuario, con una EtiquetaDeUsuario, que está ubicado cerca de los dispositivos de usuario de E/S 130 con diferentes capacidades de UI cuando el servidor de emulación de terminal de usuario recibe una llamada saliente (sesión de comunicación). Los dispositivos de usuario de E/S 130 están asociados al usuario identificado a través del servidor de emulación de terminal de usuario 100 que maneja todas las sesiones de comunicaciones para el usuario mientras que los dispositivos de usuario de E/S 130 asociados son administrados por un IODH.
Una aplicación de emulación de terminal de usuario 110 puede ser instanciada o activada de otro modo en respuesta a que una llamada saliente es solicitada por un usuario que lleva la EtiquetaDeUsuario. El usuario puede iniciar una llamada saliente a través de una pantalla táctil, un comando de voz detectado por un micrófono, realizar un gesto definido observable por una cámara u otra entrada proporcionada a uno de los dispositivos de usuario de E/S ubicados cerca.
La aplicación de emulación de terminal de usuario 110 puede identificar suscripciones asociadas con la EtiquetaDeUsuario (es decir, el usuario físico) y métodos de comunicación preferidos (por ejemplo, audio y no video, audio y video, etc.) que han sido especificados por el usuario, y determina las capacidades de UI de los dispositivos de usuario de E/S que se necesitarán para satisfacer las capacidades de UI que pueden especificarse para la llamada saliente. La aplicación de emulación de terminal de usuario 110 puede solicitar al IODH que identifique qué dispositivos de usuario de E/S 130 están ubicados cerca de la EtiquetaDeUsuario, y además puede solicitar al IODH que determine o puede determinar por sí mismo si los dispositivos de usuario de E/S 130 identificados son combinables para satisfacer las capacidades de UI especificadas por la llamada saliente. La aplicación de emulación de terminal de usuario 110 y/o el IODH pueden recibir un ACK o NACK de vuelta sobre si se puede usar un conjunto suficiente de dispositivos de usuario de E/S 130 para proporcionar el servicio de comunicación. Si ACK, entonces el IODH también establece el estado de los dispositivos de usuario de E/S 130 en el conjunto en uso para evitar que otra aplicación de emulación de terminal de usuario 110 intente utilizar los mismos dispositivos de usuario de E/S 130 que están actualmente en uso. En el caso de NACK, la aplicación de emulación de terminal de usuario 110 y/o el IODH pueden adoptar diferentes acciones para configurar un servicio de comunicación de capacidad de UI reducida con el usuario dependiendo de la configuración del usuario, .por ejemplo permitir solo sonido en lugar de la respuesta preferida de sonido y video preferidos cuando no hay un dispositivo de visualización disponible actualmente para utilizar (por ejemplo, cuando es utilizado actualmente por otra aplicación de emulación de terminal de usuario 110 o cuando ninguno está ubicado cerca de la EtiquetaDeUsuario).
La figura 5 es un diagrama de flujo combinado de operaciones para una llamada saliente y flujos de datos relacionados entre EtiquetasDeUsuario, dispositivos de usuario de E/S y el servidor de emulación de terminal de usuario de acuerdo con algunas realizaciones de la presente descripción. Haciendo referencia a la figura 5, una EtiquetaDeUsuario entra en una habitación y señaliza 500 su presencia a cualquier dispositivo de usuario en la habitación, capaz de E/S y ubicado cerca, usando una señal de baliza de descubrimiento. Alternativamente, uno o más de los dispositivos de usuario de E/S determina la presencia de la EtiquetaDeUsuario mediante sondeo 502, por ejemplo, transmitiendo periódicamente señales de baliza de detección que activan la señalización de respuesta por parte de la EtiquetaDeUsuario. Los dispositivos de usuario de E/S que reciben la presencia indicada por señalización de la EtiquetaDeUsuario 504 notifican al IODH en el servidor de emulación de terminal de usuario junto con una dirección de red del dispositivo de usuario de E/S (por ejemplo, dirección IP, número de puerto, dirección MAC, FQDN, etc.). La aplicación de emulación de terminal de usuario correspondiente al usuario específico (es decir, la EtiquetaDeUsuario) se actualiza 506 con respecto a la presencia del usuario detectado.
El IODH puede funcionar para recibir las notificaciones de los dispositivos de usuario de E/S ubicados cerca de la EtiquetaDeUsuario. Se realizan comunicaciones adicionales 510 de descubrimiento de capacidad de UI (sincronización) entre el servidor de emulación de terminal de usuario y los dispositivos de usuario de E/S. Los dispositivos de usuario de E/S están asociados al usuario en la base de datos, junto con las suscripciones de indicaciones asociadas, capacidades de UI combinables proporcionadas por el conjunto de dispositivos de usuario de E/S que están ubicados cerca de la EtiquetaDeUsuario. Uno o más de los dispositivos de usuario de E/S se pueden seleccionar para ACK/NACK de recepción de llamada por defecto. Mediante la operación 512, ahora se sabe que el usuario a través de la EtiquetaDeUsuario es accesible dentro del sistema a través de un conjunto identificado de dispositivos de usuario de E/S con capacidades de UI identificadas (por ejemplo, altavoces sí/no, pantalla sí/no, micrófono sí/no, teclado sí/no, etc.), creando así un terminal de usuario virtualizado lógico a través del cual se puede proporcionar al usuario un servicio de comunicación. El usuario puede iniciar un servicio de comunicación a través de una pantalla táctil, un comando de voz detectado por un micrófono, realizando un gesto definido observable por una cámara y/u otra entrada proporcionada a uno de los dispositivos de usuario de E/S ubicados cerca.
En la operación 514, un usuario que lleva la EtiquetaDeUsuario utiliza la UI de uno de los dispositivos de usuario de E/S para activar 514 una llamada saliente (por ejemplo, una videollamada), que activa la señalización 516 de la llamada saliente al servidor de emulación de terminal de usuario. En la operación 518, el IODH consulta al usuario (por ejemplo, muestra un mensaje, genera un sonido, etc.) a través de uno de los dispositivos de usuario de E/S ubicados cerca del usuario para solicitar al usuario que seleccione entre los tipos de métodos de comunicación disponibles que pueden ser utilizados actualmente para la llamada saliente. Uno de los dispositivos de usuario de E/S proporciona una señalización de respuesta 520 al IODH que indica el tipo de método de comunicación seleccionado por el usuario para la llamada saliente. En la operación 522, el servidor de emulación de terminal de usuario comunica una solicitud de flujo de sesión saliente a la entidad de red 150, donde la solicitud puede incluir un identificador del usuario que llama, un identificador del terminal de usuario del usuario llamado y una calidad de servicio para la sesión de comunicación. En la operación 522, el servidor de emulación de terminal de usuario recibe una aceptación (ACK) o denegación (NACK) de sesión de comunicación de la entidad de red 150. Cuando se deniega la sesión de comunicación, el servidor de emulación de terminal de usuario puede intentar renegociar 524 la sesión de comunicación solicitada tal como a una calidad de servicio inferior.
Cuando se acepta la sesión de comunicación (ACK), para cada tipo de datos que se recibe 528 como tráfico de comunicación desde el terminal de usuario solicitante, el servidor de emulación de terminal de usuario selecciona uno de los dispositivos de usuario de E/S entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos para el uno de los dispositivos de usuario de E/S, y enruta a continuación 530 los datos del tipo de datos hacia la dirección de red del seleccionado de los dispositivos de usuario de E/S. Los datos que se originan en los dispositivos de usuario de E/S transmiten el flujo de datos 532 a través de una o más sesiones 536 al servidor de emulación de terminal de usuario, que puede combinar 538 los flujos de datos en un flujo de datos combinado que se enruta 540 hacia los terminales de usuario llamados, a través de la entidad de red 150.
El servidor de emulación de terminal de usuario puede monitorizar continuamente 534 la presencia de los dispositivos de usuario de E/S para determinar cuándo uno o más de los dispositivos de usuario de E/S ya no están ubicados cerca del usuario, de modo que ya no se pueden incluir como parte de la combinación UI a proporcionar durante la sesión de comunicación en curso. El servidor de emulación de terminal de usuario puede sustituir la capacidad de UI de otro dispositivo de usuario de E/S por el conjunto que utiliza el usuario para la sesión de comunicación en curso en respuesta que a un miembro anterior del conjunto que ya no tiene la presencia requerida.
Caso de uso 3, compartición de dispositivos de usuario de E/S (recursos físicos, capacidades de UI)
El tercer caso de uso está dirigido a un escenario donde dos o más usuarios están ubicados en un área física que tiene una cantidad de dispositivos de usuario de E/S con capacidades de UI combinadas que son insuficientes para satisfacer los requisitos de UI necesarios para soportar sesiones de comunicación superpuestas en el tiempo sin compartir de algunos de los dispositivos de usuario de E/S por parte de los dos usuarios. En este caso, las entidades de ID de ambos usuarios, es decir, las EtiquetasDeUsuario, se detectarán en la proximidad de algunos dispositivos de usuario de E/S que el IODH asocia a continuación a las respectivas aplicaciones de emulación de terminal de usuario 110 de los usuarios.
En la ilustración de la figura 6, la aplicación de emulación de terminal de usuario #1 ya está manejando una sesión de comunicación en curso en la que algunos de los dispositivos de usuario de E/S asociados están asignados a, y en uso por un primer usuario correspondiente a EtiquetaDeUsuario#1; esto significa que el ejemplo comienza después del bloque 430 en la figura 4. En ese momento, otro segundo usuario que lleva EtiquetaDeUsuario#2 entra al área física.
En el bloque 610, la EtiquetaDeUsuario#2 pasa a estar situada cerca de al menos uno de los dispositivos de usuario de E/S que actualmente utiliza la aplicación de emulación de terminal de usuario .#1. El al menos uno de los dispositivos de usuario de E/S detecta la EtiquetaDeUsuario#2. La aplicación de emulación de terminal de usuario #2 es instanciada consiguientemente en el servidor de emulación de terminal de usuario 100 por el IODH.
En el bloque 612, se recibe una solicitud de una nueva sesión de comunicación que está destinada a la aplicación de emulación de terminal de usuario #2. En el bloque 614, el IODH considera que se han instanciado las prioridades entre las aplicaciones de inmolación del terminal de usuario. El IODH compara las suscripciones de las sesiones de la aplicación de emulación de terminal de usuario #1 hospedadas actualmente (en curso) con las de la nueva solicitud entrante para una sesión de comunicación hacia la aplicación de emulación de terminal de usuario #2.
Si no se identifica una priorización, las aplicaciones de emulación de terminal de usuario se tratan por igual para que los dispositivos de usuario de E/S disponibles con sus capacidades de UI se asignen por orden de llegada. Por el contrario, si se identifica una priorización, el IODH opera para: asignar una prioridad a ciertos dispositivos de usuario de E/S para la aplicación de emulación de terminal de usuario que tiene la prioridad más alta de acuerdo con las reglas de priorización de QoS/capacidad definidas; con ciertas capacidades de UI presentes en ciertos tipos de dispositivos de usuario de E/S, algunas capacidades de UI se comparten operativamente entre el primer y el segundo usuarios (por ejemplo, una pantalla suficientemente grande se puede dividir por la mitad con las mitades asignadas respectivamente al primer y el segundo usuarios).
En el escenario actual, las aplicaciones de emulación de terminal de usuario #1 y #2 se tratan por igual sin priorización, lo que aplica a todas las operaciones dentro del bloque de referencia 611.
En el bloque 616, el IODH evalúa la solicitud de capacidades del segundo usuario y la aplicación de emulación de terminal de usuario #2 (considerando las prioridades establecidas en el paso anterior, si las hay). Si la solicitud entrante no está soportada (por ejemplo, no hay dispositivos de usuario de E/S disponibles o son insuficientes, determinados (por medio de la consulta 617 a los dispositivos de usuario de E/S) para satisfacer las capacidades de UI requeridas) por la aplicación de emulación de terminal de usuario #2, independientemente de cualesquiera prioridades, el IODH puede funcionar para negociar capacidades de UI/QoS con la entidad de red que envió la solicitud de sesión para el segundo usuario. Por el contrario, si la solicitud entrante está soportada por las capacidades de UI proporcionadas por la aplicación de emulación de dispositivo de usuario #2 para la sesión de comunicación solicitada, según determina la aplicación de emulación de terminal de usuario #2 que consulta 618 los dispositivos de usuario de E/S disponibles, entonces un ACK se comunica a la entidad de red 150.
Si la solicitud de comunicación entrante puede ser soportada por la aplicación de emulación de terminal de usuario #2 cuando se le otorga cierta prioridad para el uso de uno o más de los dispositivos de usuario de E/S que actualmente utiliza la aplicación de emulación de terminal de usuario #.1, las operaciones del bloque 619 se puede realizar para anticipar o provocar el uso compartido de uno o más de los dispositivos de usuario de E/S que están siendo utilizados actualmente por la aplicación de emulación de terminal de usuario #1. El IODH y/o la aplicación de emulación de terminal de usuario #1 pueden entonces renegociar 622 con la entidad de red 150 las capacidades de UI requeridas de la sesión de comunicación de la aplicación de emulación de terminal de usuario #1 para el primer usuario. La aplicación de emulación de terminal de usuario #.1 puede recibir una sesión ACK/NACK generada 620 por uno o más de los dispositivos de usuario de E/S anticipados o compartidos, con la aplicación de emulación de terminal de usuario #2 que indica qué capacidades de UI están disponibles para utilizar por la aplicación de emulación de terminal de usuario #.1, y puede finalizar en respuesta la sesión de comunicación existente si la capacidad de UI requerida proporcionada por los dispositivos de usuario de E/S ya no es suficiente para ser utilizada por la aplicación de emulación de terminal de usuario #.1 para la sesión de comunicación.
En el bloque 624, la aplicación de emulación de terminal de usuario #2 consulta al segundo usuario a través de uno preseleccionado de los dispositivos de usuario de E/S si se acepta la sesión de comunicación solicitada. El preseleccionado de los dispositivos de usuario de E/S puede mostrar 626 un aviso solicitando al segundo usuario por una respuesta, que se proporciona 628 como un ACK/NACK a la aplicación de emulación de terminal de usuario #2. Cuando el segundo usuario acepta la sesión de comunicación (ACK), se establece un servicio de comunicación entre el segundo usuario y un terminal de usuario remoto a través de la aplicación de emulación de terminal de usuario #2 y de la entidad de red 150.
Un monitor de presencia de dispositivo de usuario de E/S puede funcionar como una función del IODH para monitorizar (continuamente, periódicamente o en respuesta a la ocurrencia de un evento definido) una sesión de comunicación en curso para garantizar que todas las capacidades de UI proporcionadas por el conjunto de dispositivos de usuario de E/S permanecen situadas cerca y están disponibles operativamente para el usuario.
El intercambio de mensajes entre las diferentes entidades del sistema se puede realizar utilizando el protocolo de inicio de sesión (SIP) con el protocolo de descripción de sesión (SDP) con posibles cambios menores con respecto a los métodos soportados actualmente en los protocolos y formatos de medios. El uso de SIP/SDP puede ser ventajoso dado que las conexiones entre los dispositivos de usuario de E/S y las aplicaciones de emulación de terminal de usuario pueden ser una sesión SIP que puede configurarse de manera similar a como se hace entre dos clientes de VoIP.
Más generalmente, las operaciones realizadas por el servidor de emulación de terminal de usuario pueden incluir recibir otra solicitud de comunicación de la entidad de red para establecer otro servicio de comunicación entre otro usuario y otro terminal de usuario solicitante. En respuesta a la otra solicitud de comunicación, las operaciones determinan si se determina que otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S identificados por la base de datos están ubicados cerca de una ubicación del otro usuario y disponibles para su uso por el otro servicio de comunicación y se determina además, en función de las capacidades de UI identificadas por la base de datos para el otro conjunto de dispositivos de usuario de E/S, que satisfacen la regla de capacidad combinada para ser combinables para proporcionar una UI de E/S combinada para que el otro usuario interactúe con otra aplicación de emulación de terminal de usuario para proporcionar el otro servicio de comunicación. En base a determinar que ningún otro conjunto de dispositivos de usuario de E/S satisfaga la regla de capacidad combinada, esté disponible para su uso por otro servicio de comunicación y ubicado cerca de la ubicación del otro usuario, las operaciones configuran en respuesta uno de los dispositivos de usuario de E/S en el conjunto de dispositivos de usuario de E/S que se encuentra cerca de otro usuario pero que actualmente está siendo utilizado por el usuario, para que funcione para proporcionar una UI compartida que es utilizada por el usuario mientras el servicio de comunicación continúa ser proporcionado al usuario y que es utilizado por el otro usuario mientras el otro servicio de comunicación se proporciona al otro usuario. En un ejemplo, la información que se dirige al usuario se puede enrutar para su visualización en la mitad de la pantalla del dispositivo de visualización, y la información que se dirige al otro usuario se puede enrutar para su visualización en la otra mitad de la pantalla del dispositivo de visualización. En otro ejemplo, un teclado puede ser compartido por dos usuarios que se identifican a través del teclado (por ejemplo, escribiendo una ID de usuario, escaneando la EtiquetaDeUsuario, escaneo biométrico, etc.) en el momento en que introducen información, para que el servidor pueda enrutar selectivamente las entradas del teclado a la correcta de las dos aplicaciones de emulación de terminal de usuario.
Caso de uso 4, gestión de movilidad
En este contexto, los dispositivos de usuario de E/S y/o una EtiquetaDeUsuario pueden moverse de tal manera que, con el tiempo, cambie el conjunto de dispositivos de usuario de E/S que están ubicados cerca de la EtiquetaDeUsuario. Además, dichos cambios pueden ser causados porque uno o más de los dispositivos de usuario de E/S dejen de estar operativos (por ejemplo, pérdida de potencia) o cuando la interfaz aérea de radio entre estos se obstruye o está sujeta a una interferencia de radio excesiva. El IODH se puede configurar para determinar dinámicamente cuál de los dispositivos de usuario de E/S permanece disponible para su asociación con la EtiquetaDeUsuario.
En una realización, los aspectos de movilidad son monitorizados por el monitor de presencia de dispositivo de usuario de E/S (IODPM) ubicado en el IODH, tal como se ilustra en el bloque 428 en la figura 4 y el bloque 534 en la figura 5. Cuando el IODPM descubre que una aplicación de emulación de terminal de usuario actual (es decir, implícitamente alguno de los dispositivos de usuario de E/S que esta utiliza) ya no tiene acceso a una capacidad de UI suficiente a través del conjunto de dispositivos de usuario de E/S, por ejemplo, lo que puede resultar en la violación de un contrato de QoS para la sesión de comunicación actual, el IODPM puede desencadenar la renegociación de los requisitos de capacidad de UI para la sesión de comunicación a través de la entidad de red 150 y posiblemente con el terminal de usuario remoto.
Implementación en la nube
Algunas o todas las operaciones descritas anteriormente como realizadas por el servidor de emulación de terminal de usuario 100 o los dispositivos de usuario de E/S 130 pueden ser realizadas alternativamente por el otro y/o por otro nodo que sea parte de un recurso informático en la nube. Por ejemplo, esas operaciones se pueden realizar como una función de red que está cerca del borde, tal como en un servidor en la nube o un recurso en la nube de un operador de red de telecomunicaciones, por ejemplo, en una CloudRAN o una red central, y/o pueden ser realizadas por un servidor en la nube o un recurso en la nube de un proveedor de medios, por ejemplo, un proveedor de servicios de iTunes o un proveedor de servicios de Spotify.
Ejemplo de dispositivo de usuario de E/S y servidor de emulación de terminal de usuario
La figura 9 es un diagrama de bloques de componentes de un dispositivo de usuario de E/S 130 que están configurados para funcionar de acuerdo con algunas realizaciones. El dispositivo de usuario de E/S 130 puede incluir un circuito de interfaz de red alámbrica/inalámbrica 902, un circuito de comunicación de campo cercano 920, al menos un circuito procesador 900 (procesador) y al menos un circuito de memoria 910 (memoria). El procesador 900 está conectado para comunicarse con los otros componentes. La memoria 910 almacena código de programa 912 que ejecuta el procesador 900 para realizar las operaciones dadas a conocer en este documento. El procesador 900 puede incluir uno o más circuitos de procesamiento de datos (por ejemplo, microprocesador y/o procesador de señales digitales), que pueden estar situados conjuntamente o distribuidos a través de una o más redes de datos. El procesador 900 está configurado para ejecutar el código de programa 912 en la memoria 910, en particular la aplicación de emulación de terminal de usuario 912, descrito a continuación como un medio legible por ordenador, para realizar algunas o todas las operaciones y métodos para una o más de las realizaciones dadas a conocer en el presente documento para un dispositivo electrónico móvil. El dispositivo de usuario de E/S 130 puede incluir uno o más dispositivos de UI, incluidos, entre otros, un micrófono 940, un altavoz 950, una cámara 930, un dispositivo de visualización 960 y una interfaz de entrada de usuario 970.
La figura 10 es un diagrama de bloques de componentes de un servidor de emulación de terminal de usuario 100 que están configurados para funcionar de acuerdo con algunas realizaciones. El servidor de emulación de terminal de usuario 100 puede incluir un circuito de interfaz de red alámbrica/inalámbrica 1020, una base de datos 120 (por ejemplo, lista de dispositivos de usuario de E/S, capacidades de UI de los dispositivos de usuario de E/S, proximidades conocidas a identificadores de usuario, etc.), un dispositivo de visualización 1030, una interfaz de entrada de usuario 1040 (por ejemplo, teclado o pantalla sensible al tacto), al menos un circuito procesador 1000 (procesador) y al menos un circuito de memoria 1010 (memoria). El procesador 1000 está conectado para comunicarse con los otros componentes. La memoria 1010 almacena la aplicación de emulación de terminal de usuario 1012 que ejecuta el procesador 1000 para realizar las operaciones dadas a conocer en este documento. El procesador 1000 puede incluir uno o más circuitos de procesamiento de datos (por ejemplo, microprocesador y/o procesador de señal digital), que pueden estar situados conjuntamente o distribuidos a través de una o más redes de datos. El procesador 1000 está configurado para ejecutar instrucciones de programa informático en la memoria 1010, descritas a continuación como un medio legible por ordenador, para realizar algunas o todas las operaciones y métodos para una o más de las realizaciones dadas a conocer en el presente documento para un dispositivo electrónico móvil.
Otras definiciones
En la descripción anterior de varias realizaciones de los presentes conceptos inventivos, debe entenderse que la terminología utilizada en el presente documento tiene el propósito de describir realizaciones particulares únicamente y no pretende ser una limitación de los presentes conceptos inventivos. Salvo se defina de otro modo, todos los términos (incluidos los términos técnicos y científicos) utilizados en el presente documento tienen el mismo significado que comúnmente entiende un experto en la técnica a la que pertenecen los presentes conceptos inventivos. Se entenderá además que los términos, como los definidos en los diccionarios de uso común, deben interpretarse con un significado que sea consistente con su significado en el contexto de esta memoria y la técnica relevante y no se interpretará que se definen expresamente en la presente memoria en un sentido idealizado o demasiado formal.
Cuando se hace referencia a un elemento como "conectado", "acoplado", "sensible a" o variantes de los mismos, a otro elemento, este puede estar directamente conectado, acoplado o ser sensible al otro elemento o pueden estar presentes elementos intermedios. Por el contrario, cuando se hace referencia a un elemento como "directamente conectado", "directamente acoplado", "directamente sensible a" o variantes de los mismos, a otro elemento, no hay presentes elementos intermedios. Los números similares se refieren a elementos similares en todo el documento. Además, "acoplado", "conectado", "sensible a" o variantes de los mismos, tal como se usan en el presente documento, pueden incluir acoplado, conectado o sensible a, de forma inalámbrica. Tal como se usa en el presente documento, las formas singulares "un", "una", "el" y “la” también incluyen las formas plurales, salvo que el contexto indique claramente lo contrario. Es posible que funciones o construcciones conocidas no se describan en detalle por razones de brevedad y/o claridad. El término "y/o" incluye cualquiera y todas las combinaciones de uno o más de los elementos enumerados asociados.
Las realizaciones de ejemplo se describen en el presente documento haciendo referencia a diagramas de bloques y/o ilustraciones de diagramas de flujo de métodos, aparatos (sistemas y/o dispositivos) y/o productos de programa informático, implementados por ordenador. Se entiende que un bloque de los diagramas de bloques y/o las ilustraciones de diagramas de flujo, y las combinaciones de bloques en los diagramas de bloques y/o las ilustraciones de diagramas de flujo, pueden implementarse mediante instrucciones de programa informático que son ejecutadas por uno o más circuitos informáticos. Estas instrucciones de programa informático pueden proporcionarse a un circuito procesador de un circuito informático de propósito general, un circuito informático de propósito especial y/u otro circuito de procesamiento de datos programable para producir una máquina, de modo que las instrucciones, que se ejecutan a través del procesador del ordenador y/o de otros aparatos de procesamiento de datos programables, transforman y controlan transistores, valores almacenados en ubicaciones de memoria y otros componentes de hardware dentro de dichos circuitos para implementar las funciones/acciones especificadas en los diagramas de bloques y/o en el bloque o bloques del diagrama de flujo y, por lo tanto, crean medios ( funcionalidad) y/o estructura para implementar las funciones/acciones especificadas en los diagramas de bloques y/o en el bloque o bloques del diagrama de flujo.
Estas instrucciones de programa informático también pueden almacenarse en un medio tangible legible por ordenador que puede dirigir un ordenador u otro aparato de procesamiento de datos programable para que funcione de una manera particular, de modo que las instrucciones almacenadas en el medio legible por ordenador produzcan un artículo de fabricación que incluye instrucciones que implementan las funciones/acciones especificadas en los diagramas de bloques y/o el bloque o bloques del diagrama de flujo. En consecuencia, las realizaciones de los conceptos inventivos presentes pueden realizarse en hardware y/o software (incluyendo software inalterable, software residente, microcódigo, etc.) que se ejecuta en un procesador, tal como un procesador de señal digital, que en conjunto puede denominarse como "circuitos", "un módulo" o variantes de los mismos.

Claims (22)

REIVINDICACIONES
1. Un servidor de emulación de terminal de usuario (100) para proporcionar servicios de comunicación utilizando conjuntos de dispositivos de usuario de entrada y/o salida, E/S, (130), estando adaptado el servidor de emulación de terminal de usuario (100) para realizar operaciones que comprenden:
mantener (700) una base de datos (120) que identifica direcciones de red de dispositivos de usuario de E/S (130) e identifica además capacidades de interfaz de usuario, UI, de los dispositivos de usuario de E/S (130), en función del contenido de los mensajes de registro recibidos;
registrar (702) una dirección de red de una aplicación de emulación de terminal de usuario (110) y un identificador de usuario único con una entidad de red (150) que proporciona servicios de comunicación (140), identificador de usuario único que es transmitido por un dispositivo electrónico (EtiquetaDeUsuario#1) portado por un usuario y recibido por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, o determinado por operaciones biométricas realizadas por uno o más de los dispositivos de usuario de E/S (130) que están situados cerca del usuario, siendo ejecutada la aplicación de emulación de terminal de usuario (110) por el servidor de emulación de terminal de usuario (100);
recibir (704) una solicitud de comunicación de la entidad de red (150) para establecer un servicio de comunicación entre el usuario (EtiquetaDeUsuario#1) y un terminal de usuario solicitante; y
en respuesta a la solicitud de comunicación, llevar a cabo:
identificar (706) un conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) que se determina que están ubicados cerca de una ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en base a las capacidades de UI identificadas por la base de datos (120) para el conjunto de dispositivos de usuario de E/S (130) y en base al contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinable para proporcionar una interfaz de usuario de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (110) para proporcionar el servicio de comunicación (140); y
en base a determinar que el conjunto de dispositivos de usuario de E/S (130) satisface la regla de capacidad combinada, llevar a cabo:
proporcionar (708) sesiones de comunicación entre la aplicación de emulación de terminal de usuario (110) y los dispositivos de usuario de E/S (130) en el conjunto, y entre la aplicación de emulación de terminal de usuario (110) y el terminal de usuario solicitante a través de la entidad de red (150);
enrutar (710) el tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S (130) en el conjunto. hacia el terminal de usuario solicitante; y
para cada tipo de datos (712) que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar (714) uno de los dispositivos de usuario de E/S entre el conjunto de dispositivos de usuario de E/S (130) en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos (120) para el uno de los dispositivos de usuario de E/S, y a continuación enrutar los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S;
caracterizado por que está adaptado para realizar operaciones adicionales que comprenden:
recibir otra solicitud de comunicación de la entidad de red (150) para establecer otro servicio de comunicación (140) entre otro usuario (EtiquetaDeUsuario#2) y otro terminal de usuario solicitante; y
en respuesta a la otra solicitud de comunicación, llevar a cabo:
determinar si se determina que otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificado por la base de datos (120) está ubicado cerca de una ubicación del otro usuario (EtiquetaDeUsuario#2) y disponible para su uso para el otro servicio de comunicación (140) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120) para el otro conjunto de dispositivos de usuario de E/S, que satisface la regla de capacidad combinada para ser combinable para proporcionar una UI de E/S combinada para que el otro usuario (EtiquetaDeUsuario#2) interactúe con otra aplicación de emulación de terminal de usuario (110) para proporcionar el otro servicio de comunicación (140); y
en base a determinar que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, está disponible para su uso por otro servicio de comunicación (140), y está ubicado cerca de la ubicación del otro usuario (EtiquetaDeUsuario#2),
configurar uno de los dispositivos de usuario de E/S en el conjunto de dispositivos de usuario de E/S (130) que está ubicado cerca del otro usuario (EtiquetaDeUsuario#2) pero que actualmente está siendo utilizado por el usuario (EtiquetaDeUsuario#1), para que funcione para proporcionar una UI compartida que es utilizada por el usuario (EtiquetaDeUsuario#1) mientras el servicio de comunicación (140) sigue proporcionándose al usuario (EtiquetaDeUsuario#1), y que es utilizada además por el otro usuario (EtiquetaDeUsuario#2) mientras el otro servicio de comunicación (140) se proporciona al otro usuario (EtiquetaDeUsuario#2).
2. El servidor de emulación de terminal de usuario (100) según la reivindicación 1, en el que un dispositivo de altavoz es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de reproducir un flujo de audio recibido y un dispositivo de micrófono es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de detectar audio para emitir un flujo del micrófono, y donde las operaciones comprenden además:
actualizar la base de datos (120) en función del contenido de los mensajes de registro para identificar direcciones de red del dispositivo de altavoz y el dispositivo de micrófono, y para identificar capacidades de UI del dispositivo de altavoz como que tienen capacidad de altavoz y del dispositivo de micrófono como que tienen capacidad de micrófono;
el dispositivo de altavoz y el dispositivo de micrófono se identifican cada uno como pertenecientes al conjunto de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de la ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120), que satisfacen la regla de capacidad combinada para ser combinables para proporcionar una UI de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (110) para proporcionar el servicio de comunicación (140); y
en base a determinar que el dispositivo de altavoz y el dispositivo de micrófono satisfacen la regla de capacidad combinada, se realizan otras operaciones para:
enrutar un flujo del micrófono recibido desde el dispositivo de micrófono hacia el terminal de usuario solicitante; y
cuando se recibe un flujo de audio como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar el dispositivo de altavoz en función de hacer coincidir una característica de audio del flujo de audio con la capacidad del altavoz identificada por la base de datos para el dispositivo de altavoz, y a continuación enrutar el flujo de audio hacia la dirección de red del dispositivo de altavoz.
3. El servidor de emulación de terminal de usuario (100) según la reivindicación 2, en el que un dispositivo de visualización es uno de los dispositivos de usuario de E/S (130) del conjunto capaz de mostrar un flujo de video recibido, y en el que las operaciones comprenden además:
actualizar la base de datos (120) en base al contenido de los mensajes de registro para identificar direcciones de red del dispositivo de visualización y para identificar capacidades de UI del dispositivo de visualización como que tienen una capacidad de visualización;
el dispositivo de visualización también se identifica como parte del conjunto de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de la ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120), que satisface la regla de capacidad combinada para ser combinable para proporcionar la UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario (110) para proporcionar el servicio de comunicación (140); y
en base a determinar que el dispositivo de altavoz, el dispositivo de visualización y el dispositivo de micrófono satisfacen la regla de capacidad combinada, se realizan operaciones adicionales para:
cuando se recibe un flujo de video como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar el dispositivo de visualización en función de hacer coincidir una característica de video del flujo de video con la capacidad de visualización identificada por la base de datos (120) para el dispositivo de visualización, y a continuación enrutar el flujo de video hacia la dirección de red del dispositivo de visualización.
4. El servidor de emulación de terminal de usuario (100) según la reivindicación 3, en el que las operaciones para enrutar el flujo de audio y el flujo de video hacia las direcciones de red del dispositivo de altavoz y el dispositivo de visualización, respectivamente, comprenden:
cuando se reciben datos de audio y datos de video dentro de un mismo flujo desde el terminal de usuario solicitante a través de una primera sesión de comunicación
separar los datos de audio de los datos de video,
enrutar los datos de audio hacia la dirección de red del dispositivo de altavoz a través de una segunda sesión de comunicación, y
enrutar los datos de video hacia la dirección de red del dispositivo de visualización a través de la segunda sesión de comunicación o de una tercera sesión de comunicación.
5. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 2 a 4, en el que un dispositivo de cámara es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de entregar un flujo de la cámara, y en el que las operaciones comprenden además:
actualizar la base de datos (120) en base al contenido de un mensaje de registro para identificar una dirección de red del dispositivo de cámara y para identificar una capacidad de U i del dispositivo de cámara como que tiene una capacidad de cámara;
el dispositivo de cámara se identifica además como miembro del conjunto de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de la ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en función de la capacidad de UI identificada por la base de datos (120), que satisface la regla de capacidad combinada para ser combinable con los otros dispositivos de usuario de E/S (130) en el conjunto para proporcionar la UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario ( 110) para proporcionar el servicio de comunicación (140); y
en base a la determinación de que el dispositivo de cámara satisface la regla de capacidad combinada, se realizan operaciones adicionales para enrutar el flujo de la cámara recibido desde el dispositivo de cámara hacia el terminal de usuario solicitante.
6. El servidor de emulación de terminal de usuario (100) según la reivindicación 5, en el que las operaciones para enrutar el flujo del micrófono recibido desde el dispositivo de micrófono y el flujo de la cámara recibido desde el dispositivo de cámara hacia el terminal de usuario solicitante, comprenden:
recibir el flujo del micrófono desde el dispositivo de micrófono a través de una primera sesión de comunicación;
recibir el flujo de la cámara desde el dispositivo de cámara a través de la primera sesión de comunicación o de una segunda sesión de comunicación;
combinar (716) el flujo del micrófono y el flujo de la cámara en un flujo combinado; y
enrutar el flujo combinado hacia el terminal de usuario solicitante a través de una tercera sesión de comunicación.
7. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 2 a 6, en el que un dispositivo de teclado es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de entregar datos de selección de teclas en respuesta a selecciones de teclas realizadas por un usuario entre las teclas del dispositivo de teclado, y en el que las operaciones comprenden además:
actualizar la base de datos (120) en base al contenido de un mensaje de registro para identificar una dirección de red del dispositivo de teclado y para identificar una capacidad de UI del dispositivo de teclado como que tiene una capacidad de teclado;
el dispositivo de teclado está identificado además como un miembro del conjunto de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de la ubicación del usuario y se determina además, en función de la capacidad de UI identificada por la base de datos, que satisface la regla de capacidad combinada para ser combinable con los otros dispositivos de usuario de E/S (130) en el conjunto para proporcionar la UI de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (110) para proporcionar el servicio de comunicación (140); y
en base a la determinación de que el dispositivo de teclado cumple la regla de capacidad combinada, se realizan operaciones adicionales para identificar los comandos formados por los datos de selección de teclas recibidos del dispositivo de teclado y para realizar operaciones cuya activación se ha definido en función de la recepción de los comandos identificados.
8. El servidor de emulación de terminal de usuario (100) según la reivindicación 7, en el que las operaciones para enrutar los datos de selección de teclas recibidos del dispositivo de teclado y el flujo del micrófono recibido del dispositivo de micrófono comprenden:
recibir los datos de selección de teclas desde el dispositivo de teclado a través de una primera sesión de comunicación;
recibir el flujo del micrófono desde el dispositivo de micrófono a través de la primera sesión de comunicación o de una segunda sesión de comunicación;
combinar los datos de selección de teclas y el flujo del micrófono en un flujo combinado; y
enrutar el flujo combinado hacia el terminal de usuario solicitante a través de una tercera sesión de comunicación.
9. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 8, en el que las operaciones comprenden además:
recibir informes de presencia de dispositivos individuales de los dispositivos de usuario de E/S (130) que contienen su dirección de red y un identificador de usuario de un usuario (EtiquetaDeUsuario#1) que el dispositivo de usuario de E/S ha determinado que se encuentra próximo; y
en respuesta a los informes de presencia, actualizar la base de datos (120) para indicar qué identificadores de usuario (EtiquetaDeUsuario#1) están ubicados cerca de cuál de los dispositivos de usuario de E/S (130).
10. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 9, en el que:
la solicitud de comunicación contiene una indicación de una capacidad de UI mínima que debe proporcionarse al usuario (EtiquetaDeUsuario#1) durante el servicio de comunicación (140); y
la regla de capacidad combinada se define en función de la capacidad de UI mínima que se indica mediante la solicitud de comunicación.
11. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 10, en el que las operaciones comprenden además:
en base a la determinación de que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada y está ubicado cerca de la ubicación del otro usuario (EtiquetaDeUsuario#2), comunicar un mensaje a la entidad de red (150) indicando que no se puede establecer el otro servicio de comunicación.
12. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 11, en el que la operación para registrar la dirección de red de la aplicación de emulación de terminal de usuario (110) y el identificador de usuario (EtiquetaDeUsuario#1) con la entidad de red (150) comprende :
registrar la dirección de red de la aplicación de emulación de terminal de usuario (110) y el identificador de usuario (EtiquetaDeUsuario#1) con un servidor de red de un proveedor de servicios de comunicación de protocolo de voz sobre internet, VoIP.
13. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 12, en el que la operación para registrar la dirección de red de la aplicación de emulación de terminal de usuario (110) y el identificador de usuario (EtiquetaDeUsuario#1) con la entidad de red (150) comprende :
registrar la dirección de red de la aplicación de emulación de terminal de usuario (110) y el identificador de usuario (EtiquetaDeUsuario#1) con una red central de un proveedor de servicios de comunicación celular.
14. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 13, en el que las operaciones comprenden además:
recibir los mensajes de registro de los dispositivos de usuario de E/S (130) utilizando el protocolo de inicio de sesión/protocolo de descripción de sesión, donde cada uno de los mensajes de registro identifica la dirección de red y la capacidad de UI de uno de los dispositivos de usuario de E/S.
15. El servidor de emulación de terminal de usuario (100) según cualquiera de las reivindicaciones 1 a 14, en el que:
la solicitud de comunicación se recibe desde la entidad de red (150) usando el protocolo de descripción de sesión; y
la operación para proporcionar sesiones de comunicación entre la aplicación de emulación de terminal de usuario (110) y cada uno de los dispositivos de usuario de E/S (130) del conjunto, y entre la aplicación de emulación de terminal de usuario (110) y el terminal de usuario solicitante, se realiza utilizando el protocolo de inicio de sesión.
16. Un dispositivo de usuario de entrada y/o salida, E/S (130) entre una pluralidad de dispositivos de usuario de E/S (130) que está configurado como un dispositivo de usuario de E/S de control que proporciona servicios de comunicación (140) utilizando un conjunto de los dispositivos de usuario de E/S (130), estando adaptado el dispositivo de usuario de E/S de control para realizar operaciones que comprenden:
mantener una base de datos (120) que identifica direcciones de red de los dispositivos de usuario de E/S e identifica además capacidades de interfaz de usuario, UI, de los dispositivos de usuario de E/S, en función del contenido de los mensajes de registro recibidos;
registrar una dirección de red de una aplicación de emulación de terminal de usuario y un identificador de usuario único con una entidad de red (150) que proporciona servicios de comunicación (140), identificador de usuario único que es transmitido por un dispositivo electrónico (EtiquetaDeUsuario#1) portado por un usuario y recibido por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, o determinado por operaciones biométricas realizadas por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, siendo ejecutada la aplicación de emulación de terminal de usuario (912) por el dispositivo de usuario de E/S de control;
recibir una solicitud de comunicación de la entidad de red (150) para establecer un servicio de comunicación (140) entre el usuario (EtiquetaDeUsuario#1) y un terminal de usuario solicitante; y
en respuesta a la solicitud de comunicación, llevar a cabo:
identificar el conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) que se determina que están ubicados cerca de una ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en base a las capacidades de UI identificadas por la base de datos (120) para el conjunto de dispositivos de usuario de E/S (120) y en base al contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinable para proporcionar una interfaz de usuario de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (912) para proporcionar el servicio de comunicación (140); y
en base a la determinación de que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, llevar a cabo:
proporcionar sesiones de comunicación entre la aplicación de emulación de terminal de usuario (912) y cada uno de los dispositivos de usuario de E/S del conjunto, y entre la aplicación de emulación de terminal de usuario (912) y el terminal de usuario solicitante a través de la entidad de red (150);
enrutar tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S en el conjunto. hacia el terminal de usuario solicitante; y
para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante,
seleccionar uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos para el uno de los dispositivos de usuario de E/S, y enrutar a continuación los datos del tipo de datos hacia la dirección de red del seleccionado de los dispositivos de usuario de E/S;
caracterizado por que está adaptado para realizar operaciones adicionales que comprenden:
recibir otra solicitud de comunicación de la entidad de red (150) para establecer otro servicio de comunicación (140) entre otro usuario (EtiquetaDeUsuario#2) y otro terminal de usuario solicitante; y
en respuesta a la otra solicitud de comunicación, llevar a cabo:
determinar si se determina que otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) está ubicado cerca de una ubicación del otro usuario (EtiquetaDeUsuario#2) y disponible para su uso para el otro servicio de comunicación (140) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120) para el otro conjunto de dispositivos de usuario de E/S, que satisface la regla de capacidad combinada para ser combinable para proporcionar una UI de E/S combinada para que el otro usuario (EtiquetaDeUsuario#2) interactúe con otra aplicación de emulación de terminal de usuario (110) para proporcionar el otro servicio de comunicación (140); y
en base a determinar que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, está disponible para su uso por otro servicio de comunicación (140), y está ubicado cerca de la ubicación del otro usuario (EtiquetaDeUsuario#2),
configurar uno de los dispositivos de usuario de E/S en el conjunto de dispositivos de usuario de E/S (130) que está ubicado cerca del otro usuario (EtiquetaDeUsuario#2) pero que actualmente está siendo utilizado por el usuario (EtiquetaDeUsuario#1), para que funcione para proporcionar una UI compartida que es utilizada por el usuario (EtiquetaDeUsuario#1) mientras el servicio de comunicación (140) sigue proporcionándose al usuario (EtiquetaDeUsuario#1), y que es utilizada además por el otro usuario (EtiquetaDeUsuario#2) mientras el otro servicio de comunicación (140) se proporciona al otro usuario (EtiquetaDeUsuario#2).
17. El dispositivo de usuario de E/S de control (130) según la reivindicación 16, en el que las operaciones comprenden además:
recibir informes de presencia de dispositivos individuales de los dispositivos de usuario de E/S que contienen su dirección de red y un identificador de usuario de un usuario (EtiquetaDeUsuario#1) que el dispositivo de usuario de E/S ha determinado que se encuentra próximo; y
en respuesta a los informes de presencia, actualizar la base de datos (120) para indicar qué identificadores de usuario (EtiquetaDeUsuario#1) están ubicados cerca de cuál de los dispositivos de usuario de E/S (130).
18. El dispositivo de usuario de E/S de control (130) según cualquiera de las reivindicaciones 16 a 17, en el que:
la solicitud de comunicación contiene una indicación de una capacidad de UI mínima que debe proporcionarse al usuario (EtiquetaDeUsuario#1) durante el servicio de comunicación (140); y
la regla de capacidad combinada se define en función de la capacidad de UI mínima que se indica mediante la solicitud de comunicación.
19. El dispositivo de usuario de E/S de control (130) según cualquiera de las reivindicaciones 16 a 18, en el que un dispositivo de altavoz es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de reproducir un flujo de audio recibido y un dispositivo de micrófono es uno de los dispositivos de usuario de E/S en el conjunto capaz de detectar audio para emitir un flujo del micrófono, y en el que las operaciones comprenden además:
actualizar la base de datos (120) en función del contenido de los mensajes de registro para identificar direcciones de red del dispositivo de altavoz y el dispositivo de micrófono, y para identificar capacidades de UI del dispositivo de altavoz como que tienen capacidad de altavoz y del dispositivo de micrófono como que tienen capacidad de micrófono;
el dispositivo de altavoz y el dispositivo de micrófono se identifican, cada uno, como pertenecientes al conjunto de dispositivos de usuario de E/S que se determina que están ubicados cerca de la ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en función de las capacidades de UI identificadas por la base de datos, que satisfacen la regla de capacidad combinada para ser combinable para proporcionar una UI de E/S combinada para que el usuario interactúe con la aplicación de emulación de terminal de usuario para proporcionar el servicio de comunicación (140); y
en base a determinar que el dispositivo de altavoz y el dispositivo de micrófono satisfacen la regla de capacidad combinada, se realizan otras operaciones para:
enrutar un flujo del micrófono recibido desde el dispositivo de micrófono hacia el terminal de usuario solicitante; y
cuando se recibe un flujo de audio como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar el dispositivo de altavoz en función de hacer coincidir una característica de audio del flujo de audio con la capacidad del altavoz identificada por la base de datos para el dispositivo de altavoz, y a continuación enrutar el flujo de audio hacia la dirección de red del dispositivo de altavoz.
20. El dispositivo de usuario de E/S de control (130) según la reivindicación 19, en el que un dispositivo de visualización es uno de los dispositivos de usuario de E/S (130) en el conjunto capaz de mostrar un flujo de video recibido, y en el que las operaciones comprenden además:
actualizar la base de datos (120) en base al contenido de los mensajes de registro para identificar direcciones de red del dispositivo de visualización y para identificar capacidades de UI del dispositivo de visualización como que tienen una capacidad de visualización;
el dispositivo de visualización también se identifica como parte del conjunto de dispositivos de usuario de E/S (130) que se determina que están ubicados cerca de la ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120), que satisface la regla de capacidad combinada para ser combinable para proporcionar la UI de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario para proporcionar el servicio de comunicación (140); y
en base a determinar que el dispositivo de altavoz, el dispositivo de visualización y el dispositivo de micrófono satisfacen la regla de capacidad combinada, se realizan operaciones adicionales para:
cuando se recibe un flujo de video como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar el dispositivo de visualización en función de hacer coincidir una característica de video del flujo de video con la capacidad de visualización identificada por la base de datos para el dispositivo de visualización, y a continuación enrutar el flujo de video hacia la dirección de red del dispositivo de visualización.
21. Un producto de programa informático que comprende un medio legible por ordenador no transitorio que almacena código de programa que, si es ejecutado por un procesador (1000) en un servidor de emulación de terminal de usuario (100) para proporcionar servicios de comunicación (140) usando conjuntos de dispositivos de usuario entrada y/o salida, E/S, (130), hacen que el procesador (1000) realice operaciones que comprenden:
mantener una base de datos (120) que identifica direcciones de red de dispositivos de usuario de E/S e identifica además capacidades de interfaz de usuario, UI, de los dispositivos de usuario de E/S, en función del contenido de los mensajes de registro recibidos;
registrar una dirección de red de una aplicación de emulación de terminal de usuario (110, 1012) y un identificador de usuario único con una entidad de red (150) que proporciona servicios de comunicación (140), identificador de usuario único que es transmitido por un dispositivo electrónico (EtiquetaDeUsuario#1) portado por un usuario y recibido por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, o determinado por operaciones biométricas realizadas por uno o más de los dispositivos de usuario de E/S (130) que están situados cerca del usuario, siendo ejecutada la aplicación de emulación de terminal de usuario (110, 1012) por el servidor de emulación de terminal de usuario (100);
recibir una solicitud de comunicación de la entidad de red (150) para establecer un servicio de comunicación (140) entre el usuario (EtiquetaDeUsuario#1) y un terminal de usuario solicitante; y
en respuesta a la solicitud de comunicación, llevar a cabo:
identificar un conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) que se determina que están ubicados cerca de una ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en base a las capacidades de UI identificadas por la base de datos (120) para el conjunto de dispositivos de usuario de E/S (130) y en base al contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinable para proporcionar una interfaz de usuario de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (110, 1012) para proporcionar el servicio de comunicación (140); y
en base a determinar que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, llevar a cabo:
proporcionar sesiones de comunicación entre la aplicación de emulación de terminal de usuario (110, 1012) y los dispositivos de usuario de E/S en el conjunto, y entre la aplicación de emulación de terminal de usuario (110, 1012) y el terminal de usuario solicitante a través de la entidad de red (150);
enrutar el tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S (130) en el conjunto. hacia el terminal de usuario solicitante; y
para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S (130) en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos (120) para el uno de los dispositivos de usuario de E/S, y a continuación enrutar los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S;
caracterizado por hacer que el procesador realice otras operaciones, que comprenden:
recibir otra solicitud de comunicación de la entidad de red (150) para establecer otro servicio de comunicación (140) entre otro usuario (EtiquetaDeUsuario#2) y otro terminal de usuario solicitante; y
en respuesta a la otra solicitud de comunicación, llevar a cabo:
determinar si se determina que otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) está ubicado cerca de una ubicación del otro usuario (EtiquetaDeUsuario#2) y disponible para su uso para el otro servicio de comunicación (140) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120) para el otro conjunto de dispositivos de usuario de E/S, que satisface la regla de capacidad combinada para ser combinable para proporcionar una UI de E/S combinada para que el otro usuario (EtiquetaDeUsuario#2) interactúe con otra aplicación de emulación de terminal de usuario (110) para proporcionar el otro servicio de comunicación (140); y
en base a determinar que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, está disponible para su uso por otro servicio de comunicación (140), y está ubicado cerca de la ubicación del otro usuario (EtiquetaDeUsuario#2),
configurar uno de los dispositivos de usuario de E/S en el conjunto de dispositivos de usuario de E/S (130) que está ubicado cerca del otro usuario (EtiquetaDeUsuario#2) pero que actualmente está siendo utilizado por el usuario (EtiquetaDeUsuario#1), para que funcione para proporcionar una UI compartida que es utilizada por el usuario (EtiquetaDeUsuario#1) mientras el servicio de comunicación (140) sigue proporcionándose al usuario (EtiquetaDeUsuario#1), y que es utilizada además por el otro usuario (EtiquetaDeUsuario#2) mientras el otro servicio de comunicación (140) se proporciona al otro usuario (EtiquetaDeUsuario#2).
22. Un producto de programa informático que comprende un medio legible por ordenador no transitorio que almacena código de programa que, si es ejecutado por un procesador (900) en un dispositivo de usuario de entrada y/o salida, E/S, (130) entre una pluralidad de dispositivos de usuario de E/S (130) que está configurado como un dispositivo de usuario de E/S de control que proporciona servicios de comunicación (140) utilizando un conjunto de los dispositivos de usuario de E/S, hace que el procesador (900) realice operaciones que comprenden:
mantener una base de datos (120) que identifica direcciones de red de los dispositivos de usuario de E/S e identifica además capacidades de interfaz de usuario, UI, de los dispositivos de usuario de E/S, en función del contenido de los mensajes de registro recibidos;
registrar una dirección de red de una aplicación de emulación de terminal de usuario (912) y un identificador de usuario único con una entidad de red (150) que proporciona servicios de comunicación (140), identificador de usuario único que es transmitido por un dispositivo electrónico (EtiquetaDeUsuario#1) portado por un usuario y recibido por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, o determinado por operaciones biométricas realizadas por uno o más de los dispositivos de usuario de E/S (130) que están ubicados cerca del usuario, siendo ejecutada la aplicación de emulación de terminal de usuario (912) por el dispositivo de usuario de E/S de control;
recibir una solicitud de comunicación de la entidad de red (150) para establecer un servicio de comunicación (140) entre el usuario (EtiquetaDeUsuario#1) y un terminal de usuario solicitante; y
en respuesta a la solicitud de comunicación, llevar a cabo:
identificar el conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) que se determina que están ubicados cerca de una ubicación del usuario (EtiquetaDeUsuario#1) y se determina además, en base a las capacidades de UI identificadas por la base de datos (120) para el conjunto de dispositivos de usuario de E/S (130) y en base al contenido de la solicitud de comunicación, que satisfacen una regla de capacidad combinada para ser combinable para proporcionar una interfaz de usuario de E/S combinada para que el usuario (EtiquetaDeUsuario#1) interactúe con la aplicación de emulación de terminal de usuario (912) para proporcionar el servicio de comunicación (140); y
en base a determinar que el conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, llevar a cabo:
proporcionar sesiones de comunicación entre la aplicación de emulación de terminal de usuario (912) y cada uno de los dispositivos de usuario de E/S (130) en el conjunto, y entre la aplicación de emulación de terminal de usuario (912) y el terminal de usuario solicitante a través de la entidad de red (150);
enrutar el tráfico de comunicación que se recibe desde al menos uno de los dispositivos de usuario de E/S en el conjunto. hacia el terminal de usuario solicitante; y
para cada tipo de datos que se recibe como tráfico de comunicación desde el terminal de usuario solicitante, seleccionar uno de los dispositivos de usuario de E/S de entre el conjunto de dispositivos de usuario de E/S en función de características coincidentes del tipo de datos con las capacidades de UI identificadas por la base de datos para el uno de los dispositivos de usuario de E/S, y a continuación enrutar los datos del tipo de datos hacia la dirección de red del dispositivo seleccionado de los dispositivos de usuario de E/S;
caracterizado por hacer que el procesador realice otras operaciones, que comprenden:
recibir otra solicitud de comunicación de la entidad de red (150) para establecer otro servicio de comunicación (140) entre otro usuario (EtiquetaDeUsuario#2) y otro terminal de usuario solicitante; y
en respuesta a la otra solicitud de comunicación, llevar a cabo:
determinar si se determina que otro conjunto de dispositivos de usuario de E/S entre los dispositivos de usuario de E/S (130) identificados por la base de datos (120) está ubicado cerca de una ubicación del otro usuario (EtiquetaDeUsuario#2) y disponible para su uso para el otro servicio de comunicación (140) y se determina además, en función de las capacidades de UI identificadas por la base de datos (120) para el otro conjunto de dispositivos de usuario de E/S, que satisface la regla de capacidad combinada para ser combinable para proporcionar una UI de E/S combinada para que el otro usuario (EtiquetaDeUsuario#2) interactúe con otra aplicación de emulación de terminal de usuario (110) para proporcionar el otro servicio de comunicación (140); y
en base a determinar que ningún otro conjunto de dispositivos de usuario de E/S satisface la regla de capacidad combinada, está disponible para su uso por otro servicio de comunicación (140), y está ubicado cerca de la ubicación del otro usuario (EtiquetaDeUsuario#2),
configurar uno de los dispositivos de usuario de E/S en el conjunto de dispositivos de usuario de E/S (130) que está ubicado cerca del otro usuario (EtiquetaDeUsuario#2) pero que actualmente está siendo utilizado por el usuario (EtiquetaDeUsuario#1), para que funcione para proporcionar una UI compartida que es utilizada por el usuario (EtiquetaDeUsuario#1) mientras el servicio de comunicación (140) sigue proporcionándose al usuario (EtiquetaDeUsuario#1), y que es utilizada además por el otro usuario (EtiquetaDeUsuario#2) mientras el otro servicio de comunicación (140) se proporciona al otro usuario (EtiquetaDeUsuario#2).
ES19700708T 2019-01-15 2019-01-15 Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S Active ES2927296T3 (es)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2019/050870 WO2020147924A1 (en) 2019-01-15 2019-01-15 Providing communication services using sets of i/o devices

Publications (1)

Publication Number Publication Date
ES2927296T3 true ES2927296T3 (es) 2022-11-04

Family

ID=65031082

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19700708T Active ES2927296T3 (es) 2019-01-15 2019-01-15 Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S

Country Status (13)

Country Link
US (2) US11212130B2 (es)
EP (1) EP3912312B1 (es)
JP (1) JP7257526B2 (es)
CN (1) CN113366812B (es)
AU (1) AU2019423434B2 (es)
BR (1) BR112021009159A2 (es)
CA (1) CA3126770A1 (es)
CO (1) CO2021007305A2 (es)
ES (1) ES2927296T3 (es)
PL (1) PL3912312T3 (es)
PT (1) PT3912312T (es)
SG (1) SG11202104338QA (es)
WO (1) WO2020147924A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
PL3912312T3 (pl) * 2019-01-15 2022-11-21 Telefonaktiebolaget Lm Ericsson (Publ) Zapewnianie usług komunikacyjnych przy użyciu zestawów urządzeń We/Wy
MX2021014813A (es) * 2019-06-11 2022-01-18 Ericsson Telefon Ab L M Provision de servicios de comunicacion usando conjuntos de dispositivos de usuario de e/s.
WO2020253961A2 (en) * 2019-06-20 2020-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Providing communication services using sets of i/o user devices
EP4289143A1 (en) * 2021-03-31 2023-12-13 Jio Platforms Limited System and method for sharing media resources for network based communication
WO2023208354A1 (en) * 2022-04-28 2023-11-02 Telefonaktiebolaget Lm Ericsson (Publ) Authentication of user tags obtaining communication services via i/o user devices performing user terminal emulation as a cloud computing service
WO2024074193A1 (en) * 2022-10-04 2024-04-11 Telefonaktiebolaget Lm Ericsson (Publ) User tags beacon-based mobility management for communication services via i/o user devices performing user terminal emulation as a cloud computing service
WO2024094272A1 (en) 2022-10-31 2024-05-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and devices for selection of input/output devices in a wireless communication system

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6069896A (en) 1996-10-15 2000-05-30 Motorola, Inc. Capability addressable network and method therefor
US6169789B1 (en) 1996-12-16 2001-01-02 Sanjay K. Rao Intelligent keyboard system
US20020051200A1 (en) 2000-11-01 2002-05-02 Chang William Ho Controller for device-to-device pervasive digital output
WO2002041107A2 (en) 2000-11-20 2002-05-23 Flexiworld Technologies, Inc. Systems and methods for mobile and pervasive output
DE10151116A1 (de) * 2001-10-15 2003-05-08 Siemens Ag Verfahren zur Inbetriebnahme eines Bedien- und Beobachtungssystems von Feldgeräten
FR2834159B1 (fr) * 2001-12-21 2004-02-06 France Telecom Procede d'acces a un serveur
US20040008837A1 (en) * 2002-07-12 2004-01-15 Nortel Networks Limited Combining multimedia services with traditional telephony services in a public branch exchange
US7920690B2 (en) * 2002-12-20 2011-04-05 Nortel Networks Limited Interworking of multimedia and telephony equipment
US7433327B2 (en) * 2003-10-09 2008-10-07 Hewlett-Packard Development Company, L.P. Method and system for coordinating communication devices to create an enhanced representation of an ongoing event
US9331888B1 (en) * 2005-11-28 2016-05-03 Verizon Patent And Licensing Inc. Methods and systems for bridging communications between an IP network and a voice communication service at a subscriber premises
AU2007247958B2 (en) 2006-05-03 2012-11-29 Cloud Systems, Inc. System and method for managing, routing, and controlling devices and inter-device connections
JP4411332B2 (ja) * 2007-03-20 2010-02-10 パナソニック株式会社 Ip通信装置及びip通信システム並びにこれらのip通信方法
US20080281971A1 (en) * 2007-05-07 2008-11-13 Nokia Corporation Network multimedia communication using multiple devices
US8520979B2 (en) 2008-08-19 2013-08-27 Digimarc Corporation Methods and systems for content processing
US9374391B2 (en) * 2008-11-11 2016-06-21 Broadsoft, Inc. Composite endpoint mechanism
JP5148534B2 (ja) * 2009-03-03 2013-02-20 株式会社東芝 通信サーバ、装置及びセッション制御方法
EP2481200B1 (fr) * 2009-09-22 2020-04-01 Orange Controle d'une session d'echange de donnees entre des terminaux d'un premier utilisateur avec au moins un terminal d'un deuxieme utilisateur
US9043474B2 (en) * 2010-01-20 2015-05-26 Microsoft Technology Licensing, Llc Communication sessions among devices and interfaces with mixed capabilities
KR101653237B1 (ko) * 2010-03-25 2016-09-01 삼성전자주식회사 복수 장치를 이용하는 콘텐츠 서비스 제공 방법 및 시스템
EP2647190B1 (en) * 2010-12-03 2019-10-16 Unify Inc. Method and apparatus for controlling sessions from one or more devices
US10404762B2 (en) * 2010-12-31 2019-09-03 Skype Communication system and method
US9717090B2 (en) * 2010-12-31 2017-07-25 Microsoft Technology Licensing, Llc Providing notifications of call-related services
US10291660B2 (en) * 2010-12-31 2019-05-14 Skype Communication system and method
CN103688562A (zh) * 2011-07-11 2014-03-26 黑莓有限公司 基于邻近的通信的数据完整性
US9019336B2 (en) * 2011-12-30 2015-04-28 Skype Making calls using an additional terminal
US20150022619A1 (en) * 2012-02-21 2015-01-22 Wit-Software, Consultoria Software Para A Internet Móvel, S.A. System and method for sharing multimedia content using a television receiver during a voice call
US9491093B2 (en) * 2012-07-31 2016-11-08 At&T Intellectual Property I, L.P. Distributing communication of a data stream among multiple devices
US9444726B2 (en) * 2012-07-31 2016-09-13 At&T Intellectual Property I, L.P. Distributing communication of a data stream among multiple devices
US9356980B2 (en) * 2012-07-31 2016-05-31 At&T Intellectual Property I, L.P. Distributing communication of a data stream among multiple devices
US9641954B1 (en) * 2012-08-03 2017-05-02 Amazon Technologies, Inc. Phone communication via a voice-controlled device
KR101967682B1 (ko) 2012-08-06 2019-08-19 삼성전자주식회사 사용자 단말 장치 및 이를 이용한 통신 방법
GB201301452D0 (en) * 2013-01-28 2013-03-13 Microsoft Corp Providing notifications of call-related services
US10846599B2 (en) 2013-10-22 2020-11-24 Lumin, LLC Collaboration of audio sensors for geo-location and continuous tracking of health conditions for users in a device-independent artificial intelligence (AI) environment
US20150178652A1 (en) * 2013-12-23 2015-06-25 Egan Schulz Systems and methods for targeted assistance on user check-in
US10523622B2 (en) 2014-05-21 2019-12-31 Match Group, Llc System and method for user communication in a network
US9674698B2 (en) * 2014-07-22 2017-06-06 Nokia Technologies Oy Method and apparatus for providing an anonymous communication session
US9548066B2 (en) * 2014-08-11 2017-01-17 Amazon Technologies, Inc. Voice application architecture
US9323556B2 (en) 2014-09-30 2016-04-26 Amazon Technologies, Inc. Programmatic event detection and message generation for requests to execute program code
US9723121B2 (en) * 2015-03-18 2017-08-01 Verizon Patent And Licensing Inc. Multiple devices ringing coordination
US10257314B2 (en) * 2016-06-22 2019-04-09 Microsoft Technology Licensing, Llc End-to-end user experiences with a digital assistant
GB201615271D0 (en) * 2016-09-08 2016-10-26 Univ Coventry Proximity detection utilising location beacons
US11310294B2 (en) * 2016-10-31 2022-04-19 Microsoft Technology Licensing, Llc Companion devices for real-time collaboration in communication sessions
US11025602B1 (en) * 2016-12-30 2021-06-01 EMC IP Holding Company LLC Method, apparatus and computer program product for performing authentication using multiple user devices
US10601591B2 (en) * 2017-01-25 2020-03-24 Microsoft Technology Licensing, Llc Close proximity inner circle discovery
JP6556889B2 (ja) * 2017-03-17 2019-08-07 アンリツ株式会社 スペクトラム拡散クロック発生器及びスペクトラム拡散クロック発生方法とパターン発生器及びパターン発生方法
US10462129B2 (en) * 2017-07-10 2019-10-29 Leigh M. Rothschild System and method for gaining access of devices based on user's identity
US10313514B1 (en) * 2018-02-21 2019-06-04 Plantronics, Inc. Device registry for mediating communication sessions
PL3912312T3 (pl) * 2019-01-15 2022-11-21 Telefonaktiebolaget Lm Ericsson (Publ) Zapewnianie usług komunikacyjnych przy użyciu zestawów urządzeń We/Wy
US11026069B2 (en) 2019-02-18 2021-06-01 Telefonaktiebolaget Lm Ericsson (Publ) Methods, apparatus, and computer-readable media for discovery of application server and/or services for V2X communications
WO2020224746A1 (en) * 2019-05-03 2020-11-12 Telefonaktiebolaget Lm Ericsson (Publ) Providing communication services using sets of i/o user devices
MX2021014813A (es) * 2019-06-11 2022-01-18 Ericsson Telefon Ab L M Provision de servicios de comunicacion usando conjuntos de dispositivos de usuario de e/s.
WO2020253961A2 (en) * 2019-06-20 2020-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Providing communication services using sets of i/o user devices
US11256392B2 (en) * 2019-11-01 2022-02-22 Microsoft Technology Licensing, Llc Unified interfaces for paired user computing devices
US11304246B2 (en) * 2019-11-01 2022-04-12 Microsoft Technology Licensing, Llc Proximity-based pairing and operation of user-specific companion devices
US11010204B1 (en) * 2019-11-20 2021-05-18 Motorola Mobility Llc Splitting input/output functions between multiple communication devices
US11564269B2 (en) * 2019-12-12 2023-01-24 Google Llc Virtualization of cellular connection as wireless local area network connection
US20220124612A1 (en) * 2020-10-20 2022-04-21 Arris Enterprises Llc Interconnectivity of voice interface network devices to control aspects of a network environment

Also Published As

Publication number Publication date
US20210344520A1 (en) 2021-11-04
JP2022517946A (ja) 2022-03-11
JP7257526B2 (ja) 2023-04-13
US11212130B2 (en) 2021-12-28
CA3126770A1 (en) 2020-07-23
CN113366812B (zh) 2024-03-12
WO2020147924A1 (en) 2020-07-23
EP3912312A1 (en) 2021-11-24
AU2019423434A1 (en) 2021-07-08
US20220086019A1 (en) 2022-03-17
PT3912312T (pt) 2022-08-04
CN113366812A (zh) 2021-09-07
SG11202104338QA (en) 2021-05-28
CO2021007305A2 (es) 2021-06-21
BR112021009159A2 (pt) 2021-08-17
PL3912312T3 (pl) 2022-11-21
AU2019423434B2 (en) 2022-06-30
EP3912312B1 (en) 2022-07-20
US12009940B2 (en) 2024-06-11

Similar Documents

Publication Publication Date Title
ES2927296T3 (es) Prestación de servicios de comunicación utilizando conjuntos de dispositivos de E/S
EP3984204B1 (en) Providing communication services using sets of i/o user devices
US10375548B2 (en) Method and apparatus for data delivery to wireless communication devices
US9014736B2 (en) Portable network device for the discovery of nearby devices and services
US11190438B2 (en) Twinning service for groups of internet of things (IOT) devices
US11330041B2 (en) Providing communication services using sets of I/O user devices
US10601928B2 (en) Multiple device and multiple line connected home and home monitoring
EP4352940A1 (en) Providing communication services through i/o user devices to a user
WO2023208354A1 (en) Authentication of user tags obtaining communication services via i/o user devices performing user terminal emulation as a cloud computing service
US11637783B2 (en) Providing communication services using sets of I/O user devices
JP2024525135A (ja) I/oユーザデバイスを介したユーザへの通信サービスの提供
WO2023213395A1 (en) Echo cancellation for i/o user devices performing user terminal emulation as a cloud computing service
WO2023081672A1 (en) Assisting local service management on edge terminal devices