OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Use the <code>chrome.mdns</code> API to discover services over mDNS. | 5 // Use the <code>chrome.mdns</code> API to discover services over mDNS. |
6 // This comprises a subset of the features of the NSD spec: | 6 // This comprises a subset of the features of the NSD spec: |
7 // http://www.w3.org/TR/discovery-api/ | 7 // http://www.w3.org/TR/discovery-api/ |
8 namespace mdns { | 8 namespace mdns { |
9 | 9 |
10 // Represents a mDNS/DNS-SD service. | 10 // Represents a mDNS/DNS-SD service. |
11 dictionary MDnsService { | 11 dictionary MDnsService { |
12 // The service name of an mDNS advertised service, | 12 // The service name of an mDNS advertised service, |
13 // <instance_name>.<service_type>. | 13 // <instance_name>.<service_type>. |
14 DOMString serviceName; | 14 DOMString serviceName; |
15 | 15 |
16 // The host:port pair of an mDNS advertised service. | 16 // The host:port pair of an mDNS advertised service. |
17 DOMString serviceHostPort; | 17 DOMString serviceHostPort; |
18 | 18 |
19 // The IP address of an mDNS advertised service. | 19 // The IP address of an mDNS advertised service. |
20 DOMString ipAddress; | 20 DOMString ipAddress; |
21 | 21 |
22 // Metadata for an mDNS advertised service. | 22 // Metadata for an mDNS advertised service. |
23 DOMString[] serviceData; | 23 DOMString[] serviceData; |
24 }; | 24 }; |
25 | 25 |
| 26 interface Properties { |
| 27 // The maximum number of service instances that will be included in |
| 28 // onServiceList events. If more instances are available, they may be |
| 29 // truncated from the onServiceList event. |
| 30 [value=64] static long MAX_SERVICE_INSTANCES_PER_EVENT(); |
| 31 }; |
| 32 |
26 interface Events { | 33 interface Events { |
27 // Event fired to inform clients of the current complete set of known | 34 // Event fired to inform clients of the current complete set of known |
28 // available services. Clients should only need to store the list from the | 35 // available services. Clients should only need to store the list from the |
29 // most recent event. The service type that the extension is interested in | 36 // most recent event. The service type that the extension is interested in |
30 // discovering should be specified as the event filter with the | 37 // discovering should be specified as the event filter with the |
31 // 'serviceType' key. Not specifying an event filter will not start any | 38 // 'serviceType' key. Not specifying an event filter will not start any |
32 // discovery listeners. | 39 // discovery listeners. |
33 [supportsFilters=true, maxListeners=10] static void onServiceList(MDnsServic
e[] services); | 40 [supportsFilters=true, maxListeners=10] static void onServiceList(MDnsServic
e[] services); |
34 }; | 41 }; |
35 }; | 42 }; |
OLD | NEW |