ES2583842T3 - Método, terminal y servidor para restablecer una transmisión de contenido de sesión - Google Patents
Método, terminal y servidor para restablecer una transmisión de contenido de sesión Download PDFInfo
- Publication number
- ES2583842T3 ES2583842T3 ES12879716.4T ES12879716T ES2583842T3 ES 2583842 T3 ES2583842 T3 ES 2583842T3 ES 12879716 T ES12879716 T ES 12879716T ES 2583842 T3 ES2583842 T3 ES 2583842T3
- Authority
- ES
- Spain
- Prior art keywords
- ice
- session
- address
- information
- page
- 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
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 61
- 230000008929 regeneration Effects 0.000 claims abstract description 135
- 238000011069 regeneration method Methods 0.000 claims abstract description 135
- 230000002452 interceptive effect Effects 0.000 claims abstract description 10
- 230000014759 maintenance of location Effects 0.000 claims description 42
- 230000000717 retained effect Effects 0.000 claims description 17
- 230000006870 function Effects 0.000 description 84
- 230000008569 process Effects 0.000 description 11
- 230000003993 interaction Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 8
- 238000005316 response function Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/10—Mapping addresses of different types
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2575—NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2589—NAT traversal over a relay server, e.g. traversal using relay for network address translation [TURN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1083—In-session procedures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/2514—Translation of Internet protocol [IP] addresses between local and global IP addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Un método para restablecer una transmisión de contenido de sesión, que comprende: recibir (101), por un terminal, un mensaje de regeneración para una página; en donde, el terminal recibe el mensaje de regeneración para la página cuando se realiza una navegación en una página utilizando un navegador y el mensaje de regeneración para la página se envía por un usuario utilizando una función de regeneración de la página o se envía cuando se reinicia operativamente el navegador; retener (102), por el terminal, una primera dirección ICE en un par de direcciones de Establecimiento de Conectividad Interactiva, ICE, utilizada por una sesión en la página para estar en un estado activado, en donde la primera dirección ICE es una dirección ICE utilizada por el navegador que recibe el mensaje de regeneración para la página; enviar, por el terminal, una demanda de regeneración a un servidor; recibir (103), por el terminal, una página regenerada reenviada por el servidor, en donde la página regenerada comprende un programa de aplicación y el programa de aplicación comprende la información sobre el par de direcciones ICE y el identificador de sesión; y ejecutar (104), por el terminal, el programa de aplicación para restablecer una transmisión de contenido de sesión de la sesión utilizando la primera dirección ICE en el estado activado.
Description
5
10
15
20
25
30
35
40
45
50
55
60
65
DESCRIPCION
Metodo, terminal y servidor para restablecer una transmision de contenido de sesion CAMPO TECNICO
La presente invencion se refiere al campo de las comunicaciones y en particular, a un metodo, un terminal y un servidor para restablecer una transmision de contenido de sesion.
ANTECEDENTES
La comunicacion en tiempo real entre navegadores (WebRTC, Real-time Communication Between Browsers) es una tecnologfa para realizar una comunicacion de video y audio en tiempo real dentro de navegadores. Esta tecnologfa utiliza principalmente el protocolo de Lenguaje de Marcado de Hipertexto (HypertextMark-upLanguaje 5, HTML5) y el lenguaje de JavaScritp y puede poner en practica una comunicacion entre navegadores sin utilizar un conector.
La WebRTC se utiliza principalmente para poner en practica la comunicacion punto a punto entre navegadores, con el fin de establecer una conexion punto a punto real entre dos navegadores. En un proceso de establecer una sesion entre navegadores, una informacion multimedia de los navegadores necesita negociarse en el proceso de establecimiento de la sesion, en donde la informacion multimedia puede incluir una informacion de envfo/recepcion multimedia, una manera de codificacion/decodificacion y un protocolo utilizado para la transmision multimedia, y dispositivos similar, y se soporta utilizando el Protocolo de Descripcion de Sesion (SDP, Session Description Protocol). En el proceso de establecer la sesion, un mecanismo de Oferta/Respuesta, OFFER/ANSWER de SDP se utiliza para realizar la negociacion de informacion multimedia, tal como negociacion de audio y video, y la negociacion sobre la manera de codificacion/decodificacion utilizada por multimedia. Cuando una red tiene un traductor de direcciones de red (NAT, Networt Address Translator) o un dispositivo cortafuegos firewall, ademas, el Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establisment) necesita utilizarse para negociar una direccion ICE disponible para realizar una transmision punto a punto de contenido de sesion, con el fin de establecer una conexion (PeerConnection) de una sesion generada utilizando los navegadores, lo que permite que los navegadores puedan comunicarse entre sf.
En un proceso existente de establecimiento de la sesion, cuando un navegador llamante necesita enviar una demanda practica para establecer una sesion, el navegador llamante necesita, ademas, recoger una direccion candidato ICE para atravesar un traductor NAT o un cortafuegos con el fin de enviar y recibir contenido de sesion. Un proceso de recogida de una direccion candidato ICE principalmente es el envfo, por un navegador, de una demanda a un servidor de Utilidades para Atravesar Sesiones para Traductor de Direcciones de Red (STUN, Session Traversal utilities for NAT) o un servidor de desplazamiento utilizando reles en torno al traductor de direcciones de red NAT (TURN, Traversal Using Relay NAT) que sirve al navegador. El servidor STUN o TURN reenvfa al navegador, en una respuesta reenviada, una direccion de comunicacion externa (es decir, una direccion ICE) o una direccion de retransmision (es decir, una direccion ICE) en el servidor despues de atravesar traductor NAT o el 'cortafuegos'. Despues de terminar la recogida de la direccion candidato ICE, el navegador puede enviar la direccion candidato ICE a una parte llamada (que puede ser un terminal IMS IP Multimedia Subsystem), un navegador o un terminal comun) en una demanda para establecer una sesion o en un mensaje separado. Si la parte llamada soporta tambien la negociacion de ICE, la parte llamada necesita, ademas, despues de recibir la direccion candidato ICE enviada por el navegador llamante, recoger una direccion candidato ICE de un extremo llamado y enviar una direccion candidato ICE recogida al navegador llamante. Dicho de otro modo, una llamante y la parte llamada necesitan ambas realizar una negociacion de direcciones ICE, con el fin de encontrar un par de direcciones ICE mas adecuado para la transmision del contenido de sesion. Un proceso de negociacion del par de direcciones ICE se realiza principalmente mediante negociacion por cada direccion candidato ICE de la parte llamada con cada direccion candidato ICE de la parte llamante (que concretamente consiste en enviar un paquete de demanda de NAT desde cada direccion candidato ICE de la parte llamada a cada direccion candidato ICE de la parte automaticamente y quedar a la espera de recibir una respuesta reenviada utilizando la direccion candidato ICE de la parte llamante), y realizar la negociacion por cada direccion candidato ICE de la parte llamante con cada direccion candidato ICE de la parte llamada (lo que concretamente consiste en enviar un paquete de demanda de NAT desde cada direccion candidato ICE de la parte llamante a cada direccion candidato ICE de la parte llamada y quedar a la espera de recibir una respuesta reenviada utilizando la direccion candidato ICE de la parte llamada). Si multiples pares de direcciones pueden enviar y recibir mutuamente una respuesta correcta, un mecanismo de determinacion (a modo de ejemplo, en conformidad con una condicion de prioridad de una direccion candidato ICE, preferencia de una aplicacion y condicion similar) definida en el protocolo de ICE se utiliza para seleccionar un par de direcciones ICE optimo que incluye una direccion ICE llamante y una direccion ICE llamada como direcciones del navegador manera de configuracion y del navegador llamado para realizar la transmision de contenido de sesion.
En un proceso de sesion existente utilizando los navegadores, si el navegador llamante o el navegador llamado es objeto de regeneracion (es decir, se causa la regeneracion con la pulsacion de tecla del usuario o el navegador se reinicia temporalmente debido a un problema de la red), con el fin de restablecer una conexion de una sesion original, los navegadores necesitan, ademas, realizar una renegociacion de ICE. Sin embargo, cuatro veces de negociacion de dialogo operativo en este proceso es consumidora de tiempo, por lo que se interrumpe obviamente la transmision del contenido de sesion, lo que da lugar a una experiencia del usuario deficiente.
5
10
15
20
25
30
35
40
45
50
55
60
65
El documento D1 da a conocer una solucion de desplazamiento utilizando reles alrededor de NAT(TURN) entre un cliente de TURN y un usuario homologo A.
El documento D2 da a conocer un mecanismo para suministrar un flujo de datos utilizado para actualizar la informacion visualizada por un navegador. En este mecanismo, el navegador regenera periodicamente un documento de trama, transmitiendo una demanda del documento de tramas a un dispositivo de red (vease columna 3, lmeas 24-27 de documento D2).
SUMARIO
Las formas de realizacion de la presente invencion dan a conocer un metodo, un terminal y un servidor para restablecer la transmision de un contenido de sesion, que resuelve el problema en donde cuando un navegador llamante o un navegador llamado es objeto de regeneracion, necesita realizarse de nuevo una negociacion de ICE para restablecer la transmision del contenido de una sesion original, que es una operacion consumidora de tiempo y hace que se interrumpa obviamente la sesion, lo que da lugar a una experiencia del usuario deficiente.
Un primer aspecto de la presente invencion da a conocer un metodo para restablecer la transmision de un contenido de sesion, que incluye: la recepcion, por un terminal, de un mensaje de regeneracion para una pagina, en donde el terminal recibe el mensaje de regeneracion para la pagina cuando se realiza la navegacion de una pagina utilizando un navegador, y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador; la retencion, por el terminal, de una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establishment) utilizado por la sesion en la pagina para estar en un estado activado, en donde la primera direccion ICE es una direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina; el envfo, por el terminal, de una demanda de regeneracion a un servidor; la recepcion, por el terminal, de una paga regenerada reenviada por el servidor, en donde la pagina regenerada incluye un programa de aplicacion; y el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion; y la ejecucion, por el terminal, del programa de aplicacion para restablecer la transmision de contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado.
En una primera maneras de puesta en practica posible del primer aspecto de la idea inventiva, antes de la recepcion de un mensaje de regeneracion para una pagina, el metodo incluye, ademas: enviar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion al servidor, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion.
En una manera de puesta en practica de una primera manera posible y opcional del primer aspecto de la idea inventiva, el programa de aplicacion incluye la informacion sobre el par de direcciones ICE y el identificador de sesion, y la informacion sobre el par de direcciones ICE utilizado por la sesion incluye la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; y el restablecimiento del contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado incluye concretamente: asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
En una segunda manera de puesta en practica posible del primer aspecto de la idea inventiva, antes de la recepcion de un mensaje de regeneracion para una pagina, el metodo incluye, ademas: memorizar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; y el restablecer de la transmision de contenido de sesion utilizando la primera direccion ICE en el estado activado incluye concretamente: asignar la primera direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y el envfo de datos a la segunda direccion.
En todas las maneras de puesta en practica posibles del primer aspecto de la idea inventiva, la retencion de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion en la pagina para estar en el estado activado incluye concretamente: iniciacion operativa de un temporizador y retencion de la primera direccion ICE para permanecer en el estado activado dentro de un margen temporal establecido por el propio temporizador.
Con referencia a la tercera posibilidad de todas las primeras maneras de puesta en practica posibles del primer aspecto de la idea inventiva, antes del restablecimiento de la sesion de contenido de sesion utilizando la primera direccion ICE en el estado activado, el metodo incluye, ademas: determinar que la primera direccion ICE esta en el estado activado.
Con referencia a la cuarta posibilidad de la tercera posibilidad despues del restablecimiento de la transmision del contenido de sesion utilizando la primera direccion ICE en el estado activado, el metodo comprende, ademas: interrumpir el funcionamiento del temporizador operativamente iniciado, o la determinacion de que la duracion para retener la primera direccion ICE para estar en el estado activado alcanza la duracion establecida por el temporizador e interrumpir el funcionamiento del temporizador operativamente iniciado.
5
10
15
20
25
30
35
40
45
50
55
60
65
Un segundo aspecto de la presente invencion da a conocer un terminal, que incluye: un transceptor, configurado para recibir un mensaje de regeneracion para una pagina, en donde el terminal recibe el mensaje de regeneracion para la pagina cuando se realiza la navegacion de una pagina utilizando un navegador, y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador; una unidad de retencion, configurada para, despues de que el transceptor reciba el mensaje de navegacion para la pagina, retener una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establishment) utilizado por la sesion en la pagina para estar en un estado activado, en donde la primera direccion ICE es una direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina; en donde el transceptor esta configurado, ademas, para enviar una demanda de regeneracion a un servidor despues de que se reciba el mensaje de regeneracion para la pagina y para recibir una pagina regenerada reenviada por el servidor, en donde la pagina regenerada incluye un programa de aplicacion y el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion; y una unidad de ejecucion, configurada para ejecutar el programa de aplicacion que se recibe por el transceptor y reenviado por el servidor, con el fin de restablecer la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion.
En una primera manera de puesta en practica posible del segundo aspecto de la idea inventiva, antes de la recepcion del mensaje de regeneracion para la pagina, el transceptor esta configurado, ademas, para enviar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion al servidor, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion.
En una manera de puesta en practica de una primera posible y opcional manera del segundo aspecto de la idea inventiva, el programa de aplicacion incluye la informacion sobre el par de direcciones ICE y el identificador de sesion, y la informacion sobre el par de direcciones ICE utilizado por la sesion incluye la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; y el establecimiento, por la unidad de ejecucion, de la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion incluye concretamente: asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
En una segunda posible manera de puesta en practica del segundo aspecto de la idea inventiva, el terminal incluye, ademas, una unidad de memorizacion, configurada para memorizar informacion sobre un par de direcciones iCe utilizado por la sesion y un identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; y el establecimiento, por la unidad de ejecucion, de la transmision del contenido de sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion incluye concretamente: asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE de la sesion, y enviar datos a la segunda direccion.
Con referencia a una tercera posibilidad de todas las primeras maneras de puesta en practica posibles del segundo aspecto de la idea inventiva, la retencion, por la unidad de retencion, de la direccion ICE utilizada por la sesion en la pagina para estar en el estado activado incluye concretamente: iniciar el funcionamiento de un temporizador y retener la direccion ICE para estar en el estado activado dentro de un margen temporal establecido por el temporizador.
En la cuarta posibilidad con referencia a la tercera posibilidad, la unidad de retencion esta configurada, ademas para: despues de que la unidad de ejecucion restablezca la transmision del contenido de sesion utilizando la primera direccion ICE en el estado activado, interrumpir el funcionamiento del temporizador operativamente iniciado; o la unidad de retencion esta configurada, ademas, para determinar que la duracion para retener la primera direccion ICE para estar en el estado activado alcanza la duracion establecida por el temporizador y se interrumpe el funcionamiento del temporizador operativamente activado.
Un tercer aspecto de la presente invencion da a conocer un metodo para restablecer una transmision de contenido de sesion, que incluye: recibir, por un servidor, informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion que se envfan por un terminal, y la vinculacion y memorizacion de la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; la recepcion, por el servidor, de un mensaje de regeneracion enviado por el terminal; en donde el mensaje de regeneracion se envfa por el terminal despues de que el terminal reciba un mensaje de regeneracion para una pagina, y el terminal recibe el mensaje de regeneracion para la pagina cuando se realiza la navegacion de una pagina utilizando un navegador, y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador; y el reenvfo, por el servidor, de una pagina regenerada al terminal, en donde la pagina regenerada incluye un programa de aplicacion, y el programa de aplicacion incluye la informacion sobre la direccion ICE y el identificador de sesion, de modo que el terminal asigne, ejecutando el programa de aplicacion, la primera direccion ICE en un estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y envfa datos a la segunda direccion.
5
10
15
20
25
30
35
40
45
50
55
60
65
Un cuarto aspecto de la presente invencion da a conocer un servidor, que incluye: un transceptor, configurado para recibir informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion que se env^a por un terminal, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; y una unidad de memorizacion, configurada para vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion que reciben por el transceptor, en donde el transceptor esta configurado, ademas, para recibir una demanda de regeneracion enviada por el terminal, la demanda de regeneracion se envfa por el terminal despues de que el terminal reciba un mensaje de regeneracion para una pagina, y el terminal recibe el mensaje de regeneracion para la pagina cuando efectua la navegacion de una pagina utilizando un navegador y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador, y el reenvfo de una pagina regenerada al terminal, en donde la pagina regenerada incluye un programa de aplicacion, y el programa de aplicacion incluye la informacion sobre la direccion ICE y el identificador de sesion, de modo que el terminal asigna la primera direccion iCe en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y envfa datos a la segunda direccion.
En conformidad con las soluciones anteriores, cuando se regenera una pagina, la operacion de hacer que la interaccion de la sesion con un usuario de extremo homologo no pueda continuar, a modo de ejemplo, un sonido, un mensaje o elemento similar del homologo no se puede recibir, una primera direccion ICE utilizada por una sesion en la pagina se sigue reteniendo para estar en un estado activado, de modo que un terminal, despues de recibir una pagina regenerada, establezca una conexion directamente en conformidad con la primera direccion ICE en el estado activado y el terminal, despues de un mensaje de regeneracion para una pagina, no necesita negociar un par de direcciones ICE para determinar una direccion ICE adecuada para la recepcion y envfo del contenido de sesion, lo que reduce el tiempo de espera para realizar la interaccion del contenido de sesion con el usuario en el extremo homologo, con lo que se mejora la experiencia del usuario.
BREVE DESCRIPCION DE LOS DIBUJOS
Para ilustrar las soluciones tecnicas en las formas de realizacion de la presente invencion con mayor claridad, los dibujos adjuntos requeridos para describir las formas de realizacion se describen de forma concisa a continuacion. Evidentemente, los dibujos adjuntos en la descripcion siguiente simplemente ilustran algunas formas de realizacion de la presente invencion y los expertos ordinarios en esta tecnica pueden derivar todavfa otros dibujos a partir de los dibujos adjuntos sin necesidad de esfuerzos creativos.
- La Figura 1 es
- un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en
- conformidad con
- una forma de realizacion de la presente invencion,
- La Figura 2 es
- un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en
- conformidad con
- una forma de realizacion de la presente invencion;
- La Figura 3 es
- un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en
- conformidad con
- una forma de realizacion de la presente invencion,
- La Figura 4 es
- un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en
- conformidad con
- una forma de realizacion de la presente invencion;
- La Figura 5 es
- un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en
conformidad con una forma de realizacion de la presente invencion;
La Figura 6 es un diagrama estructural esquematico de un terminal en conformidad con una forma de realizacion de la presente invencion;
La Figura 7 es otro diagrama estructural esquematico de un terminal en conformidad con una forma de realizacion de la presente invencion;
La Figura 8 es un diagrama de flujo de un metodo para establecer la transmision del contenido de sesion en conformidad con una forma de realizacion de la presente invencion;
La Figura 9 es un diagrama estructural esquematico de un servidor en conformidad con una forma de realizacion de la presente invencion; y
La 10 es otro diagrama estructural esquematico de un servidor en conformidad con una forma de realizacion de la presente invencion.
DESCRIPCION DETALLADA DE LAS FORMAS DE REALIZACION
5
10
15
20
25
30
35
40
45
50
55
60
65
A continuacion se describe de forma clara y completa, las soluciones tecnicas en las formas de realizacion de la presente invencion haciendo referencia a los dibujos adjuntos en las formas de realizacion de la presente invencion. Evidentemente, las formas de realizacion descritas son solamente una parte y no la totalidad de las formas de realizacion de la presente invencion. Todas las demas formas de realizacion obtenidas por expertos en esta tecnica, sobre la base de las formas de realizacion de la presente invencion sin necesidad de esfuerzos creativos, deberan caer dentro del alcance de proteccion de la presente invencion.
La Figura 1 es un diagrama de flujo de un metodo para establecer una sesion en conformidad con una forma de realizacion de la presente invencion, que incluye las etapas siguientes:
Etapa 101: Recibir un mensaje de regeneracion para una pagina.
Mas concretamente, un terminal recibe el mensaje de regeneracion para la pagina cuando se realiza la navegacion de una pagina utilizando un navegador. El mensaje de regeneracion para la pagina puede enviarse por un usuario utilizando una funcion de regeneracion de la pagina o enviarse cuando se reinicia operativamente el navegador. Esta forma de realizacion de la presente invencion no establece ningun lfmite a este respecto.
Etapa 102: Retener una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establishment) utilizado por la sesion en la pagina para estar en un estado activado, y enviar una demanda de regeneracion a un servidor, en donde el par de direcciones ICE utilizado por la sesion incluye una direccion ICE (que se refiere como una primera direccion ICE en esta forma de realizacion de la presente invencion) utilizada por el navegador que recibe el mensaje de regeneracion para la pagina y una direccion (que se refiere como una segunda direccion en esta forma de realizacion de la presente invencion) utilizada por un usuario en extremo homologo en el par de direcciones ICE utilizado por la sesion. La segunda direccion puede ser una direccion ICE u otra direccion, en donde esta forma de realizacion de la presente invencion no establece lfmite alguno a tal respecto.
Mas concretamente, el usuario necesita utilizar la direccion ICE para su conexion a otro usuario cuando se establece la sesion (sesion de comunicacion en tiempo real entre navegadores (WebRTC, Real-time Communication Between Browsers)) con el otro usuario utilizando el navegador del terminal. En un proceso de sesion, el terminal envfa, utilizando el navegador, un mensaje a un servidor STUN o TURN que asigna la primera direccion ICE utilizada por la sesion, y recibe una respuesta reenviada por el servidor STUN o TURN con el fin de retener la primera direccion ICE para estar en el estado activado. Sin embargo, en esta forma de realizacion de la presente invencion, incluso despues de recibir un mensaje de regeneracion, el terminal continua todavfa enviando un mensaje al servidor STUN o TURN que asigna la primera direccion ICE utilizada por la sesion, con el fin de continuar la retencion de la primera direccion ICE utilizada por la sesion para estar en el estado activado, y no necesita liberar un recurso de la primera direccion ICE correspondiente a la sesion.
Ademas, en un proceso de retencion de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion en la pagina para estar en el estado activado, el terminal envfa, ademas, una demanda de regeneracion al servidor, en donde la demanda de regeneracion puede incluir un localizador uniforme de recursos (URL: Uniform Resource Locator) de la pagina, de modo que el servidor reenvfe una pagina regenerada en conformidad con el URL.
Etapa 103: Recibir una pagina regenerada reenviada por el servidor, en donde la pagina regenerada incluye un programa de aplicacion.
Mas concretamente, despues de un mensaje de regeneracion para una pagina enviado por el terminal, el servidor adquiere la pagina regenerada correspondiente al URL en conformidad con el URL que se incluye en el mensaje de regeneracion para una pagina, y reenvfa la pagina regenerada al terminal, en donde el mensaje de regeneracion incluye el programa de aplicacion, y el programa de aplicacion puede ser un programa de aplicacion de JavaScript (JS) u otro programa de aplicacion. Esta forma de realizacion de la presente invencion no establece ningun lnriite a este respecto.
Etapa 104: Ejecutar el programa de aplicacion para restablecer una transmision de contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado.
Mas concretamente, despues de recibir la pagina regenerada, el terminal ejecuta el programa de aplicacion (a modo de ejemplo, el programa de JS) incluido en la pagina y ejecuta el programa de aplicacion para el establecimiento, utilizando la direccion ICE en el estado activado, la recepcion del contenido enviado por un usuario de extremo homologo de la sesion y el envfo del contenido de la sesion al usuario de extremo homologo.
Como puede deducirse de la forma de realizacion anterior, cuando se regenera una pagina, hacer que no pueda continuar una transmision de contenido de sesion con un usuario de extremo homologo, a modo de ejemplo, un sonido, un mensaje o elemento similar del homologo, un terminal continua reteniendo una direccion ICE utilizada por la sesion en la pagina para estar en un estado activado, de modo que el terminal, despues de la recepcion de una pagina regenerada, establezca una conexion directamente en conformidad con la direccion ICE en el estado activado, y despues de recibir un mensaje regenerado para una pagina, el terminal no necesita negociar una direccion ICE para determinar una
5
10
15
20
25
30
35
40
45
50
55
60
65
direccion ICE adecuada para recibir y enviar un contenido de sesion, lo que acorta el tiempo de espera para realizar una itera de contenido de sesion con el usuario de extremo homologo, con lo que se mejora la experiencia del usuario.
La Figura 2 es un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en conformidad con una forma de realizacion de la presente invencion. En la manera de puesta en practica, un terminal memoriza, utilizando un primer modulo de aplicacion, una direccion ICE utilizada por la sesion en un servidor, que incluye las etapas siguientes:
Etapa 200: Un usuario ejecuta un primer programa de aplicacion de un primer modulo de aplicacion utilizando un navegador de un terminal para establecer una primera informacion de conexion de homologos.
Mas concretamente, el terminal incluye un modulo del navegador, el primer modulo de aplicacion y un segundo modulo de aplicacion. El primer modulo de aplicacion memoriza el primer programa de aplicacion, en donde el primer programa de aplicacion es un programa de aplicacion utilizado por el modulo del navegador para ejecutar el programa de aplicacion para establecer una sesion, con un extremo homologo, a modo de ejemplo, un programa de aplicacion de JS o puede ser otro programa de aplicacion. El segundo modulo de aplicacion memoriza un segundo programa de aplicacion, en donde el segundo programa de aplicacion es un programa de aplicacion enviado por un servidor despues de recibir una demanda de regeneracion al terminal.
Cuando se establece una sesion de WebRTC con un dispositivo de extremo homologo, el terminal necesita ejecutar el primer programa de aplicacion en el primer modulo de aplicacion para establecer la informacion de conexion entre homologos PeerConnection correspondiente a la sesion de WebRTC. La primera informacion de conexion entre homologos registra la informacion relacionada con la sesion de WebRTC, a modo de ejemplo, un identificador de sesion de WebRTC (a modo de ejemplo, informacion sobre los usuarios llamante y llamado y otra informacion que puede identificar una sesion), informacion de SDP utilizada por la sesion WebRTC, informacion de estado operativo (a modo de ejemplo, si esta, o no, en un estado conectado) de la sesion WebRTC e informacion de estado operativo que indique si la sesion WebRTC ha adquirido, o no, la direccion ICE. En esta forma de realizacion, puesto que la sesion WebRTC esta establecida, la primera informacion de conexion de homologos registra la informacion de estado operativo que indica que la sesion WebRTC ha adquirido la direccion ICE.
Si la misma pagina tiene multiples sesiones WebRTC que se estan realizando por un usuario de terminal, cada sesion WebRTC tiene una conexion entre homologos PeerConnection para registrar informacion relacionada sobre la sesion WebRTC. Ademas, el terminal, despues de establecer la primera informacion de PeerConnection, envfa la primera informacion de PeerConnection al servidor, y sincroniza la actualizacion de la primera informacion de PeerConnection para el servidor.
Etapa 201: El usuario realiza, utilizando la sesion WebRTC establecida por el navegador del terminal con otro terminal, la transmision del contenido de sesion con el otro terminal (a modo de ejemplo, un extremo de homologo).
Etapa 202: El modo de navegador envfa informacion sobre un par de direcciones ICE utilizado por la sesion WebRTC al primer modulo de aplicacion.
Mas concretamente, el terminal, utilizando el navegador que usa una funcion de devolucion de llamada de direccion ICE (iceCallback() function) u otra funcion, envfa la direccion ICE utilizada por el terminal en la sesion WebRTC al programa de aplicacion del primer modulo de aplicacion, es decir, el primer programa de aplicacion (a modo de ejemplo, un programa de JS (JavaScript)).
La funcion iceCallback (cand, |moreToFollow|) se utiliza como una funcion existente para un navegador para enviar una direccion candidato ICE recogida al programa de aplicacion del primer modulo de aplicacion, en donde un valor de un parametro de direccion candidato (cand) es la direccion ICE. Un parametro de direccion ICE mas (|moreToFollow|) tiene dos valores opcionales. Cuando un valor es verdadero (true), ello indica que el navegador enviara todavfa una direccion ICE candidato al primer programa de aplicacion; y cuando el valor es falso (false), ello indica que el navegador no enviara de nuevo una direccion candidato ICE para la misma sesion WebRTC, es decir, un procedimiento para recoger una direccion candidato ICE es concluido.
En esta forma de realizacion, la funcion de devolucion de llamada de direccion de ICE (iceCallback() function) puede utilizarse para transmitir la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC, que puede ser, a modo de ejemplo, iceCallback (local-cand, remote-cand, |moreToFollow|, |Provided|). Por supuesto, tambien se permite que no se transmita ningun parametro |moreToFollow| indicando que una direccion candidato es la direccion ICE utilizada por la sesion WebRTC, es decir, iceCallback (local-cand, remote-cand, |moreToFollow|). En la funcion de devolucion de llamada de direccion ICE, una direccion de parametro local (local-cand) representa que la sesion WebRTC utiliza ocasionalmente la direccion ICE (lo que se refiere como la primera direccion ICE en esta forma de realizacion de la presente invencion), que se utiliza por el navegador que recibe el mensaje de regeneracion para la pagina, en el par de direcciones ICE. El parametro de direccion de extremos homologos (remote-cand) representa informacion de una direccion (que se refiere como la segunda direccion en la forma de realizacion de la presente invencion), que se utiliza por un usuario de extremos homologos, en el par de direcciones ICE utilizado por la sesion WebRTC. Por supuesto, en
5
10
15
20
25
30
35
40
45
50
55
60
65
otra manera opcional, la segunda direccion puede ser una direccion ICE o no ser una direccion ICE, en donde esta forma de realizacion de la presente invencion no establece ningun lnmite a tal respecto. Como alternativa, un parametro, |Provided| se anade, ademas a la funcion iceCallback(), es decir, iceCallback (local-cand, remote-cand, |moreToFollow|, |Provided|). Cuando |Provided| es falso, ello indica que el par de direcciones de candidato local y candidato distante no es una direccion ICE utilizada por la sesion; y cuando |Provided| es verdadero (true), ello indica que la informacion sobre el par de direcciones candidato local y candidato distante es informacion sobre el par de direcciones ICE utilizado por la sesion. Cuando |Provided| es verdadero (true), |moreToFollow| necesita establecerse a falso (false). Otros ajustes operativos son similares a los anteriormente descritos.
Por supuesto, en esta forma de realizacion de la presente invencion, una nueva funcion, a modo de ejemplo, una funcion de descubrimiento de direccion ICE (finalIce (local-cand, remote-cand) function) puede utilizarse tambien para enviar la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC al primer programa de aplicacion. En tal caso, un valor candidato de la funcion es la informacion sobre la direccion ICE utilizada por la sesion WebRTC.
Ademas, la funcion anterior puede utilizarse, ademas, para enviar solamente la direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina, en donde esta forma de realizacion de la presente invencion no establece ningun lnmite a tal respecto.
Etapa 203: El primer modulo de aplicacion envfa una demanda de memorizacion del par de direcciones ICE al servidor, en donde la demanda de memorizacion del par de direcciones ICE incluye la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC y el identificador de sesion WebRTC. Una demanda HTTP POST puede utilizarse como la demanda para la memorizacion del par de direcciones ICE.
Etapa 204: El servidor envfa una respuesta de memorizacion del par de direcciones ICE al primer modulo de aplicacion. Mas concretamente, despues de recibir la demanda para la memorizacion del par de direcciones ICE, el servidor vincula y memoriza el par de direcciones ICE y el identificador de sesion WebRTC correspondiente, y envfa una respuesta de exito operativo de memorizacion del par de direcciones ICE al primer modulo de aplicacion.
Etapa 205: El terminal recibe un mensaje de regeneracion para una pagina, y mas concretamente, puede hacerse referencia a la etapa 101, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Etapa 206: El terminal envfa una demanda de regeneracion al servidor. La demanda de regeneracion puede incluir un localizador uniforme de recursos (URL: Uniform Resource Locator) de la pagina, de modo que el servidor adquiera la pagina correspondiente al URL y reenvfe la pagina como una pagina regenerada al modulo del navegador.
Etapa 207: El modulo del navegador retiene la direccion de establecimiento de conectividad interactiva (ICE, Interactive Connectivity Establishment), esto es, una primera direccion ICE utilizada por la sesion en la pagina para estar en un estado activado.
Mas concretamente, el navegador determina, en conformidad con la primera informacion de PeerConnection correspondiente a la sesion WebRTC, que la sesion WebRTC esta en un estado conectado antes de que se reciba el mensaje de regeneracion para la pagina, y continua la retencion de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC para estar en el estado activado. Sin embargo, despues de la recepcion del mensaje de regeneracion para la pagina, el navegador suprime todo el contenido presentado por la pagina y suprime la informacion relacionada sobre la primera informacion de PeerConnection correspondiente a la sesion WebRTC.
Dicho de otro modo, el navegador solamente retiene la primera direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC para estar en el estado activado, pero se suprime una correspondencia entre la primera direccion ICE y la sesion WebRTC.
Conviene senalar que las etapas 206 y 207 no tienen secuencia alguna en terminos de tiempo.
Etapa 208: El navegador inicia el funcionamiento de un temporizador para la retencion de la primera direccion ICE para estar en el estado activado. Es decir, dentro de un margen de tiempo establecido por el temporizador, la primera direccion ICE se retiene para estar en el estado activado. Mas concretamente, dentro del margen temporal indicado por el temporizador, un mensaje de demanda se envfa a un servidor STUN o TURN que asigna la primera direccion ICE y una respuesta reenviada por el servidor STUN o TURN se recibe con el fin de retener el estado activado de la direccion ICE.
Etapa 209: El servidor responde a la demanda de regeneracion enviando la pagina regenerada al segundo modulo de aplicacion del terminal.
Mas concretamente, la pagina regenerada que incluye un codigo HTML regenerado y un segundo programa de aplicacion (a modo de ejemplo, un programa de aplicacion, un programa de aplicacion de JS) se envfa al segundo modulo de aplicacion del terminal. Ademas, el segundo programa de aplicacion incluye, ademas, la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC y la primera informacion de PeerConnection correspondiente a la
5
10
15
20
25
30
35
40
45
50
55
60
65
sesion WebRTC. Ademas, el segundo programa de aplicacion y el primer programa de aplicacion pueden ser el mismo programa o ser diferentes programas de aplicacion (a modo de ejemplo, la informacion sobre la direccion ICE utilizada por la sesion WebRTC e informacion sobre el identificador de sesion WebRTC puede estar directamente incluido en el segundo programa de aplicacion).
Etapa 210: Ejecutar el segundo programa de aplicacion proporcionado en la etapa 209, y establecer una segunda informacion de PeerConnection correspondiente a la sesion WebRTC, con el fin de restablecer una sesion de contenido de la sesion WebRTC.
Mas concretamente, el segundo programa de aplicacion incluye la primera informacion de PeerConnection. El modulo del navegador establece la segunda informacion de PeerConnection correspondiente a la sesion WebRTC utilizando la primera informacion de PeerConnection del segundo programa de aplicacion proporcionado por el servidor en la etapa 209. A modo de ejemplo, un identificador de sesion (a modo de ejemplo, informacion sobre los usuarios llamante y llamado) registrados en la primera informacion de PeerConnection y la informacion de SDP utilizada por la sesion WebRTC antes de la regeneracion se registran en la segunda informacion de PeerConnection.
Etapa 211: Enviar la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC al modulo del navegador, de modo que el modulo del navegador restablezca la transmision del contenido de sesion de la sesion WebRTC correspondiente al identificador de sesion utilizando la direccion ICE correspondiente a la informacion sobre el par de direcciones ICE.
Mas concretamente, el segundo modulo de aplicacion puede enviar la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC al modulo del navegador utilizando una funcion de respuesta de direccion ICE. A modo de ejemplo, una nueva funcion de interfaz de programa de aplicacion (funcion API), a modo de ejemplo, la funcion de respuesta de direccion ICE (icefeedfback (|local-cand|, |remote-cand|, function)) se utiliza para transmitir la informacion sobre la direccion ICE, en donde la funcion de respuesta de direccion ICE se utiliza por el segundo modulo de aplicacion para enviar la informacion sobre la direccion ICE al navegador, local-cand representa informacion sobre la primera ICE en el par de direcciones ICE que se utiliza ocasionalmente por la sesion y remote-cand representa informacion sobre la segunda direccion en el par de direcciones ICE que se utiliza ocasionalmente por la sesion.
Ademas, el segundo modulo de aplicacion puede utilizar, tambien una funcion API existente, a modo de ejemplo, una funcion de mensaje de direccion iCe de procesamiento (processIceMessage(|candidate|) (function), en donde la funcion processIceMessage(|candidate|) es una funcion existente para un programa de aplicacion (a modo de ejemplo, un programa de JS) para enviar una direccion ICE del extremo homologo al navegador. La funcion puede expandirse en este caso. A modo de ejemplo, se anade un parametro |final|, que es processIceMessage (|local-cand|, |remote-cand|, |final|), en donde cuando un valor del parametro |final| es verdadero, ello indica que una direccion local de parametro local-cand representa la primera direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC y una direccion de parametro distante remote-cand representa la segunda direccion en el par de direcciones ICE que se utiliza ocasionalmente por la sesion, de modo que el navegador utilice directamente la direccion para establecer un enlace de ICE; y cuando el valor de parametro |final| es falso, una accion de la funcion es la misma que antes.
Etapa 212: El modulo del navegador restablece la transmision del contenido de sesion de la sesion WebRTC utilizando el par de direcciones ICE.
Mas concretamente, despues de recibir el par de direcciones ICE enviado por JS, el modulo del navegador determina si la primera direccion ICE en el par de direcciones ICE existe en el navegador y esta en el estado activado; y cuando se determina que la primera direccion ICE esta en el estado activado, asigna la primera direccion ICE a la sesion WebRTC y envfa datos a la segunda direccion, con lo que se restablece la transmision del contenido de sesion.
Etapa 213: El modulo del navegador interrumpe el funcionamiento del temporizador que se inicio operativamente con anterioridad.
Como una manera alternativa, la etapa 213 puede realizarse antes de la etapa 212. Es decir, cuando el modulo del navegador determina, en conformidad con el tiempo establecido por el temporizador, que la duracion para la retencion de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC para estar en el estado activado alcanza la duracion establecida por el temporizador, el modulo del navegador interrumpe el funcionamiento del temporizador anteriormente iniciado y no retiene la direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC para estar en el estado activado. En la etapa 212, despues de recibir el par de direcciones ICE enviado por JS, el modulo del navegador detecta que la primera direccion ICE en el par de direcciones ICE no existe en el navegador o existe en el navegador pero no esta en el estado activado, el modulo del navegador no puede restablecer la transmision del contenido de sesion directamente utilizando el par de direcciones ICE correspondiente a la informacion sobre el par de direcciones ICE enviada por JS, pero necesita realizar de nuevo la negociacion del par de direcciones ICE como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como puede deducirse de la forma de realizacion anterior, cuando se regenera una pagina, lo que hace no pueda continuar la interaccion de sesion con un usuario de extremo homologo, a modo de ejemplo, un sonido, un mensaje, o
5
10
15
20
25
30
35
40
45
50
55
60
65
elemento similar del homologo no puede recibirse, un terminal sigue la retencion de una primera direccion ICE utilizada por la sesion en la pagina para estar en un estado activado, de modo que el terminal, despues de recibir una pagina regenerada, establezca una conexion directamente utilizando la direccion ICE en el estado activado, y despues de recibir un mensaje regenerado para una pagina, el terminal no necesita negociar una primera direccion ICE para determinar una direccion ICE adecuada para recibir y enviar un contenido de sesion, lo que reduce el tiempo de espera para realizar una interaccion del contenido de sesion con el usuario de extremo homologo, con lo que se mejora la experiencia del usuario.
La Figura 3 es un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en conformidad con una forma de realizacion de la presente invencion. La manera de puesta en practica es la misma que un procedimiento correspondiente a la Figura 2, en donde un terminal memoriza una direccion ICE utilizada por la sesion WebRTC en un servidor, que incluye las etapas siguientes:
Etapa 301: Un usuario pone en practica, utilizando una sesion WebRTC establecida por un navegador de un terminal con otro terminal, una transmision de contenido de sesion con el otro terminal (a modo de ejemplo, un extremo homologo).
Antes de que se realice esta etapa, cuando se establece la sesion WebRTC con el usuario de extremo homologo, el terminal establece la primera informacion de PeerConnection correspondiente a la sesion WebRTC ejecutado un primer programa de aplicacion. La primera informacion de PeerConnection registra informacion relacionada sobre la sesion WebRTC, a modo de ejemplo, un identificador de sesion WebRTC (a modo de ejemplo, informacion sobre los usuarios llamante y llamado y otra informacion que pueda identificar una sesion), informacion de SDP utilizada por la sesion por la sesion WebRTC y la informacion del estado operativo (a modo de ejemplo, si esta, o no, en un estado conectado) de la sesion WebRTC, informacion que indica si la sesion WebRTC ha negociado, o no, la direccion ICE e informacion de estado que indica si la sesion WebRTC ha adquirido la direccion ICE. En esta forma de realizacion, puesto se establece la sesion WebRTC, la primera informacion de PeerConnection registra la informacion de estado operativo que indica que la sesion WebRTC ha adquirido la direccion ICE.
Si la misma pagina tiene multiples sesiones WebRTC que se estan realizando un por un usuario terminal, cada sesion WebRTC tiene una informacion de PeerConnection para registrar informacion relacionada sobre la sesion WebRTC. Ademas, el terminal, despues de establecer la primera informacion de PeerConnection, envfa la primera informacion de PeerConnection al servidor y sincroniza la actualizacion de la informacion de PeerConnection al servidor.
Etapa 302: El terminal envfa una demanda para memorizar el par de direcciones ICE al servidor, en donde la demanda para memorizar la direccion ICE incluye informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC y la primera informacion de PeerConnection correspondiente a la sesion WebRTC. Puede utilizarse una demanda HTTP POST como la demanda para memorizar la direccion ICE, de modo que el servidor vincule y memorice la direccion ICE y el identificador de sesion WebRTC correspondiente.
Antes de realizar esta etapa, el terminal, utilizando el navegador que usa una funcion de devolucion de llamada de direccion ICE (iceCallback() function) u otra funcion, envfa la direccion ICE utilizada por el terminal en la sesion WebRTC a un primer programa de aplicacion (a modo de ejemplo, un programa de JS (JavaScript)). En esta forma de realizacion de la presente invencion, por conveniencia de la descripcion, un programa de aplicacion utilizado para establecer la sesion WebRTC antes de una demanda de regeneracion se refiere como un primer programa de aplicacion y un programa de aplicacion que se ejecuta para restablecer una transmision de un contenido de sesion despues de que se reciba un mensaje de regeneracion se refiere como un segundo programa de aplicacion. El primer programa de aplicacion y el segundo programa de aplicacion pueden ser los mismos o diferentes, en donde esta forma de realizacion de la presente invencion no establece ningun lfmite a tal respecto.
La funcion de devolucion de llamada de ICE (iceCallback (cand, |moreToFollow|) se utiliza como una funcion existente para un navegador para un navegador enviar una direccion candidato ICE recogida al programa de aplicacion del primer modulo de aplicacion, en donde un valor de un parametro de direccion candidato (cand) es la direccion ICE. Un parametro de direccion ICE mas (|moreToFollow|) tiene dos valores opcionales. Cuando un valor es verdadero (true), ello indica que el navegador enviara, ademas, una direccion ICE candidato al primer programa de aplicacion; y cuando el valor es falso (false), ello indica que el navegador no enviara de nuevo una direccion candidato ICE para la misma sesion WebRTC; es decir, un procedimiento para recoger una direccion candidato ICE es concluido.
En esta forma de realizacion, la funcion de devolucion de llamada de direccion de ICE (iceCallback() function) se utiliza para transmitir el par de direcciones ICE utilizado por la sesion WebRTC, que puede ser, a modo de ejemplo, iceCallback (local-cand, remote-cand, |moreToFollow|, |Provided|). Por supuesto, tambien se permite que no se transmita ningun parametro |moreToFollow| indicando que la direccion candidato local y la direccion candidato distante el par de direcciones ICE utilizado por la sesion WebRTC, es decir, iceCallback (local-cand, remote-cand, |moreToFollow|). En la funcion de devolucion de llamada de direccion ICE, el parametro de direccion local (local-cand) representa que la sesion WebRTC utiliza ocasionalmente la direccion ICE (que se refiere como la primera direccion ICE en esta forma de realizacion de la presente invencion), que se utiliza por el navegador que recibe el mensaje de regeneracion para la pagina, en el par de direcciones ICE. El parametro de la direccion de extremo homologo (remote-cand) representa una direccion (que se refiere como la segunda direccion en esta forma de realizacion de la presente invencion), que se utiliza por un usuario de extremo homologo, en el par de direcciones ICE utilizado por la sesion WebRTC. Por supuesto, en otra
5
10
15
20
25
30
35
40
45
50
55
60
65
manera opcional, la segunda direccion puede ser una direccion ICE o no ser una direccion ICE, en donde esta forma de realizacion de la presente invencion no establece ningun lnmite a tal respecto. Como alternativa, un parametro, a modo de ejemplo |Provided| se anade, ademas a la funcion iceCallback(), es decir, iceCallback (local-cand, remote-cand, |moreToFollow|, |Provided|). Cuando |Provided| es falso, ello indica que el par de direcciones de candidato local y candidato distante no es una direccion ICE utilizada por la sesion; y cuando |Provided| es verdadero (true), ello indica que el par de direcciones candidato local y candidato distante es la direccion iCe utilizado por la sesion. Cuando |Provided| es verdadero (true), |moreToFollow| necesita establecerse a falso (false). Otros ajustes operativos son similares a los anteriormente descritos.
Por supuesto, en esta forma de realizacion de la presente invencion, una nueva funcion, a modo de ejemplo, una funcion de descubrimiento de direccion ICE (finallce (local-cand, remote-cand) function) puede utilizarse tambien para enviar el par de direcciones ICE utilizado por la sesion WebRTC al primer programa de aplicacion. En tal caso, un valor candidato de la funcion es la direccion ICE utilizada por la sesion WebRTC.
Ademas, la funcion anterior puede utilizarse, ademas, para enviar solamente la direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina, en donde esta forma de realizacion de la presente invencion no establece ningun lnmite a tal respecto.
Etapa 303: El servidor envfa una respuesta de memorizacion del par de direcciones ICE al terminal. Mas concretamente, despues de recibir la demanda para la memorizacion del par de direcciones ICE, el servidor vincula y memoriza la informacion sobre el par de direcciones ICE y el identificador de sesion WebRTC correspondiente, y envfa una respuesta de memorizacion del par de direcciones ICE al terminal. La etapa 304 es la misma que la etapa 101, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Etapa 305: El terminal envfa una demanda de referencia al servidor. La demanda de regeneracion puede incluir un localizador uniforme de recursos (URL: Uniform Resource Locator) de la pagina, de modo que el servidor adquiera la pagina correspondiente al URL y reenvfa la pagina como una pagina regenerada al terminal.
Etapa 306: El terminal retiene la direccion ICE utilizada por la sesion en la pagina para estar en el estado activado.
Mas concretamente, si el terminal determina, en conformidad con la primera informacion de PeerConnection correspondiente a la sesion WebRTC, que la sesion WebRTC antes de que se reciba el mensaje de regeneracion para la pagina esta en un estado conectado, el terminal sigue reteniendo al primera direccion ICE para estar en el estado activado. Sin embargo, despues de recibir el mensaje de regeneracion para la pagina, el terminal suprime todo el contenido presentado por la pagina y suprime la primera informacion de PeerConnection correspondiente a la sesion WebRTC.
Dicho de otro modo, el terminal solamente retiene el estado activado de la primera direccion ICE; sin embargo, se suprime una correspondencia entre la primera direccion ICE y la sesion WebRTC.
Conviene senalar que las etapas 305 y 306 no tienen ninguna secuencia en terminos de tiempo.
Etapa 307: El terminal inicia el funcionamiento de un temporizador para la retencion de la primera direccion ICE para estar en el estado activado. Es decir, dentro de un margen temporal establecido por el temporizador, la primera direccion ICE es retenida para estar en el estado activado. Mas concretamente, dentro del margen temporal indicado por el temporizador, se envfa un mensaje a la primera direccion ICE y se recibe una respuesta reenviada desde la primera direccion ICE.
Etapa 308: El servidor responde a la demanda de regeneracion enviando la pagina regenerada al terminal.
Mas concretamente, la pagina regenerada que incluye un codigo HTML regenerado y un segundo programa de aplicacion (a modo de ejemplo, un programa de aplicacion de JS) se envfa al terminal. Ademas, la pagina regenerada incluye, ademas, la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC y la primera informacion de PeerConnection correspondiente a la sesion WebRTC. Ademas, el segundo programa de aplicacion y el primer programa de aplicacion pueden ser el mismo programa o ser diferentes programas de aplicacion. A modo de ejemplo, la informacion sobre la direccion ICE utilizada por la sesion WebRTC y la informacion sobre el identificador de sesion WebRTC pueden incluirse directamente en el segundo programa de aplicacion.
Etapa 309: El terminal restablece la transmision del contenido de sesion de la sesion WebRTC utilizando el par de direcciones ICE correspondiente a la informacion sobre el par de direcciones ICE.
Mas concretamente, despues de recibir la pagina regenerada que incluye la informacion sobre el par de direcciones ICE y la primera informacion de PeerConnection correspondiente a la segunda direccion WebRTC, y el segundo programa de aplicacion que se envfa por el servidor, el terminal detecta si la primera direccion ICE existe en el navegador y esta en el estado activado; y cuando se determina que la primera direccion ICE esta en el estado activado, asigna la primera
5
10
15
20
25
30
35
40
45
50
55
60
65
direccion ICE a la sesion WebRTC y env^a datos a la segunda direccion, con lo que se restablece la transmision del contenido de sesion.
Antes de realizar esta etapa, el terminal necesita, ademas, ejecutar el segundo programa de aplicacion proporcionado en la etapa 309 y establecer la segunda informacion de PeerConnection correspondiente a la sesion WebRTC, con el fin de restablecer una transmision de contenido de la sesion WebRTC. A modo de ejemplo, un identificador de sesion (a modo de ejemplo, informacion sobre usuarios llamante y llamado) registrado en la primera informacion de PeerConnection e informacion de SDP utilizada por la sesion WebRTC antes de la regeneracion se registran en la segunda informacion de PeerConnection.
Ademas, el terminal puede adquirir, utilizando una funcion de respuesta de direccion ICE, la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC que se incluye en la pagina regenerada, con el fin de restablecer la transmision del contenido de sesion de la sesion WebRTC utilizando el par de direcciones ICE correspondiente a la informacion sobre el par de direcciones ICE.
Mas concretamente, el terminal puede utilizar una nueva funcion de interfaz de programa de aplicacion (funcion API), a modo de ejemplo, la funcion de respuesta de direccion ICE (icefeedfback (|local-cand|, |remote-cand|, function)) para adquirir el par de direcciones ICE, en donde la funcion se utiliza por el segundo modulo de aplicacion para enviar la informacion sobre la direccion ICE al navegador, en donde un parametro de direccion candidato, es decir, un parametro “|local-cand|, |remote-cand|”, es la informacion sobre el par de direcciones ICE a enviarse y puede utilizar una funcion API existente, a modo de ejemplo, una funcion de mensaje de direccion ICE de procesamiento (processIceMessage(|candidate|) function), en donde la funcion processIceMessage(|candidate|) es una funcion existente para un programa de aplicacion (a modo de ejemplo, un programa de JS) para enviar una direccion ICE del extremo homologo al navegador. La funcion puede expandirse en este caso. Cuando un valor del parametro |final| es verdadero, ello indica que ||local-cand| y |remote-cand|| transmiten la informacion sobre el par de direcciones ICE que se negocia y se determino con anterioridad, de modo que el navegador utilice directamente la direccion para establecer un enlace de ICE; cuando el valor de parametro |final| es falso, una accion de la funcion es la misma que con anterioridad.
Etapa 310: El terminal interrumpe el funcionamiento del temporizador operativamente iniciado con anterioridad.
Conviene senalar que en un procedimiento correspondiente a la Figura 3, el terminal puede recibir posiblemente el mensaje de regeneracion para la pagina multiples veces. Si el mensaje de regeneracion para la pagina se recibe por segunda vez, el terminal interrumpe la realizacion de una etapa de regeneracion en curso. Si se supone que un mensaje de regeneracion para la pagina se recibe por segunda vez cuando el terminal esta realizando cualquier otra etapa de entre las etapas 305, 308 y 309, el terminal interrumpe la realizacion de la etapa en curso, tal como cualquier etapa de entre las etapas 305, 308 y 309 y vuelve a realizar las etapas 305, 308 y 309; sin embargo, la etapa 307 no se realiza repetidamente. Es decir, el temporizador para la recepcion de la direccion ICE para estar en el estado activado no se activa de nuevo. Cuando la etapa 309 se realiza en paralelo, se determina si la direccion ICE esta todavfa, o no, en el estado activado, si la direccion ICE esta en el estado activado, se realiza la etapa 309; y de no ser asf, no se puede restablecer una transmision de contenido de la sesion WebRTC utilizando directamente la informacion sobre el par de direcciones ICE memorizada y enviada por el terminal, pero la negociacion del par de direcciones ICE necesita realizarse de nuevo como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como una manera alternativa, la etapa 310 puede realizarse antes de la etapa 309. Es decir, cuando el terminal determina, en conformidad con la duracion establecida por el temporizador, que la duracion para la retencion de la direccion ICE en el par de direcciones ICE utilizado por la sesion WebRTC para estar en el estado activado alcanza la duracion establecida por el temporizador, el terminal interrumpe el funcionamiento del temporizador operativamente iniciado y no retiene la direccion ICE utilizada por la sesion WebRTC para estar en el estado activado (es decir, interrumpe el envfo de un paquete de mensajes a la direccion ICE y la recepcion de una respuesta reenviada desde la direccion ICE). En la etapa 309, despues de que el terminal adquiera la direccion ICE utilizada por la sesion WebRTC y detecte que no existe en el navegador o existe en el navegador pero no esta en el estado activado, el terminal no puede restablecer la transmision del contenido de sesion utilizando la direccion ICE adquirida y memoriza, pero necesita realizar la negociacion de direcciones ICE de nuevo como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como puede deducirse de la forma de realizacion anterior, cuando se regenera una pagina, lo que hace no pueda continuar la interaccion de sesion con un usuario de extremo homologo, a modo de ejemplo, un sonido, un mensaje, o elemento similar del homologo no puede recibirse, una direccion ICE utilizada por la sesion en la pagina para estar en un estado activado, de modo que el terminal, despues de recibir una pagina regenerada, establezca una conexion directamente en conformidad con la direccion ICE en el estado activado, y despues de recibir un mensaje de regeneracion para una pagina, el terminal no necesita negociar una direccion ICE para determinar una direccion ICE adecuada para recibir y enviar un contenido de sesion, lo que reduce el tiempo de espera para realizar una interaccion del contenido de sesion con el usuario de extremo homologo, con lo que se mejora la experiencia del usuario.
La Figura 4 es un diagrama de flujo de un metodo para restablecer la transmision de un contenido de sesion en conformidad con una forma de realizacion de la presente invencion. En la manera de puesta en practica, un terminal
5
10
15
20
25
30
35
40
45
50
55
60
65
memoriza, utilizando un primer modulo de aplicacion y empleando una funcion API de memorizacion de la web (web storage API function), una direccion ICE utilizada por la sesion WebRTC en un modulo del navegador, que incluye las etapas siguientes:
Las etapas 400 a 402 son las mismas que las etapas 201 a 202, que no se describen en detalle en esta forma de realizacion de la presente invencion.
Etapa 403: El primer modulo de aplicacion envfa una demanda de memorizacion de un par de direcciones ICE a un modulo del navegador, en donde la demanda memorizacion del par de direcciones ICE incluye informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC y un identificador de sesion WebRTC; y el modulo del navegador vincula y memoriza la informacion sobre el par de direcciones ICE y el identificador de sesion de la sesion WebRTC correspondiente.
Mas concretamente, despues de la recepcion de la informacion sobre el par de direcciones ICE, un primer programa de aplicacion en el primer modulo de aplicacion solicita una funcion de interfaz de programacion de aplicacion de memorizacion de sesion (Application Programming Interface, API) (session storage API, windows.sessionStorage.setItem (“key”, “value”) function) en un navegador de memorizacion local (web storage) y vincula y memoriza el identificador de sesion de la sesion WebRTC y la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC. Como una manera de puesta en practica, la funcion define una variable que tiene un nombre de contrasena, es decir “key” en donde su valor es “value”. Despues de que el modulo del navegador reciba la funcion API de memorizacion de sesion, una variable que tenga un nombre de variable “key” y un valor “value” se crea y memoriza en el navegador. En esta forma de realizacion, el primer programa de aplicacion puede utilizar un nombre de variable "PC-ICE" en donde “PC” es el identificador de sesion de la seguimiento WebRTC, y un parametro “ICE” indica que esta memoriza la informacion sobre el par de direcciones ICE. Por lo tanto, en tal caso, la interfaz API puede ser una funcion de memorizacion de sesion de ventana informatica denominada Windows.sessionStorage.setItem ("PC-ICE", “candidate”). El modulo del navegador, despues de recibir la funcion, memoriza la viable "PC-ICE" y su valor en el navegador, en donde un valor de “candidata”, en este caso, es la informacion sobre el par de direcciones ICE recibido en la etapa 402. Despues de que la memorizacion este concluida, el primer programa de aplicacion cambia un estado de un parametro de estado del par de direcciones ICE (parametro “iceState”) de un primer parametro PeerConnection a un estado de direccion ICE adquirido, a modo de ejemplo, “ICE_RECEIVED”.
La etapa 404 es la misma que la etapa 205, que no se describe en detalle en esta forma de realizacion de la presente invencion.
La etapa 405 es la misma que la etapa 206, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Las etapas 406 a 407 son las mismas que las etapas 207 a 208, que no se describen en detalle en esta forma de realizacion de la presente invencion.
Conviene senalar que las etapas 405 y 406 y la etapa 407 no tienen ninguna secuencia en terminos de tiempo.
Etapa 408: Un servidor responde a una demanda de regeneracion enviando una pagina regenerada a un segundo modulo de aplicacion de un terminal.
Mas concretamente, la pagina regenerada incluye un codigo HTML regenerado y un segundo programa de aplicacion (a modo de ejemplo, un programa de aplicacion de JS) se envfa al modulo del navegador del terminal, en donde el segundo programa de aplicacion incluye la primera informacion de PeerConnection.
Etapa 409: Ejecutar el segundo programa de aplicacion proporcionado en la etapa 408 y establecer una segunda informacion de PeerConnection correspondiente a la sesion WebRTC, con el fin de restablecer una transmision de contenidos de la sesion WebRTC.
Mas concretamente, el modulo del navegador establece la segunda informacion de PeerConnection correspondiente a la sesion WebRTC utilizando la primera informacion de PeerConnection incluida en el segundo programa de aplicacion. A modo de ejemplo, un identificador de sesion (a modo de ejemplo, informacion sobre los usuarios llamante y llamado) registrado en la primera informacion de PeerConnection, la informacion de SDP utilizada por la sesion WebRTC antes de la regeneracion y la informacion sobre la direccion ICE negociada por la sesion WebRTC se registran en el segundo parametro PeeStep 410: El segundo modulo de aplicacion envfa una demanda de adquisicion de la informacion sobre el par de direcciones ICE al modulo del navegador, en donde la demanda de adquisicion de la informacion sobre el par de direcciones ICE incluye el identificador de sesion de la sesion WebRTC.
Mas concretamente, el segundo modulo de aplicacion solicita, utilizando el segundo programa de aplicacion, una informacion de brrConnection.
5
10
15
20
25
30
35
40
45
50
55
60
65
La funcion de API de memorizacion de sesion de funcion API de memorizacion local como alerta (windows.sessionStorage.getItem ("PC-ICE") de modo que el navegador, despues de recibir la funcion, busque dentro del navegador una variable que tenga un nombre "PC-ICE" y envfa la informacion memorizada sobre el par de direcciones ICE al segundo modulo de aplicacion.
Mas concretamente, cuando el segundo modulo de aplicacion determina, utilizando el segundo programa de aplicacion, que el estado del parametro de estado de direccion ICE (parametro “iceState”) en el segundo parametro de PeerConnection es la direccion ICE adquirida “ICE_RECEIVED”, ello indica que la primera PeerConnection antes de la regeneracion registra informacion de estado operativo que indica que la sesion WebRTC ha adquirido la direccion ICE; y en tal caso, el segundo programa de aplicacion puede solicitar la funcion API de memorizacion de sesion (session storage API function) en la memorizacion de la web, con el fin de adquirir la informacion memorizada sobre la direccion ICE utilizada por la sesion WebRTC desde el navegador.
Etapa 411: El modulo del navegador envfa una respuesta de adquisicion de la informacion sobre el par de direcciones ICE al segundo modulo de aplicacion, con el fin de reenviar la informacion sobre el par de direcciones ICE al segundo modulo de aplicacion.
Mas concretamente, el modulo del navegador, despues de recibir la demanda para adquirir la informacion sobre el par de direcciones ICE y despues de encontrar, en conformidad con el identificador de sesion de WebRTC, la variable "PC-ICE" que se memoriza con anterioridad, reenvfa la informacion sobre el par de direcciones ICE en la variable PC-ICE al segundo modulo de aplicacion.
La etapa 412 es la misma que la etapa 211, que no se describe en detalle en esta forma de realizacion de la presente invencion.
La etapa 413 es la misma que la etapa 212, que no se describe en detalle en esta forma de realizacion de la presente invencion.
La etapa 414 es la misma que la etapa 213, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Conviene senalar que en un procedimiento correspondiente a la Figura 4, el modulo del navegador puede recibir posiblemente un mensaje de regeneracion para una pagina multiples veces. Si el mensaje de regeneracion para la pagina se recibe por segunda vez, el terminal interrumpe la realizacion de una etapa de regeneracion en curso. Si se supone que un mensaje de regeneracion para la pagina se recibe por segunda vez cuando el modulo del navegador esta realizando la etapa 408 o cualquier otra etapa de entre las etapas 409, 410, 411 y 412, el modulo del navegador interrumpe la realizacion de la etapa en curso, tal como la etapa 408 o como cualquier etapa de entre las etapas 409, 410, 411 y 412 y vuelve a realizar las etapas 405, 408 a 412; sin embargo, la etapa 407 no se realiza repetidamente. Es decir, el temporizador para la recepcion de una primera direccion ICE para estar en el estado activado no se activa de nuevo. En la etapa 413, despues de recibir la informacion sobre el par de direcciones ICE enviado por un JS, el modulo del navegador detecta si la primera direccion ICE en el par de direcciones ICE no existe en el navegador o existe en el navegador pero no esta en el estado activado, el modulo del navegador no puede restablecer la transmision del contenido de sesion directamente utilizando el par de direcciones ICE correspondiente a la informacion sobre el par de direcciones ICE enviado por el JS, pero necesita realizar de nuevo una negociacion de direcciones ICE como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como puede deducirse de la forma de realizacion anterior, cuando se regenera una pagina, lo que hace que un usuario no pueda continuar la interaccion de sesion con un usuario de extremo homologo, a modo de ejemplo, un sonido, un mensaje, o elemento similar del homologo no puede recibirse, una primera direccion ICE utilizada por la sesion en la pagina se sigue reteniendo para estar en un estado activado, de modo que el terminal, despues de recibir una pagina regenerada, establezca una conexion directamente utilizando la direccion ICE en el estado activado, y despues de recibir un mensaje de regeneracion para una pagina, el terminal no necesita negociar una direccion ICE para determinar una direccion ICE adecuada para recibir y enviar un contenido de sesion, lo que reduce el tiempo de espera para realizar una interaccion del contenido de sesion con el usuario de extremo homologo, con lo que se mejora la experiencia del usuario.
La Figura 5 es un diagrama de flujo de un metodo para restablecer la transmision del contenido de sesion en conformidad con una forma de realizacion de la presente invencion. En la manera de puesta en practica, un terminal memoriza, utilizando una funcion API de memorizacion de la web (web storage API function), una direccion ICE utilizada por la sesion WebRTC, que incluye las etapas siguientes:
La etapa 501 es la misma que la etapa 301, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Etapa 502: El terminal memoriza informacion sobre un par de direcciones ICE utilizado por la sesion WebRTC.
5
10
15
20
25
30
35
40
45
50
55
60
65
Mas concretamente, antes de realizar esta etapa, el terminal, utilizando un navegador, env^a informacion sobre el par de direcciones ICE, que se utiliza por el terminal, en la sesion WebRTC a un primer programa de aplicacion (a modo de ejemplo, un programa de JS (JavaScript)) utilizando una funcion de devolucion de llamada de direccion ICE (iceCallback() function) u otra funcion.
Despues de recibir la informacion sobre el par de direcciones ICE, el primer programa de aplicacion solicita una funcion de interfaz de programacion de aplicacion (Application Programming Interface, API) de memorizacion de sesion (session storage API, windows.sessionStorage.setItem (“key”, “value”)) en memorizacion de la web (web storage) y vincula y memoriza el identificador de sesion de la sesion WebRTC y la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC.
La etapa 503 es la misma que la etapa 304, que no se describe en detalle en esta forma de realizacion de la presente invencion.
La etapa 504 es la misma que la etapa 305, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Las etapas 505 a 506 son las mismas que las etapas 306 a 307, que no se describen en detalle en esta forma de realizacion de la presente invencion.
Conviene senalar que las etapas 504 y 505 y la etapa 506 no tienen ninguna secuencia en terminos de tiempo.
Etapa 507: Un servidor responde a una demanda de regeneracion enviando una pagina regenerada al terminal.
Mas concretamente, la pagina regenerada incluye un codigo HTML regenerado y un segundo programa de aplicacion (a modo de ejemplo, un programa de aplicacion de JS) se envfa al modulo del navegador del terminal, en donde el segundo programa de aplicacion incluye una primera informacion de PeerConnection.
Etapa 508: El terminal restablece la transmision del contenido de sesion de la sesion WebRTC utilizando la direccion ICE.
Mas concretamente, el terminal ejecuta el segundo programa de aplicacion y establece la segunda informacion de PeerConnection correspondiente a la sesion WebRTC utilizando la primera informacion de PeerConnection que se incluye en el segundo programa de aplicacion. A modo de ejemplo, un identificador de sesion (a modo de ejemplo, informacion sobre los usuarios llamante y llamado) registrado en la primera informacion de PeerConnection, la informacion de SDP utilizada por la sesion WebRTC antes de la regeneracion y la informacion sobre la direccion ICE negociada por la sesion WebRTC se registran en la segunda informacion de PeerConnection.
El segundo programa de aplicacion solicita una funcion API de memorizacion de sesion de funcion API de memorizacion local del navegador, alert (Windows.sessionStorage.getItem ("PC-ICE"), de modo que el navegador, despues de recibir la funcion, busque dentro del terminal una variable que tenga un nombre "PC-ICE".
Mas concretamente, cuando el segundo programa de aplicacion determina un estado de un parametro de estado de direccion ICE (parametro “iceFinalState”) en la segunda PeerConnection es la direccion ICE adquirida “ICE_RECEIVED”, ello indica que la primera PeerConnection antes de la regeneracion registra informacion de estado que indica que la sesion WebRTC ha adquirido la direccion ICE; y el segundo programa de aplicacion puede solicitar una funcion de API de memorizacion de sesion (session storage API function) en memorizacion de la web, con el fin de adquirir la informacion memorizada, que se memoriza por el terminal, sobre la direccion ICE utilizada por la sesion WebRTC desde el terminal.
La etapa 509 es la misma que la etapa 310, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Conviene senalar que en un procedimiento correspondiente a la Figura 5, el terminal puede recibir posiblemente el mensaje de regeneracion para la pagina multiples veces. Si el mensaje de regeneracion para la pagina se recibe por segunda vez, el terminal interrumpe la recepcion de una etapa de regeneracion en curso. Si se supone que un mensaje de regeneracion para una pagina se recibe por segunda vez cuando el modulo del navegador esta realizando la etapa 504 o cualquier etapa de entre las etapas 507 y 508, el modulo del navegador interrumpe la realizacion de una etapa en curso, tal como la etapa 504 o cualquier etapa de entre las etapas 507 y 508 y vuelve a realizar la etapa 504 y las etapas 507 a 508; sin embargo, la etapa 506 no se realiza repetidamente. Es decir, un temporizador para la retencion de una primera direccion ICE para estar en un estado activado no se activa de nuevo. En la etapa 308, despues de la adquisicion de la informacion sobre el par de direcciones ICE utilizado por la sesion WebRTC, el terminal detecta si la primera direccion ICE en el par de direcciones ICE existe en el navegador o existe en el navegador pero no esta en el estado activado, el terminal no puede restablecer la transmision del contenido de sesion utilizando una direccion ICE correspondiente a la informacion sobre el par de direcciones ICE que se adquiere y memoriza, pero necesita realizar de
5
10
15
20
25
30
35
40
45
50
55
60
65
nuevo una negociacion del par de direcciones ICE como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como una manera alternativa, la etapa 509 puede realizarse antes de la etapa 508. Es decir, cuando el terminal determina, en conformidad con la duracion establecida por el temporizador, que la duracion para la retencion de la primera direccion ICE utilizada por la sesion WebRTC para estar en el estado activado alcanza la duracion establecida por el temporizador, el terminal interrumpe el funcionamiento del temporizador operativamente iniciado y no retiene la primera direccion ICE utilizada por la sesion WebRTC para estar en el estado activado (es decir, interrumpe el envfo de un paquete de mensajes a la direccion ICE y la recepcion de una respuesta reenviada desde la primera direccion ICE). En la etapa 508, despues de adquirir la direccion ICE utilizada por la sesion WebRTC, el terminal detecta si la direccion ICE existe en el navegador o existe en el navegador pero no esta en el estado activado, y el terminal no puede restablecer la transmision del contenido de sesion utilizando la direccion ICE adquirida y memorizada, pero necesita realizar de nuevo una negociacion del par de direcciones ICE como en la tecnica anterior, con el fin de restablecer la transmision del contenido de sesion.
Como puede deducirse de la forma de realizacion anterior, cuando se regenera una pagina, lo que hace que un terminal no pueda continuar la interaccion de sesiones con un usuario de extremo homologo, a modo de ejemplo, un sonido, un mensaje o elemento similar del homologo no se puede recibir, una direccion ICE utilizada por la sesion en la pagina se sigue reteniendo para estar en un estado activado, de modo que el terminal, despues de recibir una pagina regenerada, establezca una conexion directamente utilizando la direccion iCe en el estado activado, y despues de recibir un mensaje de regeneracion para una pagina, el terminal no necesita negociar una direccion ICE para determinar una direccion ICE adecuada para la recepcion y envfo de contenido de sesion, lo que reduce el tiempo de espera para realizar una interaccion de contenido de sesion con el usuario de extremo homologo, con lo que se mejora la experiencia del usuario.
La Figura 6 es un diagrama estructural esquematico de un terminal en conformidad con una forma de realizacion de la presente invencion, que incluye un transceptor 601, una unidad de retencion 602, una unidad de determinacion 603, una unidad de memorizacion 604 y una unidad de ejecucion 605.
El transceptor 601 esta configurado para recibir un mensaje de regeneracion para una pagina. La unidad de retencion 602 esta configurada para: despues de que el transceptor reciba el mensaje de regeneracion para la pagina, retener una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establishment) utilizado por la sesion en la pagina para estar en el estado activado. El transceptor 601 esta configurado, ademas, para: despues de recibir el mensaje de regeneracion para la pagina, enviar una demanda de regeneracion a un servidor y recibir una pagina regenerada reenviada por el servidor, en donde la pagina regenerada incluye un programa de aplicacion. La unidad de ejecucion 605 esta configurada para ejecutar el programa de aplicacion que se recibe por el transceptor y se reenvfa por el servidor, con el fin de restablecer la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion.
De modo opcional, el transceptor 601 esta configurado, ademas, para: antes de recibir el mensaje de regeneracion para la pagina, enviar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion al servidor, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion.
De modo opcional, el programa de aplicacion incluye la informacion sobre la direccion ICE y el identificador de sesion y la informacion sobre el par de direcciones ICE utilizado por la sesion incluye la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; y el establecimiento, por la unidad de ejecucion 605, de la transmision del contenido de sesion empleando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion incluye concretamente: asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
De modo opcional, el terminal incluye, ademas, la unidad de memorizacion 604, configurada para memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; y el establecimiento, por la unidad de ejecucion 605, de la transmision del contenido de sesion utilizando la primera direccion ICE que se retiene en el estado activado mediante la unidad de retencion incluye, concretamente: asignar una direccion iCe en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
De modo opcional, la retencion, por la unidad de retencion 602, de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion en la pagina para estar en el estado activado incluye concretamente: iniciar el funcionamiento de un temporizador y retener la primera direccion ICE para estar en el estado activado dentro de un margen temporal establecido por el propio temporizador.
De modo opcional, el terminal incluye, ademas, la unidad de determinacion 603, configurada para: antes de que la unidad de ejecucion restablezca la transmision del contenido de sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion, determinar que la primera direccion ICE esta en el estado activado.
5
10
15
20
25
30
35
40
45
50
55
60
65
De modo opcional, unidad de retencion 602 esta configurada, ademas para: despues de que la unidad de ejecucion restablece la transmision del contenido de sesion utilizando la primera direccion ICE en el estado activado, interrumpir el funcionamiento del temporizador operativamente iniciado; o la unidad de retencion 602 esta configurada, ademas, para determinar que la duracion para la retencion de la primera direccion ICE para estar en el estado activado alcanza la duracion establecida por el temporizador e interrumpe del funcionamiento del temporizador operativamente iniciado.
En la forma de realizacion del aparato anterior, la unidad de memorizacion puede ser una memoria (memoria o dispositivo de almacenamiento), una memoria de acceso aleatorio (RAM, random access memory) o una memoria de solamente lectura (ROM, Read Only Memory), en donde esta forma de realizacion de la presente invencion no establece ningun lfmite a este respecto.
La Figura 7 es un diagrama estructural esquematico de un terminal en conformidad con una forma de realizacion de la presente invencion, que incluye un transceptor 701, una memoria 702 y un procesador 703.
Mas concretamente, el transceptor 701 esta configurado para realizar una comunicacion con un terminal, recibir una instruccion enviada a un terminal y para enviar una senalizacion. Ademas, el transceptor 701 ilustrado en la Figura 7 puede ser el mismo que el transceptor 601 ilustrado en la Figura 6 y realizar funciones relacionadas del transceptor ilustrado en la Figura 6. La memoria 702 esta acoplada con el procesador 703, en donde la memoria 702 esta configurada para memorizar varios programas y aplicaciones y se solicita por el procesador 703 para realizar las funciones de los diversos programas y aplicaciones. La memoria 702 ilustrada en la Figura 7 puede ser la misma que la unidad de memorizacion 604 ilustrada en la Figura 6 y realizar funciones relacionadas realizadas por la unidad de memorizacion 604 ilustrada en la Figura 6. Mas concretamente, el transceptor, en conformidad con esta forma de realizacion de la presente invencion esta configurado para recibir un mensaje de regeneracion para una pagina; despues de recibir el mensaje de regeneracion para la pagina, enviar una demanda de regeneracion a un servidor; y recibir una pagina regenerada reenviada por el servidor, en donde la pagina regenerada incluye un programa de aplicacion. El procesador 703 esta configurado para: despues de que el transceptor reciba el mensaje de regeneracion para la pagina, retener una direccion de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establishment) utilizada por la sesion en la pagina para estar en un estado activado; y ejecutar el programa de aplicacion que se recibe por el transceptor y se envfa por el servidor, con el fin de restablecer la transmision del contenido de sesion utilizando la direccion ICE que se retiene en el estado activado por la unidad de retencion.
Ademas, el procesador 703 puede estar configurado, ademas para realizar etapas realizadas por el terminal o modulos funcionales de terminal que se describen en las formas de realizacion del metodo ilustrado en la Figura 1 a Figura 5, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Conviene senalar que en la Figura 6 y la Figura 7, el terminal puede recibir posiblemente el mensaje de regeneracion para la pagina multiples veces. Para el procesamiento espedfico despues de que el terminal reciba el mensaje de regeneracion para la pagina multiples veces, puede hacerse referencia a las descripciones relacionadas de las Figuras 2 a 5 anteriores. Esta forma de realizacion de la presente invencion no establece ningun lfmite al respecto. Ademas, los terminales ilustrados en la Figura 6 y Figura 7, pueden realizar cualquier etapa realizada por los terminales en las formas de realizacion del procedimiento del metodo anterior, que no se describe en detalle, uno por uno, en esta forma de realizacion de la presente invencion.
La Figura 8 es un metodo para restablecer la transmision del contenido de sesion en conformidad con una forma de realizacion de la presente invencion, que incluye las etapas siguientes:
Etapa 801: Recibir informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion que se envfan por un terminal, y vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion.
Mas concretamente, un servidor recibe la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion que se envfan por el terminal, y vincula y memoriza la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion. Para un proceso de puesta en practica espedfico de lo que antecede, puede hacerse referencia a descripciones relacionadas de la etapa 203 y la etapa 204 en la Figura 2 y las etapas 302 y 303 en la Figura 3, que no se describe en detalle en esta forma de realizacion de la presente invencion.
Etapa 802: Recibir una demanda de regeneracion enviada por el terminal.
Mas concretamente, la demanda de regeneracion se envfa por el terminal al servidor despues de que el terminal reciba un mensaje de regeneracion para una pagina. Puede hacerse referencia a descripciones relacionadas de la etapa 206 en la Figura 2 y de la etapa 305 en la Figura 3, que no se describe en detalle en esta forma de realizacion de la presente invencion.
5
10
15
20
25
30
35
40
45
50
55
60
Etapa 803: Reenviar una pagina regenerada al terminal, en donde la pagina regenerada incluye un programa de aplicacion, y el programa de aplicacion incluye la informacion sobre el par de direcciones ICE y el identificador de sesion, de modo que el terminal asigne, ejecutando el programa de aplicacion, una primera direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y envfa datos a la segunda direccion.
Mas concretamente, puede hacerse referencia a las descripciones relacionadas de la etapa 209 en la Figura 2 y la etapa 308 en la Figura 3, que no se describe en detalle en esta forma de realizacion de la presente invencion.
La Figura 9 es un diagrama estructural esquematico de un servidor en conformidad con una forma de realizacion de la presente invencion, que incluye un transceptor 901 y una unidad de memorizacion 902.
Mas concretamente, el transceptor 901 esta configurado para recibir informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion que se envfa por un terminal, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion incluye informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; la unidad de memorizacion 902 esta configurada para vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion que se reciben por el transceptor 901. El transceptor 901 esta configurado, ademas para recibir una demanda de regeneracion enviada por el terminal; y para reenviar una pagina regenerada al terminal, en donde la pagina regenerada incluye un programa de aplicacion, y el programa de aplicacion incluye la informacion sobre el par de direcciones ICE y el identificador de sesion, de modo que el terminal asigna, ejecutando el programa de aplicacion, una primera direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y envfa datos a la segunda direccion.
La Figura 10 es un diagrama estructural esquematico de un servidor en conformidad con una forma de realizacion de la presente invencion, que incluye un transceptor 1001, una memoria 1002 y un procesador 1003.
Mas concretamente, el transceptor 1001 esta configurado para realizar una comunicacion con un terminal, recibir una demanda de regeneracion enviada por un terminal y reenviar una pagina regenerada al terminal. Ademas, el transceptor 1001 ilustrado en la Figura 10 puede ser el mismo que el transceptor 901 ilustrado en la Figura 9 y realizar funciones relacionadas del transceptor ilustrado en la Figura 6. La memoria 1002 esta acoplada con el procesador 1003, en donde la memoria 1002 esta configurada para memorizar varios programas y aplicaciones y se solicita por el procesador 1003 para realizar funciones de los diversos programas y aplicaciones. La memoria 1002 ilustrada en la Figura 10 puede ser la misma que la unidad de memorizacion 902 ilustrada en la Figura 9 y realizar funciones relacionadas realizadas por la unidad de memorizacion 902 ilustrada en la Figura 9. Mas concretamente, el transceptor 1001 en esta forma de realizacion de la presente invencion esta configurado para recibir informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion que se envfan por un terminal; recibir una demanda de regeneracion enviada por el terminal; y para reenviar una pagina regenerada al terminal; en donde la pagina regenerada incluye un programa de aplicacion, y el programa de aplicacion incluye la informacion sobre el par de direcciones ICE y el identificador de sesion, de modo que el terminal ejecute el programa de aplicacion para restablecer, utilizando una primera direccion ICE en un estado activado y correspondiente a la informacion sobre el par de direcciones ICE, una transmision de contenido de sesion de una sesion correspondiente al identificador de sesion. La memoria esta configurada para vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion.
Ademas, el procesador 1003 puede estar configurado, ademas, para realizar las etapas realizadas por los servidores descritos en las formas de realizacion del metodo que se ilustran en la Figura 1 a la Figura 5, que no se describe en detalle en esta forma de realizacion de la presente invencion.
En las formas de realizacion anteriores, el terminal puede ser varios terminales moviles, a modo de ejemplo, varios telefonos inteligentes, tabletas informaticas y dispositivos de lectura moviles. En las formas de realizacion anteriores, y en particular, en la forma de realizacion correspondiente a la Figura 7, el terminal esta dividido en aparatos por logica funcional, pero la division anterior no esta limitada por la presente invencion, en tanto que se puedan poner en practica las funciones correspondientes. Ademas, los nombres espedficos de los aparatos se utilizan solamente para diferenciacion y no estan previstos para limitar el alcance de proteccion de la presente invencion. Todas las funciones de modulos funcionales o aparatos de los terminales ilustrados en la Figura 1 a la Figura 5 pueden ejecutarse y completarse por un procesador del terminal.
Las descripciones anteriores son simplemente formas de realizacion espedficas preferidas de la presente invencion, pero no estan previstas para limitar el alcance de proteccion de la presente invencion. Cualquier variacion o sustitucion establecida por expertos en esta tecnica, dentro del alcance tecnico dado a conocer en la presente invencion, caeran dentro del alcance de proteccion de la presente invencion. Por lo tanto, el alcance de proteccion de la presente invencion estara sujeto al alcance de proteccion de las reivindicaciones.
Claims (16)
- 5101520253035404550556065REIVINDICACIONES1. Un metodo para restablecer una transmision de contenido de sesion, que comprende:recibir (101), por un terminal, un mensaje de regeneracion para una pagina; en donde, el terminal recibe el mensaje de regeneracion para la pagina cuando se realiza una navegacion en una pagina utilizando un navegador y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador;retener (102), por el terminal, una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva, ICE, utilizada por una sesion en la pagina para estar en un estado activado, en donde la primera direccion ICE es una direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina;enviar, por el terminal, una demanda de regeneracion a un servidor;recibir (103), por el terminal, una pagina regenerada reenviada por el servidor, en donde la pagina regenerada comprende un programa de aplicacion y el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion; yejecutar (104), por el terminal, el programa de aplicacion para restablecer una transmision de contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado.
- 2. El metodo segun la reivindicacion 1, en donde antes de la recepcion de un mensaje de regeneracion para una pagina, el metodo comprende, ademas:enviar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion al servidor, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion comprende informacion sobre la primera direccion ICE e informacion sobre una segunda direccion.
- 3. El metodo segun la reivindicacion 2, en donde:el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion; la informacion sobre el par de direcciones ICE utilizado por la sesion comprende la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; y el restablecimiento de la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado comprende concretamente:asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
- 4. El metodo segun la reivindicacion 1, en donde antes de la recepcion de un mensaje de regeneracion para una pagina, el metodo comprende, ademas:memorizar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion comprende informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; yel restablecimiento de la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE en el estado activado comprende concretamente: asignar la primera direccion ICE en el estado activado y que corresponde a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
- 5. El metodo segun cualquiera de las reivindicaciones 1 a 4, en donde la retencion de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion en la pagina para estar en el estado activado, comprende concretamente:iniciar operativamente un temporizador y retener la primera direccion ICE para estar en el estado activado dentro de un margen temporal establecido por el temporizador.
- 6. El metodo segun la reivindicacion 5, en donde antes del restablecimiento de la transmision del contenido de sesion utilizando la primera direccion ICE en el estado activado, el metodo comprende, ademas: determinar que la primera direccion ICE esta en el estado activado.
- 7. El metodo segun la reivindicacion 6, en donde:despues del restablecimiento de la transmision del contenido de sesion utilizando la primera direccion ICE en estado activado, el metodo comprende, ademas: detener el temporizador iniciado; o5101520253035404550556065determinar que una duracion para retener la primera direccion ICE para estar en el estado activado alcanza la duracion establecida por el temporizador e interrumpir el funcionamiento del temporizador iniciado.
- 8. Un terminal, que comprende:un transceptor (601), configurado para recibir un mensaje de regeneracion para una pagina; en donde el terminal recibe el mensaje de regeneracion para la pagina cuando se efectua la navegacion de una pagina utilizando un navegador, y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia el navegador;una unidad de retencion (602), configurada para, despues de que el transceptor reciba el mensaje de regeneracion para la pagina, retener una primera direccion ICE en un par de direcciones de Establecimiento de Conectividad Interactiva (ICE, Interactive Connectivity Establisment) utilizado por una sesion en la pagina para estar en un estado activado, en donde la primera direccion ICE es una direccion ICE utilizada por el navegador que recibe el mensaje de regeneracion para la pagina; en donde:el transceptor esta configurado, ademas, para, despues de recibir el mensaje de regeneracion para la pagina, enviar una demanda de regeneracion a un servidor y recibir una pagina regenerada reenviada por el servidor, en donde la pagina regenerada comprende un programa de aplicacion y el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion; yuna unidad de ejecucion (605), configurada para ejecutar el programa de aplicacion que se recibe por el transceptor y reenviado por el servidor, con el fin de restablecer la transmision de contenido de sesion de la sesion utilizando la primera direccion iCe que se retiene en el estado activado por la unidad de retencion.
- 9. El terminal segun la reivindicacion 8, en donde antes de la recepcion de un mensaje de regeneracion para una pagina, el transceptor esta configurado, ademas, para: enviar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion al servidor, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion comprende informacion sobre la primera direccion ICE e informacion sobre una segunda direccion.
- 10. El terminal segun la reivindicacion 9, en donde el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion, y la informacion sobre el par de direcciones ICE utilizado por la sesion comprende la informacion sobre la primera direccion ICE y la informacion sobre la segunda direccion; yel restablecimiento, por la unidad de ejecucion, de la transmision del contenido de sesion de la sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion comprende concretamente: asignar una direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
- 11. El terminal segun la reivindicacion 8, en donde el terminal comprende, ademas, una unidad de memorizacion (604), configurada para memorizar informacion sobre un par de direcciones ICE utilizado por la sesion y un identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion comprende informacion sobre la primera direccion ICE e informacion sobre una segunda direccion; yel restablecimiento, por la unidad de ejecucion, de la transmision del contenido de sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion comprende concretamente: asignar la primera direccion ICE en el estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion y enviar datos a la segunda direccion.
- 12. El terminal segun cualquiera de las reivindicaciones 8 a 11, en donde:la retencion, por la unidad de retencion, de la primera direccion ICE en el par de direcciones ICE utilizado por la sesion en la pagina para estar en el estado activado comprende concretamente: iniciar operativamente un temporizador y retener la primera direccion ICE para estar en el estado activado dentro de un margen temporal establecido por el temporizador.
- 13. El terminal segun la reivindicacion 12, en donde el terminal comprende ademas una unidad de determinacion (603), configurada para: antes de que la unidad de ejecucion restablezca la transmision del contenido de sesion utilizando la primera direccion ICE que se retiene en el estado activado por la unidad de retencion, determinar que la primera direccion ICE esta en el estado activado.
- 14. El terminal segun la reivindicacion 13, en donde:la unidad de retencion esta configurada, ademas, para: despues de que la unidad de ejecucion restablezca la transmision del contenido de sesion utilizando la primera direccion iCe en el estado activado, interrumpir el funcionamiento del temporizador iniciado; o510152025303540la unidad de retencion esta configurada, ademas, para determinar que una duracion para retener la primera direccion ICE para estar en el estado activado alcanza una duracion establecida por el temporizador e interrumpir el funcionamiento del temporizador operativamente iniciado.
- 15. Un metodo para restablecer la transmision de un contenido de sesion, que comprende:recibir, por un servidor, informacion sobre un par de direcciones ICE utilizado por una sesion y un identificador de sesion que se envfan por un terminal, y vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion, en donde la informacion sobre el par de direcciones ICE utilizado la sesion comprende informacion sobre una primera direccion ICE e informacion sobre una segunda direccion;recibir, por el servidor, una demanda de regeneracion enviada por el terminal; en donde la demanda de regeneracion se envfa por el terminal despues de que el terminal reciba un mensaje de regeneracion para una pagina, y el terminal recibe el mensaje de regeneracion para la pagina cuando se realiza la navegacion de una pagina utilizando un navegador y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador; yreenviar, por el servidor, una pagina regenerada al terminal, en donde la pagina regenerada comprende un programa de aplicacion, y el programa de aplicacion comprende la informacion sobre el par de direcciones iCe y el identificador de sesion, de modo que el terminal asigne, ejecutando el programa de aplicacion, la primera direccion ICE en un estado activado y que corresponde a la informacion sobre la primera direccion ICE a la sesion y envfa datos a la segunda direccion.
- 16. Un servidor, que comprende: un transceptor (1001), configurado para recibir informacion sobre un par de direcciones ICE utilizado por una sesion y un identificador de sesion que se envfan por un terminal, en donde la informacion sobre el par de direcciones ICE utilizado por la sesion comprende informacion sobre una primera direccion ICE e informacion sobre una segunda direccion; yuna unidad de memorizacion, configurada para vincular y memorizar la informacion sobre el par de direcciones ICE utilizado por la sesion y el identificador de sesion que se reciben por el transceptor, en donde:el transceptor (1001) esta configurado, ademas, para recibir una demanda de regeneracion enviada por el terminal y para reenviar una pagina regenerada al terminal, en donde la demanda de regeneracion se envfa por el terminal despues de que el terminal reciba un mensaje de regeneracion para una pagina, y el terminal recibe el mensaje de regeneracion para la pagina cuando efectua la navegacion de una pagina utilizando un navegador, y el mensaje de regeneracion para la pagina se envfa por un usuario utilizando una funcion de regeneracion de la pagina o se envfa cuando se reinicia operativamente el navegador, y la pagina regenerada comprende un programa de aplicacion, y el programa de aplicacion comprende la informacion sobre el par de direcciones ICE y el identificador de sesion, de modo que el terminal asigna, ejecutando el programa de aplicacion, la primera direccion ICE en un estado activado y correspondiente a la informacion sobre la primera direccion ICE a la sesion, y envfa datos a la segunda direccion.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2012/078003 WO2014000312A1 (zh) | 2012-06-30 | 2012-06-30 | 恢复会话内容的传输的方法,终端和服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2583842T3 true ES2583842T3 (es) | 2016-09-22 |
Family
ID=49782135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES12879716.4T Active ES2583842T3 (es) | 2012-06-30 | 2012-06-30 | Método, terminal y servidor para restablecer una transmisión de contenido de sesión |
Country Status (5)
Country | Link |
---|---|
US (1) | US10015204B2 (es) |
EP (1) | EP2802115B1 (es) |
CN (1) | CN103891236B (es) |
ES (1) | ES2583842T3 (es) |
WO (1) | WO2014000312A1 (es) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9769214B2 (en) * | 2013-11-05 | 2017-09-19 | Avaya Inc. | Providing reliable session initiation protocol (SIP) signaling for web real-time communications (WEBRTC) interactive flows, and related methods, systems, and computer-readable media |
EP3132559B1 (en) * | 2014-04-14 | 2019-08-28 | McAfee, LLC | Automatic log-in and log-out of a session with session sharing |
US10397183B2 (en) | 2016-11-10 | 2019-08-27 | Cisco Technology, Inc. | Method and system for enabling media optimization in a cloud conference |
CN108322514A (zh) * | 2018-01-09 | 2018-07-24 | 安徽小马创意科技股份有限公司 | 基于WebRTC的多路音频数据自定义混合技术的研发方法 |
US11366731B2 (en) * | 2019-07-03 | 2022-06-21 | At&T Intellectual Property I, L.P. | Method and system to automate troubleshooting and resolution of customer device issues |
CN110971669B (zh) * | 2019-11-11 | 2022-03-01 | 北京达佳互联信息技术有限公司 | 消息通知方法、装置、服务器、电子设备及可读存储介质 |
CN113382026B (zh) * | 2021-08-16 | 2021-10-29 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、相关设备及存储介质 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
LU69979A1 (es) * | 1974-05-02 | 1976-04-13 | ||
US6701368B1 (en) * | 1999-04-26 | 2004-03-02 | Cisco Technology, Inc. | Providing a stream of data to a browser to update properties on a page |
US20060129933A1 (en) * | 2000-12-19 | 2006-06-15 | Sparkpoint Software, Inc. | System and method for multimedia authoring and playback |
US20060190563A1 (en) * | 2005-02-22 | 2006-08-24 | Vann Richard J | High-volume web page update system and method |
CN100535900C (zh) * | 2005-12-06 | 2009-09-02 | 国际商业机器公司 | 用于提供异步门户页的方法和系统 |
US9122650B1 (en) * | 2007-11-14 | 2015-09-01 | Appcelerator, Inc. | Web server based on the same paradigms as web clients |
TW200924439A (en) * | 2007-11-23 | 2009-06-01 | D Link Corp | Portable ICE relay server and its method thereof |
US8589955B2 (en) * | 2008-02-12 | 2013-11-19 | Nuance Communications, Inc. | System and method for building applications, such as customized applications for mobile devices |
US7953010B2 (en) * | 2008-07-30 | 2011-05-31 | Avaya Inc. | System and method of controlling in-bound path selection based on historical and continuous path quality monitoring, assessment and predictions |
US8493931B1 (en) * | 2008-09-12 | 2013-07-23 | Google Inc. | Efficient handover of media communications in heterogeneous IP networks using handover procedure rules and media handover relays |
US9392437B2 (en) | 2008-10-17 | 2016-07-12 | Alcatel Lucent | Method and system for IP multimedia bearer path optimization through a succession of border gateways |
US7941551B2 (en) * | 2009-02-25 | 2011-05-10 | Microsoft Corporation | Tunneling of remote desktop sessions through firewalls |
US8185660B2 (en) * | 2009-05-12 | 2012-05-22 | Cisco Technology, Inc. | Inter-working between network address type (ANAT) endpoints and interactive connectivity establishment (ICE) endpoints |
KR20110053160A (ko) * | 2009-11-13 | 2011-05-19 | 삼성전자주식회사 | 비디오 부가 재생 정보의 3차원 깊이감 조절을 위한 멀티미디어 스트림 생성 방법과 그 장치, 및 수신 방법과 그 장치 |
US9363228B2 (en) * | 2009-12-15 | 2016-06-07 | Qualcomm Innovation Center, Inc. | Apparatus and method of peer-to-peer communication |
US9432408B2 (en) * | 2010-11-03 | 2016-08-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Signalling gateway, method, computer program and computer program product for communication between HTTP and SIP |
US20130031453A1 (en) * | 2011-07-28 | 2013-01-31 | Peter Griffiths | System for Annotating Documents Served by a Document System without Functional Dependence on the Document System |
EP2592813B1 (en) * | 2011-11-08 | 2020-02-12 | BlackBerry Limited | Method for discovering a dynamic address of a communication device |
US8601347B1 (en) * | 2012-06-21 | 2013-12-03 | Hitachi, Ltd. | Flash memory device and storage control method |
-
2012
- 2012-06-30 ES ES12879716.4T patent/ES2583842T3/es active Active
- 2012-06-30 CN CN201280000742.3A patent/CN103891236B/zh active Active
- 2012-06-30 WO PCT/CN2012/078003 patent/WO2014000312A1/zh active Application Filing
- 2012-06-30 EP EP12879716.4A patent/EP2802115B1/en active Active
-
2014
- 2014-08-19 US US14/462,818 patent/US10015204B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN103891236B (zh) | 2017-01-25 |
EP2802115B1 (en) | 2016-04-27 |
EP2802115A4 (en) | 2015-03-04 |
CN103891236A (zh) | 2014-06-25 |
US20140359004A1 (en) | 2014-12-04 |
US10015204B2 (en) | 2018-07-03 |
EP2802115A1 (en) | 2014-11-12 |
WO2014000312A1 (zh) | 2014-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2583842T3 (es) | Método, terminal y servidor para restablecer una transmisión de contenido de sesión | |
CN104243267B (zh) | 数据传输方法及装置 | |
KR101722628B1 (ko) | 라우터에 기반한 네트워킹 제어 방법, 장치, 라우터, 프로그램 및 저장매체 | |
ES2639732T3 (es) | Método y dispositivo de control remoto de un descodificador | |
CN106878460B (zh) | 通信处理方法及装置 | |
CN110999257B (zh) | 用于服务器通知的递送的传送方法选择 | |
US20160226730A1 (en) | A Method And System For Determining Page Impression In A Client-Server System | |
EP2448206A1 (en) | Method, system and device for transmitting video data | |
EP3032838A1 (en) | Message processing method, device, gateway, set-top box and internet protocol television system | |
WO2019071829A1 (zh) | Pc上实现主播连麦pk的方法、存储介质、设备及系统 | |
CN111147506A (zh) | 一种基于html5播放流媒体数据的方法、系统及存储设备 | |
CN107800791B (zh) | 一种进行调试的方法及设备 | |
US20180041570A1 (en) | System, Apparatus and Method for Load Balancing | |
JP2008015593A (ja) | 中継装置、プログラム、中継方法及び通信システム | |
CN108173863B (zh) | 建立适用于物联网设备的轻量级WebRTC系统的方法和系统 | |
CN112492020B (zh) | 消息推送方法、系统、设备和存储介质 | |
CN112804213B (zh) | 通信断线重连方法及装置、系统、可读介质和电子设备 | |
WO2023040380A1 (zh) | WebRTC通信方法及系统 | |
CN112954717A (zh) | 基于h5页面的家电配网方法和装置 | |
CN113132477B (zh) | 一种浏览器终端与设备的实时传输交互方法及系统 | |
JP2015035731A (ja) | 通信システム | |
US9992309B2 (en) | Communication device and communication method | |
US20170127472A1 (en) | Method and wireless device for controlling disconnection of a wireless device in a wi-fi direct group of a wireless network | |
CN107431965B (zh) | 一种实现传输控制协议tcp传输的方法及装置 | |
JP2010050617A (ja) | プロトコル変換装置およびプロトコル変換方法 |