remotedroid 0.2.0 → 0.3.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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +1 -2
- data/lib/remotedroid.rb +52 -14
- metadata +1 -1
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 71e486b66042dfefbfff3717043ded61f7847043a4afc37f1bd7b215076e280b
|
4
|
+
data.tar.gz: e7dee07206e7351a472fd9fb5c767979f7350f65630c7e1161dd7a14d1349347
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: '08933909445d0ec11a57c9f3006ac9874db4a48d21602a56993505f6c5350acc566a4fb4171e9e2423bd41c2957f6ae5be8294c51f4551808d71f277b1aab2b1'
|
7
|
+
data.tar.gz: 1b48179921c54abd6ad3d112c277133352a3496be7f092709f15463e5ced3418307d93b1aec0edc18167b16677541bea563c2116e8d0068a0becd2a365edc5dd
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
@@ -1,2 +1 @@
|
|
1
|
-
|
2
|
-
Y]��u�9����G�#�l�f|������-1�|����TDc����8�a� ?�����L~�٬3�0�j�y�q��7�bLj�ۡ�����{ycyvYn<-5[t�`~�n(:|��U<��?a��.�_��h���~�����2�V�b��p=oyDjV`~��jY�e�Mؒ�)^_�ҡ��XSj��~(��J��G��a��`w��8}2cF���Iq��D�"@M��ПC�[�D� ����n1��L��q.�rH�T���8/�E� ��Z�B��^�M��'����
|
1
|
+
�u`HI�0�\�`Ƅ���k�\���'_Fd_U��9������K�Ǩ��������plj��B& �7!�e��ɋ�;�Q0�U�|�K������8��]yu�g$#(ۀ)�ă����H &���.$렐<�Ԙ��3ǜ��ÿύ:.�39O�'��i��~���A�(Vg@����0\;H6�EÀ#��se�}N�%u�=�Mcx��/ܧ�D���O��p�rI��&,\.�? NˠJE]$Q�Y���٭сf�Fa>��U�J7ϧ;�{~a=r�������rk��(��pn�R��F��dx4�\&:{�O�A�W��>xȢI�@�?5j�4���D��jo���X�Fǭ����=�S�ŷ19u���:M��q
|
data/lib/remotedroid.rb
CHANGED
@@ -78,6 +78,7 @@ a:
|
|
78
78
|
HTTP GET
|
79
79
|
identifier: location
|
80
80
|
coords: [lv=coords]
|
81
|
+
type: query
|
81
82
|
|
82
83
|
m: shake device
|
83
84
|
t: shake device
|
@@ -322,7 +323,7 @@ module RemoteDroid
|
|
322
323
|
class Controller
|
323
324
|
|
324
325
|
attr_reader :model, :control
|
325
|
-
attr_accessor :title, :macros
|
326
|
+
attr_accessor :title, :macros, :store
|
326
327
|
|
327
328
|
def initialize(mcs, model=MODEL, deviceid: nil, debug: false)
|
328
329
|
|
@@ -335,6 +336,8 @@ module RemoteDroid
|
|
335
336
|
if model then
|
336
337
|
@model = Model.new(model)
|
337
338
|
end
|
339
|
+
|
340
|
+
@store = {}
|
338
341
|
|
339
342
|
end
|
340
343
|
|
@@ -354,12 +357,12 @@ module RemoteDroid
|
|
354
357
|
@model.op
|
355
358
|
end
|
356
359
|
|
357
|
-
def query(
|
360
|
+
def query(id)
|
358
361
|
|
359
|
-
@
|
362
|
+
@store[id] = nil
|
360
363
|
|
361
364
|
# send http request via macrodroid.com API
|
362
|
-
@control.http_exec
|
365
|
+
@control.http_exec id
|
363
366
|
|
364
367
|
# wait for the local variable to be updated
|
365
368
|
# timeout after 5 seoncds
|
@@ -367,11 +370,11 @@ module RemoteDroid
|
|
367
370
|
|
368
371
|
begin
|
369
372
|
sleep 1
|
370
|
-
end until @
|
373
|
+
end until @store[id] or Time.now > t + 5
|
371
374
|
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
+
|
376
|
+
return @store[id]
|
377
|
+
|
375
378
|
|
376
379
|
end
|
377
380
|
|
@@ -408,10 +411,11 @@ module RemoteDroid
|
|
408
411
|
end
|
409
412
|
|
410
413
|
alias trigger_fired trigger
|
414
|
+
|
415
|
+
def update(key, val)
|
416
|
+
@store[key.to_sym] = val
|
417
|
+
end
|
411
418
|
|
412
|
-
def store()
|
413
|
-
@h
|
414
|
-
end
|
415
419
|
|
416
420
|
end
|
417
421
|
|
@@ -543,13 +547,29 @@ module RemoteDroid
|
|
543
547
|
def invoke(s, *args)
|
544
548
|
@drb.invoke(s, *args)
|
545
549
|
end
|
550
|
+
|
551
|
+
def query(id)
|
552
|
+
|
553
|
+
t = Time.now
|
554
|
+
h = @drb.query(id)
|
555
|
+
h.merge({latency: (Time.now - t).round(3)})
|
556
|
+
|
557
|
+
end
|
558
|
+
|
559
|
+
def update(key, val)
|
560
|
+
@drb.update key.to_sym, val
|
561
|
+
end
|
562
|
+
|
563
|
+
def store()
|
564
|
+
@drb.store
|
565
|
+
end
|
546
566
|
|
547
567
|
end
|
548
568
|
|
549
569
|
class TriggerSubscriber < SPSSub
|
550
570
|
|
551
571
|
def initialize(host: 'sps.home', drb_host: '127.0.0.1')
|
552
|
-
@remote = OneDrb::Client.new host: drb_host, port: '5777'
|
572
|
+
@remote = OneDrb::Client.new host: drb_host, port: '5777'
|
553
573
|
super(host: host)
|
554
574
|
end
|
555
575
|
|
@@ -570,7 +590,7 @@ module RemoteDroid
|
|
570
590
|
class ActionSubscriber < SPSSub
|
571
591
|
|
572
592
|
def initialize(host: 'sps.home', drb_host: '127.0.0.1')
|
573
|
-
@remote = OneDrb::Client.new host: drb_host, port: '5777'
|
593
|
+
@remote = OneDrb::Client.new host: drb_host, port: '5777'
|
574
594
|
super(host: host)
|
575
595
|
end
|
576
596
|
|
@@ -589,5 +609,23 @@ module RemoteDroid
|
|
589
609
|
|
590
610
|
end
|
591
611
|
|
592
|
-
|
612
|
+
class ResponseSubscriber < SPSSub
|
613
|
+
|
614
|
+
def initialize(host: 'sps.home', drb_host: '127.0.0.1')
|
615
|
+
@remote = OneDrb::Client.new host: drb_host, port: '5777'
|
616
|
+
super(host: host)
|
617
|
+
end
|
618
|
+
|
619
|
+
def subscribe(topic: 'macrodroid/response')
|
620
|
+
|
621
|
+
super(topic: topic) do |msg|
|
622
|
+
|
623
|
+
id, json = msg.split(/:\s+/,2)
|
624
|
+
@remote.update id.to_sym, JSON.parse(json, symbolize_names: true)
|
625
|
+
|
626
|
+
end
|
627
|
+
|
628
|
+
end
|
629
|
+
|
630
|
+
end
|
593
631
|
end
|
metadata
CHANGED
metadata.gz.sig
CHANGED
Binary file
|