docs: full reference for the daemon and echo services (modes, extbans, snomasks, commands, config reference, privileges, CLI, metrics/rpc, per-service pages)
This commit is contained in:
parent
c4836c7dd1
commit
d81c07ef01
23 changed files with 1685 additions and 84 deletions
|
|
@ -1,30 +1,49 @@
|
|||
# Services
|
||||
# echo services
|
||||
|
||||
echo services is a suite of pseudo-clients that runs as its own program and links to the network
|
||||
as a services server. State is **event-sourced** — every change is an appended event, replayed to
|
||||
rebuild the database.
|
||||
|
||||
## The services
|
||||
|
||||
| Service | Purpose |
|
||||
| --- | --- |
|
||||
| **NickServ** | account registration, grouped nicks, certificates, public keys, vhosts, profiles |
|
||||
| **ChanServ** | channel founders and access, auto-op, akick, topic and mode locks |
|
||||
| **OperServ** | network administration, akills, session control |
|
||||
| **MemoServ** | offline messages between accounts |
|
||||
**echo services** is a Rust services package that links to the echoIRCd daemon over the S2S protocol
|
||||
as a linked services server — it is *not* built into the daemon. State is **event-sourced**: every
|
||||
change is an appended event, replayed to rebuild the database.
|
||||
|
||||
## Running
|
||||
|
||||
echo services is configured from its own file and connects to the ircd over the server port:
|
||||
echo services is its own binary with its own configuration:
|
||||
|
||||
```sh
|
||||
echo config.toml
|
||||
```
|
||||
|
||||
On the ircd side, the services server must be U-lined and named as the SASL server — see
|
||||
[Server links](/docs/linking#services).
|
||||
Only `[uplink]` and `[server]` are required; everything else is optional. The daemon must U-line the
|
||||
services server and name it as the SASL server — see [Server links](/docs/linking#services). For the
|
||||
full configuration, see [Running & config](/docs/services-config).
|
||||
|
||||
## The services
|
||||
|
||||
The standard suite comes up by default; the enabled set is controlled by `[modules] services`.
|
||||
|
||||
| Service | Role |
|
||||
| --- | --- |
|
||||
| **[NickServ](/docs/nickserv)** | Register and manage your nick/account; log in |
|
||||
| **[ChanServ](/docs/chanserv)** | Register and manage channels, access, modes, topics |
|
||||
| **[OperServ](/docs/operserv)** | Network administration, bans/X-lines, SVS commands (operator) |
|
||||
| **[MemoServ](/docs/memoserv)** | Leave and read offline messages between accounts |
|
||||
| **[HostServ](/docs/hostserv)** | Virtual host (vhost) requests, offers, and assignment |
|
||||
| **[BotServ](/docs/botserv)** | Channel bots that speak, moderate, and auto-respond |
|
||||
| GroupServ | Named account groups (`!group`) for access lists |
|
||||
| StatServ | Network and per-channel activity statistics |
|
||||
| InfoServ | Public and operator bulletins / news |
|
||||
| ReportServ | User abuse reports queued for staff |
|
||||
| HelpServ | User help-desk ticket queue |
|
||||
| DiceServ | Dice-expression rolling and calculation |
|
||||
| DictServ | DICT-protocol dictionary/thesaurus lookups (opt-in) |
|
||||
| GameServ | Turn-based games (tic-tac-toe, Connect Four, chess) with ranked stats |
|
||||
| ChanFix | Restore ops to a channel's trusted regulars |
|
||||
| DebugServ | Internal diagnostic feed of services activity |
|
||||
|
||||
The last ten are covered on the [other services](/docs/other-services) page. echo services also runs a
|
||||
native [anti-abuse engine](/docs/services-security).
|
||||
|
||||
## Accounts & SASL
|
||||
|
||||
Registration and login are covered in [Accounts & SASL](/docs/accounts). SASL is relayed from the
|
||||
daemon to services mechanism-agnostically, so new mechanisms work without daemon changes.
|
||||
Registration and login (including key-based ECDSA login) are covered in
|
||||
[Accounts & SASL](/docs/accounts); SASL is relayed from the daemon to services
|
||||
mechanism-agnostically, so new mechanisms work without daemon changes.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue