remotedroid 0.2.0 → 0.3.0
Sign up to get free protection for your applications and to get access to all the features.
- 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
|