jesopo
|
2ed1cf2e4a
|
Only try to show !w country when it is available. closes #72
|
2019-06-18 16:35:51 +01:00 |
|
jesopo
|
3c51348fec
|
Implement +bitbot.dev/mulitline-concat to concat line to previous line
|
2019-06-18 15:18:56 +01:00 |
|
jesopo
|
621830c360
|
Simplify SentLine by shifting truncation to ParsedLine (and commands.outs)
|
2019-06-18 14:14:37 +01:00 |
|
jesopo
|
88e796e334
|
check-mode and channel-access should reference the computed target, not
"current channel"
|
2019-06-18 08:01:20 +01:00 |
|
jesopo
|
312b0af645
|
Change vote, instead of rejecting, when people vote twice
|
2019-06-17 22:31:27 +01:00 |
|
jesopo
|
37fd78ff27
|
Change vote ids to be 6 chars, instead of 8
|
2019-06-17 21:39:43 +01:00 |
|
jesopo
|
4bcc02f32d
|
WARN log for soft SASL failure
|
2019-06-17 18:22:12 +01:00 |
|
jesopo
|
ee9a67730a
|
_end_sasl takes a server param
|
2019-06-17 18:11:02 +01:00 |
|
jesopo
|
7df8082e72
|
Update help/usage strings for vote.py
|
2019-06-17 18:08:02 +01:00 |
|
jesopo
|
966515bd24
|
Make sure new random ids are unique
|
2019-06-17 17:54:41 +01:00 |
|
jesopo
|
96d2a1fae6
|
Support multiple concurrent votes
|
2019-06-17 17:51:42 +01:00 |
|
jesopo
|
738a353c52
|
support recalling results of old votes
|
2019-06-17 16:36:48 +01:00 |
|
jesopo
|
933668f0a3
|
Allow admin users to start/end votes
|
2019-06-17 16:30:23 +01:00 |
|
jesopo
|
31503f3f75
|
first draft of vote.py
|
2019-06-17 16:29:14 +01:00 |
|
jesopo
|
47acd4adc3
|
Add a setting to disable "hard" sasl failure
|
2019-06-17 14:22:08 +01:00 |
|
jesopo
|
72ce880478
|
Only panic() when a server connection is part of bot init. closes #69
|
2019-06-17 14:20:11 +01:00 |
|
jesopo
|
0c02368023
|
panic() if a sasl dance fails on first connection, disconnect on reconnect sasl
fail
|
2019-06-17 14:07:44 +01:00 |
|
jesopo
|
76a2c66b3e
|
Show what the given context was when it's unknown
|
2019-06-17 11:29:36 +01:00 |
|
jesopo
|
99a314ed01
|
Catch _to_context ValueError and show pretty error
|
2019-06-17 11:27:48 +01:00 |
|
jesopo
|
ced59a0f74
|
Allow channel-access and channel-mode check for channels people are not in
|
2019-06-16 20:48:31 +01:00 |
|
jesopo
|
73aa55b866
|
Support 'channel-access' check request referencing current channel
|
2019-06-16 20:45:14 +01:00 |
|
jesopo
|
98e1202c78
|
Allow command.regex hooks to opt-in to being triggered from a /me
closes #68
|
2019-06-16 18:40:25 +01:00 |
|
jesopo
|
75f60caaf8
|
'multi-line' -> 'multiline'
|
2019-06-16 17:20:31 +01:00 |
|
jesopo
|
4b61f837fb
|
'timeout' -> 'cooldown'. closes #60
|
2019-06-16 17:05:40 +01:00 |
|
jesopo
|
002e1333a4
|
Add auto-github-timeout to prevent duplicate auto-githubs
|
2019-06-16 16:57:22 +01:00 |
|
jesopo
|
5fa3d66a39
|
Return all caps through received.cap.ls|new and check if valid in line_handler,
remove server.cap_started
|
2019-06-16 15:33:20 +01:00 |
|
jesopo
|
3a18229a73
|
Parse inbound bitbot.dev/multi-line batches
|
2019-06-16 10:03:46 +01:00 |
|
jesopo
|
ef10207a73
|
Send target as batch argument
|
2019-06-16 10:03:28 +01:00 |
|
jesopo
|
33de403685
|
Implement bitbot.dev/multi-line
|
2019-06-16 09:53:12 +01:00 |
|
jesopo
|
5b58cc05b6
|
Check that we have enough PRIVMSG args for strip_color.py
|
2019-06-16 09:52:04 +01:00 |
|
jesopo
|
c9de95f44a
|
forgot to pass stdout and stderr to command callbacks!
|
2019-06-16 09:51:45 +01:00 |
|
jesopo
|
8ab4880c5c
|
Change from yield checks to a func in events that pass up EventErrors
|
2019-06-15 18:42:14 +01:00 |
|
jesopo
|
cb2cab627f
|
Remove debug yield check
|
2019-06-15 18:41:04 +01:00 |
|
jesopo
|
fd35acb01b
|
Request draft/event-playback when available
|
2019-06-15 00:49:14 +01:00 |
|
jesopo
|
1d8173f607
|
copypaste fail, setting_info -> export_settings[setting]
|
2019-06-14 17:39:11 +01:00 |
|
jesopo
|
e814494777
|
Show example (when available) for "invalid value" error
|
2019-06-14 17:35:12 +01:00 |
|
jesopo
|
229a45a491
|
Change prviate channel_access commands to use a "channel-access" yield check
|
2019-06-14 17:23:22 +01:00 |
|
jesopo
|
f8b086b095
|
"saved a duck" -> "befriended a duck"
|
2019-06-14 17:11:44 +01:00 |
|
jesopo
|
9b5f946cec
|
80 col wrap
|
2019-06-14 17:11:36 +01:00 |
|
jesopo
|
359e977d18
|
Don't let users change settings for other channels when they have +o in the
current channel
|
2019-06-14 16:34:48 +01:00 |
|
jesopo
|
50e9f56ca3
|
Show when a server connected instead of "bytes read/written per second" in stats
endpoint
|
2019-06-14 16:12:03 +01:00 |
|
jesopo
|
3fad17d1b9
|
catch StopIteration.value, pass back EventError that comes from a generator
|
2019-06-14 12:48:26 +01:00 |
|
jesopo
|
74a4d7077d
|
Remove !set/!channelset/!serverset/!botset and related commands
|
2019-06-14 12:29:24 +01:00 |
|
jesopo
|
e713086255
|
Advise use of !config, not !set/!channelset/!serverset/!botset
|
2019-06-14 12:27:45 +01:00 |
|
jesopo
|
7a5af8f558
|
yield already generated permission check for serverset/botset
|
2019-06-14 12:25:53 +01:00 |
|
jesopo
|
f614d1fc14
|
add self check.command, change !config to use new yields
|
2019-06-14 12:09:42 +01:00 |
|
jesopo
|
f05fc209b0
|
Add a way to __or__ utils.Check s, as a "if one of these passes" thing
|
2019-06-14 12:01:55 +01:00 |
|
jesopo
|
d7fa2cfa24
|
Catch yield s in command callbacks for e.g. permission checks
|
2019-06-14 11:42:12 +01:00 |
|
jesopo
|
11643f6eea
|
Expose IRCChannel.mode_str() on REST API stats endpoint
|
2019-06-13 11:54:13 +01:00 |
|
jesopo
|
795f6afbeb
|
Mode mode (and mode arg) parsing to IRCChannel.py, add IRCChannel.mode_str
|
2019-06-13 11:53:47 +01:00 |
|
jesopo
|
675c510223
|
typo, 'acount' -> 'count'
|
2019-06-12 22:57:04 +01:00 |
|
jesopo
|
f336cecb06
|
"duck" when duck count is 1, "ducks" otherwise
|
2019-06-12 22:36:26 +01:00 |
|
jesopo
|
7324a05d3e
|
WARN log (instead of exception) when we receive an unknown label
|
2019-06-12 15:36:59 +01:00 |
|
jesopo
|
db7c62f76a
|
Drastically simplify karma regex: only "strip" off last 2 chars of --/++
|
2019-06-11 13:17:50 +01:00 |
|
jesopo
|
4dc957afe6
|
Make root wikipedia command !wikipedia, !wi and !wiki as aliases
|
2019-06-10 23:06:47 +01:00 |
|
jesopo
|
03917649ee
|
Add help/usage strings for ducks.py
|
2019-06-10 16:41:32 +01:00 |
|
jesopo
|
87a01dac95
|
INFO log when we drop a message in message_filter.py
|
2019-06-10 15:02:20 +01:00 |
|
jesopo
|
1625534951
|
Strip font formatting chars before doing message filtering
|
2019-06-10 14:49:01 +01:00 |
|
jesopo
|
1e03a40f8f
|
Change message_filter.py _name to "Filter"
|
2019-06-10 14:43:14 +01:00 |
|
jesopo
|
807e239a2b
|
Ignore sts tokens on plain-text connections if no port key is provided
|
2019-06-10 14:01:58 +01:00 |
|
jesopo
|
53907b57d7
|
command-out truncation logic should be referencing sent_line
|
2019-06-10 11:21:59 +01:00 |
|
jesopo
|
49524119a5
|
Add message_filter.py
|
2019-06-10 10:46:12 +01:00 |
|
jesopo
|
6c5dc958d0
|
Add .assure() to ParsedLine, to make it immune from .valid()
|
2019-06-10 10:45:02 +01:00 |
|
jesopo
|
6c64a2296c
|
draft/resume-0.4 -> draft/resume-0.5
|
2019-06-09 16:18:25 +01:00 |
|
jesopo
|
b782657b69
|
manage tweet thread ourselves to make sure it's a daemon
|
2019-06-09 15:15:50 +01:00 |
|
jesopo
|
62289ff41b
|
Remove debug print
|
2019-06-09 14:25:24 +01:00 |
|
jesopo
|
dad60ed307
|
only add to IRCBuffer when there's actually a message (e.g. exclude TAGMSG)
|
2019-06-08 18:48:42 +01:00 |
|
jesopo
|
abccb06dc5
|
Add missing time import
|
2019-06-08 12:13:51 +01:00 |
|
jesopo
|
d98e814d3f
|
Show how many seconds it took to !bef/!trap a duck
|
2019-06-08 12:10:27 +01:00 |
|
jesopo
|
d4ba98307f
|
We should look at ISUPPORT's STATUSMSG token instead of PREFIX
|
2019-06-08 10:59:52 +01:00 |
|
jesopo
|
16b9361371
|
Only request a CAP once. closes #66
|
2019-06-08 10:17:13 +01:00 |
|
jesopo
|
d9321b87ec
|
self._get_sts no longer exists
|
2019-06-08 07:57:44 +01:00 |
|
jesopo
|
3a2404d1c9
|
Fixes for tweet streaming found from finally testing it
|
2019-06-07 22:01:13 +01:00 |
|
jesopo
|
321bd7acf4
|
check stdout/stderr has_text() before .send() gets rid of it
|
2019-06-07 16:21:19 +01:00 |
|
jesopo
|
b1d07859c3
|
actually return ret
|
2019-06-07 16:21:11 +01:00 |
|
jesopo
|
8e6835be3c
|
Only show typing indicators for commands that expect output
|
2019-06-07 15:57:15 +01:00 |
|
jesopo
|
5f47d86708
|
Send +draft/typing tag when processing commands
|
2019-06-07 15:30:53 +01:00 |
|
jesopo
|
f822345976
|
Merge branch 'master' into feature/write-thread
|
2019-06-07 15:07:31 +01:00 |
|
jesopo
|
2199069629
|
Better formating for pull_request ready_for_review event
|
2019-06-07 11:29:11 +01:00 |
|
jesopo
|
9c6b9c3964
|
List()ify self.bot.servers.values() as it can change mid-QUIT
|
2019-06-06 22:39:57 +01:00 |
|
jesopo
|
d281f5ef17
|
Remove +draft/typing TAGMSG - that was for testing
|
2019-06-06 21:16:39 +01:00 |
|
jesopo
|
f96378ac07
|
move immediate-write-trigger to IRCServer.py, trigger _event_loop for
running=False
|
2019-06-06 17:58:35 +01:00 |
|
jesopo
|
6f27879d1b
|
Send +draft/typing before processing command. WIP
|
2019-06-06 17:31:11 +01:00 |
|
jesopo
|
2ca4fd48f7
|
Make params arg for logging functions optional
|
2019-06-06 12:59:47 +01:00 |
|
jesopo
|
5299f816af
|
assign local var "modes"
|
2019-06-06 11:22:45 +01:00 |
|
jesopo
|
4c6a398f53
|
Ask for our own modes when we get a 001
|
2019-06-06 11:16:47 +01:00 |
|
jesopo
|
4055e7c21f
|
put formatting reset after !seen info (so colors can't leak)
|
2019-06-05 20:52:25 +01:00 |
|
Anton McClure
|
5eeffc30ef
|
Replaced command ,bang with ,trap
|
2019-06-05 10:37:58 -04:00 |
|
jesopo
|
7e3375cfbd
|
Change duck-triggering to be through regex commands that catch ALL messages;
this will make is-silenced and ignores work automatically
|
2019-06-05 14:18:41 +01:00 |
|
jesopo
|
74c3d3a009
|
Don't count JOINs towards duck-triggering messages
|
2019-06-05 14:16:37 +01:00 |
|
jesopo
|
3590a64a51
|
Store information about last-seen-action and recall when !seen is used
|
2019-06-05 13:18:44 +01:00 |
|
jesopo
|
5e8f9ccbcf
|
Remove users from channels/server AFTER we call received.quit
|
2019-06-05 13:18:29 +01:00 |
|
jesopo
|
c6696c8b00
|
Pass along minimalistic formatted lines, as well as prettier ones
|
2019-06-05 13:18:13 +01:00 |
|
jesopo
|
8a536c3ac5
|
WARN when we see 10 labeled-responses while waiting for a response to a line
|
2019-06-05 12:11:14 +01:00 |
|
jesopo
|
0d64f55215
|
Strip html from !define/!randomword output
|
2019-06-05 12:05:51 +01:00 |
|
jesopo
|
6b7705a0ea
|
Fix commit_comment format string and show url
|
2019-06-05 11:40:23 +01:00 |
|
jesopo
|
2d46fe0cbf
|
labels: Use BatchType to match, pass lines not line , batch ID isn't a label,
fire event on label response
|
2019-06-04 17:54:19 +01:00 |
|
jesopo
|
2470c1ec03
|
Add new BatchType object, to match like how Capability and MessageTag do
|
2019-06-04 17:51:55 +01:00 |
|
jesopo
|
8dbae6a5e9
|
Give SentLine (and preproc.send events) a new event object, to track events
related to a line after it is sent
|
2019-06-04 17:51:20 +01:00 |
|
jesopo
|
825dce5292
|
.on_send( only exists on SentLines, not ParsedLines
|
2019-06-04 14:41:55 +01:00 |
|