Method and system for automated invocation of device functionalities in a network

Information

  • Patent Application
  • 20070220529
  • Publication Number
    20070220529
  • Date Filed
    March 19, 2007
    19 years ago
  • Date Published
    September 20, 2007
    19 years ago
Abstract
A method and system that enable an automatic invocation of device functionalities on devices in a network. Invocation mechanisms are provided to support heterogeneous invocation mechanisms including new invocation mechanisms. Invocation mechanisms using scripts can be added without the need for recompilation of support systems such as home-networking middleware systems. This further enables the use of scripts that can coordinate the use of multiple devices in accomplishing a task.
Description

BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 shows a functional architecture of an example network, such as a home network, embodying aspects of the present invention.



FIG. 2 shows a functional block diagram illustrating an example functional architecture of a controller and a Task Execution Environment (TEE) in a network, according to the present invention.



FIG. 3 show a block diagram for an electronic device in a network, including a device description file and a script file, according to an embodiment of the present invention.



FIG. 4 shows a flowchart of the steps of a process for device functionality invocation using the device description and script files, according to an embodiment of the present invention.



FIG. 5 show a block diagram for an electronic device such as a DVD player in a network, including a device description file, a device script file, a task description file and a task script file, according to an embodiment of the present invention.



FIG. 6 show a block diagram for an electronic device such as a TV in a network, including a device description file, a device script file, a task description file and a task script file, according to an embodiment of the present invention.



FIG. 7 shows a flowchart of the steps of a process for functionality invocation using the description files and script files in FIGS. 5-6 to orchestrate two devices to perform a task (e.g., a DVD player and a TV to cooperatively perform a task) in the network, according to an embodiment of the present invention.


Claims
  • 1. A method for invocation of functionalities in a network, comprising the steps of: providing invocation scripts for invoking functions of one or more devices in the network; andexecuting the scripts to automate invocation of the functionalities of said one or more devices in the network.
  • 2. The method of claim 1 further comprising the step of providing scripts that coordinate the use of multiple devices in accomplishing a task.
  • 3. The method of claim 1 further including the step of encapsulating device invocation functionality as interpreted scripts.
  • 4. The method of claim 1 further including the step of providing a task execution environment where the scripts can be executed.
  • 5. The method of claim 1 further including the step of adding new scripts for new device features without recompiling.
  • 6. The method of claim 1 wherein providing invocation scripts further includes providing invocation scripts for heterogeneous function invocations and adding new function invocations in the network.
  • 7. A method of automating the execution of tasks in a network, comprising the steps of: connecting one or more devices to the network, each device including a script file that upon execution enables the device to perform a function;performing discovery to obtain device information about the functionality of each device in the network; andupon a request to perform a task in the network, determining the device functionality required to perform the task and invoking the required device functionalities using scripts to automate the execution of the task.
  • 8. The method of claim 7 further comprising the step of providing a task execution environment for execution of the scripts.
  • 9. The method of claim 7 wherein performing discovery further includes the steps of: obtaining information about the functionality of each discovered device; andstoring the provided device information in a directory.
  • 10. The method of claim 9 wherein determining the device functionality required to perform the task further includes the step of checking the device information in the directory to determine the device functionality required to perform the task.
  • 11. The method of claim 10 wherein: the script file in each device includes routines which upon execution enable the device to perform a function; andeach device further includes a device description file that provides mapping between a standard service name and corresponding routines in the script file that perform a function.
  • 12. The method of claim 11 wherein performing discovery to obtain device information further includes the steps of: obtaining information from the description file and the script file of each discovered device;parsing each device description and script file to determine the various functions supported by the device; andentering the device functionality information in the directory.
  • 13. The method of claim 12 wherein determining the device functionality required to perform the task further includes the step of checking the device information in the directory to determine if the required device functionality for performing the task is available.
  • 14. The method of claim 13 wherein invoking the device functionalities for performing the task by one or more devices, further includes the steps of: using the device name and the standard service name to check the directory in determining the script file routine to be executed; andexecuting the determined script file routine in a task execution environment.
  • 15. The method of claim 14 wherein the task execution environment comprises a script engine and a script engine interface for executing script files.
  • 16. A system for invocation of functionalities in a network, comprising: a device script file for one or more devices, wherein upon execution, a script file enables a corresponding device to perform a function;a discovery module configured to obtain device information about the functionality of each device; anda controller configured to determine the device functionality required to perform a task based on the discovered device information, and to invoke the required device functionalities using scripts to automate the execution of the task, thereby controlling the device functionalities for performing the task.
  • 17. The system of claim 16 further comprising a task execution environment including a scripting engine for execution of the scripts.
  • 18. The system of claim 16 wherein the controller is further configured to store the discovered device information including functionalities in a directory.
  • 19. The system of claim 18 wherein the controller includes a composer configured to check the device information in the directory to determine the device functionality required to perform the task.
  • 20. The system of claim 19 wherein: the script file in each device includes routines which upon execution enable the device to perform a function; andthe system further comprises a device description file for each device, providing mapping between a standard service name and corresponding routines in the script file that perform a function.
  • 21. The system of claim 20 wherein the controller is further configured to parse the device description file and the script file of each discovered device, to determine the functions supported by the device and store the device functionality information in the directory.
  • 22. The system of claim 21 wherein the composer is configured to determine the device functionality required to perform the task by checking the device information in the directory to determine if the required device functionality for performing the task is available.
  • 23. The system of claim 22 wherein the controller is configured to invoke the device functionalities for performing the task using the device name and the standard service name to access the directory for the script file routine to be executed, and then executing the determined script file routine in the task execution environment.
  • 24. The system of claim 20 wherein each device includes: a task description file; anda task script file.
  • 25. An apparatus for invocation of functionalities in a network of devices wherein one or more of the devices include a device script file that enables performing a function, comprising: a controller configured to determine the device functionality required to perform a task based on device information; anda task execution environment including a scripting engine for execution of the scripts;wherein the controller is further configured to invoke the required device functionalities by invoking execution of scripts in the task execution environment by the scripting engine, to automate the execution of the task, thereby controlling the device functionalities for performing the task
  • 26. The apparatus of claim 25 further comprising a discovery module configured to obtain device information about the functionality of each device for the controller.
  • 27. The apparatus of claim 26 wherein the controller is further configured to store the discovered device information including functionalities in a directory.
  • 28. The apparatus of claim 27 wherein the controller includes a composer configured to check the device information in the directory to determine the device functionality required to perform the task.
  • 29. The apparatus of claim 28 wherein: the script file in each device includes routines which upon execution enable the device to perform a function; andthe system further comprises a device description file for each device, providing mapping between a standard service name and corresponding routines in the script file that perform a function.
  • 30. The apparatus of claim 29 wherein the controller is further configured to parse the device description file and the script file of each discovered device, to determine the functions supported by the device and store the device functionality information in the directory.
  • 31. The apparatus of claim 30 wherein the composer is configured to determine the device functionality required to perform the task by checking the device information in the directory to determine if the required device functionality for performing the task is available.
  • 32. The apparatus of claim 31 wherein the controller is configured to invoke the device functionalities for performing the task using the device name and the standard service name to access the directory for the script file routine to be executed, and then executing the determined script file routine in the task execution environment.
  • 33. The apparatus of claim 29 wherein each device includes: a task description file; anda task script file.
Provisional Applications (1)
Number Date Country
60784281 Mar 2006 US