- From: Jean-Claude Dufourd <jean-claude.dufourd@telecom-paristech.fr>
- Date: Fri, 15 Apr 2011 13:58:00 +0200
- To: public-web-and-tv@w3.org
- Message-ID: <4DA832C8.2000500@telecom-paristech.fr>
Here is my take on an interface, difficult to split in discovery and communication. I adopt a structure closer to Dave's with callbacks. I introduce a method exposing a service to the outside, and a structured object for the message and its arguments. I am not sure what syntax to use to declare attributes with a function as value (for callbacks). interface HNControl { readonly attribute DOMString supportedProtocols[]; // static list of supported protocols readonly attribute HNService discoveredServices[]; // dynamic list of all discovered services in this session void activateServiceDiscovery(HNDiscoverer disc); // call this function with null to stop discovery HNService createService(protocol, name, type, description, HNMessage set[]); // this method creates a service provided by this "page" // the array of HNMessage defines the interface of the service // only the sendMessage and receiveMessage of the returned HNService are useful } interface HNDiscoverer { attribute function discoverService; // callback with one parameter of type HNService } interface HNService { readonly attribute DOMString name; readonly attribute DOMString type; readonly attribute DOMString address; readonly attribute DOMString description; integer sendMessage(HNMessage msg); attribute function receiveMessage; // callback with one parameter of type HNMessage attribute function serviceAvailability; // callback with one parameter of type Boolean } interface HNMessage { attribute DOMString name; attribute HNArg args[]; } interface HNArg { attribute DOMString name; attribute Boolean isInput; attribute DOMString type; attribute DOMString value; } On 15/4/11 00:10 , Clarke Stevens wrote: > > I have posted a new document for implementation alternatives. The > purpose of the document is to provide example use cases and various > ways to implement the use cases. This is NOT intended as the > comprehensive use case list. It is meant to provide a few key use > cases that illustrate fundamental architectural examples and how they > would be implemented under various architectural models. > > My hope is that this will drive discussion and point out the relative > strengths and weaknesses of different approaches in order to guide us > to a good solution. > > You can find the document with a couple of initial examples here: > > http://www.w3.org/2011/webtv/wiki/Alternatives > > You can also get to it from the "Open Discussions" link on the main > HNTF page. > > Thanks, > > -Clarke > -- JC Dufourd Directeur d'Etudes/Professor Groupe Multimedia/Multimedia Group Traitement du Signal et Images/Signal and Image Processing Telecom ParisTech, 37-39 rue Dareau, 75014 Paris, France Tel: +33145817733 - Mob: +33677843843 - Fax: +33145817144
Received on Friday, 15 April 2011 11:58:26 UTC