forked from OpenInterConnect/IoTDataModels
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathairFlow.raml
More file actions
93 lines (86 loc) · 4.32 KB
/
airFlow.raml
File metadata and controls
93 lines (86 loc) · 4.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
#%RAML 0.8
title: OICAirFlow
version: v1.1.0-20160519
documentation:
- title: © 2016 Open Connectivity Foundation, Inc. All rights reserved.
content: |
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
THIS SOFTWARE IS PROVIDED BY THE Open Connectivity Foundation, INC. "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE OR WARRANTIES OF NON-INFRINGEMENT, ARE DISCLAIMED. IN NO EVENT SHALL THE Open Connectivity Foundation, INC. OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
schemas:
- AirFlow: !include oic.r.airFlow.json
traits:
- interface:
queryParameters:
if:
enum: ["oic.if.a","oic.if.baseline"]
/AirFlowResURI:
description: |
This resource describes the properties associated with air flow.
The supporteddirections is the set of valid values for the direction property for a particular instance of this resource type.
The direction is the directionality of the air flow if applicable, if supporteddirections is also present it must be a value from that set.
Direction values are dependent on the capabilities of the unit.
The speed is an integer representing the current speed level for the unit.
The range (from oic.r.baseresource) is an array of the min,max values for the speed level. If not present the range defaults to [0,100].
automode is the status of the automode feature; Off means automode is not enabled, On means automode is active and the speed is automatically controlled by the device.
displayName: Air Flow
is: [ interface ] # valid for all methods
get:
description: |
Retrieves the current air flow values.
responses:
200:
body:
application/json:
schema: AirFlow
example: |
{
"rt": ["oic.r.airflow"],
"id": "unique_example_id",
"supporteddirections": ["left","right","centre"],
"direction": "left",
"speed": 5,
"range": [1,7],
"automode": "Off"
}
post:
description: |
Sets the current air flow values.
Only direction and speed may be set by an update operation.
body:
application/json:
schema: AirFlow
example: |
{
"id": "unique_example_id",
"direction": "right",
"speed": 3
}
responses:
200:
body:
application/json:
schema: AirFlow
example: |
{
"id": "unique_example_id",
"direction": "right",
"speed": 3
}
403:
description: |
This response is generated by the OCF Server when the client sends:
An update with an invalid property value for direction.
An update with an out of range property value for speed.
The server may respond with the current resource representation.
body:
application/json:
schema: AirFlow
example: |
{
"id": "unique_example_id",
"supporteddirections": ["left","right","centre"],
"direction": "right",
"speed": 3
}