alula-ruby 2.30.0 → 2.32.0

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: e01ef49bc046ae1795d32869b79a7e4b92996c0d35e3cee3cfd2de8df534dcd2
4
- data.tar.gz: 62d790ddc15244480f6ab1e08d5b77738a92aaeb94a6d286c2a82c9229694267
3
+ metadata.gz: 43063ce672af06858e496cf576c67b3dde36f63def8a24bf6938c29d5e23a791
4
+ data.tar.gz: 7d9e6e0cb79a23d4b41926fc755e77d33ee553ac63df442189704d864741be96
5
5
  SHA512:
6
- metadata.gz: 107146e1b827e0f7d8418ca3339d114c27f18750658e73af54e25b6190e65b0857983c93dd8862105b7ffdd2f039a0f1c142db6e2ae948c8b882d5912c561e2c
7
- data.tar.gz: f095933709d5855fca510bfe3700409e6f1e97e2ab116dc1f9e88f2e845c94ec45ed2f41457536a03b4ab4038f23f5f9ad055b07127d6ebb7e8b49ffa626fb17
6
+ metadata.gz: cf2277aa997330ee970d857d2721b2f554f1aac4cc5fab30b24ad4438d6419178a54f667c8eaff5361979f6e4c2c8e52b6e949006a8a1fe1fde53cda9173b15f
7
+ data.tar.gz: 6160a92f5a53bc2d08d382fd4b8bb1114d1f12f033a0385fdea5577b6d87c99945b58c38426dd3097773429d47fc4bb551425b8b352f676b4939621dcefb841c
data/.circleci/config.yml CHANGED
@@ -19,6 +19,9 @@ jobs:
19
19
  resource_class: large
20
20
  steps:
21
21
  - checkout
22
+ - run:
23
+ name: Remove .ruby-version to bypass rbenv
24
+ command: rm -f .ruby-version
22
25
  - aws-ecr/ecr-login
23
26
  - run:
24
27
  name: Set a local .env file
@@ -26,12 +29,18 @@ jobs:
26
29
  - run:
27
30
  name: Bring up the Core API
28
31
  command: make up
29
- - run:
30
- name: Install ruby deps
31
- command: sudo apt update && sudo apt install ruby-full
32
32
  - run:
33
- name: Install gems
34
- command: bundle install
33
+ name: Install Ruby 3.4.4
34
+ command: |
35
+ wget -O ruby-install-0.9.3.tar.gz https://github.com/postmodern/ruby-install/releases/download/v0.9.3/ruby-install-0.9.3.tar.gz
36
+ tar -xzvf ruby-install-0.9.3.tar.gz
37
+ cd ruby-install-0.9.3 && sudo make install
38
+ sudo ruby-install --system ruby 3.4.4
39
+ - run:
40
+ name: Install bundler and gems
41
+ command: |
42
+ gem install bundler
43
+ bundle install
35
44
  - run:
36
45
  name: Execute test suite
37
46
  command: bundle exec rspec --format documentation
@@ -14,10 +14,10 @@ jobs:
14
14
 
15
15
  steps:
16
16
  - uses: actions/checkout@v2
17
- - name: Set up Ruby 2.6
17
+ - name: Set up Ruby 3.4
18
18
  uses: ruby/setup-ruby@v1
19
19
  with:
20
- ruby-version: '2.6'
20
+ ruby-version: '3.4'
21
21
 
22
22
  - name: Publish to GPR
23
23
  run: |
data/.gitignore CHANGED
@@ -22,4 +22,9 @@
22
22
  spec/testDataResult.json
23
23
  /Gemfile.lock
24
24
 
25
- /container
25
+ /container
26
+
27
+ #### Directory for Developer's Notes
28
+ _developer-notes
29
+ _developer-notes/**
30
+
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.3.6
1
+ 3.4.4
data/VERSION.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  | Version | Date | Description |
4
4
  | ------- | ------------| --------------------------------------------------------------------------- |
5
+ | v2.32.0 | 2026-01-30 | Add a new `Alula::Dcp::Config::ClearStaged` class that calls the DCP API endpoint to clear all staged configuration data for a device. |
6
+ | v2.31.0 | 2025-12-19 | Adds managed_by and sso_access_level properties in Dealer |
5
7
  | v2.30.0 | 2025-12-16 | Adds M2MCentralStation and PermittedCentralStation |
6
8
  | v2.29.0 | 2025-12-01 | Adds User Impersonation Requests and new Meta |
7
9
  | v2.28.0 | 2025-11-19 | Add product_sku Device property |
data/alula.gemspec CHANGED
@@ -25,13 +25,16 @@ Gem::Specification.new do |spec|
25
25
  spec.require_paths = ["lib"]
26
26
 
27
27
  spec.add_dependency 'httparty', '~> 0.22.0'
28
+ spec.add_dependency 'ostruct'
28
29
  spec.add_dependency 'request_store', '~> 1.0'
29
30
 
30
31
  spec.add_development_dependency "activesupport"
31
- spec.add_development_dependency "bundler", "~> 2.5"
32
+ #spec.add_development_dependency "bundler", "~> 2.5"
33
+ spec.add_development_dependency "bundler", ">= 4.0", "< 5.0"
32
34
  spec.add_development_dependency "dotenv"
33
35
  spec.add_development_dependency "guard-rspec"
34
- spec.add_development_dependency "nokogiri", "~> 1.16.7"
36
+ #spec.add_development_dependency "nokogiri", "~> 1.16.7"
37
+ spec.add_development_dependency "nokogiri", ">= 1.19", "< 1.20"
35
38
  spec.add_development_dependency "rake", "~> 13.2"
36
39
  spec.add_development_dependency "rspec", "~> 3.13"
37
40
  spec.add_development_dependency "simplecov", "~> 0.22.0"
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Alula
4
+ module Dcp
5
+ class Config < Alula::Dcp::BaseResource
6
+ # Clear all staged DCP configuration for a device
7
+ #
8
+ # This command removes all pending configuration changes that have
9
+ # not yet been applied to the device.
10
+ #
11
+ # @example
12
+ # result = Alula::Dcp::Config::ClearStaged.call(device_id: 'device-mac-address')
13
+ # if result.is_a?(Alula::AlulaError)
14
+ # puts "Error: #{result.message}"
15
+ # else
16
+ # puts "Staged data cleared successfully"
17
+ # end
18
+ #
19
+ class ClearStaged < Alula::SingletonDcpCommandResource
20
+ extend Alula::Dcp::ResourceAttributes
21
+
22
+ resource_path 'config/staged'
23
+
24
+ # Clear all staged configuration for a device
25
+ #
26
+ # @param device_id [String] The device hardware ID (MAC address)
27
+ # @return [Alula::AlulaResponse, Alula::AlulaError] Response or error object
28
+ def self.call(device_id:)
29
+ request(
30
+ device_id: device_id,
31
+ http_method: :delete,
32
+ payload: {}
33
+ )
34
+ end
35
+
36
+ def self.payload_required?
37
+ false
38
+ end
39
+ end
40
+ end
41
+ end
42
+ end
@@ -234,5 +234,19 @@ module Alula
234
234
  filterable: false,
235
235
  creatable_by: [:system],
236
236
  patchable_by: [:system]
237
+
238
+ field :managed_by,
239
+ type: :string,
240
+ sortable: false,
241
+ filterable: false,
242
+ creatable_by: [:system],
243
+ patchable_by: [:system]
244
+
245
+ field :sso_access_level,
246
+ type: :string,
247
+ sortable: false,
248
+ filterable: false,
249
+ creatable_by: [:system],
250
+ patchable_by: [:system]
237
251
  end
238
252
  end
data/lib/alula/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Alula
4
- VERSION = '2.30.0'
4
+ VERSION = '2.32.0'
5
5
  end
data/lib/alula.rb CHANGED
@@ -151,6 +151,7 @@ require_relative 'alula/resources/nfc_tag'
151
151
  require_relative 'alula/resources/sim_card'
152
152
  require_relative 'alula/resources/permitted_central_station'
153
153
  require_relative 'alula/resources/dcp/config/synchronize'
154
+ require_relative 'alula/resources/dcp/config/clear_staged'
154
155
  require_relative 'alula/resources/video/base_resource'
155
156
  require_relative 'alula/resources/video/device'
156
157
  require_relative 'alula/resources/m2m/m2m_central_station'
metadata CHANGED
@@ -1,14 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: alula-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.30.0
4
+ version: 2.32.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Titus Johnson
8
- autorequire:
9
8
  bindir: exe
10
9
  cert_chain: []
11
- date: 2025-12-16 00:00:00.000000000 Z
10
+ date: 1980-01-02 00:00:00.000000000 Z
12
11
  dependencies:
13
12
  - !ruby/object:Gem::Dependency
14
13
  name: httparty
@@ -24,6 +23,20 @@ dependencies:
24
23
  - - "~>"
25
24
  - !ruby/object:Gem::Version
26
25
  version: 0.22.0
26
+ - !ruby/object:Gem::Dependency
27
+ name: ostruct
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
27
40
  - !ruby/object:Gem::Dependency
28
41
  name: request_store
29
42
  requirement: !ruby/object:Gem::Requirement
@@ -56,16 +69,22 @@ dependencies:
56
69
  name: bundler
57
70
  requirement: !ruby/object:Gem::Requirement
58
71
  requirements:
59
- - - "~>"
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '4.0'
75
+ - - "<"
60
76
  - !ruby/object:Gem::Version
61
- version: '2.5'
77
+ version: '5.0'
62
78
  type: :development
63
79
  prerelease: false
64
80
  version_requirements: !ruby/object:Gem::Requirement
65
81
  requirements:
66
- - - "~>"
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '4.0'
85
+ - - "<"
67
86
  - !ruby/object:Gem::Version
68
- version: '2.5'
87
+ version: '5.0'
69
88
  - !ruby/object:Gem::Dependency
70
89
  name: dotenv
71
90
  requirement: !ruby/object:Gem::Requirement
@@ -98,16 +117,22 @@ dependencies:
98
117
  name: nokogiri
99
118
  requirement: !ruby/object:Gem::Requirement
100
119
  requirements:
101
- - - "~>"
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: '1.19'
123
+ - - "<"
102
124
  - !ruby/object:Gem::Version
103
- version: 1.16.7
125
+ version: '1.20'
104
126
  type: :development
105
127
  prerelease: false
106
128
  version_requirements: !ruby/object:Gem::Requirement
107
129
  requirements:
108
- - - "~>"
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '1.19'
133
+ - - "<"
109
134
  - !ruby/object:Gem::Version
110
- version: 1.16.7
135
+ version: '1.20'
111
136
  - !ruby/object:Gem::Dependency
112
137
  name: rake
113
138
  requirement: !ruby/object:Gem::Requirement
@@ -287,6 +312,7 @@ files:
287
312
  - lib/alula/resources/dcp/config/bus_modules/output_bus_module.rb
288
313
  - lib/alula/resources/dcp/config/bus_modules/touchpad_bus_module.rb
289
314
  - lib/alula/resources/dcp/config/bus_modules/zwave_bus_module.rb
315
+ - lib/alula/resources/dcp/config/clear_staged.rb
290
316
  - lib/alula/resources/dcp/config/comm_data.rb
291
317
  - lib/alula/resources/dcp/config/comm_data/auto_comm_test_interval.rb
292
318
  - lib/alula/resources/dcp/config/comm_data/server_heartbeats.rb
@@ -378,10 +404,8 @@ files:
378
404
  - lib/parser.rb
379
405
  - utils/mariadb/conf/custom.cnf
380
406
  - utils/mongodb/init/00_users.sh
381
- homepage:
382
407
  licenses: []
383
408
  metadata: {}
384
- post_install_message:
385
409
  rdoc_options: []
386
410
  require_paths:
387
411
  - lib
@@ -396,8 +420,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
396
420
  - !ruby/object:Gem::Version
397
421
  version: '0'
398
422
  requirements: []
399
- rubygems_version: 3.0.3.1
400
- signing_key:
423
+ rubygems_version: 3.6.9
401
424
  specification_version: 4
402
425
  summary: Ruby bindings for the Alula API
403
426
  test_files: []