Auto 4.0.0.alpha.1-x86-mingw32
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.
- data/.yardopts +7 -0
- data/Gemfile +19 -0
- data/LICENSE.md +31 -0
- data/README.md +109 -0
- data/Rakefile +41 -0
- data/bin/auto +110 -0
- data/bin/auto-conf +45 -0
- data/conf/example.json +100 -0
- data/conf/example.yml +125 -0
- data/docs/Contributing.md +77 -0
- data/docs/Events.md +103 -0
- data/docs/Todo.md +21 -0
- data/docs/Upgrade.md +16 -0
- data/ext/dsl_base.c +49 -0
- data/ext/libauto/auto.h +20 -0
- data/ext/libauto/extconf.rb +16 -0
- data/ext/libauto/libauto.c +29 -0
- data/ext/libauto/libauto.h +28 -0
- data/ext/libauto/logger.c +177 -0
- data/ext/libauto/logger.h +44 -0
- data/lib/auto.rb +43 -0
- data/lib/auto/api.rb +7 -0
- data/lib/auto/api/events.rb +166 -0
- data/lib/auto/api/object.rb +29 -0
- data/lib/auto/api/plugin.rb +155 -0
- data/lib/auto/api/timers.rb +93 -0
- data/lib/auto/bot.rb +338 -0
- data/lib/auto/config.rb +181 -0
- data/lib/auto/configure.rb +410 -0
- data/lib/auto/configure/shell.rb +154 -0
- data/lib/auto/dsl/base.rb +74 -0
- data/lib/auto/dsl/irc.rb +13 -0
- data/lib/auto/irc.rb +8 -0
- data/lib/auto/irc/common.rb +63 -0
- data/lib/auto/irc/library.rb +89 -0
- data/lib/auto/irc/object/channel.rb +21 -0
- data/lib/auto/irc/object/entity.rb +90 -0
- data/lib/auto/irc/object/message.rb +99 -0
- data/lib/auto/irc/object/user.rb +139 -0
- data/lib/auto/irc/protocol.rb +164 -0
- data/lib/auto/irc/protocol/numerics.rb +60 -0
- data/lib/auto/irc/sasl/diffie_hellman.rb +36 -0
- data/lib/auto/irc/sasl/mech.rb +15 -0
- data/lib/auto/irc/sasl/mech/dh_blowfish.rb +83 -0
- data/lib/auto/irc/sasl/mech/plain.rb +39 -0
- data/lib/auto/irc/server.rb +301 -0
- data/lib/auto/irc/state/channel_manager.rb +6 -0
- data/lib/auto/irc/state/support.rb +142 -0
- data/lib/auto/irc/state/user_manager.rb +6 -0
- data/lib/auto/irc/std/commands.rb +99 -0
- data/lib/auto/irc/std/numerics.rb +216 -0
- data/lib/auto/rubyext/integer.rb +25 -0
- data/lib/auto/rubyext/string.rb +10 -0
- data/lib/auto/version.rb +18 -0
- data/lib/libauto.so +0 -0
- data/spec/api_events_spec.rb +68 -0
- data/spec/config_json_spec.rb +116 -0
- data/spec/config_other_spec.rb +29 -0
- data/spec/config_yaml_spec.rb +136 -0
- data/spec/helper.rb +19 -0
- data/spec/irc_object_entity_spec.rb +51 -0
- data/spec/logger_spec.rb +30 -0
- data/spec/plugin_base_spec.rb +35 -0
- data/spec/timers_spec.rb +42 -0
- metadata +238 -0
data/.yardopts
ADDED
data/Gemfile
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
# Copyright (c) 2013, Autumn Perrault, et al. All rights reserved.
|
2
|
+
# This free software is distributed under the FreeBSD license (LICENSE.md).
|
3
|
+
|
4
|
+
# Gemfile
|
5
|
+
|
6
|
+
source :rubygems
|
7
|
+
|
8
|
+
gem 'colored', '~> 1.2'
|
9
|
+
gem 'sequel', '~> 3.43'
|
10
|
+
gem 'highline', '~> 1.6'
|
11
|
+
gem 'slop', '~> 3.4.1'
|
12
|
+
|
13
|
+
group :dev do
|
14
|
+
gem 'rake', '~> 10.0'
|
15
|
+
gem 'rake-compiler', '~> 0.8'
|
16
|
+
gem 'mocha', '~> 0.13'
|
17
|
+
end
|
18
|
+
|
19
|
+
# vim: set ts=4 sts=2 sw=2 et:
|
data/LICENSE.md
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
License
|
2
|
+
=======
|
3
|
+
|
4
|
+
Auto is free software distributed under the two-clause ("FreeBSD") BSD license:
|
5
|
+
|
6
|
+
Copyright (c) 2009-2013, Autumn Perrault, et al.
|
7
|
+
All rights reserved.
|
8
|
+
|
9
|
+
Redistribution and use in source and binary forms, with or without
|
10
|
+
modification, are permitted provided that the following conditions are met:
|
11
|
+
|
12
|
+
1. Redistributions of source code must retain the above copyright notice, this
|
13
|
+
list of conditions and the following disclaimer.
|
14
|
+
2. Redistributions in binary form must reproduce the above copyright notice,
|
15
|
+
this list of conditions and the following disclaimer in the documentation
|
16
|
+
and/or other materials provided with the distribution.
|
17
|
+
|
18
|
+
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
|
19
|
+
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
|
20
|
+
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
21
|
+
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
|
22
|
+
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
|
23
|
+
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
24
|
+
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
|
25
|
+
ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
26
|
+
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
27
|
+
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
28
|
+
|
29
|
+
The views and conclusions contained in the software and documentation are those
|
30
|
+
of the authors and should not be interpreted as representing official policies,
|
31
|
+
either expressed or implied, of Autumn Perrault or the Auto Project.
|
data/README.md
ADDED
@@ -0,0 +1,109 @@
|
|
1
|
+
Auto 4
|
2
|
+
======
|
3
|
+
|
4
|
+
_A modern, simple, extensible multi-protocol bot, reloaded._
|
5
|
+
|
6
|
+
**Version**: 4.0.0.alpha.1 "Phoenix"
|
7
|
+
[](https://travis-ci.org/Auto/Auto)
|
8
|
+
[](https://gemnasium.com/Auto/Auto)
|
9
|
+
[](https://codeclimate.com/github/Auto/Auto)
|
10
|
+
|
11
|
+
+ [Homepage](http://auto.autoproj.org)
|
12
|
+
+ [Git](https://github.com/Auto/Auto)
|
13
|
+
+ [RubyGems](https://rubygems.org/gems/Auto)
|
14
|
+
+ [Wiki](https://github.com/Auto/Auto/wiki)
|
15
|
+
+ [Mailing List](https://groups.google.com/group/autobot-talk)
|
16
|
+
+ [SourceForge](https://sourceforge.net/p/auto-bot)
|
17
|
+
+ [Issue Hub](https://github.com/Auto/Auto/issues)
|
18
|
+
|
19
|
+
**Documentation** is available for the [latest git](http://rdoc.info/github/Auto/Auto),
|
20
|
+
and [this release](http://auto.autoproj.org/rdoc/4.0.0.alpha.1/).
|
21
|
+
|
22
|
+
Our official IRC channel is [#auto on irc.freenode.net](irc://irc.freenode.net/#auto).
|
23
|
+
|
24
|
+
Synopsis
|
25
|
+
--------
|
26
|
+
|
27
|
+
Auto is automated bot software, developed per thus philosophy:
|
28
|
+
|
29
|
+
* _Friendly_ to users, and to developers.
|
30
|
+
* _Simple_, _smart_, and _clean_.
|
31
|
+
* _Minimal_ but _extensible_.
|
32
|
+
|
33
|
+
Auto has a three-year history of service, dating back to December of 2009.
|
34
|
+
[Auto 3.0](https://github.com/Auto/Auto-legacy) was the last stable release,
|
35
|
+
and now the Auto Project presents this fourth major revision, 4.0 _Phoenix_,
|
36
|
+
intended to supersede 3.0 as a superior version.
|
37
|
+
|
38
|
+
Currently, it supports the IRCv3 protocol, with planned support for the XMPP
|
39
|
+
protocol. You can use it on many networks, including the six largest: Freenode,
|
40
|
+
QuakeNet, UnderNet, EFnet, DALnet, and IRCnet.
|
41
|
+
|
42
|
+
Quickstart
|
43
|
+
----------
|
44
|
+
|
45
|
+
This will install the latest (pre)release:
|
46
|
+
|
47
|
+
$ gem install Auto --pre
|
48
|
+
$ gem install sqlite3
|
49
|
+
$ auto-conf
|
50
|
+
$ auto
|
51
|
+
|
52
|
+
If you would prefer to use **MySQL** or **Postgres**, substitute the respective
|
53
|
+
command below for `gem install sqlite3`:
|
54
|
+
|
55
|
+
$ gem install mysqlplus
|
56
|
+
|
57
|
+
**or**
|
58
|
+
|
59
|
+
$ gem install pg
|
60
|
+
|
61
|
+
For detailed installation instructions, see
|
62
|
+
[the guide](https://github.com/Auto/Auto/wiki/Install-Guide). This will guide
|
63
|
+
you to such things as configuring Auto manually, installing a standalone
|
64
|
+
copy, and building from git.
|
65
|
+
|
66
|
+
**Note: Ruefully, as of January 10, 2013, we no longer support JRuby. Please
|
67
|
+
use MRI (the official interpreter) or Rubinius. Thank you.**
|
68
|
+
|
69
|
+
Developing
|
70
|
+
----------
|
71
|
+
|
72
|
+
Developers are provided extensive documentation of Auto 4
|
73
|
+
[on rdoc.info](http://rdoc.info/github/Auto/Auto/).
|
74
|
+
|
75
|
+
With especial, peruse the [Developing for Auto](http://rdoc.info/github/Auto/Auto/file/docs/Developing.md)
|
76
|
+
document.
|
77
|
+
|
78
|
+
Support
|
79
|
+
-------
|
80
|
+
|
81
|
+
If you should find yourself in need of support, please foremost consult with the
|
82
|
+
documentation on the [wiki](https://github.com/Auto/Auto/wiki).
|
83
|
+
|
84
|
+
If the wiki fails to address your needs, please either:
|
85
|
+
|
86
|
+
1. Post to the [autobot-talk](https://groups.google.com/group/autobot-talk)
|
87
|
+
group under the _support_ category, **or**
|
88
|
+
2. Join the official IRC chatroom at
|
89
|
+
[#auto on irc.freenode.net](http://webchat.freenode.net/?randomnick=1&channels=#auto&prompt=1)
|
90
|
+
|
91
|
+
**Bugs** should be reported on the [issue management hub](https://github.com/Auto/Auto/issues).
|
92
|
+
|
93
|
+
Authors
|
94
|
+
-------
|
95
|
+
|
96
|
+
Auto 4 was rewritten from scratch by Autumn Perrault (noxgirl) in Ruby and C,
|
97
|
+
and is actively developed by the **Auto Project**:
|
98
|
+
|
99
|
+
+ [noxgirl](https://github.com/noxgirl) - [autumn@destellae.net](mailto://autumn@destellae.net)
|
100
|
+
+ [swarley](https://github.com/swarley) - [matthew.b.carey@gmail.com](mailto://matthew.b.carey@gmail.com)
|
101
|
+
+ [mattwb65](https://github.com/mattwb65) - [mattwb65@gmail.com](mailto://mattwb65@gmail.com)
|
102
|
+
|
103
|
+
Legal
|
104
|
+
-----
|
105
|
+
|
106
|
+
Copyright (c) 2009-2013, Autumn Perrault, et al. All rights reserved.
|
107
|
+
|
108
|
+
Auto is free, open-source software, distributed per the terms of the two-clause
|
109
|
+
("FreeBSD") license, the full terms of which are in **LICENSE.md**.
|
data/Rakefile
ADDED
@@ -0,0 +1,41 @@
|
|
1
|
+
# Copyright (c) 2013, Autumn Perrault, et al. All rights reserved.
|
2
|
+
# This free software is distributed under the FreeBSD license (LICENSE.md).
|
3
|
+
|
4
|
+
require 'rake/testtask'
|
5
|
+
require 'rake/extensiontask'
|
6
|
+
require 'rubygems'
|
7
|
+
require 'rubygems/package_task'
|
8
|
+
|
9
|
+
# import the gemspec
|
10
|
+
GEMSPEC = 'Auto.gemspec'
|
11
|
+
gemspec ||= eval(File.read(GEMSPEC), binding, GEMSPEC)
|
12
|
+
|
13
|
+
# Directives for Ruby Make (rake)
|
14
|
+
# to test/compile Auto 4, and optionally
|
15
|
+
# push to RubyGems
|
16
|
+
|
17
|
+
task :default => [:compile, :test]
|
18
|
+
|
19
|
+
desc 'Compile the native extension.'
|
20
|
+
Rake::ExtensionTask.new 'libauto', gemspec do |ext|
|
21
|
+
ext.cross_compile = true
|
22
|
+
|
23
|
+
ext.cross_compiling do |spec|
|
24
|
+
spec.post_install_message << "\r\nNOTICE: You have installed the binary distribution of this gem."
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
desc 'Test the application.'
|
29
|
+
Rake::TestTask.new do |t|
|
30
|
+
t.libs.push 'lib'
|
31
|
+
t.pattern = 'spec/*_spec.rb'
|
32
|
+
t.verbose = true
|
33
|
+
end
|
34
|
+
|
35
|
+
desc 'Package the gem.'
|
36
|
+
Gem::PackageTask.new(gemspec) do |pkg|
|
37
|
+
pkg.need_zip = true
|
38
|
+
pkg.need_tar = true
|
39
|
+
end
|
40
|
+
|
41
|
+
# vim: set ts=4 sts=2 sw=2 et:
|
data/bin/auto
ADDED
@@ -0,0 +1,110 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# Copyright (c) 2013, Autumn Perrault, et al. All rights reserved.
|
3
|
+
# This free software is distributed under the FreeBSD license (LICENSE.md).
|
4
|
+
|
5
|
+
# Forbid root.
|
6
|
+
if ENV.include? 'USER'
|
7
|
+
if ENV['USER'] == 'root'
|
8
|
+
puts "It is forbidden to run Auto as the root user!"
|
9
|
+
exit 1
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
# Check whether we're installed as a gem or a standalone
|
14
|
+
unless File.expand_path(__FILE__) =~ /^#{Regexp.escape File.join(Dir.home, '.gem')}/
|
15
|
+
gitdir = File.join(File.dirname(__FILE__), '..', '.git')
|
16
|
+
if Dir.exists? gitdir
|
17
|
+
REVISION = File.open(File.join(gitdir, 'refs', 'heads', 'master')).first[0..7] # Note the git revision
|
18
|
+
end
|
19
|
+
$:.unshift File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib')) # Add the Auto libraries to LOAD_PATH
|
20
|
+
end
|
21
|
+
|
22
|
+
# Require necessary libraries.
|
23
|
+
require 'slop'
|
24
|
+
require 'auto'
|
25
|
+
|
26
|
+
# Parse options.
|
27
|
+
$VERBOSITY = 0
|
28
|
+
opts = Slop.parse(:banner => "Usage: #$0 [options]") do
|
29
|
+
on :h, :help, 'Display this help message.' do
|
30
|
+
puts self
|
31
|
+
exit 0
|
32
|
+
end
|
33
|
+
on :v, :version, 'Display version and exit.' do
|
34
|
+
puts <<-EOV
|
35
|
+
Auto #{Auto::FULLVERSION}
|
36
|
+
#{"Git revision: #{REVISION}\n" if defined? REVISION}
|
37
|
+
http://auto.autoproj.org
|
38
|
+
EOV
|
39
|
+
exit 0
|
40
|
+
end
|
41
|
+
|
42
|
+
on :d, :debug, 'Execute with debugging enabled.'
|
43
|
+
on :f, :foreground, 'Do not fork into the background.'
|
44
|
+
on :j, :json, 'Seek a JSON configuration file in lieu of a YAML one.'
|
45
|
+
on :c, :conf=, 'Specify a particular configuration file.'
|
46
|
+
on :V, :verbose, 'Increase verbosity of debugging (more uses the more verbose).' do
|
47
|
+
$VERBOSITY += 1
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
# Begin start up.
|
52
|
+
puts "* Auto #{Auto::VERSION} starting...".bold
|
53
|
+
|
54
|
+
# Enter main directory.
|
55
|
+
Dir.chdir(File.join(File.dirname(__FILE__), '..'))
|
56
|
+
|
57
|
+
# Create an instance of Auto.
|
58
|
+
begin
|
59
|
+
$m = Auto::Bot.new(opts)
|
60
|
+
status = $m.init
|
61
|
+
rescue => e
|
62
|
+
puts 'An error occurred!'.red.bold
|
63
|
+
puts e
|
64
|
+
puts e.backtrace
|
65
|
+
end
|
66
|
+
|
67
|
+
# Check our status.
|
68
|
+
if status
|
69
|
+
time = Time.now
|
70
|
+
puts "* Auto started @ #{time}".green.bold
|
71
|
+
$m.log.info("Auto started @ #{time}")
|
72
|
+
else
|
73
|
+
puts "Start up failed! Read above for errors.".red.bold
|
74
|
+
exit 1
|
75
|
+
end
|
76
|
+
STARTTIME = time.freeze
|
77
|
+
|
78
|
+
# We survived? We survived! Fork into the background if not in debug or foreground.
|
79
|
+
unless opts.debug? or opts.foreground?
|
80
|
+
puts "Forking into the background...".bold
|
81
|
+
|
82
|
+
# Direct all incoming data on STDIN and outgoing data on STDOUT/STDERR to /dev/null.
|
83
|
+
$stdin = File.open '/dev/null'
|
84
|
+
$stdout = $stderr = File.open '/dev/null', 'w'
|
85
|
+
# Fork and retrieve the PID.
|
86
|
+
pid = fork
|
87
|
+
|
88
|
+
# Save it to auto.pid.
|
89
|
+
unless pid.nil?
|
90
|
+
File.open('auto.pid', 'w') { |io| io.puts pid }
|
91
|
+
exit 0
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
# Signals
|
96
|
+
sig = {
|
97
|
+
'TERM' => proc { $m.terminate('Caught termination signal') },
|
98
|
+
'INT' => proc { $m.terminate('Ctrl-C pressed') },
|
99
|
+
'HUP' => proc { $m.conf.rehash }
|
100
|
+
}
|
101
|
+
sig.delete 'HUP' if Auto.windows?
|
102
|
+
sig.each { |signal, prc| Signal.trap(signal) { prc.call } }
|
103
|
+
|
104
|
+
begin
|
105
|
+
$m.start
|
106
|
+
rescue => e
|
107
|
+
$m.error("FATAL EXCEPTION: #{e}", true, e.backtrace)
|
108
|
+
end
|
109
|
+
|
110
|
+
# vim: set ts=4 sts=2 sw=2 et:
|
data/bin/auto-conf
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# Copyright (c) 2013, Autumn Perrault, et al. All rights reserved.
|
3
|
+
# This free software is distributed under the FreeBSD license (LICENSE.md).
|
4
|
+
|
5
|
+
require 'slop'
|
6
|
+
|
7
|
+
# Check whether we're installed as a gem or a standalone
|
8
|
+
unless File.expand_path(__FILE__) =~ /^#{Regexp.escape File.join(Dir.home, '.gem')}/
|
9
|
+
$:.unshift File.expand_path(File.join(File.dirname(__FILE__), '..', 'lib')) # Add the Auto libraries to LOAD_PATH
|
10
|
+
end
|
11
|
+
|
12
|
+
require 'auto/configure'
|
13
|
+
|
14
|
+
# Parse options.
|
15
|
+
opts = Slop.parse(:banner => "Usage: #$0 [options]") do
|
16
|
+
on :h, :help, 'Display this help message.' do
|
17
|
+
puts self
|
18
|
+
exit 0
|
19
|
+
end
|
20
|
+
on :v, :version, 'Display version.' do
|
21
|
+
puts <<-EOV
|
22
|
+
Auto Configure
|
23
|
+
Version #{Auto::Configure::VERSION}
|
24
|
+
|
25
|
+
http://auto.autoproj.org
|
26
|
+
https://github.com/Auto/Auto/wiki/Auto-Configure
|
27
|
+
EOV
|
28
|
+
exit 0
|
29
|
+
end
|
30
|
+
|
31
|
+
on :p, :plugin, 'Install a plugin.'
|
32
|
+
on :s, :shell, 'Modify and interact with your existing configuration.'
|
33
|
+
end
|
34
|
+
|
35
|
+
# Configure.
|
36
|
+
autoconf = Auto::Configure.new
|
37
|
+
|
38
|
+
if opts.shell?
|
39
|
+
#autoconf.shell.go
|
40
|
+
puts "Auto Configure Shell is currently disabled.".red
|
41
|
+
else
|
42
|
+
autoconf.generate
|
43
|
+
end
|
44
|
+
|
45
|
+
# vim: set ts=4 sts=2 sw=2 et:
|
data/conf/example.json
ADDED
@@ -0,0 +1,100 @@
|
|
1
|
+
{
|
2
|
+
|
3
|
+
/*
|
4
|
+
Core libraries to load
|
5
|
+
["lib1", "lib2"]
|
6
|
+
|
7
|
+
irc: IRC framework.
|
8
|
+
*/
|
9
|
+
"libraries": ["irc"],
|
10
|
+
|
11
|
+
/*
|
12
|
+
irc module: IRC networks
|
13
|
+
|
14
|
+
Add each network to which you desire the bot to connect.
|
15
|
+
*/
|
16
|
+
"irc": {
|
17
|
+
"freenode": {
|
18
|
+
// Network address
|
19
|
+
"address": "irc.freenode.net",
|
20
|
+
|
21
|
+
// Port on which to connect
|
22
|
+
"port": 7000,
|
23
|
+
|
24
|
+
// Whether to use SSL (true/false)
|
25
|
+
"useSSL": true,
|
26
|
+
|
27
|
+
// Nicknames the bot should use. If the first nickname is in use, the bot will alternate to the next until successful.
|
28
|
+
"nickname": ["moobot", "altnick"],
|
29
|
+
|
30
|
+
// Username the bot should use (as in nick!user@host)
|
31
|
+
"username": "Auto",
|
32
|
+
|
33
|
+
// Real name the bot should use
|
34
|
+
"realName": "Auto",
|
35
|
+
|
36
|
+
// Identify to services by means of SASL authentication
|
37
|
+
"SASL": {
|
38
|
+
|
39
|
+
// SASL timeout in seconds
|
40
|
+
"timeout": 15,
|
41
|
+
|
42
|
+
// SASL authentication username
|
43
|
+
"username": "moobot",
|
44
|
+
|
45
|
+
// SASL authentication password
|
46
|
+
"password": "moopass"
|
47
|
+
|
48
|
+
},
|
49
|
+
|
50
|
+
// Automatically join these channels
|
51
|
+
"autojoin": [
|
52
|
+
{"name": "#autoproject", "key": ""}
|
53
|
+
]
|
54
|
+
|
55
|
+
|
56
|
+
},
|
57
|
+
"Rizon": {
|
58
|
+
// Network address
|
59
|
+
"address": "irc.rizon.net",
|
60
|
+
|
61
|
+
// Port on which to connect
|
62
|
+
"port": 6667,
|
63
|
+
|
64
|
+
// Whether to use SSL (true/false)
|
65
|
+
"useSSL": false,
|
66
|
+
|
67
|
+
// Nicknames the bot should use. If the first nickname is in use, the bot will alternate to the next until successful.
|
68
|
+
"nickname": ["moobot", "altnick"],
|
69
|
+
|
70
|
+
// Username the bot should use (as in nick!user@host)
|
71
|
+
"username": "Auto",
|
72
|
+
|
73
|
+
// Real name the bot should use
|
74
|
+
"realName": "Auto",
|
75
|
+
|
76
|
+
// Identify to services the traditional way
|
77
|
+
"nickIdentify": {
|
78
|
+
|
79
|
+
// Service (commonly NickServ)
|
80
|
+
"service": "NickServ",
|
81
|
+
|
82
|
+
// Command (commonly "identify")
|
83
|
+
"command": "identify",
|
84
|
+
|
85
|
+
// Password (for Atheme, you may desire to use "username password" for foolproof identification)
|
86
|
+
"password": "moopass"
|
87
|
+
|
88
|
+
}
|
89
|
+
}
|
90
|
+
},
|
91
|
+
|
92
|
+
/*
|
93
|
+
Plugins
|
94
|
+
|
95
|
+
These are optional plugins (located in plugins/) intended to extend the bot's features.
|
96
|
+
List them like so: if you desire to load plugins/foo.rb, list 'foo'
|
97
|
+
*/
|
98
|
+
"plugins": []
|
99
|
+
|
100
|
+
}
|