Find a file
Simon Ser d7b1c5a9a2 Allow admins to broadcast message to all bouncer users
Typically done via:

    /notice $<bouncer> <message>

Or, for a connection not bound to a specific network:

    /notice $* <message>

The message is broadcast as BouncerServ, because that's the only
user that can be trusted to belong to the bouncer by users. Any
other prefix would conflict with the upstream network.
2021-06-23 19:23:09 +02:00
cmd db: refactor into interface 2021-05-25 16:35:39 +02:00
config Make db and log config options more future-proof 2021-04-21 18:15:04 +02:00
contrib contrib/clients: add reference to Weechat script 2021-06-12 14:48:32 +02:00
doc doc/soju.1: explain http-origin defaults 2021-06-11 10:26:22 +02:00
.build.yml ci: check scdoc is happy 2020-06-10 16:15:20 +02:00
.editorconfig Add .editorconfig 2020-11-30 11:39:41 +01:00
.gitignore doc: document "network delete" 2020-04-01 17:38:09 +02:00
bridge.go Implement casemapping 2021-03-24 18:15:52 +01:00
config.in Make db and log config options more future-proof 2021-04-21 18:15:04 +02:00
conn.go Silence net.ErrClosed errors 2021-05-20 00:07:44 +02:00
db.go Allow networks to be disabled 2021-05-26 10:51:02 +02:00
db_sqlite.go Allow networks to be disabled 2021-05-26 10:51:02 +02:00
downstream.go Allow admins to broadcast message to all bouncer users 2021-06-23 19:23:09 +02:00
go.mod Update dependencies 2021-03-31 18:18:16 +02:00
go.sum Update dependencies 2021-03-31 18:18:16 +02:00
ident.go ident: remove leftover debug log 2020-08-18 17:57:12 +02:00
irc.go Implement CHATHISTORY BETWEEN 2021-05-18 10:44:10 +02:00
LICENSE Switch license to AGPLv3 2020-02-07 17:41:51 +01:00
Makefile Don't build soju when calling "make install" 2021-05-25 16:31:06 +02:00
msgstore.go Implement CHATHISTORY TARGETS 2021-06-02 20:32:11 +02:00
msgstore_fs.go Slightly relax new log file permissions 2021-06-14 17:58:36 +02:00
msgstore_memory.go Check message stores implement expected interfaces 2021-05-18 14:19:34 +02:00
net_go113.go Silence net.ErrClosed errors 2021-05-20 00:07:44 +02:00
net_go116.go Silence net.ErrClosed errors 2021-05-20 00:07:44 +02:00
README.md readme: link to rendered man page 2021-05-23 21:41:01 +02:00
server.go Allow admins to broadcast message to all bouncer users 2021-06-23 19:23:09 +02:00
service.go Send placeholder when no network/channel is returned by BouncerServ 2021-05-26 11:27:59 +02:00
upstream.go Allow admins to broadcast message to all bouncer users 2021-06-23 19:23:09 +02:00
user.go Allow admins to broadcast message to all bouncer users 2021-06-23 19:23:09 +02:00

soju

builds.sr.ht status

A user-friendly IRC bouncer.

  • Multi-user
  • Support multiple clients for a single user, with proper backlog synchronization
  • Support connecting to multiple upstream servers via a single IRC connection to the bouncer

Usage

Building and installing

For end users, a Makefile is provided:

make
sudo make install

For development, you can use go run ./cmd/soju as usual.

Contributing

Send patches on the mailing list or on GitHub, report bugs on the issue tracker. Discuss in #soju on Libera Chat.

License

AGPLv3, see LICENSE.

Copyright (C) 2020 The soju Contributors