omnibot 0.0.15 → 0.0.16
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/omnibot/amqpconsumer.rb +3 -1
- data/lib/omnibot/helpers.rb +2 -0
- data/lib/omnibot/jabberbot.rb +2 -0
- data/lib/omnibot/launcher.rb +2 -0
- data/lib/omnibot/loggedcommand.rb +2 -0
- data/lib/omnibot/mailchecker.rb +2 -0
- data/lib/omnibot/omnisend.rb +3 -1
- data/lib/omnibot/periodiccommand.rb +2 -0
- data/lib/omnibot/version.rb +3 -1
- data/lib/omnibot.rb +38 -0
- metadata +13 -13
data/lib/omnibot/amqpconsumer.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
1
3
|
module OmniBot
|
2
4
|
|
3
5
|
# AMQP consumer class
|
@@ -42,7 +44,7 @@ module OmniBot
|
|
42
44
|
OmniLog::info "==== AMQP is ready ===="
|
43
45
|
|
44
46
|
queue.subscribe do |msg|
|
45
|
-
message = Marshal.load
|
47
|
+
message = Marshal.load(Base64.decode64(msg)).force_encoding('UTF-8')
|
46
48
|
send_message message
|
47
49
|
end
|
48
50
|
|
data/lib/omnibot/helpers.rb
CHANGED
data/lib/omnibot/jabberbot.rb
CHANGED
data/lib/omnibot/launcher.rb
CHANGED
data/lib/omnibot/mailchecker.rb
CHANGED
data/lib/omnibot/omnisend.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
1
3
|
module OmniBot
|
2
4
|
|
3
5
|
class OmniSend
|
@@ -9,7 +11,7 @@ module OmniBot
|
|
9
11
|
message = args.join(' ')
|
10
12
|
end
|
11
13
|
puts "Sending message #{message}"
|
12
|
-
data = Marshal.dump(message)
|
14
|
+
data = Base64.encode64(Marshal.dump(message))
|
13
15
|
|
14
16
|
Signal.trap('INT') { AMQP.stop{ EM.stop } }
|
15
17
|
|
data/lib/omnibot/version.rb
CHANGED
data/lib/omnibot.rb
CHANGED
@@ -1,5 +1,8 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
1
3
|
require 'yaml'
|
2
4
|
require 'logger'
|
5
|
+
require 'base64'
|
3
6
|
|
4
7
|
require 'amqp'
|
5
8
|
require 'eventmachine'
|
@@ -12,6 +15,41 @@ require 'socket'
|
|
12
15
|
require 'date'
|
13
16
|
require 'tmpdir'
|
14
17
|
|
18
|
+
# patch from https://github.com/ln/xmpp4r/issues/3
|
19
|
+
|
20
|
+
if RUBY_VERSION < "1.9"
|
21
|
+
# ...
|
22
|
+
else
|
23
|
+
# Encoding patch
|
24
|
+
require 'socket'
|
25
|
+
class TCPSocket
|
26
|
+
def external_encoding
|
27
|
+
Encoding::BINARY
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
require 'rexml/source'
|
32
|
+
class REXML::IOSource
|
33
|
+
alias_method :encoding_assign, :encoding=
|
34
|
+
def encoding=(value)
|
35
|
+
encoding_assign(value) if value
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
begin
|
40
|
+
# OpenSSL is optional and can be missing
|
41
|
+
require 'openssl'
|
42
|
+
class OpenSSL::SSL::SSLSocket
|
43
|
+
def external_encoding
|
44
|
+
Encoding::BINARY
|
45
|
+
end
|
46
|
+
end
|
47
|
+
rescue
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
# -----------------
|
52
|
+
|
15
53
|
module OmniBot
|
16
54
|
|
17
55
|
%w[ helpers jabberbot amqpconsumer omnisend launcher loggedcommand periodiccommand mailchecker ].each do |file|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omnibot
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.16
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2011-11-10 00:00:00.000000000Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: xmpp4r
|
16
|
-
requirement: &
|
16
|
+
requirement: &70318921490600 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70318921490600
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: eventmachine
|
27
|
-
requirement: &
|
27
|
+
requirement: &70318921489380 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70318921489380
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mail
|
38
|
-
requirement: &
|
38
|
+
requirement: &70318921488200 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70318921488200
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: sqlite3
|
49
|
-
requirement: &
|
49
|
+
requirement: &70318921487460 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :runtime
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70318921487460
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: amqp
|
60
|
-
requirement: &
|
60
|
+
requirement: &70318921486320 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: 0.8.0
|
66
66
|
type: :runtime
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70318921486320
|
69
69
|
description: Works with AMQP for sending messages at server side.Sends notifications
|
70
70
|
to an user via XMPP.Can monitor system by performing daily commands.
|
71
71
|
email: theirix@gmail.com
|
@@ -101,7 +101,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
101
101
|
requirements:
|
102
102
|
- - ! '>='
|
103
103
|
- !ruby/object:Gem::Version
|
104
|
-
version: '1.
|
104
|
+
version: '1.9'
|
105
105
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
106
106
|
none: false
|
107
107
|
requirements:
|
@@ -110,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
110
110
|
version: '0'
|
111
111
|
segments:
|
112
112
|
- 0
|
113
|
-
hash:
|
113
|
+
hash: 1695530432375130884
|
114
114
|
requirements:
|
115
115
|
- AMQP-compatible server (for example, RabbitMQ)
|
116
116
|
rubyforge_project: nowarning
|