del 0.1.10 → 0.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/console +4 -4
- data/del.gemspec +0 -1
- data/lib/del.rb +9 -13
- data/lib/del/cli.rb +29 -6
- data/lib/del/configuration.rb +9 -9
- data/lib/del/robot.rb +1 -1
- data/lib/del/version.rb +1 -1
- metadata +2 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a77cac965aab73b5f4ffa5a8d716c667a54520b53fe0e289fe83bbd1314c0aac
|
4
|
+
data.tar.gz: e26595b3fdead4f34a45d8013a03b966af71473f04129ad7d6ba916787cc7b8e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 54817e96d1273968f2c843e2312210600937709f1e91e37aab4ed6084c7e3abe1b2b6f5ac6f5e1b15a58badeb676d893efd4e78ae07eee7a772cc5b8a9b60955
|
7
|
+
data.tar.gz: dc0df766410fee11000c9ea24c7bcddc2048b2078ff0a5fda5a6e6aa647ef4bf7851ec012cb5d4b7aca0f2698883a3d821aa2bd9a99e67deacad750da43c743c
|
data/bin/console
CHANGED
@@ -11,8 +11,8 @@ require "del"
|
|
11
11
|
# Pry.start
|
12
12
|
|
13
13
|
require "irb"
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
)
|
14
|
+
|
15
|
+
settings = YAML.load(IO.read(Pathname.new(Dir.home).join(".delrc")))
|
16
|
+
settings.merge!(start_server: false)
|
17
|
+
Del.start(settings)
|
18
18
|
IRB.start(__FILE__)
|
data/del.gemspec
CHANGED
@@ -21,7 +21,6 @@ Gem::Specification.new do |spec|
|
|
21
21
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
22
|
spec.require_paths = ["lib"]
|
23
23
|
|
24
|
-
spec.add_dependency "dotenv", "~> 2.4"
|
25
24
|
spec.add_dependency "xmpp4r", "~> 0.5"
|
26
25
|
spec.add_dependency "thor", "~> 0.20"
|
27
26
|
spec.add_development_dependency "bundler", "~> 1.16"
|
data/lib/del.rb
CHANGED
@@ -1,4 +1,3 @@
|
|
1
|
-
require "dotenv"
|
2
1
|
require "json"
|
3
2
|
require "logger"
|
4
3
|
require "socket"
|
@@ -6,6 +5,7 @@ require "xmpp4r"
|
|
6
5
|
require "xmpp4r/muc/helper/mucbrowser"
|
7
6
|
require "xmpp4r/muc/helper/simplemucclient"
|
8
7
|
require "xmpp4r/roster/helper/roster"
|
8
|
+
require "yaml"
|
9
9
|
|
10
10
|
require "del/configuration"
|
11
11
|
require "del/connection"
|
@@ -20,18 +20,14 @@ require "del/user"
|
|
20
20
|
require "del/version"
|
21
21
|
|
22
22
|
module Del
|
23
|
-
def self.start(
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
config.socket_file = socket_file if socket_file
|
28
|
-
config.router.register(/.*/) do |message|
|
29
|
-
logger.debug(message.to_s)
|
30
|
-
end
|
31
|
-
config.load(startup_file)
|
23
|
+
def self.start(settings)
|
24
|
+
@configuration = Configuration.new(settings)
|
25
|
+
@configuration.router.register(/.*/) do |message|
|
26
|
+
logger.debug(message.to_s)
|
32
27
|
end
|
33
|
-
|
34
|
-
del.
|
28
|
+
@configuration.load(settings[:startup_file])
|
29
|
+
del = Robot.new(configuration: @configuration)
|
30
|
+
del.get_funky!(start_server: settings[:start_server])
|
35
31
|
end
|
36
32
|
|
37
33
|
def self.configure
|
@@ -39,7 +35,7 @@ module Del
|
|
39
35
|
end
|
40
36
|
|
41
37
|
def self.configuration
|
42
|
-
@configuration ||= Configuration.new
|
38
|
+
@configuration ||= Configuration.new({})
|
43
39
|
end
|
44
40
|
|
45
41
|
def self.logger
|
data/lib/del/cli.rb
CHANGED
@@ -5,16 +5,22 @@ require "thor"
|
|
5
5
|
module Del
|
6
6
|
class CLI < Thor
|
7
7
|
DEFAULT_RC=Pathname.new(Dir.home).join(".delrc")
|
8
|
-
class_option :
|
8
|
+
class_option :configuration_file, default: ENV.fetch("DELRC", DEFAULT_RC)
|
9
9
|
class_option :socket_file, default: Del::Configuration::SOCKET_FILE
|
10
|
+
class_option :log_level, default: Logger::INFO
|
10
11
|
|
11
12
|
desc "server <routes.rb>", "start server"
|
12
13
|
def server(startup_file = nil)
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
)
|
14
|
+
settings = YAML.load(IO.read(options[:configuration_file]))
|
15
|
+
settings.merge!(log_level: options[:log_level])
|
16
|
+
settings.merge!(socket_file: options[:socket_file])
|
17
|
+
settings.merge!(start_server: true)
|
18
|
+
settings.merge!(startup_file: startup_file)
|
19
|
+
|
20
|
+
Del.start(settings)
|
21
|
+
rescue Errno::ENOENT => error
|
22
|
+
say error.message, :red
|
23
|
+
say "run 'del setup'", :yellow
|
18
24
|
end
|
19
25
|
|
20
26
|
desc "message <jid> <message>", "send a message to the Jabber ID"
|
@@ -31,6 +37,23 @@ module Del
|
|
31
37
|
socket&.close
|
32
38
|
end
|
33
39
|
|
40
|
+
desc "setup", "setup your $HOME/.delrc"
|
41
|
+
def setup
|
42
|
+
settings = {
|
43
|
+
host: ask("Where is your xmpp server? (E.g. 'chat.hipchat.com')"),
|
44
|
+
jid: ask("What is your jabber Id?"),
|
45
|
+
muc_domain: ask("What is your MUC domain? (E.g. 'conf.hipchat.com')"),
|
46
|
+
full_name: ask("What is your name?"),
|
47
|
+
password: ask("What is your password?", echo: false),
|
48
|
+
}
|
49
|
+
|
50
|
+
say ""
|
51
|
+
say "Writing your configuration to: #{options[:configuration_file]}", :green
|
52
|
+
yaml = YAML.dump(settings)
|
53
|
+
IO.write(options[:configuration_file], yaml)
|
54
|
+
File.chmod(0600, options[:configuration_file])
|
55
|
+
end
|
56
|
+
|
34
57
|
desc "version", "Print the version of this gem"
|
35
58
|
def version
|
36
59
|
say Del::VERSION, :green
|
data/lib/del/configuration.rb
CHANGED
@@ -14,18 +14,18 @@ module Del
|
|
14
14
|
attr_accessor :users
|
15
15
|
attr_accessor :socket_file
|
16
16
|
|
17
|
-
def initialize
|
18
|
-
@default_rooms =
|
19
|
-
@host =
|
20
|
-
@jid =
|
17
|
+
def initialize(settings = {})
|
18
|
+
@default_rooms = settings.fetch(:rooms, [])
|
19
|
+
@host = settings.fetch(:host, 'chat.hipchat.com')
|
20
|
+
@jid = settings.fetch(:jid)
|
21
21
|
@logger = Logger.new(STDOUT)
|
22
|
-
@logger.level =
|
23
|
-
@muc_domain =
|
24
|
-
@name =
|
25
|
-
@password =
|
22
|
+
@logger.level = settings.fetch(:log_level, Logger::INFO).to_i
|
23
|
+
@muc_domain = settings.fetch(:muc_domain, "conf.hipchat.com")
|
24
|
+
@name = settings.fetch(:full_name)
|
25
|
+
@password = settings.fetch(:password)
|
26
26
|
@rooms = Repository.new
|
27
27
|
@router = DefaultRouter.new
|
28
|
-
@socket_file = SOCKET_FILE
|
28
|
+
@socket_file = settings.fetch(:socket_file, SOCKET_FILE)
|
29
29
|
@users = Repository.new
|
30
30
|
end
|
31
31
|
|
data/lib/del/robot.rb
CHANGED
data/lib/del/version.rb
CHANGED
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: del
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- mo
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-05-
|
11
|
+
date: 2018-05-09 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: dotenv
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: '2.4'
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: '2.4'
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: xmpp4r
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|