import_remotecontrol 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/get_code_list.rb +92 -0
- metadata +2 -1
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
NjRkZjY0NTNiYWNmYjdhNzdjNmFiNWUzNjkwYzA2NmQ3NDhiMzcwNQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
OGEzOTM4NDkyNjA3MGVkYTJmNTRhMjU3YzM4N2I3ZDUwZmQwMWEzZQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
OWJhMDZlMmQ0ZTcxM2NlNWNjMWVjNWUzNjNkNWIxNTE5ZmIwNTI5NjgzNTkw
|
10
|
+
ODJiYmMxZTIwMmEyOTEwY2I4MmM2MGVmYTk4ZWFhZTMwZTczYWMyZjM1NDc0
|
11
|
+
MWM5MmI2ZGI4MWJkNzc0ODNhOGM4MjY0NmVkNDBiMThlMzg1OWY=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
MWI2YmM5YTYwY2MyMmEwZDViZWFkMjkxMDBjZjI0ZTYxZTU3MWYxYzMxNGIy
|
14
|
+
ZGU1YmYwZDVlMDk4YmM0NmQ0YzkwMzg4ZDMzMzM2NThhZGVjMTEzMTJhN2Q0
|
15
|
+
NWQ5ZjY2Nzc5NWIzNjBjYWFiYzZkMzIwMjc5ZGQ0M2Q3MWIyNGE=
|
@@ -0,0 +1,92 @@
|
|
1
|
+
module GetCodeList
|
2
|
+
# To change this template use File | Settings | File Templates.
|
3
|
+
|
4
|
+
BRAND = "brand"
|
5
|
+
PROTOCOLNAME="protocol_name"
|
6
|
+
CODE = "code"
|
7
|
+
METHOD_NAME = "method_name"
|
8
|
+
|
9
|
+
#获取错误信息用于抛出错误
|
10
|
+
def self.get_error_msg(error,options={})
|
11
|
+
ret = ""
|
12
|
+
ret = ret + "ClassName: import_remotecontrol gem "
|
13
|
+
if options["method_name"]
|
14
|
+
ret = ret + "MethodName: #{options["method_name"]} "
|
15
|
+
end
|
16
|
+
if error
|
17
|
+
ret = ret + "Error Msg: #{error.to_s}"
|
18
|
+
end
|
19
|
+
ret
|
20
|
+
end
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
def self.getlist(data)
|
27
|
+
codes = data["codes"]
|
28
|
+
_codes = {}
|
29
|
+
case data[BRAND]
|
30
|
+
when "长虹"
|
31
|
+
codes.each do |key,value|
|
32
|
+
_codes.merge!({key=>changHong(value)})
|
33
|
+
end
|
34
|
+
when "创维"
|
35
|
+
codes.each do |key,value|
|
36
|
+
_codes.merge!({key=>chuangWei(value)})
|
37
|
+
end
|
38
|
+
end
|
39
|
+
data["codes"] = _codes
|
40
|
+
data
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
def self.changHong(code)
|
45
|
+
ret = ""
|
46
|
+
case code[PROTOCOLNAME]
|
47
|
+
when "EXT_NEC"
|
48
|
+
ret = changHongExtNec(code[CODE])
|
49
|
+
end
|
50
|
+
ret
|
51
|
+
end
|
52
|
+
|
53
|
+
def self.chuangWei(code)
|
54
|
+
ret = ""
|
55
|
+
case code[PROTOCOLNAME]
|
56
|
+
when "CUT_NEC"
|
57
|
+
ret = changHongExtNec(code[CODE])
|
58
|
+
end
|
59
|
+
ret
|
60
|
+
end
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
#对长虹的扩展NEC编码类型的编码数组进行处理
|
65
|
+
def self.changHongExtNec(code)
|
66
|
+
begin
|
67
|
+
codes = code.split(":")
|
68
|
+
ret = "#{codes[0]}:#{codes[1]}:#{codes[2]}:"
|
69
|
+
__code = Integer("0x#{codes[2].to_s}")
|
70
|
+
__code = (~__code)&Integer(0b1111)
|
71
|
+
ret = ret + __code.to_s(16)
|
72
|
+
rescue => err
|
73
|
+
raise RuntimeError, get_error_msg("Protocol Error, Error msg : #{err.to_s}",{METHOD_NAME => "changHongExtNec"})
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
#对创维的精简NEC编码类型的编码数组进行处理
|
78
|
+
def self.chuangWeiCutNec(code)
|
79
|
+
begin
|
80
|
+
codes = code.split(":")
|
81
|
+
ret = "#{codes[0]}:#{codes[0]}:#{codes[1]}:"
|
82
|
+
__code = Integer("0x#{codes[1].to_s}")
|
83
|
+
__code = (~__code)&Integer(0b1111)
|
84
|
+
ret = ret + __code.to_s(16)
|
85
|
+
rescue => err
|
86
|
+
raise RuntimeError, get_error_msg("Protocol Error, Error msg : #{err.to_s}",{METHOD_NAME => "chuangWeiCutNec"})
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
end
|
91
|
+
|
92
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: import_remotecontrol
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- zql
|
@@ -18,6 +18,7 @@ extra_rdoc_files: []
|
|
18
18
|
files:
|
19
19
|
- lib/import_remotecontrol.rb
|
20
20
|
- lib/import_code.rb
|
21
|
+
- lib/get_code_list.rb
|
21
22
|
homepage: http://rubygems.org/gems/import_remotecontrol
|
22
23
|
licenses: []
|
23
24
|
metadata: {}
|