netsplit and netjoin Batch Types

Copyright © 2014 Alex Iadicicco <>

Unlimited redistribution and modification of this document is allowed provided that the above copyright notice and this permission notice remains intact.

Description 🔗

This document describes the format of the netsplit and netjoin batch types.

When a netsplit occurs, the server MUST put all resulting QUITs into a single netsplit batch. Similarly, all netjoin-related JOINs MUST be put into a single netjoin batch. Both types have 2 arguments, which are the names of the servers that are splitting or joining, or *.net *.split and *.net *.join if the server has chosen to hide links.

Clients that do not understand the netsplit and netjoin batch types can safely interpret the batched QUITs and JOINs as standard QUITs and JOINs.

Example 🔗

An example netsplit is as follows: BATCH +yXNAbvnRHTRBv netsplit irc.hub
@batch=yXNAbvnRHTRBv :aji!a@a QUIT :irc.hub
@batch=yXNAbvnRHTRBv :nenolod!a@a QUIT :irc.hub
@batch=yXNAbvnRHTRBv :jilles!a@a QUIT :irc.hub BATCH -yXNAbvnRHTRBv

An example netjoin is as follows: BATCH +4lMeQwsaOMs6s netjoin irc.hub
@batch=4lMeQwsaOMs6s :aji!a@a JOIN #atheme
@batch=4lMeQwsaOMs6s :nenolod!a@a JOIN #atheme
@batch=4lMeQwsaOMs6s :jilles!a@a JOIN #atheme
@batch=4lMeQwsaOMs6s :nenolod!a@a JOIN #ircv3
@batch=4lMeQwsaOMs6s :jilles!a@a JOIN #ircv3
@batch=4lMeQwsaOMs6s :Elizacat!a@a JOIN #ircv3 BATCH -4lMeQwsaOMs6s

Errata 🔗

For consistency with capabilities and tags these types were renamed to lower case (from NETSPLIT to netsplit).