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
Application number
ES00920917T
Other languages
English (en)
Inventor
Bruce Jackson
Nigel Robert Brookes
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Poole Ltd
Original Assignee
Elata Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GBGB9910164.4A external-priority patent/GB9910164D0/en
Priority claimed from GB9923640A external-priority patent/GB2352539B/en
Application filed by Elata Ltd filed Critical Elata Ltd
Application granted granted Critical
Publication of ES2215638T3 publication Critical patent/ES2215638T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99944Object-oriented database structure
    • Y10S707/99945Object-oriented database structure processing
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99948Application 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.
Campo de la invención
La presente invención se refiere a un sistema y un procedimiento para gestionar la distribución de un contenido a un dispositivo.
Descripción de la técnica anterior
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.
Sumario de la invención
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.
Breve descripción de los dibujos
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.
Descripción de una realización preferida
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).
ES00920917T 1999-04-30 2000-04-20 Sistema y procedimiento para gestionar la distribucion de un contenido a un dispositivo. Expired - Lifetime ES2215638T3 (es)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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