Pragmatic Software
d51d2367a1
Correct logic of login
command ignore check
2015-09-07 05:04:54 -07:00
Pragmatic Software
1582b35db9
Update version
2015-09-07 00:20:11 -07:00
Pragmatic Software
efcca90444
Revert unplug error message
2015-09-07 00:20:06 -07:00
Pragmatic Software
5c83ea62f3
Rename Pluggable to Plugins
2015-09-06 22:53:49 -07:00
Pragmatic Software
70a3a2a354
Update version
2015-09-06 22:52:43 -07:00
Pragmatic Software
adfdccfd27
Rename Pluggable to Plugins
2015-09-06 22:52:39 -07:00
Pragmatic Software
729728a458
Update version
2015-09-06 22:39:59 -07:00
Pragmatic Software
0b74dd070d
Pass PBot %conf to auto-loaded plugins
2015-09-06 22:39:40 -07:00
Pragmatic Software
8d666984dc
Move AntiAway and AntiKickAutoRejoin to Pluggable
2015-09-06 22:38:59 -07:00
Pragmatic Software
539aeb3e9f
Change "not found" to "failed to load"
2015-09-06 22:22:37 -07:00
Pragmatic Software
ce3a3d4b9b
Update version
2015-09-06 22:17:20 -07:00
Pragmatic Software
0d7f0bf184
Add loadable core plugins
...
These are different from the loadable factoid modules. The factoid modules
are external executable shell commands that take stdin as arguments and print
to stdout as a return value. As such, they are not integrated into the bot
and cannot make use of the bot's internal subroutines.
These plugins are loaded internally and integrated into the bot such that they
can interface with the bot's internal subroutines and state.
All files in the Pluggable directory not beginning with an underscore will be
automatically loaded at bot start-up.
Plugins (including those starting with an underscore) can be manually loaded
or unloaded with the `plug` and `unplug` commands. Use `pluglist` to list
loaded plugins.
2015-09-06 22:17:07 -07:00
Pragmatic Software
f8dba73d02
Correct name of file in error message
2015-09-06 22:04:46 -07:00
Pragmatic Software
16f467252b
Do not process server NOTICES as public messages
...
Add time-out to automatically unban ##fix_your_connection ban-forwards
2015-09-06 22:04:21 -07:00
Pragmatic Software
bff1aa34d7
Update version
2015-09-03 20:56:48 -07:00
Pragmatic Software
8c16fbd3e5
Allow factoids to be referenced from within messages
...
E.g.,
<pragma-> Userbob: You can learn more about candide by reading its !help page and checking out its !source
<candide> Userbob: To learn all about me, see http://www.iso-9899.info/wiki/Candide
<candide> Userbob: My guts can be browsed at https://github.com/pragma-/pbot
Only three triggers will be processed per message. (I should create a
registry entry to customize this.)
Messages that are addressed at a specific user that exists in the channel will
have that user's name prepended to the factoid output.
Factoid triggers that are referenced from within messages will not produce
error messages if the factoid is not found.
Factoids that have an $arg or $nick special variable will not be triggered as
a reference.
Factoids that have the `noembed` meta-data value set to a true value will not
be invoked as a reference.
2015-09-03 20:56:44 -07:00
Pragmatic Software
d570dd7dd4
Fix undefined variable warnings in recall
2015-09-03 20:50:07 -07:00
Pragmatic Software
675760289c
Allow wild-card in recall/grab text
...
Do not iterate through weak links when looking for also-known-as
2015-09-03 20:49:06 -07:00
Pragmatic Software
8e1f008f9b
Redirect NOTICEs as public messages (anti-flood, command parsing, etc)
2015-09-03 20:46:12 -07:00
Pragmatic Software
34a653b05a
Stop appending !*@* to $a:account banmasks
2015-09-03 20:44:33 -07:00
Pragmatic Software
97bbb298e4
Allow bot admins to factset factoids from /msg
...
Fix some channel/from discrepancies in factset, etc.
2015-09-03 20:43:16 -07:00
Pragmatic Software
b6f7dd87e5
Update version
2015-08-22 11:05:57 -07:00
Pragmatic Software
050714e359
Improve ban
command to accept nick as argument and determine an appropriate banmask
2015-08-22 11:05:53 -07:00
Pragmatic Software
d317f2a0c5
Update version
2015-08-19 22:26:32 -07:00
Pragmatic Software
eb8a49cc74
Improve unban
command to find all matching bans given a nick argument
...
Instead of only taking a hostmask argument, `unban` will now determine
if the argument is a nick, and if so it will then find all bans that
match various hostmasks used by that nick and unban them all.
2015-08-19 22:26:28 -07:00
Pragmatic Software
f5b23532ae
Update version
2015-08-16 05:21:02 -07:00
Pragmatic Software
3fa12c208e
Improve handling of word-boundaries in searches
2015-08-16 05:20:57 -07:00
Pragmatic Software
b15267c587
Update version
2015-08-08 12:40:12 -07:00
Pragmatic Software
260b1405a7
Enforce nick-change flood on Guest nicks
2015-08-08 12:40:06 -07:00
Pragmatic Software
499d91e07d
Do not exempt bot-admins lower than level 10 from ignore list
2015-08-08 12:39:17 -07:00
Pragmatic Software
89c1ad7efa
Update version
2015-08-05 12:29:10 -07:00
Pragmatic Software
35653cb996
Add word-boundaries around text searches
2015-08-05 12:28:15 -07:00
Pragmatic Software
2d875dc5fd
Update version
2015-07-28 17:50:09 -07:00
Pragmatic Software
025a8bfc38
Set ##stop_join_flood bans in $channel-floodbans to reduce channel noise
2015-07-28 17:50:06 -07:00
Pragmatic Software
028fe40a8b
Correct location of alias_type
2015-07-28 17:49:18 -07:00
Pragmatic Software
154b46194f
Use comma-separated list of channels when auto-joining to reduce IRC commands
2015-07-28 17:47:53 -07:00
Pragmatic Software
9cf59888c0
join_channel() can now take a comma-separated list of channels and issue them as one IRC command
2015-07-28 17:47:22 -07:00
Pragmatic Software
f6a99818f0
Update version
2015-07-23 17:47:19 -07:00
Pragmatic Software
dbfb8a6add
Remove unnecessary printing of ignored messages
2015-07-23 17:47:16 -07:00
Pragmatic Software
bded959ba4
Remove unnecessary logic
2015-07-23 17:46:33 -07:00
Pragmatic Software
cc9f4926ee
Make channel argument optional for factrem as well
2015-07-23 17:46:01 -07:00
Pragmatic Software
5305ac43a9
Update version
2015-07-21 15:07:58 -07:00
Pragmatic Software
ba87aef524
Improve factshow/factfind behavior
...
factshow's and factfind's channel argument is now optional.
The commands will now automatically determine the channel a factoid lives in
if it is the only factoid of that name.
If there are multiple factoids existing in different channels then the commands
will display a disambiguation message and require an explicit channel argument
to choose a specific channel's factoid.
2015-07-21 15:07:56 -07:00
Pragmatic Software
8cdad15207
Show enter-abuse warning message just before it would temp-ban
...
Fix address_to_mask regex
2015-07-21 13:44:42 -07:00
Pragmatic Software
9194f3e871
Update version
2015-07-18 08:13:23 -07:00
Pragmatic Software
1fed4d4de5
Update version
2015-07-17 00:33:09 -07:00
Pragmatic Software
454d305605
Update version
2015-07-15 00:18:59 -07:00
Pragmatic Software
850c8a0525
Add weak/strong also-known-as linking
...
PBot will now use weak links if the ip address portion of a hostmask
hasn't been seen in the last 48 hours in order to prevent false-positive
linking of dynamic ip addresses.
Weak links are excluded from ban-evasion logic.
Weak links can be manually upgraded to strong links with the `akalink`
command if a human confirms they are the same person through the `aka -w`
command.
Individuals with matching nicks or matching nickserv accounts, etc, will
automatically be strongly linked, as usual.
2015-07-15 00:18:57 -07:00
Pragmatic Software
6a6eff1150
Support nat cloaks for banmasks
2015-07-14 07:29:27 -07:00
Pragmatic Software
cbd4e182a6
Update version
2015-07-13 04:01:06 -07:00
Pragmatic Software
4b66f61552
Update version
2015-07-13 02:47:32 -07:00
Pragmatic Software
04f1672f19
Update some admin levels
2015-07-13 02:47:30 -07:00
Pragmatic Software
7e76a77b09
Update version
2015-07-12 02:54:28 -07:00
Pragmatic Software
120922d840
Update version
2015-07-09 23:25:37 -07:00
Pragmatic Software
9376c65b24
Allow optionally using name instead of hostmask in adminset/adminunset/adminrem commands
2015-07-09 23:25:31 -07:00
Pragmatic Software
e3eb698f27
Properly show/hide star for logged in admins in list admins
2015-07-09 23:24:39 -07:00
Pragmatic Software
241c30b4f4
Do not override special variables in expand_factoid_vars()
2015-07-09 23:24:00 -07:00
Pragmatic Software
adc5e39e2f
Update version
2015-07-09 07:15:41 -07:00
Pragmatic Software
d302587829
Enter-abuse anti-flood settings can now be overridden per-channel
2015-07-09 07:15:32 -07:00
Pragmatic Software
18b1900fbe
Update version
2015-07-08 14:06:05 -07:00
Pragmatic Software
7cc8b9c34d
Allow chat-flood antiflood settings to be overridable on a per-channel basis
2015-07-08 14:05:55 -07:00
Pragmatic Software
ed810dc9d9
Update version
2015-07-06 20:01:22 -07:00
Pragmatic Software
1179a7e1f1
Don't remove dollar-sign from unexpanded factoid vars
2015-07-06 20:01:17 -07:00
Pragmatic Software
ed63fb3766
Update version
2015-07-06 19:40:33 -07:00
Pragmatic Software
90b89941cf
Update version
2015-07-06 19:39:35 -07:00
Pragmatic Software
a0c798dd2a
Expand factoid variables in /call statements
...
This allows us to call random factoids.
E.g.:
factadd global fact1 is /say This is fact1.
factadd global fact2 is /say Fact2 is also a pretty neat fact.
factadd global fact3 is /say But don't forget about fact3!
factadd global facts is fact1 fact2 fact3
factadd global randomfact is /call $facts
Invoking the `randomfact` factoid will now randomy pick between
fact1, fact2 and fact3.
This was added to support the `randomkr` factoid.
2015-07-06 19:39:33 -07:00
Pragmatic Software
714f79fb2e
Update version
2015-07-05 17:49:21 -07:00
Pragmatic Software
6c9c9d285b
Revert chmod
2015-07-05 17:49:06 -07:00
Pragmatic Software
2c6209b578
Use set_default to set default Registry values
2015-07-05 17:48:27 -07:00
Pragmatic Software
d1f5c1b705
Add set_default to prevent saving Registry when setting default value
2015-07-05 17:47:12 -07:00
Pragmatic Software
f22f2ef12a
Update version
2015-07-01 15:21:12 -07:00
Pragmatic Software
83f84e261a
Minor bug-fixes
2015-07-01 15:21:08 -07:00
Pragmatic Software
e026b9ac42
NickList is_present() now returns canonical nick (proper typographical case)
2015-07-01 15:20:28 -07:00
Pragmatic Software
a00a9dfc6b
Add more default bad nick suffixes
2015-07-01 15:18:55 -07:00
Pragmatic Software
c5cb41e02c
Update version
2015-06-26 00:10:27 -07:00
Pragmatic Software
144c3ec63b
Fix apostrophe in expand action arguments, and fix regex
2015-06-26 00:10:23 -07:00
Pragmatic Software
7c19ebbd7b
Update version
2015-06-25 22:56:15 -07:00
Pragmatic Software
f10e1c1c89
Support factoid argument indexing/slicing ($arg[0], $arg[2:4], etc)
2015-06-25 22:56:10 -07:00
Pragmatic Software
8ed333ba96
Fix typo "has_unban_timeout" -> "has_ban_timeout"
2015-06-25 22:55:06 -07:00
Pragmatic Software
09c7437246
Use can_gain_ops/has_un[ban,mute]_timeout subroutines
2015-06-25 20:55:42 -07:00
Pragmatic Software
95a4be6cb0
Add can_gain_ops(), has_unban_timeout() and has_unmute_timeout() subroutines
2015-06-25 20:54:38 -07:00
Pragmatic Software
452ac7fc4c
Save registry entries immediately after using set/unset
2015-06-25 20:53:59 -07:00
Pragmatic Software
3b961e0f29
Update version
2015-06-20 17:48:53 -07:00
Pragmatic Software
6b544e9bf4
Stop processing ban evasions immediately after first ban is detected
2015-06-20 17:48:42 -07:00
Pragmatic Software
d431d70ac1
Reduce verbosity of factoid debug messages
2015-06-20 17:48:00 -07:00
Pragmatic Software
0d4c5c301f
Do not attempt to enforce antiaway/rejoin if not chanop
2015-06-20 07:24:13 -07:00
Pragmatic Software
fea56842d3
Update version
2015-06-20 00:20:26 -07:00
Pragmatic Software
b4539447a3
Improve check-ban logic
2015-06-20 00:20:23 -07:00
Pragmatic Software
0c1e573ef8
Do not invoke compilation for compile-blocks if nick-prefix is specified and does not exist in channel
2015-06-19 16:16:23 -07:00
Pragmatic Software
b8a768aa96
Update version
2015-06-18 23:36:55 -07:00
Pragmatic Software
497b713300
Add response messages for refresh
command
2015-06-18 23:36:51 -07:00
Pragmatic Software
594b79d0f5
Update version
2015-06-16 21:51:27 -07:00
Pragmatic Software
43f08b4cbc
Remove unused use feature 'switch'
2015-06-15 20:04:48 -07:00
Pragmatic Software
dd4796437b
Update version
2015-06-15 19:55:53 -07:00
Pragmatic Software
204f95cba7
Add "refresher" to allow PBot::Module subroutines to be reloaded during runtime
2015-06-15 19:55:46 -07:00
Pragmatic Software
2ae493f1c2
Add count
option to recall
command
2015-06-15 17:58:25 -07:00
Pragmatic Software
b4bffe9233
Update version
2015-06-13 16:09:02 -07:00
Pragmatic Software
4db125c3c2
Improve account-tracking and ban-evasion for Freenode irccloud.com web gateways
2015-06-13 16:08:57 -07:00
Pragmatic Software
8033213a7f
Add options to disable anti-flood per-channel, and to disable enforcement for logged-in admins
2015-06-13 16:08:06 -07:00
Pragmatic Software
a3d5dfb63e
Update version
2015-06-10 02:27:17 -07:00
Pragmatic Software
73c1c89b6a
Correct $length when no $channel or $length argument is provided
2015-06-10 02:27:13 -07:00
Pragmatic Software
dfbefee904
random_nick now returns nick with preserved typographical case
2015-06-10 02:26:14 -07:00
Pragmatic Software
edf2f0e5ee
Update version
2015-06-08 04:43:02 -07:00
Pragmatic Software
f2a8839707
Add $randomnick special factoid variable
2015-06-08 04:43:00 -07:00
Pragmatic Software
c81612c58c
Update version
2015-06-07 18:02:38 -07:00
Pragmatic Software
75655f5d81
Remove ban/mute from time-outs if using "forever"
2015-06-07 18:02:35 -07:00
Pragmatic Software
828bf2fa78
Update version
2015-06-05 22:28:04 -07:00
Pragmatic Software
4895aa5ed8
Don't show duplicate nicks regardless of id unless -h is used
2015-06-05 22:27:59 -07:00
Pragmatic Software
f415d73827
Anchor regex in find_admin
2015-06-05 22:27:21 -07:00
Pragmatic Software
bf45c6cdde
Improve ban evasion; show evaded ban in kick message
2015-06-05 22:26:55 -07:00
Pragmatic Software
62b8432be9
Factoid commands now check for admins in factoid's channel instead of channel command was used in
2015-06-05 22:26:02 -07:00
Pragmatic Software
21cd76e99e
Ignore surrounding whitespace for integers in parsedate
2015-05-27 16:11:16 -07:00
Pragmatic Software
277b363310
Update version
2015-05-27 11:26:26 -07:00
Pragmatic Software
b087324a37
Remove mute from mute-timeouts if -q is detected
2015-05-27 11:26:16 -07:00
Pragmatic Software
e835b8c667
Update version
2015-05-27 10:48:55 -07:00
Pragmatic Software
d0ebf98441
Automatically unmute +q'd offenders after mute_timeout (7 days)
2015-05-27 10:46:30 -07:00
Pragmatic Software
b98ef02b6f
Add timed mute/unmute commands
2015-05-27 10:45:43 -07:00
Pragmatic Software
3012297183
Do not require whitespace next to nick when triggering by bot-nick
2015-05-27 10:44:26 -07:00
Pragmatic Software
204c0dc0ce
Update version
2015-05-25 17:25:05 -07:00
Pragmatic Software
7607de79a0
Update version
2015-05-25 11:34:48 -07:00
Pragmatic Software
b1f3d304b3
Update version
2015-05-25 11:27:28 -07:00
Pragmatic Software
a466a0f02f
Update version
2015-05-24 13:26:47 -07:00
Pragmatic Software
bfe81a87b9
Update version
2015-05-24 06:19:09 -07:00
Pragmatic Software
22545d6249
Update version
2015-05-22 04:24:44 -07:00
Pragmatic Software
cdb84a8602
Link nick-changes to original nick's account instead of new nick's
2015-05-22 04:24:38 -07:00
Pragmatic Software
351385cb67
Properly recurse through all linked ids when getting AKAs; optimize Aliases table and AKA function
2015-05-22 04:23:51 -07:00
Pragmatic Software
72c29a9ed8
Update version
2015-05-22 04:03:44 -07:00
Pragmatic Software
5908a74570
Update version
2015-05-18 20:50:28 -07:00
Pragmatic Software
ab39220fd5
Update version
2015-05-15 17:53:15 -07:00
Pragmatic Software
0b1d5c29bf
Fall back to codepad if sprunge fails to paste
...
Refactor rate-ratelimiting.
2015-05-15 17:53:13 -07:00
Pragmatic Software
4510d83153
unbanme
now only works for the first offense
...
However, the 2nd offense now only earns a 1 hour ban to make up for this.
2015-05-15 17:51:50 -07:00
Pragmatic Software
f00405bbd3
Update version
2015-05-12 22:51:07 -07:00
Pragmatic Software
3892295bf1
Wait for nick-change to botnick before joining to prevent joining with random nick
2015-05-12 22:51:04 -07:00
Pragmatic Software
d8a721d48a
Update version
2015-05-12 21:46:44 -07:00
Pragmatic Software
d7d6083a25
Add ability to show alias relationships in aka
command
2015-05-12 21:46:40 -07:00
Pragmatic Software
5effcd57ac
Update version
2015-05-12 12:59:49 -07:00
Pragmatic Software
20aeeea634
Add akalink
and akaunlink
commands
2015-05-12 12:59:45 -07:00
Pragmatic Software
9031d97910
Remove left-over debug messages
2015-05-12 12:59:22 -07:00
Pragmatic Software
43806aa228
Update version
2015-05-11 21:28:39 -07:00
Pragmatic Software
5e94890c61
Increase bot's default admin level to 90
...
`rebuildaliases` command requires level 90 admin due to it's special
use-case.
2015-05-11 21:28:36 -07:00
Pragmatic Software
fa6dad12cd
Add Aliases
table to MessageHistory
...
Improve linking of known aliases for users by using an aliases table
to track the linkages.
Improve check-bans implementation to use new aliases table for
significant performance gains and reduced resource usage.
2015-05-11 21:27:22 -07:00
Pragmatic Software
3776bef88a
Reduce WHOIS queries when target joins multiple channels at once
2015-05-10 12:36:47 -07:00
Pragmatic Software
b39123813c
Update version
2015-05-08 05:11:09 -07:00
Pragmatic Software
745b1ffdc7
Update version
2015-05-08 05:03:00 -07:00
Pragmatic Software
d7f2eb0d45
Update version
2015-05-06 21:22:25 -07:00
Pragmatic Software
a997705ea4
Correct sprunge error message
2015-05-06 21:22:22 -07:00
Pragmatic Software
a245b338c0
Update version
2015-05-06 21:15:35 -07:00
Pragmatic Software
898aa18783
Add rate-limit to paste_sprunge function
...
Improve formatting of truncate/paste output when an error has occurred.
2015-05-06 21:15:25 -07:00
Pragmatic Software
b5c10b73d9
Add "forever" as valid parsedate option
...
`ban` command will not save ban to unban-timeouts if "forever" is used.
2015-05-06 21:13:39 -07:00
Pragmatic Software
3be6755a61
Do not ignore last-spoken nick if nick is logged in bot admin
...
Add debug_enter_abuse registry entry
2015-05-06 21:10:55 -07:00
Pragmatic Software
92b738e962
Update version
2015-04-26 16:05:08 -07:00
Pragmatic Software
715ff8ee78
Find factoids in proper channel namespace
2015-04-26 16:05:03 -07:00
Pragmatic Software
b9b4a0e2d3
Update version
2015-04-21 01:10:58 -07:00
Pragmatic Software
00203f1705
Update version
2015-04-20 21:33:17 -07:00
Pragmatic Software
3bb3407d37
Update version
2015-04-19 01:55:55 -07:00
Pragmatic Software
f20932b442
Allow setting channel-specific registry item no_url_titles
and no_compile_blocks
to prevent invoking these in those channels
...
Rename $mynick to $botnick throughout
2015-04-19 01:55:52 -07:00
Pragmatic Software
4bda217774
Use botnick instead of trigger for stdin commands
...
Since trigger can be set to be a regex or character-class, use
botnick instead to ensure that commands are properly interpreted.
2015-04-19 01:53:46 -07:00
Pragmatic Software
778933caad
Update version
2015-04-16 03:12:14 -07:00
Pragmatic Software
29b3d7e80f
Update version
2015-04-14 20:14:24 -07:00
Pragmatic Software
789a4bfe2d
Correct handling of tell
ing factoid aliases
2015-04-14 20:14:22 -07:00
Pragmatic Software
b38456e411
Update version
2015-04-13 15:43:22 -07:00
Pragmatic Software
a9df8351d3
Move English-to-seconds time duration parser to Utils::ParseDate
...
Update ban_user_timed() and ignore_user() to use Utils::ParseDate
2015-04-13 15:43:19 -07:00
Pragmatic Software
9ff76ad500
Reduce pseudo-AI typing delay
2015-04-13 15:41:11 -07:00
Pragmatic Software
b9b0a55b4e
Ensure banmask is a proper mask when doing nick bans
2015-04-13 15:40:43 -07:00
Pragmatic Software
990604e085
Update version
2015-04-11 16:00:40 -07:00
Pragmatic Software
111717c798
Improve ban
command to understand English time durations
...
You can now use sentences like "1 hour and 30 minutes" to ban for 5400 seconds.
Also, can now ban in channels from a /msg.
2015-04-11 16:00:20 -07:00
Pragmatic Software
a6bafb12a4
Update version
2015-04-10 14:59:20 -07:00
Pragmatic Software
59c29977e6
Improve handling of factoids
...
Fix adding factoid to local channel when a factoid of same name already exists for global channel
Fix calling factoid from another channel with `fact` command
Do not prepend nick argument to aliases (/call factoids)
2015-04-10 14:59:17 -07:00
Pragmatic Software
d89e05b759
Update version
2015-04-10 05:08:19 -07:00
Pragmatic Software
f5723d425e
Update version
2015-04-10 03:43:52 -07:00
Pragmatic Software
c4ec393153
Update version
2015-04-09 11:04:48 -07:00
Pragmatic Software
6642281b8a
Update version
2015-04-06 00:49:51 -07:00
Pragmatic Software
a15b343752
Update version
2015-04-05 02:32:18 -07:00
Pragmatic Software
fcdf24deb5
Update version
2015-04-03 15:33:24 -07:00
Pragmatic Software
17afac5908
Check commands table for keyword before searching regexs
2015-04-03 15:33:19 -07:00
Pragmatic Software
d8c12522ed
Update version
2015-04-03 13:06:29 -07:00
Pragmatic Software
d1341ab4bd
Use proper lookbehind to prevent expansion of escaped variables
...
Remove adlib recursion loop since using $action already enables
recursion since subsitution on $action resets the regex position
2015-04-03 13:06:24 -07:00
Pragmatic Software
d2711956d6
Update version
2015-04-03 12:33:42 -07:00
Pragmatic Software
ae3791815b
Allow recursive expansion of adlib variables
...
Rename $count to $depth to reflect recursion
2015-04-03 12:33:39 -07:00
Pragmatic Software
383c194966
Don't remove trailing punctuation from arguments
...
Rename $count to $depth to reflect recursion
2015-04-03 12:32:35 -07:00
Pragmatic Software
f3bf1f5e5b
Rename $count to $depth to reflect recursion
2015-04-03 12:31:46 -07:00
Pragmatic Software
e76592442c
Update version
2015-04-03 10:41:07 -07:00
Pragmatic Software
433f381bc9
Don't expand $1, $2, etc, as adlibs
2015-04-03 10:40:48 -07:00
Pragmatic Software
7cd174506f
Update version
2015-04-03 10:12:37 -07:00
Pragmatic Software
528f66bfed
Refactor Factoids.pm to allow expansion of variables in all factoid types
...
Variables like $args and adlib variables can now be expanded in modules
and other factoid types.
2015-04-03 10:11:21 -07:00
Pragmatic Software
060d3aee6a
Fix wrong channel for fact
command
...
The `fact` command was using $channel instead of $from, which
caused the result to be sent to the channel the factoid lives
in instead of the channel the command was invoked in.
2015-04-03 10:08:57 -07:00
Pragmatic Software
2a0912342e
Update version
2015-03-30 15:04:12 -07:00
Pragmatic Software
c73f8b6a01
Minor refactor
2015-03-30 15:04:08 -07:00
Pragmatic Software
b2714e2d16
Update version
2015-03-29 20:26:35 -07:00
Pragmatic Software
b6f842bafc
Rename some missed variables from previous name-change
2015-03-29 20:26:08 -07:00
Pragmatic Software
b36a4fb2c9
Improve message output queue
...
- Use distinct per-channel queues
- Use timestamp of last message in queue to add delay
- Increase typing speed from 4 characters per second to 7 cps
2015-03-29 20:24:36 -07:00
Pragmatic Software
3f62bfbd94
Update version
2015-03-28 17:52:42 -07:00
Pragmatic Software
e199f6309a
Factoids can now be set to use a delayed output queue instead of immediately responding
2015-03-28 17:50:43 -07:00
Pragmatic Software
6701ee67f9
find_factoid() can now be told to return found alias instead
2015-03-28 17:49:42 -07:00
Pragmatic Software
5457e129b0
Update version
2015-03-27 13:01:15 -07:00
Pragmatic Software
7599fb0c19
Correct handling of bot trigger in /msg since earlier commit allowing trigger to be a regex
2015-03-27 13:00:43 -07:00
Pragmatic Software
5117c601fb
Update version
2015-03-27 04:09:50 -07:00
Pragmatic Software
9140cbec07
Remove ancient obsoleted -1 check on Nickserv account
2015-03-27 04:09:39 -07:00
Pragmatic Software
7f87730de8
Improve handling of Nickserv accounts in check-bans and unbanme
2015-03-27 04:08:47 -07:00
Pragmatic Software
377cf99d35
Update version
2015-03-23 04:27:49 -07:00
Pragmatic Software
44bdf26ebc
Add support for per-channel bot trigger characters
2015-03-23 04:27:41 -07:00
Pragmatic Software
2e9f15b7e2
Support IPv6 banmasks
2015-03-23 04:18:33 -07:00
Pragmatic Software
0db12b82ae
Update version
2015-03-20 21:14:11 -07:00
Pragmatic Software
be47b2cbf2
Improve output of blacklist and ignorelist commands
2015-03-20 21:14:07 -07:00
Pragmatic Software
3e88db4505
Update version
2015-03-16 23:22:22 -07:00
Pragmatic Software
728e05e514
Correct minor logic error
2015-03-16 23:22:18 -07:00
Pragmatic Software
b45b707ec2
Update version
2015-03-16 21:10:12 -07:00
Pragmatic Software
9a52fffcdd
Rename ShitList to BlackList; minor refactor of IgnoreList
2015-03-16 21:08:25 -07:00
Pragmatic Software
d350affa93
Update version
2015-03-15 20:13:03 -07:00
Pragmatic Software
cb9ead7624
Incorporate custom workdir
field into URL for modules
2015-03-15 20:12:44 -07:00
Pragmatic Software
9abce1c102
Update version
2015-03-15 14:07:54 -07:00
Pragmatic Software
284f943c08
Fix typos
2015-03-15 14:07:38 -07:00
Pragmatic Software
e604767517
Add support for shitlisting hostmasks
2015-03-15 13:52:30 -07:00
Pragmatic Software
73ba1e7c19
Update version
2015-03-11 02:00:14 -07:00
Pragmatic Software
7970018777
Improve handling of nick-change flood
2015-03-11 02:00:10 -07:00
Pragmatic Software
9ec50d8f5d
Update version
2015-03-04 00:41:41 -08:00
Pragmatic Software
386e03c184
Add stayloggedin
field to admin accounts to prevent logging out when /parting or /quitting
2015-03-04 00:39:44 -08:00
Pragmatic Software
d5073be98f
Update version
2015-02-17 01:47:38 -08:00
Pragmatic Software
e0971e8158
Update version
2015-02-17 01:32:28 -08:00
Pragmatic Software
f06aa9dda6
Update version
2015-02-15 20:30:34 -08:00
Pragmatic Software
b23935b8dc
Create SQLite index for Messages table
...
This significantly speeds up certain SQL actions on
the Messages table that were done for anti-flood detection.
The bot should now be significantly more quicker to catch
floods promptly without delay.
(Also, comment out some logging messages. Perhaps revisit this
and wrap them with a debug registry variable instead.)
2015-02-15 20:30:28 -08:00
Pragmatic Software
19788eec47
Use 0 second timeout on SelectHandler's select
...
We do not need to wait for any timeout period in SelectHandler's
select since IRC.pm's select has a 1 second (by default) timeout.
Removing this unnecessary delay will increase the overall
responsiveness of the bot.
2015-02-15 20:23:07 -08:00
Pragmatic Software
1ffe857ba5
Print IRC debug messages to STDERR
2015-02-15 20:19:51 -08:00
Pragmatic Software
ec13cf14bc
Search all channels if target channel is not a valid channel (private message, for instance)
2015-02-15 20:18:46 -08:00
Pragmatic Software
04f47ba3a1
Show "global" if namespace is ".*"
2015-02-15 20:17:36 -08:00
Pragmatic Software
9f265a0f0e
Do not enforce anti-flood on logged in bot admins
2015-02-15 20:16:37 -08:00
Pragmatic Software
559b9ddde1
Use NickList instead of MessageHistory for target channels
2015-02-14 04:03:39 -08:00
Pragmatic Software
800b097a34
Use NickList instead of MessageHistory for target channels
2015-02-14 04:03:18 -08:00
Pragmatic Software
ad1ab83298
Update bad_actions with more matches
2015-02-14 04:02:13 -08:00
Pragmatic Software
9f23aef2d0
Random IRC nicks cannot start with a digit
2015-02-14 04:01:09 -08:00
Pragmatic Software
022f86c3e1
Update version
2015-02-13 15:37:55 -08:00
Pragmatic Software
2db21dd011
Update version
2015-02-13 14:39:27 -08:00
Pragmatic Software
2a63cced1d
Update version
2015-02-11 21:38:48 -08:00
Pragmatic Software
23ae41c2f2
Update version
2015-02-07 08:48:58 -08:00
Pragmatic Software
b693f96806
Update version
2015-01-29 01:40:00 -08:00
Pragmatic Software
972b542582
Update version
2015-01-29 01:25:09 -08:00
Pragmatic Software
12cd9cb8e0
Improve launching of modules
...
If a `workdir` factoid key is present, the launcher will chdir
to make the specified value the current working directory.
Redirect stderr output to a $modulename-stderr in the module's
current working directory.
2015-01-27 23:49:30 -08:00
Pragmatic Software
4b9e177aec
Update version
2015-01-24 08:05:58 -08:00
Pragmatic Software
74f717ad51
Update version
2015-01-23 13:50:17 -08:00
Pragmatic Software
f8b6b19398
Show only chat messages in recall
surrounding context (no joins/quits/etc)
2015-01-23 13:50:14 -08:00
Pragmatic Software
573a18e6ef
Update version
2015-01-23 12:33:06 -08:00
Pragmatic Software
5ab76e6e6c
Add -x/-context <nick> flag to limit recall -before/-after context to that nick
2015-01-23 11:44:38 -08:00
Pragmatic Software
90597350c5
Update version
2015-01-23 07:36:53 -08:00
Pragmatic Software
b806a473d2
Add ability to get surrounding message context in recall command
...
Add the -b/-before and -a/-after flags to the `recall` command to display
that many lines of surrounding context.
For example, `recall -c ##c -b 100` will show the last 100 messages in the ##c
channel.
Another example, `recall pragma- 50 -b 5 -a 5` will show the 5 messages before the 50th
most recent message spoken by pragma- and then show that 50th message and finally show
the 5 messages after it.
2015-01-23 07:36:39 -08:00
Pragmatic Software
8810605691
Show server:port when connecting
2015-01-23 05:35:06 -08:00
Pragmatic Software
659e61f1fb
Update version
2015-01-10 15:56:46 -08:00
Pragmatic Software
7243832cc3
Improve connecting/nicking logic
...
Randomize nick when connecting and change to botnick after identifying.
Identify after receiving connection welcome message.
Ghost existing nick if it is already in use and then attempt to regain it.
2015-01-10 15:56:43 -08:00
Pragmatic Software
28bd6f3611
Update version
2015-01-06 15:35:55 -08:00
Pragmatic Software
5d1412227f
Update version
2014-12-30 17:26:35 -08:00
Pragmatic Software
ebd47406ca
Update version
2014-12-29 23:56:49 -08:00
Pragmatic Software
7a1d37b51a
Update version
2014-12-29 23:25:31 -08:00
Pragmatic Software
f9e2c3fb49
CJeopardy improvements
...
- Reduce hint wait-period from 60 seconds to 30 seconds
- Improve ignoring of common leading words in answers
- Correct several grammar mistakes/typos in questions
2014-12-29 23:19:32 -08:00
Pragmatic Software
b289fd155e
Add repo_module to registry to customize source URL in factinfo command
2014-12-29 23:15:46 -08:00
Pragmatic Software
4c65df0529
Update update-version.pl from svn to git
2014-12-29 23:04:35 -08:00
Pragmatic Software
ecd2bad066
Add anti-kick-auto-rejoin module that temporarily kickbans offenders who immediately auto-rejoin after having been kicked
2014-12-28 00:44:15 +00:00
Pragmatic Software
0b9513ca2e
Reduce ban-tracker verbosity by putting "Getting baninfo" log messages in a debug block
2014-12-27 05:20:21 +00:00
Pragmatic Software
bb5c825aab
Correct handling of anti-away /me actions
2014-12-27 05:08:42 +00:00
Pragmatic Software
e5909965f7
Move anti-away stuff to its own AntiAway.pm module; add /me actions to anti-away detection
2014-12-27 04:53:42 +00:00
Pragmatic Software
ba59edb040
Update paren.py module to improve parentheses verbosity
2014-12-20 19:44:40 +00:00
Pragmatic Software
a09d3c1d63
Add permop
channel flag; when non-zero bot automatically ops itself when joining channel, otherwise bot ops itself only when needing to perform an op command and then deops itself after its deop timeout has elapsed
2014-12-18 08:46:13 +00:00
Pragmatic Software
598e2e4988
Add NickList module to track nicks present in channels; dispatch pbot.join/pbot.part events when bot joins/parts channels
2014-11-15 01:18:33 +00:00
Pragmatic Software
d1e7abc175
Add event dispatcher module to allow modules to dispatch events and
...
to register handlers to listen for events.
Update IRCHandlers module to use new event dispatcher to dispatch
irc.events. Update several modules to register with dispatcher
to listen for irc.events.
Improve handling of reconnection upon unexpected disconnection.
Todo: update more things to use new event dispatcher logic.
2014-11-01 00:15:21 +00:00
Pragmatic Software
bc604d3ce2
Insert additional events to IRC::Event::_names table so default handlers will pick them up
...
Fix up indentation of _names table
2014-11-01 00:08:21 +00:00
Pragmatic Software
5a63fbd705
Auto-kick people who change nicks to a nick matching $bad_away_nicks
2014-10-28 20:35:33 +00:00
Pragmatic Software
c979efcfa6
Ignore add_op_command() for channels bot is not registered or set as op
2014-10-28 20:34:48 +00:00
Pragmatic Software
f640ade74e
Fix regex factoids so that regular factoid keywords have priority over regex triggers
2014-10-28 20:33:11 +00:00
Pragmatic Software
f70e044a60
Update latest hostmask last_seen timestamp when linking accounts
2014-10-14 02:33:13 +00:00
Pragmatic Software
a679b0ff15
Improve handling of KICK events wrt to message history
2014-10-14 02:32:22 +00:00
Pragmatic Software
46fa0d52b3
Minor code formatting improvement
2014-10-14 02:30:57 +00:00
Pragmatic Software
4dbec8001e
Fix regex factoids in global namespace not being triggered
2014-10-14 02:30:14 +00:00
Pragmatic Software
750b78cb53
quotemeta doesn't escape underscores, whoops -- manually escape underscores for Message History SQL statements
2014-10-01 21:18:54 +00:00
Pragmatic Software
79796f9710
CGrammar: Add istrue to static assertion expression; add ability to customize istrue truthiness result, add isfalse
2014-09-19 04:17:37 +00:00
Pragmatic Software
9d3c8c0285
CGrammar: Correct translation of sizeof in static assertions
2014-09-19 03:54:13 +00:00
Pragmatic Software
b2e6d7e4c0
Update version
2014-09-11 13:37:57 +00:00
Pragmatic Software
2529d49aac
CGrammar: Remove excessive "result of the expression" for parenthesized expressions
2014-09-09 07:20:42 +00:00
Pragmatic Software
83af062376
Fix case-sensitivity to show QUIT messages properly
2014-09-09 07:19:10 +00:00
Pragmatic Software
d40361a2bf
Disallow ?, [, ], and ~~ in math.pl
2014-08-31 20:27:40 +00:00
Pragmatic Software
fa2e3e4b5d
Dump LWP error text if get_title.pl fails to fetch webpage
2014-08-31 20:26:24 +00:00
Pragmatic Software
838f232d68
Update C Jeopardy questions
2014-08-31 20:24:08 +00:00
Pragmatic Software
a5ede3307e
Update C facts module
2014-08-31 20:23:27 +00:00
Pragmatic Software
021401b538
C Jeopardy: Show correctness percentage when an answer is almost correct; recommend #cjeopardy channel when attempting to play via /msg
2014-08-31 20:21:09 +00:00
Pragmatic Software
34d9a2a6d9
Appropriately wildcard /gateway/ hostmask bans
2014-08-18 14:57:12 +00:00
Pragmatic Software
749fda0ff3
Add HHGTTG easter egg to math.pl
2014-08-13 16:55:04 +00:00
Pragmatic Software
654cce66a5
Improve check for ban-evasion when nick-change is detected
2014-08-12 05:51:21 +00:00
Pragmatic Software
068c6a0559
Add default handler for unhandled IRC events; ignore certain IRC events; improve handling of chan-op requests
2014-08-11 07:34:30 +00:00
Pragmatic Software
c40e34b3a1
Add newline to "also known as" output to improve formatting in pastes
2014-08-11 07:33:05 +00:00
Pragmatic Software
321fdc401c
Improve handling of white-space when splitting output on new-lines
2014-08-11 07:32:24 +00:00
Pragmatic Software
c03a1288b6
CGrammar: Fix a|an substitution to an|a
2014-08-10 05:31:29 +00:00
Pragmatic Software
527e8490a3
CGrammar: Add offsetof
2014-08-10 05:03:37 +00:00
Pragmatic Software
48382de916
Add ability to set maximum number of newlines allowed before truncating for preserve newlines
2014-08-05 23:15:11 +00:00
Pragmatic Software
dddc9c3be9
Paste remaining lines to paste site if truncated with more lines remaining when preserve newlines is in effect
2014-08-05 23:11:51 +00:00
Pragmatic Software
a8ffedc853
C Jeopardy commands now use preserve_whitespace
2014-08-04 22:51:09 +00:00
Pragmatic Software
ca37b4fd4e
Fix use of wrong sub name when saving registry entries in add/remove subs
2014-08-04 22:50:22 +00:00
Pragmatic Software
b15ab7f84f
Add ability to preserve newlines in output; require explicit factadd
to add factoids
2014-08-04 22:48:32 +00:00
Pragmatic Software
74cffe091c
C Jeopardy: More improvements to question database
2014-08-04 21:51:23 +00:00
Pragmatic Software
18d245cf10
C Jeopardy: Now says "Too slow!" if someone else also answers the correct answer within 15 seconds
2014-08-04 06:25:56 +00:00
Pragmatic Software
7d6e505d9f
C Jeopardy: Clean up some typoes in the questions
2014-08-04 05:20:28 +00:00
Pragmatic Software
bf9fe32682
C Jeopardy: Fix and clean-up some questions; fix substitution if "is" in answers
2014-08-04 00:35:41 +00:00
Pragmatic Software
4bf78bf978
C Jeopardy: Add tons of new questions; add support for supplemental tidbits; don't obscure dashes and underscors in hints
2014-08-03 22:20:54 +00:00
Pragmatic Software
55bdc5b930
Enforce CPU limit on expand_macro module
2014-08-03 22:02:36 +00:00