wattsense-api-client 0.3.2 → 0.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b1faff348377c3626f858fe12fa996a4f37401fdd818ed1167d713a65188d2fe
|
4
|
+
data.tar.gz: 34cedf857f72be6be95f5ec633f59b9d356cafd3ee02bfde93dd7515cc2c3ab3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5eee4d1a875ac73f8bd067846a4d1b35dfdf3331931d58251bfca1daea1aea230d9382ed3bedeae435e5c65e44f9a24de2c8a1f6e37bae5e5b7e1bf0571a29a0
|
7
|
+
data.tar.gz: f44cd1e4be3980e2f43783cba0a95c5fc8f74c9d1a8e2779a5ce558ffc0bd5f6a06c969dbb67c45067d84aaf86512c9e6f56fe383237142456058edadd73e586
|
@@ -13,6 +13,7 @@ require 'watt_sense_api/v1/organization'
|
|
13
13
|
require 'watt_sense_api/v1/user_management'
|
14
14
|
require 'watt_sense_api/v1/device_information'
|
15
15
|
require 'watt_sense_api/v1/properties_measurements'
|
16
|
+
require 'watt_sense_api/v1/property_configuration'
|
16
17
|
|
17
18
|
module WattSenseApi
|
18
19
|
module V1
|
@@ -24,6 +25,7 @@ module WattSenseApi
|
|
24
25
|
include ::WattSenseApi::V1::UserManagement
|
25
26
|
include ::WattSenseApi::V1::DeviceInformation
|
26
27
|
include ::WattSenseApi::V1::PropertiesMeasurements
|
28
|
+
include ::WattSenseApi::V1::PropertyConfiguration
|
27
29
|
|
28
30
|
# You can create a client V1 with both user's credentials or api creddentials.
|
29
31
|
#
|
@@ -60,7 +60,7 @@ module WattSenseApi
|
|
60
60
|
# @raise [::WattSenseApi::HTTPError] when server response is not as expected (HTTPAccepted with a body)
|
61
61
|
def device_property_set(device_id, property_id, body)
|
62
62
|
response = put("devices/#{device_id}/properties/#{property_id}", body.to_json)
|
63
|
-
return ::JSON.parse(response.body) if response.is_a?(::Net::
|
63
|
+
return ::JSON.parse(response.body) if response.is_a?(::Net::HTTPOK)
|
64
64
|
|
65
65
|
raise(::WattSenseApi::HTTPError, response)
|
66
66
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
#--
|
2
|
+
# Copyright (C) 2021 - Octopus Lab SAS
|
3
|
+
# All rights are described by the GPLv3 license present in the file /LICENSE available in the
|
4
|
+
# original repository of this file or [here](https://www.gnu.org/licenses/gpl-3.0.fr.html).
|
5
|
+
#++
|
6
|
+
# frozen_string_literal: true
|
7
|
+
|
8
|
+
require 'net/http'
|
9
|
+
require 'json'
|
10
|
+
|
11
|
+
module WattSenseApi
|
12
|
+
module V1
|
13
|
+
# This module gather all the methods to deal with [Property Configuration](https://api.wattsense.com/#tag/Property-Configuration)
|
14
|
+
module PropertyConfiguration
|
15
|
+
# List all properties present in a specific config revision.
|
16
|
+
#
|
17
|
+
# @see https://api.wattsense.com/#operation/listPropertyConfiguration API documentation
|
18
|
+
#
|
19
|
+
# @param device_id [String] The device id
|
20
|
+
# @param revision_id [String] The revision id of the configuration to get. Default: "current"
|
21
|
+
# Two special cases:
|
22
|
+
# - "current" will return the currently published config revision, i.e. status equal to CURRENT
|
23
|
+
# - "draft" will return the current draft i.e. status equal to DRAFT or SENT
|
24
|
+
#
|
25
|
+
# @return [Hash|NilClass] Hash of the property's latest value (nil if property is unreachable)
|
26
|
+
# @raise [::WattSenseApi::HTTPError] when server response is not as expected (HTTPAccepted with a body)
|
27
|
+
def device_config_properties(device_id, revision_id = 'current')
|
28
|
+
response = get("devices/#{device_id}/configs/#{revision_id}/properties")
|
29
|
+
return ::JSON.parse(response.body) if response.is_a?(::Net::HTTPOK)
|
30
|
+
|
31
|
+
return if response.is_a?(::Net::HTTPNoContent)
|
32
|
+
|
33
|
+
raise(::WattSenseApi::HTTPError, response)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wattsense-api-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.4.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Roland Laurès
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-
|
11
|
+
date: 2021-12-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: pry
|
@@ -110,6 +110,7 @@ files:
|
|
110
110
|
- lib/watt_sense_api/v1/device_information.rb
|
111
111
|
- lib/watt_sense_api/v1/organization.rb
|
112
112
|
- lib/watt_sense_api/v1/properties_measurements.rb
|
113
|
+
- lib/watt_sense_api/v1/property_configuration.rb
|
113
114
|
- lib/watt_sense_api/v1/user_management.rb
|
114
115
|
- lib/watt_sense_api/version.rb
|
115
116
|
- lib/wattsense-api-client.rb
|
@@ -119,7 +120,7 @@ licenses:
|
|
119
120
|
metadata:
|
120
121
|
bug_tracker_uri: https://gitlab.com/fr-octopuslab/wattsense-api-client/-/issues
|
121
122
|
changelog_uri: https://gitlab.com/octopuslab/wattsense-api-client/-/blob/main/CHANGELOG.md
|
122
|
-
documentation_uri: https://fr-octopuslab.gitlab.io/wattsense-api-client/0.
|
123
|
+
documentation_uri: https://fr-octopuslab.gitlab.io/wattsense-api-client/0.4.1
|
123
124
|
homepage_uri: https://gitlab.com/octopuslab/wattsense-api-client
|
124
125
|
post_install_message:
|
125
126
|
rdoc_options: []
|