Delegating skinning service for CE apparatus GUI to the internet
FIELD OF THE INVENTION The invention relates to a method of enabling to skin a UI of electronic equipment, e.g., consumer electronics (CE) equipment, automotive electronics equipment, medical or other professional electronics equipment, and to a skin for such equipment.
BACKGROUND ART Within the context of user interfaces (UIs) and especially graphical user interfaces (GUIs), changing the appearance (the "look-and-feel") of a user- interactive software application is referred to as "skinning". The change relates to perceptible elements such as background texture, bitmaps of buttons for user input (e.g., via a touch screen), colors, fonts, sounds, etc. A skin is a particular combination of these elements. The skin does typically not relate to the user-interactive functionalities themselves. Skinning is typically used to enable to customize a UI, i.e., to alter the UI to personal specifications. A well-known example is represented by Winamp, a PC -oriented MP3 music player, whose UI allows itself to be visually customized by applying a skin. This feature of Winamp has helped it to become the most popular MP3 player in the market. U.S. patent 6,687,745 incorporated herein by reference, discloses dynamic and thin applications, referred to as "droplets". The droplets generally include information identifying the operating environment on the client computer, the application server to connect with, and an application on the server that is run to deliver the requested functionality to the client computer once the connection is made. Droplets store only the information necessary for establishing a connection to an application server, and therefore require a minimum amount of storage space on a client computer. A large number of droplets may execute simultaneously without significantly reducing the memory available for other, concurrently executing applications. Once the droplet presentation client is installed locally, the client computer is droplet-enabled. Droplet-enabled applications may be "skinned." That is, the look-and-feel of a user interface for a particular droplet-enabled application includes aesthetically appealing or commercially branded visual and auditory characteristics that tend to distinguish the application from other applications running within the network. The visual
and auditory characteristics may include, for example, distinctive colors, text fonts, control layouts, graphics or relative sizes and spacing of controls. A skin may reflect an advertising or promotional message, a favored item of interest such as a scene from a movie, video game or landscape. A skin may be chosen and applied at run-time without requiring a change in the droplet-enabled application's coding or business logic (i.e., the C++, Java, visual basic or other coding used to develop the applications need not be altered). Therefore, skins permit the user interface of a given droplet-enabled application to be customized from one implementation (e.g., website) to another. That is, the customized user interface to a specific website may be configured as a commercially (branded) or aesthetically appealing interface giving each instance of the droplet-enabled application a desired look and feel. The customization and/or the ability to choose a skin may be provided under the direction of a droplet application developer, the website webmaster, or the end -user. U.S. Pat. Publ. 20020101444, incorporated herein by reference, discloses the creating of skins. The skinning model provides all the tools one needs to make a custom user interface. Script files, e.g., Jscript files, can be included in the skin. Script files are typically text files and can be used to create elaborate functionality behind a skin. The use of script files provides the capability for a skin to respond to various events. For example, through the use of script files, a skin can react when the user clicks on a button. Script files also enable a skin to respond to changes that happen to the application, e.g., Windows Media Player. Such response might be one that changes, for example, with the progress of the media file that is playing. When users click a button or press a key, a response to their input can be generated with event handlers. An event handler is simply a section of code that runs whenever the event is triggered. The event comprises, for example, an external event that is associated with a user of an application with which the skin is associated.
SUMMARY OF THE INVENTION The inventors propose providing a service on a data network for supplying a new skin to an end-user's apparatus. For example, users can upgrade data partitions of the apparatus's software, and at the same event the data files can be changed that describe the skin used. By making new skins available, e.g., for CE equipment on special occasions (e.g., Halloween, Christmas, Mardi Grass) attention is drawn to the service and to the apparatus, the sole expense being defining the new skin(s) and making it available via a software upgrade Internet service. This is a very cost-efficient way for enabling a marketing campaign. Software upgrade Internet services are known, see, e.g., the background art mentioned below
and incorporated herein by reference. By delegating the skinning to a service the user is not bothered by having to skin the apparatus him/herself, which requires typically, beyond some programming skills the time and effort to carry out the skinning process. Accordingly, the invention relates to a method of enabling to skin a UI of electronic equipment. The method comprises providing a service on a data network, e.g., the Internet for enabling to install code for a new skin of the UI. By installing the code, the new skin is made resident at the equipment after the disconnecting from the service or from the network. The method may comprise enabling to automate installing of the new skin when connecting to the service. For example, the service provides software upgrades of the equipment's functionality in operational use, and provides the new skin together with the upgrade. As another example, the service provides content information for downloading on the equipment, and the UI is skinned to represent this content. In another example, the new skin is made to comprise, e.g., a decorative attribute associated with a public event such as a public holiday, a major sports event. As yet another example, the new skin is made to comprise a decorative attribute associated wit a profile of a user, e.g., birthday, wedding day, etc., of the equipment. The service provider obtains the profile, for example, at the registering of the user with the service. Preferably then, the new skin is under control of a calendar or timer for activating or inactivating the new skin to properly represent the public events or personal events. The electronic equipment with the skinnable UI may itself be network-enabled so as to be able to connect to the service head-end (the "skin-head") and to get the new skin installed directly. In a distributed system such as a home network, there may be equipment that itself is not network-enabled, but whose UI is skinnable. Consider, for example, a touch screen remote control as an example of the latter. In this case, the user connects to service via a network enabled PC or set-top box for downloading the new skin(s), that then can get installed by transferring the skins from the PC to the remote via, e.g., a serial cable. . Yet another example is where the skin is pushed, as part of the UI, from a server device to a client device in the (home) network (e.g. UPnP remote UI technology).
BRIEF DESCRIPTION OF THE DRAWING The invention is explained in further detail, by way of example and with reference to the accompanying drawing wherein Fig. 1 is a block diagram of a system in the invention.
DETAILED EMBODIMENTS Fig. 1 is a block diagram of a system 100 in the invention. System 100 comprises a CE apparatus 102, in this example a programmable remote control device with a display monitor 104 with touch screen functionality. Programmable remote controls are known from, e.g., WO0039772 (attorney docket PHA 23,607), see for more details further below. An implementation of apparatus 102 is described in, e.g., U.S. patent 6,208,341 (attorney docket PHA 23,470), notably Fig. 2 thereof. See for more details further below. Apparatus 102 can be connected to an external source for data communication in order to program or configure apparatus 102. The external source here comprises a server 106 to which apparatus can be connected via the Internet 108 through an interface 110. Interface 110 may be a direct interface that functionally couples remote 102 to server 106, or an indirect interface, e.g., via a PC with a browser, the PC functioning as a repository to temporarily store the configuration data obtained from server 106 before it gets transferred to remote 102. In the scenario considered, the user accesses server 106 to obtain newer software to upgrade a functionality of device 102. The user may have been notified of the availability of new software through, e.g., email. The user has provided his/her email address upon initial registration with the service). Upon the notification, the user explicitly triggers the download. Alternatively, the user learns about the existence of newer software while visiting the service's web site, or the user's CE equipment or PC checks the service automatically for new software at boot time. At the same time of obtaining the upgrade, a new skin for the UI of remote 102 is retrieved from server 106. The skin is installed in a memory 112 for operational use of remote 102. For example, the skin installed in memory 112 comprises a calendar, i.e., a table or schedule of days, weeks and months with particular events. Each event corresponds to a certain skin. For example, a certain time period relates to an international soccer tournament, and the UI's background colors activated a certain day or parts thereof represent the teams involved in the matches played on that day. The calendar may comprise its own timer as part of a script, or is controlled via a timer 114 resident at remote 102. The user may have subscribed to the service provided by server 106 and may have provided personal background information at registering with the service, such as country, region or city of residence, birthdays of the family members, wedding day celebration, upcoming graduation day, etc. The script downloaded in the skin is then personalized, by way of service, so as to provide the UI of remote 102 with an associated skin at the proper day for that proper region.
What has been illustrated above with reference to a remote control device, may also be applied, for example, to a PDA or a mobile phone with proper display functionalities. If the equipment is network-enabled, the service provided by server 106 may also automate the skinning under control of a calendar, instead of being triggered by the user initiating access of server 106. Server 106 may be implemented by multiple machines at various sites that together constitute the back end. That is, one machine runs the registration service, and another machine runs the supply of the skins, etc. Incorporated herein by reference: U.S. serial no. 09/271,200 (attorney docket PHA 23,607) filed 03/17/99 for Jan van Ee for FULLY FUNCTIONAL REMOTE CONTROL EDITOR AND EMULATOR, published as WO0039772. This patent document relates to a universal programmable remote control device that has programmability functions that enable the end- user to customize the device through editing or programming the device's control functionalities. The programming can be achieved via a PC. The control configuration created via an editor on the PC can be downloaded into the device. The PC has emulator software to test the configuration before downloading. The emulator software and the remote's control software are made identical as a consequence of a software layer that abstracts from the remote's hardware. The emulator for the end-user is thus obtained as an almost free byproduct of the software development phase at the manufacturer. U.S. patent 6,208,341 (attorney docket PHA 23,470) issued to Jan van Ee et al., for GUI OF REMOTE CONTROL FACILITATES USER-FRIENDLY EDITING OF MACROS. This patent document relates to a remote control device for a home theater that has a macro creation/editing mode with authoring tools on the remote's GUI. One of the editing tools lets the user move a selected macro step visibly up or down the list of steps on the GUI. U.S. serial no. 09/311,128 (attorney docket PHA 23,501) filed 05/13/99 for Joost Kemink for INTERNET-BASED SERVICE FOR UPDATING A PROGRAMMABLE CONTROL DEVICE, and published as WOOO 17738. This patent document relates to an
Internet based service provided for updating a programmable control device. An Internet site contains links to appliance-dependent control and feature option information, which can be downloaded to the programmable control as a graphic user interface (GUI). A user interface is provided at the site for the user to easily specify a target appliance, and thereafter
selectively download the interface and control information that is available for the target appliance. The Internet site also contains links to other providers of configurations and macros, such as system integrators who provide interfaces based on an inventory of the user's controllable equipment, hobbyist who share configurations and macros that they've found useful, and so on. U.S. serial no. 09/160,490 (attorney docket PHA 23,500) filed 09/25/98 for Adrian Turner et al., for CUSTOMIZED UPGRADING OF INTERNET-ENABLED DEVICES BASED ON USER-PROFILE, and published as WOOO 17789. This patent document relates to a server system that maintains a user profile of a particular end-user of consumer electronics network-enabled equipment and a database of new technical features for this type of equipment. If there is a match between the user-profile and a new technical feature, and the user indicates to receive information about updates or sales offers, the user gets notified via the network of the option to obtain the feature. U.S. serial no. 09/349,676 (attorney docket PHA 23,681) filed 07/08/99 for Kristin Ondeck for AFTER-SALES CUSTOMIZATION SPECIFIED BY RETAILER ACTS AS INCENTIVE, and published as WOO 104806. This patent document relates to a machine- implemented method of doing business that enables to stimulate commercial activities. A customer notifies a manufacturer or a dedicated service provider, of the purchase of merchandise from a specific retailer. Upon being notified, the manufacturer or service provider customizes a portal or home page for the customer by temporarily adding an advertisement banner associated with the retailer. U.S. serial no. 09/544,666 (attorney docket US 000089) filed 04/06/00 for Rik Sagar for HANDHELD RETRIEVES UI FROM SERVER FOR CONTROL OF APPARATUS NIA SERVER, and published as WO0123994. This patent document relates to a handheld remote with a wireless modem to send an identifier to a server on the Internet. The server has a look-up table to associate the identifier with a URL. The URL specifies a CGI program on another machine on the Internet. The machine controls equipment through execution of the CGI program. U.S. serial no. 09/686,572 (attorney docket US 000183) filed 10/10/00 for Tom Dubil et al., for CONTROL CODES FOR PROGRAMMABLE REMOTE SUPPLIED IN XML FORMAT, and published as WO0231978. This patent document relates to an Internet service that makes available control codes for use on a programmable universal remote. The remote controls CE equipment through IR or RF commands. A server supplies
the control codes as XML data that gets processed at the receiver's set top box or PC, or the remote itself, for being properly installed on the remote. U.S. serial no. 09/519,546 (attorney docket US 000014) filed 03/06/00 for Erik Ekkel et al., for PERSONALIZING CE EQUIPMENT CONFIGURATION AT SERVER VIA WEB-ENABLED DEVICE and published as WOO 154406. This patent document relates to facilitating the configuring of consumer electronics (CE) equipment by the consumer through delegating the configuring to an application server on the Internet. The consumer enters his/her preferences in a specific interactive Web page through a suitable user-interface of an Internet-enabled device, such as a PC or set-top box or digital cellphone. The application server generates the control data based on the preferences entered and downloads the control data to the CE equipment itself or to the Internet-enabled device. U.S. serial no. 09/653,784 (attorney docket US 000220) filed 9/1/00 for Erik Ekkel et al., for STB CONNECTS REMOTE TO WEB SITE FOR CUSTOMIZED CODE DOWNLOADS, and published as WO 0154292. This patent document relates to a set top box (STB) that is marketed together with a programmable remote. The remote has a dedicated button to connect the STB to a specific server on the Internet. The consumer can notify the server of his/her other consumer's equipment, which he/she desires to be controllable through the same remote as the one that came with the STB. The server downloads to the STB data representative of the relevant control codes. The STB is provided with means to program the remote with these codes. In return the server has obtained detailed and accurate information about this consumer's equipment. A reliable customer base can thus be built for streamlining Help Desk operations.