EP1188291B1

General api for remote control of devices

Abstract

A general programmatic interface-to-network messaging adapter exposes a suitable object integration interface or application programming interface to applications on a controller device and sends network data messages to invoke services or query status of a controlled device. The adapter maps application calls to the interface into network data messages according to service protocols of the controlled device. The general adapter provides the interface suitable to any specific service of a controlled device based on a data description of the interface, and converts the application calls to network data messages based on a data description of a protocol and format for network data messages to interact with the specific service. Once the interface/messaging description is obtained, applications on the controller device can programmatically interact with the adapter, and the adapter then handles appropriate message exchanges with the service of the controlled device. The general adapter allows controller device applications to be written using object-oriented programming, while avoiding code download.

EP1188291B1, drawing sheet 1
Sheet 1 of 96

Term

Term ended

Expired 7 June 2020, 6.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

12 claims: 3 independent, 9 dependent

  1. 1
    A computing device providing a user control point (104) with connectivity to at least one controlled device (107) via a networking medium, the computing device comprising:a controlled device description document having a service control protocol declaration for at least one service provided by the at least one controlled device, the service control protocol declaration describing content and sequence of messages (413) to exchange with the at least one controlled device to effect control of the at least one service (210-217);and a general programming interface-to-network messaging adapter operating based on the controlled device description document to generate a structure of a programming interface specific to the at least one service and provide the programming interface to application programs running on the computing device, and to convert calls to the programming interface into network messages according to the service control protocol (402) defined per the controlled device description document, and to issue the networking messages via the networking medium to the controlled device to invoke commands of the at least one service.
  2. 3
    A method for a client program on a first computing device to programmatically control a service (210-217) of a logical device (107) realized on a remote computing device on a data communication network via peer-to-peer networking connectivity from the first computing device on the data communications network, the method comprising:obtaining a description document (226) via peer-to-peer networking from the remote computing device, the description document defining a service-specific protocol involving an exchange of data messages (413) via peer-to-peer networking connectivity with the remote computing device for controlling the logical device service on the remote computing device;based on the description document, dynamically generating an instance of a programmatic interface for invocation by the client program to initiate service-specific operations for remote control of the logical device service;on invocation of the method members by the client program, translating the client program's programmatic interface invocation into the exchange of data messages via peer-to-peer networking connectivity in accordance with the description document for effecting control of the logical device service.
  3. 8
    A computer-readable medium carrying computer-executable software program code thereon for executing on a first computing device on a data communications network to perform a method for a client program on the first computing device to programmatically control a service (210-217) of a logical device (107) realized on a remote computing device on a data communications network via peer-to-peer networking connectivity from the first computing device on the data communications network, the method comprising:obtaining a description document (226) via peer-to-peer networking from the remote computing device, the description document defining a service-specific protocol involving an exchange of data messages (413) via peer-to-peer networking connectivity with the remote computing device for controlling the logical device service on the remote computing device;based on the description document, dynamically generating an instance of a programmatic interface for invocation by the client program to initiate service-specific operations for remote control of the logical device service;on invocation of the method members by the client program, translating the client program's programmatic interface invocation into the exchange of data messages via peer-to-peer networking connectivity in accordance with the description document for effecting control of the logical device service.