dji_mqtt_connect 0.1.22 → 0.1.22.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7027ac9b38e9e7b0a0927e4fd9b6419c910d8c6fb3b531fdf70f5384a8f924b1
4
- data.tar.gz: e8ebff861fe60c9f97d6ab1123c557c606d9ff1c7fac4585b119d8810de334ae
3
+ metadata.gz: 8648b1f1ab8a35bab447677cacc7e465716a7b30b31dc9cf26230d9e4f00000f
4
+ data.tar.gz: 33fa2572acded95529962bc32703599c6750118c3238879584aad4a06db0bcf5
5
5
  SHA512:
6
- metadata.gz: '0508e79e10728091f78602a32b4c5af879952c042f6ca2c9feb82f9141fb63ee2184f1d43e0ff484108139b8e0f3e591d8d60b29338732732b83a401ed6a5e4c'
7
- data.tar.gz: 913b5ea242a5f96f3f5e0331fe55cc123632d5baa7db91016cb932233fc3322e0ae1b8a88e8fda32f7b6ed21aca6e26cf9e38e8dc9b599a811c7672246ce6fe1
6
+ metadata.gz: ce0796ec8ca31bf90482a16fb3e601e40d2dccc1cdf045ecbc149fc0838f294a7297af69aef3d8cebfdb7e9714e33b4c5464b3680acadf38a1e771d78f163f32
7
+ data.tar.gz: b75eaafa64707ec784514792188fe3722bb17abbce767c4ea5843ddf61f8c3e4d170980301ec31606e50cac0f9f04ea1ea42ece7daa0e2c56c20c38fc4470ad7
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- dji_mqtt_connect (0.1.22)
4
+ dji_mqtt_connect (0.1.22.2)
5
5
  activesupport (>= 6.0, <= 8)
6
6
  dry-struct (~> 1.6)
7
7
  dry-transformer (~> 1.0)
@@ -212,6 +212,24 @@ module DjiMqttConnect
212
212
  )
213
213
  end
214
214
 
215
+ def build_offline_map_sync_progress_events_message
216
+ message_data = {
217
+ status: "failed",
218
+ reason: 0,
219
+ file: "geofence_xxx.json"
220
+ }
221
+
222
+ Thing::Product::OfflineMapSyncProgressEventsMessage.new(
223
+ bid: Message.generate_bid,
224
+ tid: Message.generate_tid,
225
+ timestamp: Message.current_timestamp,
226
+ _method: "offline_map_sync_progress",
227
+ need_reply: 1,
228
+ data: message_data,
229
+ _data: message_data
230
+ )
231
+ end
232
+
215
233
  # OSD
216
234
 
217
235
  def build_thing_product_dock_osd_message_with_sub_device
@@ -0,0 +1,15 @@
1
+ # frozen_string_literal: true
2
+
3
+ module DjiMqttConnect
4
+ module Thing::Product
5
+ class OfflineMapSyncProgressEventsMessage < EventsMessage
6
+ attribute :_method, Types::String.enum("offline_map_sync_progress")
7
+
8
+ attribute :data do
9
+ attribute :status, Types::String
10
+ attribute :reason, Types::Integer
11
+ attribute :file, Types::String | Types::Nil
12
+ end
13
+ end
14
+ end
15
+ end
@@ -31,7 +31,8 @@ module DjiMqttConnect
31
31
  "flight_areas_sync_progress",
32
32
  "flighttask_progress",
33
33
  "flighttask_ready",
34
- "highest_priority_upload_flighttask_media"
34
+ "highest_priority_upload_flighttask_media",
35
+ "offline_map_sync_progress"
35
36
  )
36
37
 
37
38
  attribute :data do
@@ -20,6 +20,9 @@ module DjiMqttConnect
20
20
  wind_speed
21
21
  ]
22
22
 
23
+ CAMERA_MODE_PHOTO_TAKING = 0
24
+ CAMREA_MODE_RECORDING = 1
25
+
23
26
  attribute :data do
24
27
  include Mixins::LatitudeConditional
25
28
  include Mixins::LongitudeConditional
@@ -90,7 +93,14 @@ module DjiMqttConnect
90
93
  attribute :payload_index, Types::String
91
94
 
92
95
  # {"0":"Photo taking","1":"Recording"}
93
- attribute? :camera_mode, Types::Integer.enum(0, 1)
96
+ attribute? :camera_mode, Types::Integer.enum(
97
+ CAMERA_MODE_PHOTO_TAKING,
98
+ CAMREA_MODE_RECORDING
99
+ ) | Types::ErrorInteger
100
+
101
+ def camera_mode?
102
+ camera_mode && !Types::ErrorInteger.valid?(camera_mode)
103
+ end
94
104
 
95
105
  # {"min":2,"max":20}
96
106
  attribute? :ir_zoom_factor, Types::JSON::Decimal
@@ -10,6 +10,9 @@ module DjiMqttConnect
10
10
  # DJI does not like null, so it returns Integer 0 instead of a Decimal...
11
11
  NullInteger = Types::Strict::Integer.constrained(eql: 0)
12
12
 
13
+ # Negative values indicate a fault
14
+ ErrorInteger = Types::Strict::Integer.constrained(lt: 0)
15
+
13
16
  # Not a Strict UUID format... turns out DJI doesn't follow one
14
17
  UUID = Strict::String.constrained(format: /\A[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\z/i)
15
18
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DjiMqttConnect
4
- VERSION = "0.1.22"
4
+ VERSION = "0.1.22.2"
5
5
  end
@@ -48,6 +48,7 @@ module DjiMqttConnect
48
48
  autoload :FlighttaskReadyEventsMessage, "dji_mqtt_connect/messages/thing/product/events/flighttask_ready"
49
49
  autoload :HighestPriorityUploadFlighttaskMediaEventsMessage, "dji_mqtt_connect/messages/thing/product/events/highest_priority_upload_flighttask_media"
50
50
  autoload :HmsEventsMessage, "dji_mqtt_connect/messages/thing/product/events/hms"
51
+ autoload :OfflineMapSyncProgressEventsMessage, "dji_mqtt_connect/messages/thing/product/events/offline_map_sync_progress"
51
52
  autoload :ReturnHomeInfoEventsMessage, "dji_mqtt_connect/messages/thing/product/events/return_home_info"
52
53
  autoload :StatusCodeEventsMessage, "dji_mqtt_connect/messages/thing/product/events/status_code"
53
54
  autoload :TrackEventsMessage, "dji_mqtt_connect/messages/thing/product/events/track"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dji_mqtt_connect
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.22
4
+ version: 0.1.22.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sphere Drones
@@ -142,6 +142,7 @@ files:
142
142
  - lib/dji_mqtt_connect/messages/thing/product/events/flighttask_ready.rb
143
143
  - lib/dji_mqtt_connect/messages/thing/product/events/highest_priority_upload_flighttask_media.rb
144
144
  - lib/dji_mqtt_connect/messages/thing/product/events/hms.rb
145
+ - lib/dji_mqtt_connect/messages/thing/product/events/offline_map_sync_progress.rb
145
146
  - lib/dji_mqtt_connect/messages/thing/product/events/return_home_info.rb
146
147
  - lib/dji_mqtt_connect/messages/thing/product/events/status_code.rb
147
148
  - lib/dji_mqtt_connect/messages/thing/product/events/track.rb