The invention relates to a method of control between devices connected to heterogeneous networks, and the gateway implementing the method.
The invention fits into the framework of a heterogeneous network having at least a first bus according to a first protocol, for example the IEEE 1394 protocol defined in the document “IEEE Std 1394-1995 High Performance Bus, 1996-08-30”, and at least a second bus according to another protocol, for example the Ethernet protocol. The various buses of the heterogeneous network considered are connected via a gateway enabling the devices connected to the various buses to communicate with each other. The devices connected to the buses can be controlled remotely, that is to say the services that they offer are made accessible on their bus by virtue of compliance with control standards such as HAVi (Home Audio Video Interoperability), the specifications of which are in the document “HAVi Specification Version 1.1”, on IEEE 1394, or UPnP (Universal Plug and Play), the architecture of which is defined in the document “UPnP Device Architecture 1.0”, on Ethernet. These control standards enable a device, referred to as “client”, to interact with and drive another device on the same bus, referred to as “target” device. The gateway also provides control services that can be used by a client device, connected to one of the buses, to access the services provided by a target device located either on the same bus or on another bus of the network. This gateway may for example comply with the OSGi (Open Service Gateway Initiative) specifications which are contained in the document “OSGi Service Platform. Release 3”. This outcome is achieved because the gateway is compatible with all the control standards used by the various buses, and the standards are made accessible in the same way to all the devices of all the buses connected.
In such a network, the gateway is capable of accessing the services provided by the various devices present on the buses connected to this gateway, and therefore capable of controlling them. To this end the gateway makes use of the standard specific to each bus and this enables it to control the devices connected to that bus. The gateway also provides a control interface for controlling devices according to a standard protocol, for example HTTP (HyperText Transfer Protocol). Through this mechanism, target devices connected to any bus of the network can be controlled by any client device having software that is compatible with the standard protocol, for example an HTML (HyperText Markup Language) page browser using the HTTP protocol to communicate with the gateway. It is therefore possible in the network, for any client device equipped with the ad hoc browser, to control any target device connected either to the same bus or to another bus, via the control interface provided by the gateway. The control messages and responses flow according to the standard protocol, for example HTTP, between the client and the gateway, whereas the control messages flow according to the control standard specific to each bus between the gateway and the target device.
The invention relates to a method of control of a target device, by a client device, in a heterogeneous network containing at least one bus according to a first given protocol, at least a second bus according to a second protocol, a gateway between the buses providing centralized means of control of devices that are connected to the buses and that are able to act as target devices, the said centralized control means being used to control the target devices of each bus by using the control standard specific to the bus, the said centralized control means being made accessible to the devices able to act as clients via a server on the gateway according to a standard communication protocol, which control method is characterized in that it includes at least the following steps:
According to a preferred embodiment of the invention, the method includes, for a client device, a first step for sending profile information to the gateway indicating its capability to execute a control application according to a given standard.
According to a preferred embodiment of the invention, the method includes, for the gateway, a decision-making step for the transfer of a control application to the client device.
According to a preferred embodiment of the invention, the decision-making step for the transfer of the control application is based on the said profile information and on the detection of the presence of the two devices, client and target, on the same bus.
According to a preferred embodiment of the invention, the control application is a Java application.
The invention also relates to the gateway equipment implementing the method.
The invention enables a client intending to control a target device located on the same bus as the client to exchange control messages directly on the bus using the native communication protocol of this bus. To this end, the client intending to interact with a target device connects to the gateway. The latter is able to provide a control interface for controlling all the devices of the network. This interface is provided in the same way for all the target devices of the network via a standard protocol, for example dynamic HTML pages. The gateway is the device that translates the control instructions passed by the client into commands adapted to the control standard (HAVi, UPnP or other) specific to the bus to which the target is connected. This results in saving bus bandwidth and load on the gateway which no longer serves as a necessary interface between the client and the target when these both exist on the same bus. Of course, this direct communication must not call into question the status, as known by the gateway, of the devices engaged in such a communication. To this end, the gateway collects, on the bus in question, the events triggered by state changes taking place on the devices in question so as to maintain an up-to-date status of the said devices.
Other features and advantages of the present invention will be apparent from the description that follows of the example embodiment, taken by way of non-limiting example, with reference to the accompanying figures in which:
It remains for us to detail how the gateway knows whether it must maintain centralized control and generate pages allowing the client to drive the target devices via the central application or, on the other hand, pages containing the Java control program to be executed on the client device.
The conditions that must be satisfied in order to be able to decentralize control to the client are, first, that the client and the target are on the same bus, and, secondly, that the client is capable of executing the Java program transmitted and has the software layer interfacing Java with the high level control protocol (HAVi, UPnP, etc.). In the example embodiment described, the Java classes implementing this interface layer between Java and, for example, HAVi, are not transmitted in the Java program sent to the client, but must therefore be present on the client.
To ensure that the gateway has this information enabling it to decide upon this decentralization of control, the devices connecting to the network must send the gateway profile information indicating their capabilities. In the example embodiment in question, this profile information can take three values: HAVi, UPnP and NoControl. The value HAVi indicates that the device has capabilities enabling it to control HAVi devices; this would therefore be an HAVi-compatible device having Java capabilities and the Java/HAVi interface layer. The value UPnP indicates the presence of a UPnP-compatible device having Java capabilities and the Java/UPnP interface. The value NoControl indicates a device lacking in one of the capabilities and which device cannot therefore run the Java control application.
The gateway, in the presence of this information and also according to the type of target device and its location, is therefore able to determine whether it must maintain centralized control or whether it is possible to decentralize this control to the client device. The gateway will therefore use its information to generate either an interface page with its own centralized control application, or to generate the control application that can be downloaded to the client in order to control the target device.
The example embodiment described is non-limiting; in particular, it is possible to implement the invention on other types of buses, equipped with other control protocols. It is also possible to use languages other than Java, such as JavaScript, VBScript, PHP or other languages, for the implementation of decentralized control applications.
Number | Date | Country | Kind |
---|---|---|---|
0310199 | Aug 2003 | DE | national |