diff --git a/nymea.pri b/nymea.pri index 1a665797..f4700c85 100644 --- a/nymea.pri +++ b/nymea.pri @@ -3,7 +3,7 @@ NYMEA_VERSION_STRING=$$system('dpkg-parsechangelog | sed -n -e "s/^Version: //p" # define protocol versions JSON_PROTOCOL_VERSION_MAJOR=2 -JSON_PROTOCOL_VERSION_MINOR=2 +JSON_PROTOCOL_VERSION_MINOR=3 REST_API_VERSION=1 LIBNYMEA_API_VERSION_MAJOR=2 LIBNYMEA_API_VERSION_MINOR=1 diff --git a/tests/auto/api.json b/tests/auto/api.json index 448c61be..259b6320 100644 --- a/tests/auto/api.json +++ b/tests/auto/api.json @@ -1,4 +1,4 @@ -2.2 +2.3 { "methods": { "Actions.ExecuteAction": { @@ -249,6 +249,19 @@ "o:deviceId": "Uuid" } }, + "Devices.BrowseDevice": { + "description": "Browse a device. If a DeviceClass indicates a device is browsable, this method will return the BrowserItems. If no parameter besides the deviceId is used, the root node of this device will be returned. Any returned item which is browsable can be passed as node. Results will be children of the given node.", + "params": { + "deviceId": "Uuid", + "o:nodeId": "String" + }, + "returns": { + "deviceError": "$ref:DeviceError", + "items": [ + "$ref:BrowserItem" + ] + } + }, "Devices.ConfirmPairing": { "description": "Confirm an ongoing pairing. In case of SetupMethodEnterPin also provide the pin in the params.", "params": { @@ -270,6 +283,16 @@ "deviceError": "$ref:DeviceError" } }, + "Devices.ExecuteBrowserItem": { + "description": "Execute the item identified by nodeId on the given device.", + "params": { + "deviceId": "Uuid", + "o:nodeId": "String" + }, + "returns": { + "deviceError": "$ref:DeviceError" + } + }, "Devices.GetActionTypes": { "description": "Get action types for a specified deviceClassId.", "params": { @@ -1351,6 +1374,17 @@ "Time", "Object" ], + "BrowserIcon": "$ref:BrowserIcon", + "BrowserItem": { + "browsable": "Bool", + "description": "String", + "displayName": "String", + "executable": "Bool", + "icon": "$ref:BrowserIcon", + "id": "String", + "o:mediaIcon": "$ref:MediaBrowserIcon", + "thumbnail": "String" + }, "CalendarItem": { "duration": "Uint", "o:datetime": "Uint", @@ -1401,6 +1435,7 @@ "actionTypes": [ "$ref:ActionType" ], + "browsable": "Bool", "createMethods": [ "$ref:CreateMethod" ], @@ -1462,7 +1497,8 @@ "DeviceErrorDeviceInRule", "DeviceErrorDeviceIsChild", "DeviceErrorPairingTransactionIdNotFound", - "DeviceErrorParameterNotWritable" + "DeviceErrorParameterNotWritable", + "DeviceErrorUnsupportedFeature" ], "Event": { "deviceId": "Uuid", @@ -1535,6 +1571,7 @@ "LoggingSourceStates", "LoggingSourceRules" ], + "MediaBrowserIcon": "$ref:MediaBrowserIcon", "MqttPolicy": { "allowedPublishTopicFilters": "StringList", "allowedSubscribeTopicFilters": "StringList",