3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-11-02 18:19:33 +01:00
Commit Graph

989 Commits

Author SHA1 Message Date
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 telling 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