3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-23 19:19:31 +01:00
Commit Graph

48 Commits

Author SHA1 Message Date
James Lu
c44aa64503 services_support: check service bot state, not is_internal_client before dynamically parting channels
If a channel still has e.g. relay users when the last local user leaves the channel, the services bots should stay put.
2018-05-09 20:47:51 -07:00
James Lu
2532042506 services_support: raise endburst handler priority
Other plugins may implement endburst handlers assuming that their service bots have already been created.
2018-05-05 13:07:28 -07:00
James Lu
01c22aac21 Revert "service_support: consistently rejoin all channels on kick and kill"
This is no longer needed with plugin-specific persistent channels.

This reverts commit 3c9dac7e6b.
2018-05-05 13:07:07 -07:00
James Lu
0ead868546 service_support: skip dynamic join/part hooks on bot-only servers 2018-04-20 19:35:06 -07:00
James Lu
3c9dac7e6b service_support: consistently rejoin all channels on kick and kill
This is the cheap fix to part one of #265: "When a services client is killed, it won't join any relay leaf channels"
2018-04-13 20:34:26 -07:00
James Lu
2f12a5b710 Initial work on dynamic service bot joining / parting (#265) 2018-04-12 12:45:33 -07:00
James Lu
bea2ea8ebd plugins, coremods: migrate (un)registerService calls to snake case (#523) 2018-03-02 20:23:47 -08:00
James Lu
d4cbf1d2af services_support: fix rejoin-on-kill to the main service bot
Clear the irc.pseudoclient state on kill as the respawning code will check for it first and reuse UIDs even if they don't exist.
2017-11-12 10:54:30 -08:00
James Lu
94e05a6233 services_support: fix clientbot service spawning when irc.pseudoclient exists but isn't in the user index 2017-08-30 19:50:25 -07:00
James Lu
cad55097f1 core: reuse existing service client UIDs for all service bots
This prevents nick collision wars caused by spawn_service when an ENDBURST hook for the uplink is received multiple times.
2017-08-30 19:29:46 -07:00
James Lu
0bb4a35c6f Support pre-auth irc.pseudoclient enumeration & configurable altnicks
Closes #516. Closes #288.
2017-08-21 23:05:56 -07:00
James Lu
89699051d5 Services API rework
- Move nick/ident/host/gecos fetching from services_support into functions
- Remove the unused 'ident' argument from ServiceBot
- Rename the 'nick' argument in ServiceBot to 'default_nick'
- Define default nicks for the PyLink, Automode, and Games services
2017-08-21 21:51:45 -07:00
James Lu
f15f27168a services_support: log the reason as well when a service bot is killed 2017-08-02 22:15:19 +08:00
James Lu
3eb2c6bbf7 service_support: raise KILLs to service bots to INFO 2017-07-30 00:32:59 +08:00
James Lu
5a5a98c4ef services_support: migrate to conf.conf['pylink'], make the realname option optional 2017-07-14 05:51:40 -07:00
Mitchell Cooper
a1dfa14d20 allow realname to be specified the same way 2017-07-12 18:53:02 -04:00
Mitchell Cooper
33630e8f9d allow host to be specified in service bot block or per-network 2017-07-12 18:38:26 -04:00
James Lu
a204d2b2db core: convert IrcUser calls to User 2017-06-30 21:44:31 -07:00
James Lu
61ed209abb coremods, plugins: migrate to snake case for protocol communication 2017-06-30 21:30:20 -07:00
James Lu
10bca676fc coremods, plugins: migrate to snake case 2017-06-29 23:01:39 -07:00
James Lu
748c1bc158 coremods: migrate irc.proto calls to irc 2017-06-25 02:09:55 -07:00
James Lu
7e51d3a7f5 service_support: fix service respawn on KILL 2017-05-12 18:45:27 -07:00
James Lu
457325024a service_support: reuse existing internal clients for service bots if one exists
Potential fix for #458.
2017-05-12 18:27:54 -07:00
James Lu
feb9cce4ee core: Drop fake ServiceBot client stubs on Clientbot (#403) 2017-03-23 23:53:43 -07:00
James Lu
fb626c8a97 services_support: remove workarounds for the PyLink service nick & ident being in conf::bot (#343) 2017-03-10 23:47:07 -08:00
James Lu
ae56ed6a32 services_support: fix service-specific key name 2017-02-26 18:11:20 -08:00
Ken Spencer
b3ec8a6790 service_support: allow server:service_channels for per service autojoin 2017-02-26 21:05:33 -05:00
James Lu
377df413ed Irc: s/isServiceBot/getServiceBot/g (#355)
This function is renamed to better reflect its return value (ServiceBot object instead of boolean True).
2016-11-09 19:09:59 -08:00
James Lu
08fa64c3cc Irc, services_support: store service name in IrcUser objects (#355) 2016-11-09 19:07:01 -08:00
James Lu
438838f81d ServiceBot: handle autojoin additions even if bots haven't spawned yet 2016-09-24 12:33:57 -07:00
James Lu
1c60ad7251 services_support: honour joinmodes settings on kick-rejoin 2016-09-24 12:22:12 -07:00
James Lu
a040c3c7d2 ServiceBot: modularize join() for explicit channel joining (#326) 2016-09-23 23:43:07 -07:00
James Lu
0cce6ca488 service_support: allow specifying modes to join with for each service (#326)
This updates the example config to, by default, join Automode bots as op in channels.
2016-09-23 23:10:38 -07:00
James Lu
a12ed6ad35 services_support: hack around nick clashes between service clients & real users in Clientbot
For #327. Essentially what this does is tack on a nick prefix to all service bots introduced on a Clientbot network, using characters invalid for regular nicks.
2016-09-06 20:04:19 -07:00
James Lu
d1e2dfcf61 clientbot: only call spawnClient for new message sources after irc.pseudoclient is set 2016-09-01 13:08:20 -07:00
James Lu
a76bd8c5b2 core: make hostmask fetching a shared function 2016-08-12 19:18:56 -07:00
James Lu
e50684e367 Merge branch 'master' into devel 2016-08-04 10:29:17 -07:00
James Lu
a9fe0499e6 services_support: ignore invalid autojoin channels
Reported by @rvzm on IRC.

Closes #308.
2016-08-04 10:26:00 -07:00
James Lu
f4922743fc core: SID and hostname options are now optional (#282)
Hostname defaults to a fallback hardcoded in world.fallback_hostname, while SID defaults to None (protocol modules have to deal with this themselves)
2016-07-28 22:23:59 -07:00
James Lu
8047186c58 plugins, coremods: remove usage of irc.conf (#273) 2016-07-27 17:02:04 -07:00
James Lu
4999ecd11f Integrate services_support and automode
New hook: PYLINK_SERVICE_JOIN
2016-07-07 21:54:59 -07:00
James Lu
408ce701b1 service_support: support optionally setting servprotect on service bots
Closes #243.
2016-07-01 21:25:58 -07:00
James Lu
017d6a4651 coremods: remove references to 'coreplugin' in logging 2016-07-01 21:08:50 -07:00
James Lu
1637193a53 service_support: add description for main PyLink bot 2016-06-30 17:45:05 -07:00
James Lu
b90c69eead ServiceBot: actually, make extra_channels network specific 2016-06-25 14:21:13 -07:00
James Lu
ceed9346c0 ServiceBot: allow configuring extra channels that bots will join 2016-06-25 14:14:19 -07:00
James Lu
170de377ca coremods: Move ServiceBot kill/kick/message handling into the right module
This also fixes the kill handler erroneously calling a spawn_service() that was never imported.
2016-06-25 13:58:59 -07:00
James Lu
3a57e8d595 Split coreplugin.py into coremods/
Closes #240.
2016-06-21 11:25:47 -07:00