ES2215638T3 - Sistema y procedimiento para gestionar la distribucion de un contenido a un dispositivo. - Google Patents
Sistema y procedimiento para gestionar la distribucion de un contenido a un dispositivo.Info
- Publication number
- ES2215638T3 ES2215638T3 ES00920917T ES00920917T ES2215638T3 ES 2215638 T3 ES2215638 T3 ES 2215638T3 ES 00920917 T ES00920917 T ES 00920917T ES 00920917 T ES00920917 T ES 00920917T ES 2215638 T3 ES2215638 T3 ES 2215638T3
- Authority
- ES
- Spain
- Prior art keywords
- content
- profile
- identifiers
- hierarchical structure
- elements
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99933—Query processing, i.e. searching
- Y10S707/99936—Pattern matching access
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99943—Generating database or data structure, e.g. via user interface
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99944—Object-oriented database structure
- Y10S707/99945—Object-oriented database structure processing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99941—Database schema or data structure
- Y10S707/99948—Application of database or data structure, e.g. distributed, multimedia, or image
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
Sistema para gestionar la distribución de un contenido a un dispositivo (10; 100, 110, 120), que comprende: una base de datos (40) para almacenar una pluralidad de elementos como una estructura jerárquica de dispositivos, siendo los identificadores de contenido capaces de asociarse con elementos en la estructura jerárquica y representando uno de los elementos el dispositivo; un servidor (30) para referenciar la estructura jerárquica en la base de datos para generar un perfil para el dispositivo, conteniendo dicho perfil una pluralidad de identificadores de contenido que indican el contenido que debe ser proporcionado al dispositivo, conteniendo el perfil cualesquiera identificadores de contenido asociados con el elemento que representa el dispositivo, junto con cualesquiera identificadores de contenido asociados con elementos en la estructura jerárquica de la que depende dicho elemento; un administrador de dispositivos (200) asociado con el dispositivo y dispuesto para recibir el perfil desde el servidor y para utilizar los identificadores de contenido en el perfil para hacer que el contenido indicado por el perfil sea proporcionado al dispositivo, manteniéndose un registro que identifica el contenido proporcionado al dispositivo según el perfil; estando además el administrador de dispositivos dispuesto para, tras la recepción de un perfil posterior desde el servidor, comparar los identificadores de contenido en el perfil posterior con el registro para determinar un nuevo contenido todavía no proporcionado en el dispositivo y un antiguo contenido ya proporcionado al dispositivo, estando el administrador de dispositivos dispuesto para utilizar los identificadores de contenido pertinentes para hacer que el nuevo contenido sea proporcionado al dispositivo y para hacer que se elimine el antiguo contenido.
Description
Sistema y procedimiento para gestionar la
distribución de un contenido a un dispositivo.
La presente invención se refiere a un sistema y
un procedimiento para gestionar la distribución de un contenido a un
dispositivo.
El contenido a proporcionar a un dispositivo
puede adoptar una diversidad de diferentes formas. Por ejemplo,
pueden proporcionarse al dispositivo archivos de datos para uso con
aplicaciones particulares instaladas en el propio dispositivo.
Asimismo, pueden distribuirse programas de aplicaciones particulares
al dispositivo para su instalación en el dispositivo para facilitar
nuevas funciones, por ejemplo, programas de tratamiento de textos,
programas de hojas de cálculo, programas de e-mail,
etc.
Hasta ahora, gran parte del desarrollo de
técnicas para controlar la distribución de un contenido a
dispositivos se ha centrado en el área de dispositivos de
ordenadores fijos conectados a una red de ordenadores. Dentro de
dicho entorno, es entonces posible proporcionar una estructura de
soporte de gestión localizada para suministrar contenido en la red y
para controlar el acceso a ese contenido por los dispositivos
individuales de control.
Por ejemplo, el documento
US-A-5.692.129 describe una técnica
para gestionar programas de aplicación en una red de ordenadores.
Cuando se proporciona una red de ordenadores dentro de una
organización, es lugar común para una base de datos de servicios de
directorios para la red de ordenadores con el fin de proporcionar un
directorio del tipo de "Páginas Blancas" concerniente a
personas y otros recursos dentro de la organización. Con frecuencia,
dichas bases de datos de servicios de directorios son bases de
datos orientadas al objeto. De acuerdo con las enseñanzas del
documento US-A-5.692.129, dicha base
de datos orientada al objeto está adaptada para soporte de inclusión
de objetos de aplicación que reciben aplicaciones de software
disponibles en la red. Asimismo, algunos tipos de objetos en la base
de datos, tales como objetos de usuarios, están adaptados para
permitir que se especifiquen los atributos del ordenador. A
continuación, puede añadirse un objeto de aplicación como un
atributo de ordenador para dicho objeto, indicando así que la
correspondiente aplicación debe hacerse disponible al usuario
representado por el objeto.
Asimismo, el documento
US-A-5.692.129 especifica el uso de
una aplicación de dispositivo de lanzamiento que, para un usuario
particular, puede disponerse para recuperar el objeto de ese usuario
y para adaptar el ordenador del usuario para proporcionar iconos
para cualquier aplicación especificada por objetos de aplicación
identificados en los atributos del ordenador del usuario objeto. Por
consiguiente mediante el procedimiento anterior, el ordenador de un
usuario puede actualizarse automáticamente para indicar las
aplicaciones que están instaladas en la red y están disponibles para
el acceso por ese usuario. Las propias aplicaciones se retienen
centralmente en la red y el usuario puede acceder a ellas a través
de la propia red.
El documento
US-A-5.581.764 describe una técnica
para gestionar la distribución del contenido a un dispositivo. De
conformidad con la técnica de D1, se desarrolla una estructura
jerárquica de contenido para un grupo de dispositivos, que es objeto
de referencia como un Esquema en D1. Dentro de dicho esquema, se
proporcionan uno o más vínculos dinámicos, que cuando se genera una
lista de "debería tener..." (SH) para cualquier dispositivo
particular, sirven para determinar qué contenido debe proporcionarse
a ese dispositivo. Para permitir la resolución de los vínculos
dinámicos, se necesita un proceso de interrogación inicial para
determinar los valores de algunas variables del dispositivo.
Aun cuando esta técnica es claramente beneficiosa
para dispositivos de ordenadores que están permanentemente
conectados a la red y, por lo tanto, son capaces de ejecutar
aplicaciones en la red, está claro que no resulta adecuada para
dispositivos distribuidos que solamente puedan realizar conexiones
periódicas a una red y cuando no están conectados a una red todavía
necesitarán ser autónomos (es decir, necesitarán que el contenido se
almacene localmente para su propio uso). Sin embargo, dicho entorno
es cada vez más conocido, con la proliferación en dispositivos de
ordenadores portátiles, teléfonos móviles, dispositivos asistentes
digitales personales (PDA), organizadores electrónicos, etc. Aunque
es claramente deseable para una organización permitir a las personas
dentro de esa organización utilizar esos dispositivos portátiles, se
hace bastante más difícil controlar y gestionar la distribución del
contenido a esos dispositivos.
Considerada desde un primer aspecto, la presente
invención proporciona un sistema para gestionar la distribución de
un contenido a un dispositivo, comprendiendo: una base de datos para
almacenar una pluralidad de elementos como una estructura jerárquica
de dispositivos, siendo capaces los identificadores de contenido
para asociarse con elementos en la estructura jerárquica y uno de
los elementos representando el dispositivo; un servidor para
referenciar la estructura jerárquica en la base de datos para
generar un perfil para el dispositivo, conteniendo dicho perfil una
pluralidad de identificadores del contenido que indican el contenido
a proporcionar al dispositivo, conteniendo dicho perfil cualesquiera
identificadores de contenidos asociados con elementos que
representan el dispositivo, junto con cualesquiera identificadores
de contenido asociados con elementos en la estructura jerárquica de
la que depende el elemento; un gestor de dispositivo asociado con el
dispositivo y dispuesto para recibir el perfil desde el servidor y
para utilizar los identificadores de contenido en el perfil para
hacer que el contenido indicado por el perfil se proporcione al
dispositivo, manteniéndose un registro que identifica el contenido
proporcionado al dispositivo de conformidad con el perfil; asimismo,
el administrador de dispositivos está dispuesto, tras la recepción
de un perfil posterior desde el servidor, a comparar los
identificadores de contenidos en el posterior perfil con el registro
para determinar un nuevo contenido no todavía proporcionado en el
dispositivo y con el contenido antiguo ya no proporcionado al
dispositivo, estando dispuesto el administrador de dispositivos para
utilizar los identificadores de contenido pertinentes para hacer que
el nuevo contenido se proporcione al dispositivo y para hacer que se
elimine el antiguo contenido.
Según la presente invención, se proporciona una
base de datos que permite que se almacenen una pluralidad de
elementos como una estructura jerárquica, representando al menos uno
de los elementos a uno de los dispositivos cuyo contenido tiene que
distribuirse. Los identificadores de los contenidos identifican el
contenido particular que pueda asociarse luego con elementos en la
estructura jerárquica. Asimismo, se proporciona un servidor que es
capaz de referenciar la estructura jerárquica de la base de datos
para poder generar un perfil para un dispositivo particular,
conteniendo dicho perfil una pluralidad de identificadores de
contenidos, identificando cada identificador de contenido un
contenido a proporcionarse a ese dispositivo. Un administrador de
dispositivos asociado con el dispositivo es capaz luego de actuar en
la recepción del perfil para hacer que el contenido indicado por el
perfil sea proporcionado al dispositivo, con un registro mantenido
que identifica el contenido proporcionado al dispositivo según el
perfil. El registro se almacena, en una realización preferida, en
una zona de almacenamiento lógicamente local en relación con el
dispositivo; es decir, en un lugar que el dispositivo siempre sea
capaz de leer esté o no conectado a una red.
El administrador de dispositivos puede
almacenarse en el dispositivo o puede estar alejado de ese
dispositivo. Sin embargo, en el último caso, será típicamente algo
residente en el propio dispositivo para hacer que el administrador
de dispositivos ejecute, por ejemplo, alguna información de
configuración.
Según la presente invención, cuando en algún
punto posterior el administrador de dispositivos reciba un perfil
subsiguiente desde el servidor, está dispuesto para comparar los
identificadores de contenidos, en dicho perfil subsiguiente, con el
registro mantenido para identificar el contenido proporcionado al
dispositivo según un perfil anterior para poder determinar un nuevo
contenido no todavía proporcionado en el dispositivo y el antiguo
contenido ya no será proporcionado al dispositivo. A continuación,
el nuevo contenido puede recuperarse para el dispositivo, mientras
que el contenido antiguo se elimina, por ejemplo borrando realmente
dicho contenido o eliminando los punteros de dicho contenido en la
memoria local del dispositivo.
Mediante este procedimiento, el sistema de la
presente invención es capaz de soportar una amplia pluralidad de
diferentes dispositivos que pueden estar mayor o menor cantidad de
tiempo conectados a una red y que pueden necesitar almacenar
contenidos a nivel local para facilitar su uso aunque no estén
conectados a la red. También, debe hacerse constar que el sistema
soporta también el uso con dispositivos que puedan estar
permanentemente conectados a la red. Mediante el uso de la presente
invención, el contenido proporcionado a un dispositivo puede ser
centralmente gestionado de modo que una vez que un identificador de
contenido haya sido asociado con el elemento apropiado en la
estructura jerárquica, entonces dicho identificador de contenido
será incluido en cualquier perfil posteriormente preparado para
dispositivos pertinentes, en el que el administrador de dispositivos
correspondiente para dicho dispositivo hará que se proporcione el
contenido al dispositivo en la siguiente ocasión en que se reciba el
perfil. Sin embargo, dado que el contenido no está meramente
mantenido centralmente y es objeto de acceso desde ese punto central
por los dispositivos pero, en cambio, se proporcionará típicamente a
los dispositivos, la presente invención facilita también la
eliminación del contenido antiguo desde un dispositivo a través de
la comparación de un perfil subsiguiente distribuido por el servidor
con un registro mantenido para identificar el contenido en ese
dispositivo que ha sido proporcionado según un perfil anterior.
Debe indicarse que, en las realizaciones
preferidas, según la presente invención un usuario de un dispositivo
puede instalar también su propio contenido en el dispositivo puesto
que dicho contenido no estaría incluido en los perfiles y por ello,
no sería proporcionado al dispositivo, ni eliminado del dispositivo,
bajo el control del administrador de dispositivos. Sin embargo, la
presente invención permite la distribución de algún contenido básico
a dispositivos para ser gestionados de modo que pueda proporcionarse
el contenido y posteriormente eliminarse de una manera estructurada
sin necesidad de implicar al usuario del dispositivo.
El identificador del contenido puede adoptar una
pluralidad de formas. Sin embargo, en realizaciones preferidas, cada
identificador de contenido proporciona un nombre para el contenido
correspondiente y un indicador de localización que identifica un
lugar desde el que puede obtenerse ese contenido. Por lo tanto,
cuando el administrador de dispositivos está buscando obtener un
contenido para el dispositivo, el identificador de posición en el
identificador del contenido correspondiente puede utilizarse para
determinar el lugar desde el que puede obtenerse el contenido. En
realizaciones preferidas, el nombre no se necesita para el proceso
de recuperación de contenido, sino que proporciona una referencia
descriptiva para un administrador de red responsable de gestionar la
estructura jerárquica en la base de datos y en realidad, para que el
usuario del dispositivo al que se recupera el contenido.
El sistema según las realizaciones preferidas de
la presente invención puede utilizarse para gestionar la
distribución de una pluralidad de diferentes tipos de contenido. Por
lo tanto, en una realización preferida, el identificador de
contenido identifica también el tipo del contenido correspondiente.
Esta información está disponible luego para referencia por un
administrador de red responsable de gestionar la estructura
jerárquica en la base de datos. Esto puede, por ejemplo,
proporcionar una comprobación de utilidad para permitir al
administrador de la red asegurar que el contenido solamente es
asignado a dispositivos capaces de recibir dicho tipo de
contenido.
Se apreciará que el identificador de localización
puede adoptar diversas formas, a condición de que sirva para
identificar el lugar desde la que puede obtenerse el contenido. En
realizaciones preferidas, el contenido se almacena en servidores
contactables a través de Internet y el indicador de localización es
una dirección de URL.
Se apreciará que cuando se proporcione un
contenido al dispositivo, resultará necesario tomar alguna acción
predeterminada por el dispositivo para recibir correctamente y
almacenar el contenido. El sistema de realizaciones preferidas de la
presente invención facilita esta operación proporcionando varios
empaquetadores para asociar con una información del contenido
requerida para gestionar el contenido cuando se reciba por el
dispositivo. Por lo tanto, cuando se recupera un contenido para el
dispositivo utilizando un identificador de contenido en el perfil,
el dispositivo no solamente recibe el contenido sino también
cualquier información relacionada que se necesite para asegurar el
tratamiento correcto del contenido dentro del dispositivo. Este
contenido y la información relacionada proporcionada al dispositivo
serán referidos en lo sucesivo como "un paquete".
Como se mencionó anteriormente, la distribución
de una pluralidad de diferentes tipos de contenido puede gestionarse
por el sistema. En consecuencia, en realizaciones preferidas, se
proporciona un empaquetador para cada tipo de contenido.
Se apreciará que la información proporcionada
dentro del paquete para describir cómo debe tratarse el contenido
puede adoptar una pluralidad de formas diferentes, dependiendo del
propio contenido. Por ejemplo, si el contenido es un archivo de
datos para una aplicación particular, por ejemplo un archivo de
Microsoft Word, entonces el paquete identificará el contenido como
siendo de dicho tipo y la información del tipo puede utilizarse por
el administrador de dispositivos para determinar si existe un
instalador para instalar el contenido de ese tipo. Si no existe, el
contenido sería normalmente almacenado en un lugar por defecto, por
ejemplo un lugar especificado por el propio administrador de
dispositivos. Sin embargo, si se dispone de un instalador, entonces
se utilizará para instalar el contenido en el dispositivo.
Suponiendo que ha de utilizarse un instalador, la información en el
paquete puede identificar el número de versión requerida de
Microsoft Word que se necesita para leer el archivo. El instalador
intentaría entonces localizar esa versión de Word y, por ejemplo,
avisar al usuario del dispositivo si no la encuentra.
En otro ejemplo, si el contenido es un programa
de aplicación, entonces se necesitará generalmente su instalación
adecuada en el dispositivo mediante un instalador. En tales casos,
en realizaciones preferidas, la información asociada con dicho
contenido puede comprender una identificación de qué archivo es el
archivo ejecutable principal, una identificación de un icono a
utilizarse para representar el programa en el ordenador, etc. El
instalador pertinente puede utilizar luego dicha información para
permitirle instalar correctamente el programa de aplicación.
Se apreciará que puesto que los dispositivos
pueden cambiarse en el transcurso del tiempo y/o el uso de cualquier
dispositivo particular puede cambiar con el tiempo, que puede
necesitar la asociación de diferente contenido con el dispositivo,
es necesario poder gestionar eficientemente la estructura jerárquica
en la base de datos para poder tener en cuenta dichos cambios. En
consecuencia, el sistema de realizaciones preferidas tiene una
herramienta de gestión para proporcionar un interface para permitir
a un usuario gestionar la estructura jerárquica almacenada en la
base de datos. En consecuencia, por ejemplo, si la estructura
jerárquica se utiliza para representar un gran número de
dispositivos dentro de una organización, un usuario en la forma de
un administrador del sistema puede utilizar la herramienta de
gestión para gestionar la estructura jerárquica con el fin de
asegurar que cada dispositivo se siga representando en un punto
apropiado en la estructura jerárquica, de modo que ese dispositivo
recibirá el contenido que se le desea proporcionar.
Se apreciará que existen muchas maneras
diferentes en las que puede desarrollarse la estructura jerárquica.
Sin embargo, en realizaciones preferidas, dichos elementos dentro de
la estructura jerárquica incluyen una o más divisiones,
representando cada división un agrupamiento lógico para
dispositivos, permitiendo la herramienta de gestión la creación y
supresión de divisiones y permitiendo también que los
identificadores de contenido se asocien con cada división. Por lo
tanto, en la parte superior de la estructura jerárquica, es posible
proporcionar una división genérica dentro de la cual caerán todos
los dispositivos y luego se crearán divisiones particulares
dependiendo de esa división genérica. Por ejemplo, una división de
soporte técnico puede proporcionarse para incluir todos los
dispositivos utilizados por el personal de soporte técnico, mientras
que una división de soporte al cliente separada puede crearse para
incluir todos los dispositivos empleados por el personal de atención
al cliente. Debe tenerse en cuenta que el usuario, por ejemplo, el
administrador del sistema, es capaz de crear y suprimir divisiones
como y cuando se requiera para desarrollar una estructura jerárquica
apropiada dentro de la cual clasificar los dispositivos a
representar dentro de la estructura jerárquica.
Asimismo, debe tenerse en cuenta que puesto que
los identificadores de contenido pueden asociarse con cada división,
el contenido que ha de ser común para todos los dispositivos dentro
de una división particular no necesita especificarse de manera
individual para cada dispositivo, sino más bien puede especificarse
simplemente una vez en relación con la división correspondiente. En
realizaciones preferidas, el perfil generado por el servidor
contiene cualesquiera identificadores de contenido asociados con el
dispositivo y cualesquiera identificadores de contenido asociados
con una división desde la cual el dispositivo depende en la
estructura jerárquica. Se apreciará que lo anterior mejora
significativamente la eficiencia con la que puede asociarse el
contenido con cualquier dispositivo particular. Asimismo, si un
dispositivo se desplaza desde una división a otra, entonces en la
siguiente ocasión en que se genere un perfil para ese dispositivo,
recibirá automáticamente un perfil actualizado indicando el
contenido que es pertinente para dicho dispositivo en su nueva
función. Cualquier nuevo contenido será recuperado luego
automáticamente, mientras que se eliminará el contenido antiguo.
En realizaciones preferidas de la presente
invención, la herramienta de gestión permite a los identificadores
de personas identificar a individuos que han de proporcionarse como
elementos en la estructura jerárquica, donde la herramienta de
gestión puede utilizarse para asociar, dentro de la estructura
jerárquica, el dispositivo con el individuo que posee dicho
dispositivo. La inclusión de esta clasificación extra es de
utilidad, puesto que, con frecuencia, una persona particular en una
organización puede tener más de un dispositivo y puede presentar
solicitudes para cada uno de sus dispositivos a proporcionar con su
contenido particular. Puesto que los dispositivos individuales
pueden depender del identificador de persona pertinente en la
estructura jerárquica, es sencillo para el administrador del sistema
asociar entonces ese nuevo contenido con cada dispositivo. Además, a
medida que las personas individuales se desplazan dentro de la
organización, el administrador del sistema es capaz de desplazar el
identificador de personas pertinente entre divisiones. Esto hará
automáticamente que se desplacen también todos los dispositivos de
esa persona y que se proporcione el contenido pertinente de dichos
dispositivos en la siguiente ocasión en que un perfil se suministre
a dichos dispositivos.
Se apreciará que existen varios mecanismos que
podrían utilizarse para proporcionar el perfil a los dispositivos a
intervalos predeterminados. Por ejemplo, si un dispositivo está
permanentemente conectado a la red, entonces el servidor podría
disponerse para generar el perfil a intervalos periódicos. Sin
embargo, en realizaciones preferidas, el sistema soporta
dispositivos de muchos tipos diferentes, algunos de los cuales por
lo menos pueden no estar permanentemente conectados a la red. Dada
esta situación, se hace necesario que se generen y distribuyan los
perfiles como y cuando el dispositivo esté conectado a la red. En
consecuencia, en realizaciones preferidas, el administrador de
dispositivos está preparado para realizar una conexión con el
servidor a intervalos predeterminados para poder solicitar el
perfil, identificando el administrador de dispositivos el
dispositivo para el que se requiere el perfil. Así, por ejemplo, el
administrador de dispositivos puede solicitar el perfil
inmediatamente después de que se haya activado el dispositivo,
siendo dicho método adecuado para dispositivos de ancho de banda
restringido que solamente pueden funcionar con la disponibilidad de
una red, por ejemplo, receptores GSM. Como alternativa, el
administrador de dispositivos puede solicitar un perfil
inmediatamente después de que se haya establecido una conexión de la
red, siendo dicho método adecuado para los dispositivos que son
completamente operativos sin disponibilidad de red, pero que se
supone que realizan conexiones ocasionales, por ejemplo, ordenadores
portátiles. Como alternativa, como otro ejemplo, el administrador de
dispositivos puede prepararse para solicitar el perfil sobre una
base periódica después de intervalos de tiempo discretos, siendo
dicho método adecuado para dispositivos de conexión permanente y
alto ancho de banda, por ejemplo, receptores de televisión por cable
y ordenadores conectados en red.
Como se mencionó anteriormente, la distribución
de una pluralidad de diferentes tipos de contenido pueden
gestionarse por el sistema. En realizaciones preferidas, por lo
menos uno de los tipos es programas informáticos.
La base de datos utilizada para almacenar la
estructura jerárquica puede adoptar una variedad de formas. Sin
embargo, en realizaciones preferidas, la base de datos es una base
de datos relacional. Debe tenerse en cuenta que, en esta realización
preferida, esta base de datos está completamente separada de
cualquier base de datos de servicios de directorios que también
puede proporcionarse como una base de datos de "Páginas
Blancas" para recursos dentro de una organización. Se ha
encontrado como beneficioso mantener esta base de datos separada de
la base de datos de servicios de directorios, puesto que esto libera
a la base de datos de estar vinculada por la estructura ya presente
en la base de datos de servicios de directorios. En cambio, aunque
algunos detalles sobre los recursos en la organización puedan
obtenerse a partir de la base de datos de servicios de directorios
para uso en la base de datos empleada para gestionar la distribución
de un contenidos, la estructura jerárquica real, dentro de la base
de datos, estará entonces libre para determinarse tomando en
consideración los dispositivos a gestionar y el contenido a
distribuir. Esto permite que se genere una estructura jerárquica muy
eficiente.
Visto desde un segundo aspecto, la presente
invención proporciona un producto de programa informático que
suministra un programa informático apto para configurar un servidor
para uso en un sistema según el primer aspecto de la presente
invención, estando el programa informático dispuesto operativamente
para hacer que el servidor realice las etapas siguientes: acceder a
una base de datos que proporcione una pluralidad de elementos como
una estructura jerárquica de dispositivos, siendo los
identificadores de contenidos capaces de asociarse con elementos en
la estructura jerárquica y uno de los elementos que representa un
dispositivo al que ha de distribuirse el contenido y haciendo
referencia a la estructura jerárquica en la base de datos para
generar un perfil para el dispositivo, conteniendo el perfilo una
pluralidad de identificadores de contenidos que indican el contenido
a proporcionar al dispositivo y conteniendo el perfil cualesquiera
identificadores de contenidos asociados con el elemento que
representa el dispositivo, junto con los identificadores de
contenido asociados con elementos en la estructura jerárquica de la
que depende ese elemento.
En una realización, el producto del programa
informático es apto también para configurar un ordenador para
proporcionar un interfaz que permita a un usuario gestionar la
estructura jerárquica almacenada en la base de datos.
En una realización, el producto del programa
informático es apto también para configurar un ordenador para
asociarse con una información de contenido requerido para gestionar
el contenido cuando se reciba por el dispositivo.
Visto desde un tercer aspecto, la presente
invención proporciona un producto de programa informático que
suministra un programa informático apto para configurar un
administrador de dispositivos correspondiente a un dispositivo para
uso en el sistema según el primer aspecto de la presente invención,
disponiendo el sistema de una base de datos que proporciona una
pluralidad de elementos como una estructura jerárquica de
dispositivos, pudiendo los identificadores de contenido asociarse
con elementos en la estructura jerárquica y uno de los elementos que
representa el dispositivo, estando el programa informático dispuesto
en condición operativa para hacer que el administrador de
dispositivos realice las etapas siguientes: recibir un perfil desde
un servidor, habiendo sido generado el perfil haciendo referencia a
la estructura jerárquica en la base de datos para generar un perfil
para el dispositivo, conteniendo el perfil una pluralidad de
identificadores de contenidos que indican el contenido a
proporcionarse al dispositivo, conteniendo el perfil cualesquiera
identificadores de contenido asociados con el elemento que
representa el dispositivo, junto con los identificadores de
contenido asociados con elementos en la estructura jerárquica de la
que depende dicho elemento; utilizando los identificadores de
contenido en el perfil para hacer que el contenido indicado por el
perfil sea proporcionado al dispositivo; tras la recepción de un
perfil posterior procedente del servidor, comparando los
identificadores de contenido en el posterior perfil con un registro
que identifique el contenido proporcionado al dispositivo según un
perfil anterior para determinar el nuevo contenido no todavía
proporcionado en el dispositivo y el contenido antiguo ya no
proporcionado en el dispositivo y empleando los identificadores de
contenido pertinentes para hacer que el nuevo contenido se
proporcione al dispositivo y hacer que se retire el contenido
antiguo.
Vista desde un cuarto aspecto, la presente
invención proporciona un procedimiento para gestionar la
distribución de un contenido a un dispositivo, que comprende las
etapas siguientes: almacenar en una base de datos una pluralidad de
elementos como una estructura jerárquica de dispositivos, siendo los
identificadores de contenido capaces de asociarse con elementos en
la estructura jerárquica y uno de los elementos que representa el
dispositivo; haciendo referencia a la estructura jerárquica en la
base de datos para generar un perfil para el dispositivo,
conteniendo el perfil una pluralidad de identificadores de contenido
que indica el contenido a proporcionar al dispositivo, conteniendo
el perfil los identificadores de contenido asociados con el elemento
que representa el dispositivo, junto con cualquier identificador de
contenido asociado con elementos en la estructura jerárquica de la
que depende dicho elemento; con referencia a los identificadores de
contenido en el perfil, que hace que el contenido indicado por el
perfil sea proporcionado al dispositivo; manteniendo un registro que
identifica el contenido proporcionado al dispositivo según el
perfil; tras la recepción de un perfil posterior proporcionado al
dispositivo según el perfil; tras la recepción de un perfil
posterior, comparando los identificadores de contenidos en el perfil
posterior con el registro para determinar el nuevo contenido no
todavía proporcionado en el dispositivo y el contenido antiguo ya no
proporcionado al dispositivo y utilizando los identificadores de
contenidos pertinentes para hacer que el nuevo contenido sea
proporcionado al dispositivo y hacer que se elimine el contenido
antiguo.
La presente invención se describirá a
continuación, a modo de ejemplo solamente, con referencia a una de
sus realizaciones preferidas según se ilustra en los dibujos
adjuntos, en los que:
las Figuras 1A, 1B y 1C son diagramas de bloques
que proporcionan ilustraciones esquemáticas de realizaciones de la
presente invención;
la Figura 2 es un diagrama de bloque adicional
que proporciona una visión general de arquitectura de un sistema
según realizaciones preferidas de la presente invención;
la Figura 3 ilustra, con más detalle, las
conexiones al servidor según realizaciones preferidas de la presente
invención;
las Figuras 4 a 8 ilustran un interfaz de usuario
utilizado en realizaciones preferidas de la presente invención para
permitir a un administrador del sistema gestionar la estructura
jerárquica almacenada en la base de datos;
las Figuras 9 y 10 proporcionan una ilustración
de ejemplos simplificados de la estructura jerárquica que puede
almacenarse dentro de la base de datos;
la Figura 11 es un diagrama de flujo que ilustra
las etapas realizadas dentro de un dispositivo de red para solicitar
un perfil y actuar sobre el perfil cuando se recibe;
la Figura 12 es un diagrama de flujo que ilustra
las etapas realizadas dentro del servidor para proporcionar un
perfil al cliente;
las Figuras 13A a 13B son diagramas de flujo que
ilustran, con más detalle, el procedimiento realizado dentro de un
dispositivo de red para actuar sobre un perfil recibido desde el
servidor,
la Figura 14 es un diagrama de flujo que ilustra,
con más detalle, cómo el perfil se prepara por el servidor según
realizaciones preferidas de la presente invención y
la Figura 15 proporciona una ilustración
esquemática de cómo se utilizan los generadores de paquetes en
realizaciones preferidas para empaquetar contenidos para su
distribución.
En el pasado, un número relativamente estático de
dispositivos informáticos fijos eran gestionados por una estructura
de soporte localizada capaz de configurar los entornos de
ordenadores complejos. Sin embargo, el futuro nos presenta la
perspectiva de tener una profusión de dispositivos, que sean
dispositivos informáticos u otros dispositivos informáticos tales
como teléfonos móviles, dispositivos tales como Asistente Digital
Personal (PDA), organizadores electrónicos, etc., que pueden ser, o
no, geográficamente fijos. Esto exigirá un sistema de gestión
alternativo que sea más flexible.
Las realizaciones preferidas de la presente
invención tienen como objetivo proporcionar dicho sistema de gestión
alternativo para la gestión distribuida de dispositivos de red
dentro de una red. El término "dispositivo de red", tal como
aquí se utiliza, está previsto para referirse a un dispositivo cuyo
contenido se gestiona por el sistema de realizaciones preferidas de
la presente invención, pero no está previsto para implicar que dicho
dispositivo esté permanentemente conectado a una red. Para los fines
de realizaciones preferidas de la presente invención, es suficiente
que cualquiera de dichos "dispositivos de red" sea capaz de
realizar por lo menos conexiones ocasionales a una red, bien sea
directamente, bien sea a través de algún otro dispositivo. Por
ejemplo, algunos dispositivos pueden delegar su gestión a otros
dispositivos que, a su vez, deben ser capaces de realizar conexiones
de redes ocasionales. Por ejemplo, algunos dispositivos del estilo
de PDA no son inherentemente conectables en red, sino que se basan
en un PC para realizar determinadas tareas, tales como instalar
nuevos programas. Puesto que el PC puede realizar conexiones de
redes ocasionales, dichos PDA también serán "dispositivos de
red" que pueden gestionarse por el sistema según realizaciones
preferidas de la presente invención.
Cada dispositivo de red está, en realizaciones
preferidas, provisto de un programa del cliente (que puede, de
manera alternativa, referirse aquí como un administrador de
dispositivos) que está dispuesto para comunicarse con un servidor,
manteniendo el servidor detalles del contenido (por ejemplo,
programas o datos) deseados para estar presentes en cada
dispositivo. En realizaciones preferidas, el programa del cliente
identifica al servidor el dispositivo de red y el servidor envía un
perfil del contenido deseado para que esté presente en ese
dispositivo. A continuación, el programa del cliente configura, en
una realización preferible, el dispositivo de red de modo que
contenga el contenido identificado en el perfil, recuperándose, de
una manera predeterminada, cualquier contenido no actualmente
presente en el dispositivo, pero identificado en el perfil.
En realizaciones preferidas de la presente
invención, el programa del cliente y el servidor operan en una
plataforma de Java^{TM}. La ubicuidad de Java^{TM} a través de
plataformas tan diversas como receptores de televisión por cable y
teléfonos móviles, permite la posibilidad de controlar centralmente
casi cualquier clase de dispositivo completamente a distancia, a
condición de que por lo menos se establezcan conexiones de redes
satisfactorias ocasionales para permitir que tenga lugar ese
control.
En realizaciones preferidas de la invención, el
programa del cliente en cada dispositivo de red es responsable de
realizar autónomamente la configuración del dispositivo. Dependiendo
de la clase de dispositivo, el programa del cliente ejecuta, a
intervalos definidos, a saber:
- 1.
- inmediatamente después de que se haya activado el dispositivo;
- 2.
- inmediatamente después de que se haya establecido una conexión de red o
- 3.
- después de intervalos de tiempo discreto.
El primer entorno está diseñado para
dispositivos de ancho de banda restringido que solamente pueden
funcionar con la disponibilidad de una red, por ejemplo, receptores
de GSM. El segundo se utilizará para dispositivos que sean
completamente operativos sin disponibilidad de red, pero que se
supone que realizan conexiones ocasionales tales como por ejemplo,
ordenadores portátiles. El tercer entorno está diseñado para
dispositivos de conexión permanente y ancho de banda, tales como
receptores de televisión por cable y ordenadores conectados en
red.
El programa del cliente comunica la identidad del
dispositivo a un servidor, que responde con un perfil de contenido
(por ejemplo, programas o datos) que se desean por la autoridad de
la red para estar presentes en este dispositivo. El servidor no
transmite el contenido, sino más bien la posición desde la cual
puede recuperarse cada uno. El cliente registra cada contenido que
busca, de modo que sea capaz de buscar selectivamente un contenido
nuevo o actualizado y suprimir el contenido ya no requerido,
abrogando así toda responsabilidad del usuario del dispositivo para
gestionar el dispositivo.
La autoridad de la red es la entidad con
responsabilidad para definir el perfil de los dispositivos. Esta
tarea se hace más simple mediante el uso de una
definición/estructura jerárquica, es decir, cada dispositivo está
representado como un miembro de una agrupación lógica denominada una
división. Cada división puede, a su vez, ser un miembro de otra
división, en la manera de un árbol lineal, hasta que se alcance el
antepasado común. Un perfil puede definirse para cada división. De
este modo, un perfil para un dispositivo consiste en cualquier
contenido explícitamente designado dentro de la definición
jerárquica, además desde su división, junto con la división padre y
así sucesivamente hasta la división raíz. Por ejemplo, con
referencia a la Figura 10, donde los nombres de dispositivos están
encerrados entre paréntesis, el perfil de Adelie se define no
solamente por su propia configuración, sino también por la de
Penguin, Bird y All. Sin embargo, si Adelie llegó a ser parte de la
división de Gull, todavía heredaría la configuración de Bird y All,
pero incluiría ahora la de Gull en lugar de la de Penguin.
En las Figuras 1A a 1C se ilustran vistas
esquemáticas de realizaciones ejemplo del sistema de la presente
invención.
La Figura 1A ilustra una realización posible de
la presente invención, en la que varios dispositivos de la red 10
están enlazados a través de una red LAN 50 con un servidor 30. En
esta realización, los dispositivos de red probablemente no son PCs,
pero no necesitan serlo y en realidad, podrían ser cualquier otro
dispositivo electrónico adecuado, por ejemplo un encaminador, un
concentrador inteligente, etc. Asimismo, los dispositivos de red
podrían ser organizadores personales, PDAs, etc., que pueden
conectarse a la red mediante un PC.
El servidor 30 puede conectarse a una base de
datos 40 que contiene una definición jerárquica que identifica los
dispositivos y el contenido que ha de asociarse con dichos
dispositivos. Un administrador del sistema puede gestionar la
definición jerárquica conectándose al servidor 30 a través de un
dispositivo de administración del sistema 20. La localización del
dispositivo de administración del sistema puede variarse, pero en el
ejemplo de la Figura 1A, el dispositivo de administración del
sistema está conectado al servidor a través de la red LAN 50.
Cada dispositivo de red 10 dispondrá, en las
realizaciones preferidas, de un programa del cliente instalado y
dispuesto para comunicarse con el servidor 30 para poder obtener un
perfil para el respectivo dispositivo de red, estando el perfil
derivado por un servidor teniendo en consideración la definición
jerárquica. Por consiguiente, el sistema según la Figura 1A
proporciona la gestión distribuida de los dispositivos de redes,
puesto que la definición jerárquica se mantiene centralmente y
luego, los programas del cliente se distribuyen entre los
dispositivos de redes pertinentes. Asimismo, la definición
jerárquica puede gestionarse directamente desde el servidor o, como
alternativa, puede gestionarse desde algún punto distribuido, tal
como el dispositivo de administración del sistema 20.
La Figura 1B proporciona una ilustración de una
realización alternativa en la que puede utilizarse la presente
invención. En esta realización, los dispositivos de redes están
conectados a través de una red de telecomunicaciones móvil y los
dispositivos de redes 10 serán dispositivos electrónicos dispuestos
para comunicarse a través de la red móvil, por ejemplo, teléfonos
móviles o a través de ordenadores portátiles con capacidad de
telecomunicaciones móviles. En esta realización, el servidor 30 está
conectado, a través de una infraestructura de telecomunicaciones 60,
a varios transmisores/receptores 70 utilizados para comunicarse con
los dispositivos de red 10. El sistema funciona en esencialmente la
misma manera que se describió con referencia a la Figura 1A, estando
cada dispositivo de red 10 provisto de un programa del cliente para
permitirle comunicarse con el servidor 30. Debe tenerse en cuenta
que el dispositivo de administración del sistema utilizado por el
administrador del sistema para gestionar la definición jerárquica
dentro de la base de datos 40 puede estar en cualquier lugar dentro
de la red y por lo tanto, puede estar en el servidor 30 o en
realidad, puede proporcionarse por un dispositivo de red en
cualquier lugar dentro de la red de telecomunicaciones.
En realizaciones preferidas de la presente
invención, pueden gestionarse numerosos tipos diferentes de
dispositivos, que pueden conectarse al servidor 30 a través de
diferentes mecanismos. Esto se ilustra, de manera esquemática, por
la realización ilustrada en la Figura 1C. En esta Figura, algunos
dispositivos de redes 100, como por ejemplo, sistemas de
ordenadores, pueden conectarse al servidor directamente a través de
una conexión Ethernet 130. Asimismo, otros dispositivos de redes
110, por ejemplo organizadores de bolsillo, teléfonos móviles, etc.
pueden conectarse al servidor, a través de comunicaciones
inalámbricas con un transmisor/receptor 70. Además, otros
dispositivos de red 120, por ejemplo, un ordenador portátil o un PC
multimedia, pueden conectarse al servidor a través de Internet
140.
Como se mencionó anteriormente, el sistema de
realizaciones preferidas está disponible para dispositivos que
soportan por lo menos conexiones de redes ocasionales. En
realizaciones preferidas, el sistema utiliza tecnologías Java e
Internet para permitir la gestión a distancia de una pluralidad de
dispositivos. La Figura 2 proporciona una ilustración de la vista de
arquitectura del sistema de realizaciones preferidas. El servidor 30
utiliza la conectividad de Invocación de Métodos Remotos (RMI) y la
estructura de software Jini de Java para hacerse por sí misma
disponible al programa del cliente 200 como un servicio de
configuración. RMI es un mecanismo de Java que permite a dos
programas comunicarse transparentemente a través de una red. Jini es
una infraestructura de software que permite que los servicios se
hagan disponibles a través de la red, siendo el lector referido al
sitio web http://www.sun.com/jini/ para más detalles.
Asimismo, el servidor utiliza protocolos de
Internet estándar, tales como HTTP o FTP para distribuir contenidos.
Por lo tanto, tal como se ilustra en la Figura 2, un programa del
cliente 200 residente en un dispositivo de red puede conectarse al
servidor 30 a través de los mecanismos de RMI 220 o Jini 230 para
poder solicitar y recibir un perfil desde el servidor. Además, una
herramienta de gestión 210 (preferiblemente un programa de
ordenador) en un dispositivo de administrador del sistema puede, por
ejemplo, utilizar un mecanismo RMI 220 para asignar un nuevo
contenido a elementos (p.e., divisiones, dispositivos) dentro de la
estructura jerárquica mantenida en la base de datos 40. Además,
cuando se ha recibido el perfil, el programa del cliente 200 puede
recoger contenidos desde los servidores 250, 260 a través de
Internet 240 utilizando los protocolos de Internet estándar tales
como HTTP o FTP según sea apropiado.
Debe tenerse en cuenta que el sistema de la
realización preferida es una aplicación muy distribuida. La base de
datos 40, el servidor 30, la herramienta de gestión 210 y en
realidad, cualquier servidor de directorios, que pueda utilizarse
para obtener información para su empleo dentro de la base de datos
40, pueden localizarse en máquinas separadas.
La Figura 3 proporciona más detalles de la manera
en que el servidor está conectado según realizaciones preferidas de
la presente invención. El servidor 30 está diseñado para integrarse
con los servidores existentes. Por lo tanto, puede utilizarse un
back-end (servicios de fondo) de base de datos 40
para almacenar la estructura jerárquica utilizada por el servidor
para generar perfiles para dispositivos de redes. La Conectividad de
Base de Datos de Java (JDBC) facilita la conexión de bases de datos
de terceros al servidor 30. Más información sobre JDBC puede
encontrarse en la dirección del sitio web
http://java.sun.com/products/jdbc/.
Asimismo, un servidor de directorios estándar,
tal como LDAP (un servidor de directorio estándar de Internet), NDS,
etc., puede conectarse al servidor 30 para permitir que se obtenga
por el servidor 30 información sobre usuarios particulares dentro de
la organización. Tal como se ilustra en la Figura 3, el así
denominado Interfaz de Directorios y Nombres de Java (JNDI) permite
que tipos diferentes de servidores de directorios sean conectados al
servidor 30. Para más información sobre JNDI, se remite al lector a
la dirección del sitio web http://java.sun.com/products/jndi/.
Aunque es evidente que la estructura jerárquica en la base de datos
40 podría crearse desde nada anterior por el servidor 30, es
bastante probable que una organización que desee tener sus
dispositivos gestionados de conformidad con el sistema de
realizaciones preferidas de la presente invención tendrá ya un
servidor de directorios que le proporcione detalles pertinentes
sobre los usuarios, etc. Por lo tanto, la tarea de crear la
estructura jerárquica en la base de datos 40 puede simplificarse
significativamente permitiendo que el servidor 30 obtenga detalles
pertinentes sobre los usuarios, etc., desde cualquier servidor de
directorio estándar ya proporcionado dentro de la organización.
Asimismo, se ha encontrado que es muy deseable
almacenar la estructura jerárquica utilizada para gestionar la
distribución de un contenido a los dispositivos en una base de datos
completamente separada 40 en lugar de tratar de incorporar la
información adicional dentro de la estructura bastante fija de una
base de datos de servidores de directorios existente, puesto que
esto facilita bastante más flexibilidad en la creación de divisiones
apropiadas y localizaciones de dispositivos dentro de las
divisiones, tomando en consideración los dispositivos que han de
gestionarse y el contenido que ha de distribuirse a dichos
dispositivos.
En realizaciones preferidas, servidores de
Internet estándar 250 y 260 se utilizan luego para almacenar el
contenido real a distribuir a los dispositivos. El servidor 30 es
entonces capaz de comunicarse con los servidores 250, 260, por
ejemplo a través de conexiones de Internet estándar, para comprobar
dónde se almacena el contenido y para comprobar el formato en el que
se almacena dicho contenido, etc.
Tal como se ilustra en la Figura 3, un registro
de RMI estándar y un Jini djinn opcional se utiliza para hacer el
servicio disponible para dispositivos de redes. Un registro RMI es
un programa remoto que proporciona mecanismos para localizar otros
programas remotos y facilita así el uso del mecanismo de RMI para
permitir al programa del cliente comunicarse con el servidor 30.
Djinn es el nombre dado al grupo de dispositivos, recursos y
usuarios incorporados por la infraestructura de software de
Jini.
Considerando ahora los programas del cliente 200
asociados con dispositivos de redes particulares, estos programas de
clientes pueden conectarse al servidor utilizando uno de dos métodos
que dependen de su configuración. Para dispositivos de red con
código de cliente incorporado, puede utilizarse el mecanismo RMI de
Java, mientras que el software de cliente descargable dinámico se
proporciona como una alternativa a través del servicio de Jini
opcional. Utilizando el método de Jini, un dispositivo tendrá ya lo
que se conoce como un explorador de servicios que busca servicios
que estén disponibles. En este caso, el programa del cliente no está
instalado localmente en el dispositivo, pero el proceso puede
automatizarse mediante el uso de una configuración apropiada
presente en el dispositivo.
En cada dispositivo de red, se mantiene un
pequeño registro de clientes que mantiene un registro de todos los
contenidos presentes en el dispositivo que ha sido obtenido según un
perfil recibido desde el servidor 30. Cuando se entra en contacto
con el servidor, se recupera un perfil que describe lo que debe
estar presente en el dispositivo. Tal como se describirá con más
detalle en lo sucesivo, se recupera los contenidos nuevos y
actualizados indicados por el perfil y se elimina el contenido ya
obsoleto. Durante este proceso, cualesquiera instaladores y
desinstaladores son, en una realización preferible, descargados de
manera automática desde el servidor 30 y luego invocados. Debe
tenerse en cuenta que todo esto sucede sin ninguna implicación del
usuario del dispositivo de red.
En realizaciones preferidas, una aplicación de
herramienta de gestión se proporciona para presentar un interfaz
gráfico simple para prestar asistencia a un administrador o elemento
similar, para permitir al administrador del sistema construir y
mantener una estructura jerárquica de divisiones y dispositivos
dentro de la base de datos 40. A continuación, a los identificadores
de contenido se les puede aplicar la función de "arrastrar y
colocar" en elementos particulares que representan divisiones y/o
dispositivos para poder asociar el contenido con los elementos de la
estructura jerárquica. Mediante la integración con un servidor de
directorios estándar tal como se ilustró anteriormente con
referencia a la Figura 3, el administrador del sistema es capaz de
determinar quién posee un dispositivo particular en la red. Por lo
tanto, equipar el dispositivo de una persona para una nueva función
simplemente implica arrastrar un icono que representa a esa persona
a una nueva división. Estos conceptos se ilustrarán todavía más con
referencia a las Figuras 4 a 8, que proporcionan ilustraciones
ejemplo del interfaz gráfico proporcionado por la herramienta de
gestión para permitir a un administrador del sistema gestionar la
estructura jerárquica mantenida por el servidor 30 en la base de
datos 40.
Con referencia a la Figura 4, la ventana de la
izquierda proporciona una ilustración esquemática de la definición
jerárquica, mientras que la ventana de la derecha sirve como una
zona de visualización de información. La ventana en la parte
inferior de la pantalla contiene una lista de identificadores de
contenido que están disponibles para asignación a elementos de la
estructura jerárquica que representa divisiones o dispositivos
particulares (en este ejemplo, el contenido es programas
informáticos). Como puede observarse en la Figura 4, cada
identificador de contenido incluye un nombre para el contenido y un
indicador de posición, en este caso una dirección de URL, que
identifica la posición desde la que puede recuperarse el
correspondiente contenido. De manera opcional, el identificador de
contenido puede incluir información tal como números de versión,
tipo de contenido y la fecha de la última modificación.
La Figura 5 ilustra la información que se
visualizará cuando el administrador del sistema selecciona la
división "Ingeniero". Como puede observarse en la zona de
visualización de la información, esto indica que los programas
"amarillo", "añil" y "naranja" están asociados con la
división "Ingeniero" y que también el sistema operativo
"verde" y la aplicación "rojo" son herencia de la división
"Todos".
La Figura 6 ilustra la información proporcionada
si el administrador del sistema tuviera que seleccionar una persona
individual, en este caso la persona es Nigel Brookes, que tiene dos
dispositivos asociados, a saber, "Hugh" y "Cuthbert". Por
último, la Figura 7 ilustra los programas asociados con el
dispositivo "Hugh". Se puede observar que el dispositivo
"Hugh" tiene asociada directamente la aplicación
"violeta", pero también hereda los programas asociados con las
divisiones "Ingeniero" y "Todos".
La Figura 8 ilustra el interfaz gráfico que puede
proporcionarse para una estructura de base de datos ejemplo
alternativa. En este caso, un dispositivo denominado Futuro Teléfono
se indica como perteneciente a una persona, Nigel Brookes, que está
asignada dentro de la división de Ingeniero, que por sí misma es una
división de la Concept Technologies Division. Asimismo, la Concept
Technologies Division está contenida dentro de la División Hugh
Symons, que está contenida dentro de la división Todos. Como puede
observarse en la Figura 8, el dispositivo Futuro Teléfono tiene dos
aplicaciones asociadas y también hereda una aplicación de la
división Todos. En este caso, es evidente que las divisiones Hugh
Symons, Concept Technologies y Engineers no tienen ningún contenido
asociado directamente por ellas, puesto que, de no ser así, el
dispositivo Futuro Teléfono habría heredado el contenido desde esas
divisiones.
Con referencia a la Figura 8 también ser
observará que los identificadores de contenido incluyen también, en
este caso, información adicional que identifica un período de
arrendamiento por defecto. Esta información permite que el programa
del cliente, en un dispositivo de red, elimine automáticamente el
contenido después de que termine el período de arrendamiento. Por
consiguiente, con referencia a la Figura 8, se puede observar que
dos de las aplicaciones asignadas al dispositivo Futuro Teléfono
están en un arrendamiento perpetuo, pero que la aplicación JarBall
Madness está en un arrendamiento de treinta días que termina el 26
de agosto de 1999. El programa del cliente puede utilizar esta
información para eliminar automáticamente JarBall Madness desde el
dispositivo Futuro Teléfono en esa fecha.
Para una mayor integridad, la Figura 9
proporciona también una simple ilustración de una parte de una
estructura jerárquica que puede mantenerse dentro de la base de
datos 40. Como se mencionó anteriormente, los dispositivos están
organizados en agrupaciones jerárquicas lógicas denominadas
divisiones. Cada división hereda el contenido de su división
"padre". El contenido puede asignarse a estas divisiones, y a
dispositivos individuales, que facilita luego la generación de un
perfil para dispositivos particulares.
En la Figura 9, podemos ver que Sue Bar posee el
dispositivo "My Cell Phone". Es parte de la división Cliente y
también de las divisiones Soporte y Todos. Por lo tanto, su
dispositivo tendrá el contenido asignado a Todos, Soporte, Cliente y
a ese dispositivo específico. Si Sue decidió que le gustaría hacer
uso de un servicio que enviara todos los mensajes SMS (Servicios de
Mensajes Cortos) a su cuenta de correo electrónico, puede solicitar
dicho servicio del administrador del sistema pertinente. El
administrador del sistema puede decidir no hacer este servicio
generalmente disponible y en cambio, lo asignará a su teléfono móvil
solamente. Cuando ese dispositivo siguiente recupere un perfil desde
el servidor, recibirá automáticamente la aplicación pertinente.
El administrador del sistema conserva la
responsabilidad por la jerarquía completa, pero es capaz de delegar
el control de subdivisiones a otros gestores. Por consiguiente, con
referencia a la Figura 9, el administrador de red podría retener la
responsabilidad para la división Todos, pero puede elegir delegar la
gestión de la división Soporte al Cliente y la división de Soporte
Técnico a uno o más gestores diferentes.
Los diagramas de flujo de las Figuras 11 y 12
proporcionan una breve ilustración del proceso realizado cuando un
programa del cliente, en un dispositivo, se ejecuta de acuerdo con
una realización de la presente invención, ilustrando la Figura 11
las etapas de procesamiento ejecutados por el programa del cliente e
ilustrando la Figura 12 las etapas de procesamiento ejecutados por
el servidor. Resulta evidente que no todas las realizaciones
necesitan ejecutar la secuencia exacta de etapas ilustradas en las
Figuras 11 y 12, sino más bien que las Figuras 11 y 12 están
previstas para ilustrar una realización particular. Por ejemplo, si
el servidor determina que el dispositivo no está actualmente en la
base de datos, entonces puede prepararse para rechazar el acceso del
dispositivo a la red en lugar de crear una nueva entrada para dicho
dispositivo en la división "nuevos dispositivos".
Con referencia a la realización de la Figura 12,
se apreciará que si se proporcionó la división "nuevos
dispositivos", se proporcionaría, en general, como un "hijo"
de la división "Todos". Si cualquier contenido está asociado
con la división "Todos", entonces este nuevo dispositivo
heredará dicho contenido. Sin embargo, como alternativa, las
divisiones "Todos" y "nuevos dispositivos" pueden
disponerse para que no tengan ningún contenido asociado, de modo que
el nuevo dispositivo no esté provisto de ningún contenido en el
momento en que entra primero en contacto con el servidor.
Haciendo caso omiso del método que se adopte, en
realizaciones preferidas, el administrador de la red trataría de
reasignar cualquier dispositivo colocado dentro de la división
"nuevos dispositivos" a la división apropiada dentro de la
jerarquía. Por ejemplo, haciendo referencia a las Figuras 4 a 7, si
el nuevo dispositivo estuviera realmente dentro de la división
"Soporte", entonces el administrador del soporte desplazaría
dicho dispositivo desde la división "nuevos dispositivos" a la
división "Soporte", de modo que, en posteriores accesos, dicho
nuevo dispositivo se dispondrá para recibir el contenido apropiado a
la división de "Soporte".
Las Figuras 13 y 14 son diagramas de flujo que
proporcionan una ilustración más detallada del proceso que puede
realizarse cuando se ejecuta un programa de cliente en un
dispositivo. Las Figuras 13A a 13B pueden considerarse como una
ilustración más detallada de la realización ilustrada en la Figura
11, mientas que la Figura 14 ilustra una diferente realización a la
ilustrada en la Figura 12, por cuanto que en lugar de asignar
dispositivos desconocidos a una división de nuevos dispositivos, el
proceso ilustrado en la Figura 14 simplemente termina el proceso y
por lo tanto, el proceso solamente puede utilizarse una vez que los
dispositivos hayan sido asignados por el administrador del sistema a
una posición adecuada en la estructura jerárquica.
Como referencia a la Figura 13A, cuando se
ejecuta el programa del cliente, comienza en la etapa 500 y prosigue
hasta la etapa 510, donde se determina dónde existe cualquier red
disponible. Si no es así, el proceso termina en la etapa 520 y se
iniciará de nuevo en la siguiente ocasión en que se ejecute el
programa del cliente. Como se mencionó anteriormente, el programa
del cliente está preferiblemente dispuesto para ejecutarse a
intervalos predeterminados, siendo estos intervalos determinados
dependiendo del tipo de servicio.
Si la red está disponible, entonces el proceso
proseguirá a la etapa 530 donde el dispositivo trata de descargar el
perfil desde el servidor 30. En la etapa 540, se determina si el
proceso de descarga ha tenido éxito, es decir, si un perfil fue
recibido desde el servidor y si no es así, el proceso realiza un
bucle de retorno a la etapa 530. Se apreciará que si existe algún
problema temporal con el servidor o la red que inhiba la entrega del
perfil al programa del cliente, entonces el programa del cliente
podría detenerse en este punto. En consecuencia, puede ser adecuado,
en algunas realizaciones, proporcionar aquí un mecanismo de tiempo
de espera, donde el proceso se bifurca a la etapa 520 si no se ha
conseguido ninguna descarga satisfactoria del perfil dentro de un
tiempo predeterminado. Sin embargo, para mayor sencillez, este
proceso no se ha ilustrado en la figura 13A.
Suponiendo que la descarga del perfil es
satisfactoria, entonces el proceso prosigue a la etapa 550, donde el
nuevo perfil se compara con un registro de contenido 560 mantenido
en el dispositivo de la red para identificar el contenido recuperado
al dispositivo de conformidad con un perfil anterior. Sin embargo,
antes de examinar el resto de la Figura 13A a la Figura 13D, se
describirá ahora, con referencia a la Figura 14, la manera en la que
el perfil se genera por el servidor 30. La generación del perfil es
preferiblemente realizada mediante software instalado en el servidor
30. El proceso se inicia en la etapa 700 y en la etapa 705 el
servidor espera una conexión del dispositivo. Una vez conectado el
dispositivo, se determina en la etapa 710 si el dispositivo es
conocido, es decir, si está representado en la estructura jerárquica
y si no lo está, se cierra la conexión en la etapa 720. A
continuación, el proceso vuelve a la etapa 705 a la espera de una
nueva conexión de dispositivo.
Sin embargo, suponiendo que el dispositivo es
conocido, entonces el proceso prosigue a la etapa 715 donde se
recuperan los identificadores de contenido para ese dispositivo a
partir del correspondiente elemento en la estructura jerárquica
mantenida en la base de datos 40. A continuación, en la etapa 725,
se determina en qué división está contenido el dispositivo dentro de
la estructura jerárquica y luego, los identificadores de contenido,
asociados con esa división se añaden también a los identificadores
de contenido recuperados en la etapa 715.
A continuación, en la etapa 735, se determina si
la división tiene un "padre" dentro de la estructura jerárquica
y si es así, la división "padre" se recupera en la etapa 730 y
los identificadores de contenido, dentro de dicha división, se
añaden luego en la etapa 725 a los identificadores de contenido ya
recuperados desde la base de datos. Este proceso continúa hasta que
se determine en la etapa 735 que la división actual no tiene
"padre" (es decir, con referencia a los ejemplos anteriores,
esto significará que la división actual es la división "Todos",
en cuyo punto se determina que han sido localizados todos los
identificadores de contenido adecuados. En consecuencia, estos
identificadores de contenido se envían al dispositivo en la etapa
740 cuando sea solicitado el perfil correspondiente. A continuación,
el proceso retorna a la etapa 705 para esperar una nueva conexión
del dispositivo.
Volviendo a la Figura 13A, como resultado de la
etapa 550, cualquier nuevo contenido a recuperar, contenido antiguo
a suprimir o contenido a autorizar se habrán determinado mediante la
comparación del nuevo perfil con el registro de contenido
anteriormente almacenado 560. En consecuencia, el proceso prosigue
hasta la etapa 570 en la Figura 13B, donde se determina si existe
algún contenido a retirar. Si es así, se determina en la etapa 575
si es adecuado ejecutar un desinstalador para poder retirar el
contenido.
Antes de continuar con la descripción de la
Figura 13B, el mecanismo para determinar si se necesita un
instalador/desinstalador se examinará con más detalle. Como se
mencionó anteriormente, cuando se recupera el contenido para
dispositivos de red, también se incluye preferiblemente información
relacionada que identifique cómo dicho contenido debe tratarse a su
recepción. De conformidad con realizaciones preferidas de la
presente invención, la asociación de esta información adicional con
el contenido se consigue a través de uno o más empaquetadores
proporcionados por el sistema de realizaciones preferidas,
materializándose estos empaquetadores preferiblemente como programas
informáticos. Este proceso se ilustra, de manera esquemática, en la
Figura 15.
El mecanismo de entrega del contenido es muy
flexible, permitiendo a los desarrolladores introducir nuevos tipos
de contenido junto con cualesquiera instaladores y desinstaladores
necesarios sin tener que cambiar ningún software en el lado del
cliente. Por ejemplo, todos los vendedores en una organización
particular podrían haber proporcionado los más recientes resultados
de rendimiento a sus dispositivos e instalado automáticamente en una
aplicación de base de datos en dichos dispositivos.
Esta flexibilidad se consigue reuniendo los
contenidos en archivos Java estándar (ficheros JAR) que, en
realizaciones preferidas, tienen asociado un archivo bien conocido
"META-INF/manifest.mf" y pasando dichos
archivos Java, a través de un empaquetador, según se ilustra en la
Figura 15. Un archivo JAR es un archivo o archivos que se han
comprimido en un archivo único utilizando una herramienta adecuada
suministrada con el Kit de Desarrollo de Java.
Tal como se ilustra en la Figura 15, el contenido
800 se hace pasar a un empaquetador adecuado dentro de un grupo de
empaquetadores 810. Por ejemplo, un empaquetador particular 830
puede proporcionarse para aplicaciones de empaquetado, un diferente
empaquetador 840 puede proporcionarse para empaquetar documentos y
otro empaquetador 850 puede proporcionarse para empaquetar otro tipo
de contenido. El empaquetador pertinente altera el contenido del
archivo de manifiesto de carga para incluir por lo menos el nombre,
tipo y versión del contenido. Asimismo, el empaquetador está en la
libertad de incluir, en este archivo, cualquier otra variable que
pueda requerirse. Esto da lugar a un paquete 820 que puede
distribuirse a dispositivos de redes según realizaciones preferidas
de la presente invención. Debe tenerse en cuenta que el paquete
resultante es todavía completamente compatible con Java.
En realizaciones preferidas, un empaquetador se
proporciona para cada tipo de contenido. Además, cada tipo de
contenido puede tener opcionalmente un instalador/desinstalador
proporcionado para instalar/desinstalar dicho contenido en un
dispositivo de red. Puesto que los empaquetadores son específicos
del tipo y puesto que cualquier instalador/desinstalador es también
específico del tipo, será evidente que el empaquetador puede
disponerse para incluir cualesquiera variables completamente
requeridas por el correspondiente instalador/desinstalador. Por
ejemplo, si el tipo de contenido es documentos de Microsoft Word
para PCs, el empaquetador podría incluir, dentro del paquete, el
número de versión requerida de Microsoft Word que se necesita para
la lectura del archivo. A continuación el instalador intentaría
localizar esa versión de Word y, por ejemplo, avisaría al usuario
del dispositivo si no lo encuentra.
A modo de otro ejemplo, si el tipo de contenido
es un programa de aplicación, el empaquetador podría incluir dentro
del paquete una identificación de qué archivo es el principal
archivo ejecutable, una identificación de un icono a utilizarse para
representar el programa en el ordenador, etc. A continuación, el
instalador pertinente puede utilizar dicha información para
permitirle instalar correctamente el programa de aplicación.
Por lo tanto, puede observarse que, dependiendo
del tipo de contenido, puede ser necesaria o no, la presencia de una
instalador/desinstalador. El paquete tal como se recupera
especifica, entre otras cosas, el tipo de contenido, como en
realidad hace el identificador de contenido en el perfil y por lo
tanto, el administrador de dispositivos puede comprobar para
determinar si un instalador/desinstalador está asociado con ese tipo
de contenido. Esto puede, por ejemplo, ser apropiado si el contenido
es un programa de aplicación.
Volviendo a la Figura 13B, si se determina en la
etapa 575 que un desinstalador debe ejecutarse, entonces el proceso
prosigue a la etapa 585, donde el desinstalador apropiado se
descarga y ejecuta para poder retirar el contenido pertinente. En
realizaciones preferidas, para descargar el desinstalador apropiado,
el programa del cliente pide el registro de RMI 310 ilustrado en la
Figura 3 si un instalador/desinstalador existe para el tipo de
contenido recibido. Si existe dicho instalador/desinstalador, será
descargado por el registro de RMI al programa del cliente, donde
puede ejecutarse para desinstalar el contenido particular en
cuestión.
Sin embargo, no todos los tipos de contenidos
necesitarán un desinstalador. Por ejemplo, el contenido puede ser un
archivo de datos que simplemente necesite borrado. En este caso, se
determinará en la etapa 575 que no es necesario ejecutar un
desinstalador, en cuyo caso el proceso proseguirá a la etapa 580
donde se borrará el contenido. A continuación, el proceso vuelve a
la etapa 570 para determinar si necesita retirarse cualquier otro
contenido. Si es así, se repite el anterior proceso descrito.
Si no es así, el proceso prosigue a la etapa 590,
donde se determina si existe algún contenido que se tenga que
actualizar. Si es así, el proceso pasa a la etapa 595, donde el
contenido actualizado se descarga desde la posición indicada dentro
del identificador de contenido correspondiente proporcionado dentro
del perfil. Como se mencionó anteriormente, el contenido está
preferiblemente almacenado en servidores de Internet y en este caso,
el identificador de contenido identificará una dirección de Internet
apropiada desde la cual descargará el contenido. Una vez que se haya
descargado el contenido, será determinado en la etapa 600 de la
Figura 13C si es necesario ejecutar un instalador/desinstalador,
según se mencionó anteriormente tomándose esta decisión sobre la
base del tipo de contenido que se va a actualizar.
Si, por ejemplo, el contenido es un archivo de
datos, entonces puede no ser apropiado ejecutar un instalador y/o
desinstalador y en consecuencia, el proceso puede proseguir con la
etapa 615, donde se borra el contenido obsoleto y se guarda el
contenido actualizado. Sin embargo, suponiendo que se determine que
se necesita un instalador y/o desinstalador, entonces el proceso
prosigue con la etapa 605 donde se descarga cualquier instalador y/o
desinstalador necesario utilizando el proceso anteriormente descrito
con referencia a la etapa 585. A continuación, el desinstalador
puede ejecutarse para retirar el contenido obsoleto, en cuyo caso el
proceso pasa a la etapa 610, donde el instalador necesario se
ejecuta para instalar el contenido actualizado. A continuación el
proceso retorna a la etapa 590 para determinar si se necesita
actualizar cualquier nuevo contenido. Si es así, se repite el
proceso anteriormente descrito pero si no es así, el proceso
prosigue a la etapa 620 según se ilustra en la Figura 13D.
En la etapa 620, se determina si existe algún
nuevo contenido que tenga que añadirse. Si es así, entonces el
proceso pasa a la etapa 625, donde se descarga el nuevo contenido
utilizando la información proporcionada en el identificador de
contenido pertinente incluido dentro del perfil. A continuación, en
la etapa 630 se decide si se necesita ejecutar un instalador y si es
así, el proceso pasa a la etapa 635, donde el instalador apropiado
se descarga y ejecuta para poder instalar el contenido. Si en la
etapa 630 se decide que no se necesita un instalador, entonces el
proceso pasa directamente a la etapa 640, donde se guarda el nuevo
contenido. Con respecto a la emisión de dónde debe guardarse un
nuevo contenido, si se utiliza un instalador, puede disponerse para
determinar si existe una posición por defecto para el
almacenamiento de ese tipo de contenido. Por ejemplo, si el
contenido es un archivo de Microsoft Word, entonces el instalador
puede revisar los parámetros de la configuración del dispositivo
para comprobar si se especifica una posición por defecto para
archivos de Microsoft Word y si es así, dicha posición se utilizará
para el almacenamiento del contenido. Si no existe dicha posición
por defecto, o si no se utiliza un instalador, el administrador de
dispositivos puede preparar la especificación de una posición por
defecto en donde almacenar el contenido.
Una vez que el nuevo contenido se haya almacenado
en el dispositivo, el proceso vuelve a la etapa 620, donde se
determina si existe cualquier nuevo contenido a añadirse. Si es así,
se repite el proceso anteriormente descrito, pero si no hay ningún
contenido que añadir, el proceso pasa a la etapa 645, donde se
almacena el perfil actual en el registro de contenido 560. En
realizaciones preferidas, se supone que, en esta etapa, el
dispositivo contendrá todo el contenido que se indica en el perfil
actual. Sin embargo, en el caso de que, por algún motivo, el
dispositivo fuera incapaz de recuperar cualquier elemento de
contenido particular en el perfil, por ejemplo puesto que el
correspondiente servidor estaba en ese momento fuera de acción,
entonces se prefiere que se actualice el registro de contenido 560
para reflejar el contenido actual recuperado al dispositivo según el
perfil y no almacenar simplemente el propio perfil actual. Una vez
que se haya actualizado el registro de contenido, entonces el
proceso pasa a la etapa 655, donde termina el proceso.
A partir de la descripción anterior, se apreciará
que el sistema de realizaciones preferidas de la presente invención
proporciona una plataforma para gestionar dispositivos dispares,
heterogéneos o distribuidos. Estos dispositivos incluyen, sin
limitación, ordenadores, teléfonos móviles digitales y cajas
"set-top". El sistema de realizaciones
preferidas proporciona un mecanismo único en su género para la
distribución, instalación y retirada automáticas de casi cualquier
clase de contenido, incluyendo aplicaciones, sin ninguna
intervención de usuario. Un administrador del sistema utiliza una
herramienta de gestión para construir un programa de contenido para
cada dispositivo o grupo de dispositivos. A intervalos
predeterminados, una pequeña pieza de código del lado del cliente
compara un perfil generado por el servidor con un registro de los
contenidos almacenados en el dispositivo según el perfil anterior.
Cualquier contenido nuevo o actualizado es automáticamente
recuperado e instalado y se elimina cualquier contenido ya obsoleto.
En realizaciones preferidas, el servidor, la herramienta de gestión
y el programa del cliente están todos ellos basados en Java.
Para ilustrar la versatilidad del sistema
anterior, pueden considerarse los siguientes ejemplos de
entornos.
En primer lugar, se considera la situación en la
que un miembro de una red corporativa introduce un nuevo
dispositivo. Según realizaciones preferidas de la presente
invención, durante la sincronización, el dispositivo pide la
identidad del propietario. El servidor establece la presencia del
usuario en el servidor de directorios e instala automáticamente el
dispositivo que es poseído por ese usuario. Al dispositivo se le
asignará un perfil basado en su posición en la estructura jerárquica
y recibirá automáticamente su contenido adecuado.
Como un segundo ejemplo, consideremos la
situación en la que un miembro de una unidad organizativa cambia de
función. En realizaciones preferidas de la presente invención, su
icono de usuario dentro de la estructura jerárquica es objeto de la
operación de "arrastrar y colocar" sobre la división que
representa su nueva función. A continuación, los contenidos se
actualizan automáticamente para reflejar el cambio en la siguiente
ocasión en que se reciba el perfil por el dispositivo del
usuario.
Como otro ejemplo, consideremos la situación en
la que un equipo opera en un conjunto agrupado de teléfonos móviles.
En situaciones normales, será posesión de una unidad organizativa en
el servidor de directorios. Cuando un usuario solicita un
dispositivo, se arrastra desde la unidad organizativa hacia el icono
del usuario. A continuación, al dispositivo se le proporcionará
automáticamente el contenido apropiado para dicho usuario.
Como otro ejemplo, consideremos la situación en
la que tiene que introducirse un nuevo programa. Un administrador
empaqueta el nuevo programa utilizando uno de los empaquetadores
anteriormente descritos, desplaza el contenido empaquetado a un
servidor de la web comunica al servidor 30 la posición que ocupa en
la red ese contenido. A continuación, se genera un identificador de
contenido correspondiente y se asocia con las apropiadas
divisiones/dispositivos dentro de la estructura jerárquica.
Por último, se considerará el entorno donde se
actualiza un programa. A condición de que se empaquete de la manera
apropiada utilizando uno de los empaquetadores anteriormente
descritos, se describirá automáticamente como una mejora y dicha
mejora se instalará según el proceso anteriormente descrito con
referencia a las Figuras 13A a 13D.
Aunque se haya descrito aquí una realización
particular de la invención, resulta evidente que la invención no
está limitada a dicha realización y que pueden realizarse numerosas
modificaciones y adiciones comprendidas dentro del alcance de la
invención. Por ejemplo, podrían realizarse varias combinaciones de
las características de las siguientes reivindicaciones dependientes
con las características de las reivindicaciones independientes, sin
apartarse por ello del alcance de la presente invención.
Claims (23)
1. Sistema para gestionar la distribución de un
contenido a un dispositivo (10; 100, 110, 120), que comprende:
una base de datos (40) para almacenar una
pluralidad de elementos como una estructura jerárquica de
dispositivos, siendo los identificadores de contenido capaces de
asociarse con elementos en la estructura jerárquica y representando
uno de los elementos el dispositivo;
un servidor (30) para referenciar la estructura
jerárquica en la base de datos para generar un perfil para el
dispositivo, conteniendo dicho perfil una pluralidad de
identificadores de contenido que indican el contenido que debe ser
proporcionado al dispositivo, conteniendo el perfil cualesquiera
identificadores de contenido asociados con el elemento que
representa el dispositivo, junto con cualesquiera identificadores de
contenido asociados con elementos en la estructura jerárquica de la
que depende dicho elemento;
un administrador de dispositivos (200) asociado
con el dispositivo y dispuesto para recibir el perfil desde el
servidor y para utilizar los identificadores de contenido en el
perfil para hacer que el contenido indicado por el perfil sea
proporcionado al dispositivo, manteniéndose un registro que
identifica el contenido proporcionado al dispositivo según el
perfil;
estando además el administrador de dispositivos
dispuesto para, tras la recepción de un perfil posterior desde el
servidor, comparar los identificadores de contenido en el perfil
posterior con el registro para determinar un nuevo contenido todavía
no proporcionado en el dispositivo y un antiguo contenido ya
proporcionado al dispositivo, estando el administrador de
dispositivos dispuesto para utilizar los identificadores de
contenido pertinentes para hacer que el nuevo contenido sea
proporcionado al dispositivo y para hacer que se elimine el antiguo
contenido.
2. Sistema según la reivindicación 1, en el que
cada identificador de contenido proporciona un nombre para el
correspondiente contenido y un indicador de posición que identifica
una posición desde la cual puede obtenerse el contenido.
3. Sistema según la reivindicación 2, en el que
la distribución de una pluralidad de diferentes tipos de contenido
se gestiona por el sistema y el identificador de contenido
identifica además el tipo del contenido correspondiente.
4. Sistema según la reivindicación 2 ó 3, en el
que el contenido se almacena en servidores (250, 260) contactables a
través de Internet y el indicador de posición es una dirección de
URL.
5. Sistema según cualquiera de las
reivindicaciones anteriores, que comprende varios empaquetadores
(810) para su asociación con una información de contenido requerida
para gestionar el contenido cuando se reciba por el dispositivo.
6. Sistema según la reivindicación 5, en el que
la distribución de una pluralidad de diferentes tipos de contenido
son gestionados por el sistema y se proporciona un empaquetador para
cada tipo de contenido.
7. Sistema según la reivindicación 5 ó 6, en el
que la información asociada con un contenido comprende una
identificación de un instalador que debe ser utilizada para instalar
el contenido en el dispositivo.
8. Sistema según cualquiera de las
reivindicaciones anteriores, que comprende además una herramienta
de gestión (210) para proporcionar una interconexión para permitir a
un usuario gestionar la estructura jerárquica almacenada en la base
de datos.
9. Sistema según la reivindicación 8, en el que
dichos elementos incluyen una o más divisiones, representando cada
división un agrupamiento lógico para dispositivos, permitiendo la
herramienta de gestión la creación y supresión de divisiones y
permitiendo que se asocien identificadores de contenidos con cada
división.
10. Sistema según la reivindicación 9, en el que
el perfil generado por el servidor contiene cualesquiera
identificadores de contenido asociados con el dispositivo y
cualesquiera identificadores de contenido asociados con una división
de la que depende el dispositivo en la estructura jerárquica.
11. Sistema según cualquiera de las
reivindicaciones 8 a 10, en el que la herramienta de gestión permite
que los identificadores de personas que identifican personas
individuales sean proporcionados como elementos en la estructura
jerárquica, de tal modo que la herramienta de gestión puede
utilizarse para asociar, dentro de la estructura jerárquica, el
dispositivo con la persona que posee dicho dispositivo.
12. Sistema según cualquiera de las
reivindicaciones anteriores, en el que el administrador de
dispositivos está dispuesto para realizar una conexión con el
servidor, a intervalos predeterminados, para poder solicitar el
fichero, identificando el administrador de dispositivos el
dispositivo para el que se requiere el perfil.
13. Sistema según cualquiera de las
reivindicaciones anteriores, en el que la distribución de una
pluralidad de diferentes tipos de contenido son gestionados por el
sistema y por lo menos uno de dichos tipos son programas
informáticos.
14. Sistema según cualquiera de las
reivindicaciones anteriores, en el que la base de datos es una base
de datos relacional.
15. Producto de programa informático que
proporciona un programa informático apto para configurar un servidor
(30) para su uso en un sistema según cualquiera de las
reivindicaciones anteriores, estando el programa informático
operativamente dispuesto para hacer que el servidor realice las
etapas siguientes:
acceder a una base de datos que proporcione una
pluralidad de elementos como una estructura jerárquica de
dispositivos, siendo capaces los identificadores de contenido de
asociarse con elementos en la estructura jerárquica y uno de los
elementos que representa un dispositivo al que ha de distribuirse el
contenido, y
referenciar (470) la estructura jerárquica en la
base de datos para generar un perfil para el dispositivo,
conteniendo el perfil una pluralidad de identificadores de contenido
que indican el contenido que debe proporcionarse al dispositivo,
conteniendo el perfil cualesquiera identificadores de contenido
asociados con el elemento que representa el dispositivo, junto con
cualesquiera identificadores de contenido asociados con elementos en
la estructura jerárquica de la que depende el elemento.
16. Producto de programa informático según la
reivindicación 15, apto para configurar el servidor para transmitir
(480) el perfil a un administrador de dispositivos correspondiente a
dicho dispositivo.
17. Producto de programa informático según la
reivindicación 16, en el que el perfil se genera en respuesta a una
solicitud del perfil desde el administrador de dispositivos.
18. Producto de programa informático según
cualquiera de las reivindicaciones 15 a 17, apto para configurar un
ordenador para proporcionar un interfaz para permitir a un usuario
gestionar la estructura jerárquica almacenada en la base de
datos.
19. Producto de programa informático según la
reivindicación 18, en el que los elementos en la estructura
jerárquica incluyen una o más divisiones, representando cada
división un agrupamiento lógico para dispositivos, permitiendo el
programa informático la creación y supresión de divisiones y
permitiendo a los identificadores de contenido asociarse con cada
división.
20. Producto de programa informático según la
reivindicación 18 ó 19, en el que el programa informático permite
que se proporcionen identificadores de personas que identifiquen a
personas individuales como elementos en la estructura jerárquica, de
tal modo que el programa informático puede utilizarse para asociar,
dentro de la estructura jerárquica, el dispositivo con la persona
individual que posee dicho dispositivo.
21. Producto de programa informático según
cualquiera de las reivindicaciones 15 a 20, apto para configurar un
ordenador para asociarse con una información de contenidos requerida
para gestionar el contenido cuando se reciba por el dispositivo.
22. Producto de programa informático que
proporciona un programa informático apto para configurar un
administrador de dispositivos (200) de un dispositivo (10; 100, 110,
120) para uso en un sistema según cualquiera de las reivindicaciones
1 a 14, disponiendo el sistema de una base de datos (40) que
proporciona una pluralidad de elementos como una estructura
jerárquica de dispositivos, siendo los identificadores de contenido
capaces de asociarse con elementos en la estructura jerárquica y uno
de los elementos que representa el dispositivo, estando el programa
informático operativamente dispuesto para hacer que el administrador
de dispositivos realice las etapas siguientes:
recibir (410) un perfil desde un servidor (30),
habiendo sido generado el perfil haciendo referencia a la estructura
jerárquica en la base de datos para generar un perfil para el
dispositivo, conteniendo el perfil una pluralidad de identificadores
de contenido que indican que se proporciona contenido al
dispositivo, conteniendo el perfil cualesquiera identificadores de
contenido asociados con elementos que representan el dispositivo,
junto con cualesquiera identificadores de contenido asociados con
elementos en la estructura jerárquica de la que depende ese
elemento;
utilizar los identificadores de contenido en el
perfil para hacer que el contenido indicado por el perfil a
proporcionar (430) al dispositivo;
tras la recepción de un perfil posterior desde el
servidor, comparar (550) los identificadores de contenido en el
posterior perfil con un registro (560) que identifica el contenido
proporcionado al dispositivo según un perfil anterior para
determinar un nuevo contenido todavía no proporcionado en el
dispositivo y el contenido antiguo ya no proporcionado en el
dispositivo, y utilizar los identificadores de contenido pertinentes
para hacer que se proporcione el nuevo contenido (625) al
dispositivo y hacer que se elimine el antiguo contenido (580,
585).
23. Procedimiento para gestionar la distribución
de un contenido a un dispositivo, que comprende las etapas
siguientes:
almacenar en una base de datos (40) una
pluralidad de elementos como una estructura jerárquica de
dispositivos, pudiendo asociarse los identificadores de contenido
con elementos en la estructura jerárquica y uno de los elementos que
representa el dispositivo;
referenciar (470) la estructura jerárquica en la
base de datos para generar un perfil para el dispositivo,
conteniendo el perfil una pluralidad de identificadores de contenido
que indican el contenido que se va a proporcionar al dispositivo,
conteniendo el perfil cualesquiera identificadores de contenido
asociados con elementos que representan el dispositivo, junto con
identificadores de contenido asociados con elementos en la
estructura jerárquica de la que depende dicho elemento;
con referencia a los identificadores de contenido
en el perfil, hacer que se proporcione el contenido indicado por el
perfil (430) al dispositivo;
mantener un registro (560) que identifique el
contenido proporcionado al dispositivo de conformidad con el
perfil;
tras la recepción de un perfil posterior,
comparar (550) los identificadores de contenido en el perfil
posterior con el registro para determinar un nuevo contenido todavía
no proporcionado en el dispositivo y el contenido antiguo ya no
proporcionado en el dispositivo, y utilizar los identificadores de
contenido pertinentes para hacer que se proporcione el nuevo
contenido (625) al dispositivo y hacer que se elimine el antiguo
contenido (580, 585).
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| GB9910164 | 1999-04-30 | ||
| GBGB9910164.4A GB9910164D0 (en) | 1999-04-30 | 1999-04-30 | The distributed management of network devices |
| GBGB9922348.9A GB9922348D0 (en) | 1999-04-30 | 1999-09-21 | The distributed management of network devices |
| GB9922348 | 1999-09-21 | ||
| GB9923640 | 1999-10-06 | ||
| GB9923640A GB2352539B (en) | 1999-04-30 | 1999-10-06 | A system and method for managing distribution of content to a device |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| ES2215638T3 true ES2215638T3 (es) | 2004-10-16 |
Family
ID=27269713
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES00920917T Expired - Lifetime ES2215638T3 (es) | 1999-04-30 | 2000-04-20 | Sistema y procedimiento para gestionar la distribucion de un contenido a un dispositivo. |
Country Status (8)
| Country | Link |
|---|---|
| US (1) | US6886017B1 (es) |
| EP (1) | EP1185923B1 (es) |
| AT (1) | ATE263392T1 (es) |
| AU (1) | AU4132900A (es) |
| DE (1) | DE60009489T2 (es) |
| ES (1) | ES2215638T3 (es) |
| IL (1) | IL145993A0 (es) |
| WO (1) | WO2000067112A2 (es) |
Families Citing this family (86)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8073477B2 (en) | 2000-04-11 | 2011-12-06 | Telecommunication Systems, Inc. | Short message distribution center |
| US6956833B1 (en) * | 2000-02-08 | 2005-10-18 | Sony Corporation | Method, system and devices for wireless data storage on a server and data retrieval |
| WO2001059569A2 (en) * | 2000-02-09 | 2001-08-16 | Apriva, Inc. | Communication systems, components, and methods with programmable wireless devices |
| US7522911B2 (en) | 2000-04-11 | 2009-04-21 | Telecommunication Systems, Inc. | Wireless chat automatic status tracking |
| US6839562B2 (en) | 2000-04-11 | 2005-01-04 | Telecommunication Systems, Inc. | Intelligent delivery agent for short message distribution center |
| US7949773B2 (en) * | 2000-04-12 | 2011-05-24 | Telecommunication Systems, Inc. | Wireless internet gateway |
| US6891811B1 (en) | 2000-04-18 | 2005-05-10 | Telecommunication Systems Inc. | Short messaging service center mobile-originated to HTTP internet communications |
| GB2369958B (en) * | 2000-12-07 | 2003-03-19 | Idesta Group Ltd | Mobile computing system architecture |
| US7519654B1 (en) | 2000-11-22 | 2009-04-14 | Telecommunication Systems, Inc. | Web gateway multi-carrier support |
| US7734285B2 (en) * | 2001-04-03 | 2010-06-08 | Qualcomm Incorporated | Method and apparatus for network initiated uninstallation of application program over wireless network |
| US20030022657A1 (en) * | 2001-07-18 | 2003-01-30 | Mark Herschberg | Application provisioning over a wireless network |
| US7184793B2 (en) | 2001-07-26 | 2007-02-27 | Kyocera Wireless Corp. | System and method for over the air area code update |
| US9554268B2 (en) | 2001-07-26 | 2017-01-24 | Kyocera Corporation | System and method for updating persistent data in a wireless communications device |
| US7197302B2 (en) | 2001-07-26 | 2007-03-27 | Kyocera Wireless Corp. | System and method for interchangeable modular hardware components for wireless communication devices |
| US7027806B2 (en) | 2001-07-26 | 2006-04-11 | Kyocera Wireless, Corp. | System and method for field downloading a wireless communications device software code section |
| US7184759B2 (en) | 2001-07-26 | 2007-02-27 | Kyocera Wireless Corp. | Modular software components for wireless communication devices |
| US7200389B2 (en) | 2001-07-26 | 2007-04-03 | Kyocera Wireless Corp. | Dynamic interface software for wireless communication devices |
| US7386846B2 (en) | 2001-07-26 | 2008-06-10 | Kyocera Wireless Corp. | System and method for the management of wireless communications device system software downloads in the field |
| US7328007B2 (en) | 2001-07-26 | 2008-02-05 | Kyocera Wireless Corp. | System and method for organizing wireless communication device system software |
| JP2003046697A (ja) * | 2001-07-30 | 2003-02-14 | Fuji Photo Film Co Ltd | プリント用デジタルコンテンツおよびプリント注文システム並びにプログラム |
| EP1282282B1 (de) * | 2001-08-03 | 2007-05-30 | Siemens Aktiengesellschaft | Verfahren zur Bildung eines Ad-hoc-Netzwerkes |
| US6961537B2 (en) | 2001-08-10 | 2005-11-01 | Kyocera Wireless Corp. | System and method for peer-to-peer handset communication |
| US7254386B2 (en) | 2001-08-10 | 2007-08-07 | Kyocera Wireless Corp. | System and method for improved security in handset reprovisioning and reprogramming |
| US6658260B2 (en) | 2001-09-05 | 2003-12-02 | Telecommunication Systems, Inc. | Inter-carrier short messaging service providing phone number only experience |
| NZ534192A (en) * | 2001-12-25 | 2005-05-27 | Ntt Docomo Inc | Device and method for restricting content access and storage |
| JP4391056B2 (ja) * | 2002-04-15 | 2009-12-24 | ソニー株式会社 | 情報管理装置および方法、記録媒体、並びにプログラム |
| US20030204573A1 (en) * | 2002-04-30 | 2003-10-30 | Andre Beck | Method of providing a web user with additional context-specific information |
| JP4346869B2 (ja) * | 2002-06-26 | 2009-10-21 | パナソニック株式会社 | 電子機器、及び情報処理方法 |
| GB0230329D0 (en) * | 2002-12-31 | 2003-02-05 | British Telecomm | Device profile generation |
| US7490142B2 (en) * | 2003-04-25 | 2009-02-10 | Microsoft Corporation | Automatic client management authority assignment |
| US7895529B1 (en) * | 2003-09-10 | 2011-02-22 | Microsoft Corporation | System and method for processing featured content |
| US7532723B2 (en) | 2003-11-24 | 2009-05-12 | Interdigital Technology Corporation | Tokens/keys for wireless communications |
| TW200945850A (en) | 2004-01-13 | 2009-11-01 | Interdigital Tech Corp | Code division multiple access (CDMA) method and apparatus for protecting and authenticating wirelessly transmitted digital information |
| JP3937096B2 (ja) * | 2004-01-30 | 2007-06-27 | 松下電器産業株式会社 | 通信システム、アクセス装置及びトンネル通信管理方法 |
| US7190808B2 (en) | 2004-03-12 | 2007-03-13 | Interdigital Technology Corporation | Method for watermarking recordings based on atmospheric conditions |
| CA2564186C (en) * | 2004-04-30 | 2019-08-20 | Research In Motion Limited | System and method of operation control on an electronic device |
| US8195205B2 (en) | 2004-05-06 | 2012-06-05 | Telecommunication Systems, Inc. | Gateway application to support use of a single internet address domain for routing messages to multiple multimedia message service centers |
| US7991411B2 (en) * | 2004-05-06 | 2011-08-02 | Telecommunication Systems, Inc. | Method to qualify multimedia message content to enable use of a single internet address domain to send messages to both short message service centers and multimedia message service centers |
| KR100841510B1 (ko) | 2004-05-18 | 2008-06-25 | 키오세라 와이어리스 코포레이션 | 무선 통신 장치를 위한 모듈식 데이터 구성요소 |
| AU2008200175B2 (en) * | 2004-05-18 | 2009-04-02 | Kyocera Corporation | System and method for interchangeable modular hardware components for wireless communication devices |
| JP2006031482A (ja) * | 2004-07-16 | 2006-02-02 | Toshiba Corp | プロファイル管理方法及び管理システム |
| US9854058B2 (en) | 2004-07-23 | 2017-12-26 | At&T Intellectual Property I, L.P. | Proxy-based profile management to deliver personalized services |
| US7272240B2 (en) | 2004-12-03 | 2007-09-18 | Interdigital Technology Corporation | Method and apparatus for generating, sensing, and adjusting watermarks |
| US7321761B2 (en) | 2004-12-03 | 2008-01-22 | Interdigital Technology Corporation | Method and apparatus for preventing unauthorized data from being transferred |
| TWI285742B (en) | 2004-12-06 | 2007-08-21 | Interdigital Tech Corp | Method and apparatus for detecting portable electronic device functionality |
| US7574220B2 (en) | 2004-12-06 | 2009-08-11 | Interdigital Technology Corporation | Method and apparatus for alerting a target that it is subject to sensing and restricting access to sensed content associated with the target |
| US7904723B2 (en) | 2005-01-12 | 2011-03-08 | Interdigital Technology Corporation | Method and apparatus for enhancing security of wireless communications |
| US7987369B2 (en) | 2005-03-03 | 2011-07-26 | Interdigital Technology Corporation | Using watermarking to reduce communication overhead |
| US7430425B2 (en) | 2005-05-17 | 2008-09-30 | Telecommunication Systems, Inc. | Inter-carrier digital message with user data payload service providing phone number only experience |
| US20070045400A1 (en) * | 2005-08-23 | 2007-03-01 | International Business Machines Corporation | Distriubuted registry for personalization |
| US20070055629A1 (en) * | 2005-09-08 | 2007-03-08 | Qualcomm Incorporated | Methods and apparatus for distributing content to support multiple customer service entities and content packagers |
| US7565506B2 (en) * | 2005-09-08 | 2009-07-21 | Qualcomm Incorporated | Method and apparatus for delivering content based on receivers characteristics |
| US20070078944A1 (en) * | 2005-09-12 | 2007-04-05 | Mark Charlebois | Apparatus and methods for delivering and presenting auxiliary services for customizing a channel |
| US8893179B2 (en) * | 2005-09-12 | 2014-11-18 | Qualcomm Incorporated | Apparatus and methods for providing and presenting customized channel information |
| US8528029B2 (en) * | 2005-09-12 | 2013-09-03 | Qualcomm Incorporated | Apparatus and methods of open and closed package subscription |
| GB2430281A (en) * | 2005-09-15 | 2007-03-21 | Motorola Inc | Distributed user profile |
| US8571570B2 (en) * | 2005-11-08 | 2013-10-29 | Qualcomm Incorporated | Methods and apparatus for delivering regional parameters |
| US8533358B2 (en) * | 2005-11-08 | 2013-09-10 | Qualcomm Incorporated | Methods and apparatus for fragmenting system information messages in wireless networks |
| US8600836B2 (en) | 2005-11-08 | 2013-12-03 | Qualcomm Incorporated | System for distributing packages and channels to a device |
| US8045958B2 (en) | 2005-11-21 | 2011-10-25 | Research In Motion Limited | System and method for application program operation on a wireless device |
| DE102005061393A1 (de) * | 2005-12-22 | 2007-07-05 | Robert Bosch Gmbh | Verfahren zur Verteilung von Softwaremodulen |
| US8019365B2 (en) * | 2005-12-31 | 2011-09-13 | Michelle Fisher | Conducting a payment using a secure element and SMS |
| US20090132362A1 (en) * | 2007-11-21 | 2009-05-21 | Mobile Candy Dish, Inc. | Method and system for delivering information to a mobile communication device based on consumer transactions |
| US8275312B2 (en) | 2005-12-31 | 2012-09-25 | Blaze Mobile, Inc. | Induction triggered transactions using an external NFC device |
| US8290433B2 (en) | 2007-11-14 | 2012-10-16 | Blaze Mobile, Inc. | Method and system for securing transactions made through a mobile communication device |
| US20070156436A1 (en) * | 2005-12-31 | 2007-07-05 | Michelle Fisher | Method And Apparatus For Completing A Transaction Using A Wireless Mobile Communication Channel And Another Communication Channel |
| US8949146B2 (en) * | 2005-12-31 | 2015-02-03 | Michelle Fisher | Method for purchasing tickets using a mobile communication device |
| US8879986B2 (en) | 2005-12-31 | 2014-11-04 | Michelle Fisher | Wireless bidirectional communications between a mobile device and associated secure element using inaudible sound waves |
| US8190087B2 (en) * | 2005-12-31 | 2012-05-29 | Blaze Mobile, Inc. | Scheduling and paying for a banking transaction using an NFC enabled mobile communication device |
| US8352323B2 (en) | 2007-11-30 | 2013-01-08 | Blaze Mobile, Inc. | Conducting an online payment transaction using an NFC enabled mobile communication device |
| US8693995B2 (en) | 2007-12-13 | 2014-04-08 | Michelle Fisher | Customized mobile applications for special interest groups |
| US8382593B2 (en) * | 2006-01-20 | 2013-02-26 | Cork Group Trading Ltd. | Method and system for customizing electronic gaming machines |
| US8332906B2 (en) | 2006-02-27 | 2012-12-11 | Research In Motion Limited | Method of customizing a standardized IT policy |
| US7974982B2 (en) * | 2008-02-04 | 2011-07-05 | Disney Enterprises, Inc. | System and method for device profiling using cascaded databases |
| US9753712B2 (en) * | 2008-03-20 | 2017-09-05 | Microsoft Technology Licensing, Llc | Application management within deployable object hierarchy |
| US10154300B2 (en) | 2011-10-11 | 2018-12-11 | Qualcomm Incorporated | Dynamic content installer for mobile devices |
| US8929854B2 (en) | 2011-10-27 | 2015-01-06 | Telecommunication Systems, Inc. | Emergency text messaging |
| US8260842B1 (en) | 2012-04-27 | 2012-09-04 | Wirespring Technologies, Inc. | Device-agnostic content management, playback and status monitoring system |
| US9934610B2 (en) * | 2013-05-31 | 2018-04-03 | Facebook, Inc. | Techniques for rendering and caching graphics assets |
| US9979751B2 (en) | 2013-09-20 | 2018-05-22 | Open Text Sa Ulc | Application gateway architecture with multi-level security policy and rule promulgations |
| EP2851833B1 (en) | 2013-09-20 | 2017-07-12 | Open Text S.A. | Application Gateway Architecture with Multi-Level Security Policy and Rule Promulgations |
| US10824756B2 (en) | 2013-09-20 | 2020-11-03 | Open Text Sa Ulc | Hosted application gateway architecture with multi-level security policy and rule promulgations |
| US11593075B2 (en) | 2015-11-03 | 2023-02-28 | Open Text Sa Ulc | Streamlined fast and efficient application building and customization systems and methods |
| US11388037B2 (en) | 2016-02-25 | 2022-07-12 | Open Text Sa Ulc | Systems and methods for providing managed services |
| WO2018134785A1 (es) * | 2017-01-20 | 2018-07-26 | Qoopa Sas | Sistema y método de persistencia de agentes de seguridad en dispositivos electrónicos |
| WO2021011933A1 (en) * | 2019-07-18 | 2021-01-21 | Nokia Solutions And Networks Oy | Mechanism to facilitate signaling traffic |
Family Cites Families (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| NZ236300A (en) | 1989-11-30 | 1995-07-26 | Seer Technologies Inc | Software distribution system |
| WO1994025913A2 (en) | 1993-04-30 | 1994-11-10 | Novadigm, Inc. | Method and apparatus for enterprise desktop management |
| DE69601149T2 (de) | 1995-07-03 | 1999-08-05 | Sun Microsystems, Inc., Mountain View, Calif. 94043-1100 | Systen und Verfahren zum Implementieren einer hierarchischen Politik für die Administration eines Computersystems |
| US5742820A (en) * | 1995-07-06 | 1998-04-21 | Novell, Inc. | Mechanism for efficiently synchronizing information over a network |
| US5692129B1 (en) | 1995-07-07 | 1999-08-17 | Novell Inc | Managing application programs in a computer network by using a database of application objects |
| JPH0973487A (ja) * | 1995-09-01 | 1997-03-18 | Fujitsu Ltd | コンテンツ売上金分配システム及び分配方法 |
| US5845077A (en) | 1995-11-27 | 1998-12-01 | Microsoft Corporation | Method and system for identifying and obtaining computer software from a remote computer |
| US5826000A (en) | 1996-02-29 | 1998-10-20 | Sun Microsystems, Inc. | System and method for automatic configuration of home network computers |
| US5828876A (en) * | 1996-07-31 | 1998-10-27 | Ncr Corporation | File system for a clustered processing system |
| JPH10161916A (ja) * | 1996-11-28 | 1998-06-19 | Hitachi Ltd | データベースの複製に伴う更新競合の検出方法 |
| US5875327A (en) | 1997-02-18 | 1999-02-23 | International Business Machines Corporation | Hierarchy of preferences and preference groups |
| US5961590A (en) * | 1997-04-11 | 1999-10-05 | Roampage, Inc. | System and method for synchronizing electronic mail between a client site and a central site |
| US6018762A (en) * | 1998-03-31 | 2000-01-25 | Lucent Technologies Inc. | Rules-based synchronization of mailboxes in a data network |
| US6115715A (en) | 1998-06-29 | 2000-09-05 | Sun Microsystems, Inc. | Transaction management in a configuration database |
| EP0975145B1 (en) * | 1998-07-22 | 2008-07-30 | Canon Kabushiki Kaisha | Information processing system and information processing method |
| US6463447B2 (en) * | 1998-12-16 | 2002-10-08 | Rstar Corporation | Optimizing bandwidth consumption for document distribution over a multicast enabled wide area network |
-
1999
- 1999-12-13 US US09/460,450 patent/US6886017B1/en not_active Expired - Lifetime
-
2000
- 2000-04-20 ES ES00920917T patent/ES2215638T3/es not_active Expired - Lifetime
- 2000-04-20 EP EP00920917A patent/EP1185923B1/en not_active Expired - Lifetime
- 2000-04-20 DE DE60009489T patent/DE60009489T2/de not_active Expired - Lifetime
- 2000-04-20 IL IL14599300A patent/IL145993A0/xx active IP Right Grant
- 2000-04-20 AT AT00920917T patent/ATE263392T1/de not_active IP Right Cessation
- 2000-04-20 AU AU41329/00A patent/AU4132900A/en not_active Withdrawn
- 2000-04-20 WO PCT/GB2000/001557 patent/WO2000067112A2/en not_active Ceased
Also Published As
| Publication number | Publication date |
|---|---|
| EP1185923A2 (en) | 2002-03-13 |
| DE60009489D1 (de) | 2004-05-06 |
| EP1185923B1 (en) | 2004-03-31 |
| DE60009489T2 (de) | 2004-12-23 |
| WO2000067112A3 (en) | 2001-01-25 |
| AU4132900A (en) | 2000-11-17 |
| IL145993A0 (en) | 2002-07-25 |
| WO2000067112A2 (en) | 2000-11-09 |
| ATE263392T1 (de) | 2004-04-15 |
| US6886017B1 (en) | 2005-04-26 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6886017B1 (en) | System and method for managing distribution of content to a device | |
| US6947943B2 (en) | System for development, management and operation of distributed clients and servers | |
| US6505214B1 (en) | Selective information synchronization based on implicit user designation | |
| US6895586B1 (en) | Enterprise management system and method which includes a common enterprise-wide namespace and prototype-based hierarchical inheritance | |
| JP2779587B2 (ja) | コンピュータシステムに用いる名前スペースの一部分を別の名前スペースの一部分として利用可能にするための装置及びその方法 | |
| JP4770921B2 (ja) | ゲートウェイサーバ、ファイル管理システム、ファイル管理方法とプログラム | |
| JP4647096B2 (ja) | ネットワーク接続オブジェクトを使用してネットワークへ接続するようにコンピュータを構成する方法およびシステム | |
| US6606649B1 (en) | Application programming interface functions for supporting an improved message store for hand-held computers | |
| US10042875B2 (en) | Bloom filter index for device discovery | |
| US20080263543A1 (en) | On-Demand active role-based software provisioning | |
| JP2005537538A (ja) | プロファイル情報を利用するためのシステムおよび方法 | |
| EP1719065A2 (en) | A system and method for processing audit records | |
| JP2000250757A (ja) | データマネージャ及びデータ管理方法 | |
| CN101714201A (zh) | 代码签字系统及方法 | |
| EP4465174A1 (en) | Application deployment method and system | |
| JP5886901B2 (ja) | 装置へのコンテンツの分配を管理するシステムと方法とプログラムを提供する記憶媒体 | |
| US7343560B1 (en) | Method and system for generating dynamic images | |
| US20070016638A1 (en) | System and method of application provisioning | |
| GB2352539A (en) | A method and system for managing distribution of content to a device | |
| US8321545B2 (en) | Service oriented platform architecture for a wireless network | |
| CA2511197C (en) | System and method of application provisioning | |
| Gavalas | A lightweight and flexible mobile agent platform tailored to management applications | |
| Cooper | Remote application support in a multilevel environment | |
| Johnson | The structure of the OpenVMS Management Station |