ruby-macrodroid 0.8.9 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -416,20 +416,41 @@ end
416
416
  #
417
417
  class WebHookTrigger < Trigger
418
418
 
419
- def initialize(h={})
419
+ def initialize(obj={})
420
+
421
+ h = if obj.is_a? Hash then
422
+ obj
423
+ elsif obj.is_a? Array
424
+ e, macro = obj
425
+ txt = e.text('item/description')
426
+ {url: (txt || e.text), macro: macro}
427
+ end
428
+
429
+ if h[:url] then
430
+ h[:identifier] = h[:url][/https:\/\/trigger.macrodroid.com\/(?:\w+\-){4}\w+\/([^$]+)/,1]
431
+ end
432
+
420
433
 
421
434
  options = {
422
435
  identifier: ''
423
436
  }
437
+
438
+ @deviceid = h[:macro].deviceid
424
439
 
425
- super(options.merge h)
440
+
441
+ if h[:identifier].nil? or h[:identifier].empty? then
442
+ h[:identifier] = h[:macro].title.downcase.gsub(/ +/,'-')
443
+ end
444
+
445
+ super(options.merge filter(options,h))
446
+ @list << 'identifier'
426
447
 
427
448
  end
428
449
 
429
450
  def to_s(colour: false)
430
451
 
431
452
  url = "https://trigger.macrodroid.com/%s/%s" % \
432
- [@h[:macro].deviceid, @h[:identifier]]
453
+ [@deviceid, @h[:identifier]]
433
454
  @s = 'WebHook (Url)' + "\n " + url
434
455
  super()
435
456
 
@@ -1372,8 +1393,21 @@ end
1372
1393
  #
1373
1394
  class ProximityTrigger < SensorsTrigger
1374
1395
 
1375
- def initialize(h={})
1396
+ def initialize(obj=nil)
1376
1397
 
1398
+ h = if obj.is_a? Hash then
1399
+ obj
1400
+ elsif obj.is_a? Array
1401
+ e, macro = obj
1402
+ txt = e.text('item/description')
1403
+ {option: (txt || e.text), macro: macro}
1404
+ end
1405
+
1406
+ options = {
1407
+ near: true,
1408
+ selected_option: 0
1409
+ }
1410
+
1377
1411
  if h[:distance] then
1378
1412
 
1379
1413
  case h[:distance].to_sym
@@ -1382,15 +1416,14 @@ class ProximityTrigger < SensorsTrigger
1382
1416
  end
1383
1417
  end
1384
1418
 
1385
- options = {
1386
- near: true,
1387
- selected_option: 0
1388
- }
1389
-
1390
1419
  super(options.merge h)
1391
1420
 
1392
1421
  end
1393
1422
 
1423
+ def match?(detail={}, model=nil)
1424
+ @h[:selected_option] == detail[:option].to_i
1425
+ end
1426
+
1394
1427
  def to_s(colour: false)
1395
1428
 
1396
1429
  distance = if @h[:near] then
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruby-macrodroid
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.9
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Robertson
@@ -35,7 +35,7 @@ cert_chain:
35
35
  NZ2kdBIUDnAM24e0/wXdVxg4HnsZbdymxyzMQ4P5pKYcpI6oisBxI37p/Xy+wAg3
36
36
  SBHno3GEuuD8ZWj24IMJpfbp
37
37
  -----END CERTIFICATE-----
38
- date: 2020-09-25 00:00:00.000000000 Z
38
+ date: 2020-10-03 00:00:00.000000000 Z
39
39
  dependencies:
40
40
  - !ruby/object:Gem::Dependency
41
41
  name: glw
@@ -81,22 +81,22 @@ dependencies:
81
81
  name: rowx
82
82
  requirement: !ruby/object:Gem::Requirement
83
83
  requirements:
84
- - - ">="
85
- - !ruby/object:Gem::Version
86
- version: 0.7.0
87
84
  - - "~>"
88
85
  - !ruby/object:Gem::Version
89
86
  version: '0.7'
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: 0.7.3
90
90
  type: :runtime
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
95
- - !ruby/object:Gem::Version
96
- version: 0.7.0
97
94
  - - "~>"
98
95
  - !ruby/object:Gem::Version
99
96
  version: '0.7'
97
+ - - ">="
98
+ - !ruby/object:Gem::Version
99
+ version: 0.7.3
100
100
  - !ruby/object:Gem::Dependency
101
101
  name: subunit
102
102
  requirement: !ruby/object:Gem::Requirement
@@ -146,7 +146,7 @@ dependencies:
146
146
  version: '1.1'
147
147
  - - ">="
148
148
  - !ruby/object:Gem::Version
149
- version: 1.1.1
149
+ version: 1.1.3
150
150
  type: :runtime
151
151
  prerelease: false
152
152
  version_requirements: !ruby/object:Gem::Requirement
@@ -156,7 +156,7 @@ dependencies:
156
156
  version: '1.1'
157
157
  - - ">="
158
158
  - !ruby/object:Gem::Version
159
- version: 1.1.1
159
+ version: 1.1.3
160
160
  - !ruby/object:Gem::Dependency
161
161
  name: chronic_cron
162
162
  requirement: !ruby/object:Gem::Requirement
@@ -186,6 +186,8 @@ files:
186
186
  - lib/ruby-macrodroid.rb
187
187
  - lib/ruby-macrodroid/actions.rb
188
188
  - lib/ruby-macrodroid/base.rb
189
+ - lib/ruby-macrodroid/constraints.rb
190
+ - lib/ruby-macrodroid/macro.rb
189
191
  - lib/ruby-macrodroid/triggers.rb
190
192
  homepage: https://github.com/jrobertson/ruby-macrodroid
191
193
  licenses:
metadata.gz.sig CHANGED
Binary file