Abstract: A device for deploying a service onto an environment s set of real objects (Obj1 Obj2 Obj3) comprising means of interaction (T TC) with a user (U) in order to select said service from among a set of available services each available service being associated with points of interface means of storing representations (OWE1 OWE2 OWE3) each representation being associated with a given object from among that set and exhibiting associations between available operations and possible states for the given object processing means (SM) for carrying out at least one match between a point of interface associated with the service and at least one available operation contained within the representation of a real object and associated with its current state And activation means (LM) for deploying the at least one match by connecting the service and the real object.
Deployment of services on a set of real objects with automatic matching
The present invention relates to the Internet of things, and more
specifically to the "web of things." These relatively new concepts are the subject
of various initiatives. For example, one may cite the work described on the
website "www.webofthings.com " initiated by two researchers from the
University of Zurich.
This "Web of things" is olso described in the orticle by D. Guingrd gnd V.
Trifg, "Towords the web of things: Web moshups for embedded devices" in
Proceedings of WWW (International World Wide Web Conferences), Modrid,
Spgin, 2009.
This trend towords connecting physicol objects to communicotion
networks hos glso been noted in the IMS Reseorch press relegse dgted August
19, 201 0 : "Internet Connected Devices About to Poss the 5 Billion Milestone."
This press release is available at the address:
http://imsresearch.com/news-events/press-
template.php?pr_id= 1532&cat_id = 108
This work regarding the "web of things" consists of transforming real-
life objects into resources available via the web, which may potentially
communicate with one another over it: lamps, television sets, communication
terminals, household appliances, etc. may interface with the Internet and the
services (or applications) available via it, thereby enabling new possibilities.
This field of research is still mostly unexplored, and only a few
applications exist.
For example, one may cite the solutions from the companies Yahoo and
Google, respectively "Yahoo Pipes!" and "Google Mashup Editor". These
solutions offer an environment that makes it possible to bring togetherdifferent content and services drawn from applications to create a new
application. However, these solutions suffer from the fact that the applications
in question must be provided by the companies in question, or at least have
open standard interfaces such as RSS or Atom.
Furthermore, these solutions relate to the application's design phase.
They do not enable the dynamic recognition of new resources (content,
services, etc.) that appear after the application is deployed. Conversely, if a
resource is not available, the application created in this way can no longer
function. More generally speaking, it cannot take into account any dynamic
factor (meaning one related to the "runtime".)
Another solution is the "Pachube" platform. This platform is described on
the website http://www.pachube.com. The Pachube platform publishes data
from real-time sensors and allows users to create applications that use this
data. However, the modeling of services is highly insufficient, and it is not
possible to build new applications by relying on existing services. Furthermore,
the task of searching for the desired data suppliers is a burden for the user. As
the number of sensors will grow, it is quickly becoming impossible to perform
this task in an optimal way.
Another solution might be based on SAWSDL (Semantic annotation for
WSDL and XML Schema) from the W3C (WWW Consortium). SAWSDL makes it
possible to add semantics to Web services.
Here, "Web services" refers to information systems designed to support
machine-to-machine interactions over a network such as the Internet. These
"Web services" are also defined by the W3C and must therefore be understood
as a limiting meaning compared to the generic term "service", particularly by
introducing technical characteristics defined by the work of the W3C.
In particular, Web services are "stateless" by nature, and therefore, it is
clear that their behavior cannot depend on their state.However, in the web of things, it is essential to model objects that possess
states. For this reason, an object such as a telephone, a television set, a lamp,
etc. has states: off/on, off-hook/on-hook, etc. Depending on its current state,
an object offers different operations.
Thus, for example, a telephone in the "on-hook" state may offer the
operations "callMe" or "forward", and in the state "off-hook" it may offer the
operations "leaveMessage" and "joinCall".
The solution WSDL, like any solution based on Web services, does not
take into account an object's states, and cannot manage the availability of an
operation based on different situations.
The purpose of the invention is to improve the situation by making it
possible to interface services (or applications) available on a communication
network such as the Internet and real objects, taking into account the possible
states that the real objects may assume and the operations available
depending on those states.
To do so, one object of the invention is a device for deploying a service
on a set of an environment's real objects, comprising
- means of interaction with the user to select that service from a set of
available services, each available service being associated with
points of interface,
means of storing representations, each representation being
associated with a given object from the set of real objects and
exhibiting associations between available operations and possible
states for said given object,
processing means for carrying out at least one match between a
point of interface associated with the service and at least one
available operation contained within the representation of a real
object and associated with a current state of the real object.And activation means for deploying the at least one match by
connecting the service and the real object.
According to embodiments of the invention, the points of interface
belong to a group comprising input points, output points, and event points.
The points of interface may be either mandatory or optional. The
processing means may perform the match for each of the service's mandatory
points of interface.
The means of interaction may comprise a communication terminal
equipped with a display means provided to present the user with at least one
part of the set of available services and an input means for selecting the
service from the at least one part.
The display means and the input means may be a touchscreen.
The matching may be carried out by pairing off operations and points of
interface that share a keyword.
It may also be carried out by pairing off operations and points of
interface that have a strong semantic correlation.
The means of interaction may additionally be provided to present the
user with at least some of the matches performed, and to enable him or her to
select one or more matches.
Whenever multiple matches are performed for a single point of interface,
the determination of which match is to be activated may be carried out as a
function of a profile of the user.
It may also be carried out as a function of the cost of each of these
matches.
The invention and its benefits will become more clearly apparent in the
following description, with reference to the attached figures.
Figure 1 illustrates the environment in which the invention is deployed.Figure 2 illustrates one example of a human-machine interface for a
dedicated terminal on which the invention may be deployed.
Figure 3 shows a graphic view of one possible representation for a real
object.
In Figure 1, a user U uses a communication terminal T and wishes to
access services and to deploy them on a set of real objects Objl , Obj2, Obj3.
These real objects may belong to a zone shared with it. For example, the
real object Objl is a radio that belongs to the same zone Al . They may be
located in other zones. For example, the object is a television set located
within a zone A2, distinct from the zone Al in which the user U and the
terminal T are located. The object Obj3 is a digital photo frame located in a
third zone A3.
The notion of a zone may be based on technical considerations: an
administrator may configure a set of real objects into zones based on different
criteria. For example, in a semi-private building such as a hotel, different
zones may correspond to different hotel rooms and to different types of
common areas.
The zones may also configure themselves automatically based on
predetermined criteria. They may, for example, correspond to the different
rooms of an apartment.
They may be defined as the place where a certain number of real objects
are gathered. They may be limited by the radio coverage of the
communication devices (a "femtocell", for example).
The different zones may be connected by a communication network N.
This network may be the Internet or a private part of the Internet: an "Intranet",
a "VPN" (for "Virtual Private Network"), etc.
The communication network N thereby also makes it possible to connect
with a set of available services. In the example in Figure 1, the availableservices are saved in an application server AP. Naturally, different solutions
are conceivable; particularly, having multiple application servers, or also
having native applications on the communication terminal T itself.
The application servers may be located in the user's private network or
located remotely, for example hosted by the operator, the Internet service
provider (ISP), or a third-party service provider.
Means of interaction are provided to enable the user U to select a service
from among those which are available.
These means of interaction therefore comprise a human-machine
interface whose nature may differ. For example, it is possible to have a "voice
recognition" interface enabling the user U to speak his or her choice.
It is also possible to enable the selection of the service by means of a
communication terminal T. This terminal may be a mobile telephone, a
computer, a personal digital assistant (or PDA) that may be a Blackberry(TM)
or iPhone(TM), etc. The terminal T must in such cases include a software
application that makes it possible to control the human-machine interface and
communicate with the other devices of the invention.
It may also be a dedicated electronic device. Figure 2 illustrates such a
device. The invention will be described in greater detail for this example of a
dedicated device, but it must be understood as applying to all types of
communication terminals T.
The human-machine interface of the terminal T of Figure 2 comprises a
touchscreen E, lights V, and buttons B.
The lights V make it possible to indicate whether the device T is working
or not, and potentially other state indications (connected to the network N by
Wi-Fi, indication of the built-in battery's charge, etc.)
The buttons B make it possible to turn the terminal T on, and to access
certain features in a fashion that complements the touchscreen E.The touchscreen E may exhibit multiple areas. O n the left, one area ZO
exhibiting the various real objects available. O n the right, one area ZA
exhibiting the various applications available. In the center, one area ZM
enabling the matches between real objects and applications. And at the top,
one area ZC making it possible to view the applications that have already
been deployed o r to switch from one to another.
The applications (or services) that are available may be of different types.
The media communications applications like Skype, content-viewing
applications like Youtube, Flickr, Dailymotion, etc., social networking
applications like Facebook, Myspace, Twitter, or Mixi, etc.
The invention may cover all types of existing applications possessing a
human-machine interface enabling it to interact with a user. The term "service"
may also be used interchangeably hereafter in the description.
These services (or applications) are associated with points of interface
that enable it to interact with their environment. Typically, these points of
interface belong to a group comprising input points, output points, and event
points. They may be mandatory or optional. A mandatory input point indicates
that data is necessary to enable the service to operate. A mandatory output
point indicates that a service must provide data.
In the example of Figure 2, three services are deployed, as indicated by
the three tabs at the top: Facebook, Flickr, and Reddit. The matching area ZM
depicts three output points for the service (or application) "Facebook": one
"photo" output, one "video" output, and one "RSS" output.
The user U may select a service from among those available in the right-
hand section ZA, by touching it with a finger or stylus and sliding it to the
central section ZM. If the screen E is not a touchscreen, other means of inputare available. For example, navigation keys may be provided to move a
selector through that set of displayed services.
The application area ZA may exhi bit all or some of the set of services
available. If there are too many of them, they may be classified into
categories, and the gra phical user interface may show only one category at a
time, as wel l as means for moving from one category to another.
The associations between a service and these points of interface may be
saved in the form of abstract representations. The example below i l lustrates
one possible representation for a telephony application for people with
heari ng difficulties. In this example, the representation is provided in XML
la ng uage (Extensible Markup Language) but other representation formats,
natu ral ly, are possible.
< needs >
< resource class = "in put" occu r
< event class = "ringing"/>
< sequence >
< resource class = "ou†put" occur optional" kind = "lig h†" >
< service class = "scin†il la†e"/>
< resource class = "ou†put" occu r Optiona l" kind = "text">
< service class = "display"/>
An example representation for the application "Facebook" may also be
given :
< resource class = "ou†put" occur="op†ional" kind = "display">
< resource class = "ou†put" occur="op†ional" kind = "display">
< resource class = "ou†put" occur="op†ional" kind = "sound">
To be able †o interface with existing applications in this way, it may be
necessary to provide an adaptation layer suitable for using the APIs of these
existing applications (for example, the API "Facebook Graph API" makes it
possible to retrieve and add photos, videos, messages, etc.) or, if there is no
API, to process the application's HTML representation in order to extract the
output information from it (text, images, RSS feeds, etc.)
It is possible to insert the semantic representation into the HTML code. If
this is done, it is beneficial to use another embodiment of the invention based
on a microformat. A microformat (sometimes abbreviated or uF) is a Web-
based data formatting approach that seeks to reuse existing content as
metadata, using only XHTML and HTML classes and attributes.
One example using such a microformat may be:
< state 1>
In more concrete terms, the representations may be given using a
metadata language such as RDFa or a microformat.
RDFa is a syntax that makes it possible to describe structured data within
a webpage. RDFa is the standard currently being written within W3C. It
attained recommendation status on October , 2008. These specificationsare available on the website of W3C. This syntax complies with the RDF (for
"Resource Description Framework") model, and makes it possible to implement
the semantic Web.
A concrete example for a lamp may be as follows:
| # | Name | Date |
|---|---|---|
| 1 | 4253-DELNP-2013-AbandonedLetter.pdf | 2019-12-27 |
| 1 | 4253-delnp-2013-Correspondence Others-(28-05-2013).pdf | 2013-05-28 |
| 2 | 4253-DELNP-2013-FER.pdf | 2019-06-17 |
| 2 | 4253-DELNP-2013.pdf | 2013-05-29 |
| 3 | 4253-delnp-2013-Form-3-(07-10-2013).pdf | 2013-10-07 |
| 3 | 4253-delnp-2013-Correspondence Others-(27-10-2015).pdf | 2015-10-27 |
| 4 | 4253-delnp-2013-Form-3-(27-10-2015).pdf | 2015-10-27 |
| 4 | 4253-delnp-2013-Correspondence Others-(07-10-2013).pdf | 2013-10-07 |
| 5 | 4253-delnp-2013-Form-3-(12-11-2013).pdf | 2013-11-12 |
| 5 | 4253-delnp-2013-Correspondence-Others-(18-02-2014).pdf | 2014-02-18 |
| 6 | 4253-delnp-2013-Form-3-(18-02-2014).pdf | 2014-02-18 |
| 6 | 4253-delnp-2013-Correspondence Others-(12-11-2013).pdf | 2013-11-12 |
| 7 | 4253-delnp-2013-GPA.pdf | 2013-12-17 |
| 7 | 4253-delnp-2013-Claims.pdf | 2013-12-17 |
| 8 | 4253-delnp-2013-Form-5.pdf | 2013-12-17 |
| 8 | 4253-delnp-2013-Correspondence-Others.pdf | 2013-12-17 |
| 9 | 4253-delnp-2013-Form-1.pdf | 2013-12-17 |
| 9 | 4253-delnp-2013-Form-3.pdf | 2013-12-17 |
| 10 | 4253-delnp-2013-Form-18.pdf | 2013-12-17 |
| 10 | 4253-delnp-2013-Form-2.pdf | 2013-12-17 |
| 11 | 4253-delnp-2013-Form-18.pdf | 2013-12-17 |
| 11 | 4253-delnp-2013-Form-2.pdf | 2013-12-17 |
| 12 | 4253-delnp-2013-Form-1.pdf | 2013-12-17 |
| 12 | 4253-delnp-2013-Form-3.pdf | 2013-12-17 |
| 13 | 4253-delnp-2013-Correspondence-Others.pdf | 2013-12-17 |
| 13 | 4253-delnp-2013-Form-5.pdf | 2013-12-17 |
| 14 | 4253-delnp-2013-Claims.pdf | 2013-12-17 |
| 14 | 4253-delnp-2013-GPA.pdf | 2013-12-17 |
| 15 | 4253-delnp-2013-Correspondence Others-(12-11-2013).pdf | 2013-11-12 |
| 15 | 4253-delnp-2013-Form-3-(18-02-2014).pdf | 2014-02-18 |
| 16 | 4253-delnp-2013-Correspondence-Others-(18-02-2014).pdf | 2014-02-18 |
| 16 | 4253-delnp-2013-Form-3-(12-11-2013).pdf | 2013-11-12 |
| 17 | 4253-delnp-2013-Correspondence Others-(07-10-2013).pdf | 2013-10-07 |
| 17 | 4253-delnp-2013-Form-3-(27-10-2015).pdf | 2015-10-27 |
| 18 | 4253-delnp-2013-Form-3-(07-10-2013).pdf | 2013-10-07 |
| 18 | 4253-delnp-2013-Correspondence Others-(27-10-2015).pdf | 2015-10-27 |
| 19 | 4253-DELNP-2013.pdf | 2013-05-29 |
| 19 | 4253-DELNP-2013-FER.pdf | 2019-06-17 |
| 20 | 4253-delnp-2013-Correspondence Others-(28-05-2013).pdf | 2013-05-28 |
| 20 | 4253-DELNP-2013-AbandonedLetter.pdf | 2019-12-27 |
| 1 | 2019-06-1312-15-43_13-06-2019.pdf |