Provides a supervised IRC client and command functions.
Use start_link/1 to configure a connection. Use the command functions only
after the client emits the :registered event.
Summary
Functions
Builds an account extban mask from the current EXTBAN token.
Sends a CTCP ACTION message.
Gets administrator information from the local server or a target server.
Sets or clears the away state.
Enables or disables the user +B bot mode.
Sends a CAP LIST command.
Gets the IRC modes for a channel.
Gets chat history after a message selector.
Gets chat history around a message selector.
Gets chat history before a message selector.
Gets chat history between two message selectors.
Gets the latest chat history for a target.
Gets history targets between two timestamps.
Returns a child specification with the same options as start_link/1.
Sends an IRCv3 client batch.
Returns true if the server denies the client-only tag.
Requests a server connection with a CONNECT command.
Returns the cached, secret-free connection state.
Sends a NOTICE command with a channel-context tag.
Sends a PRIVMSG command with a channel-context tag.
Sends a CAP REQ command that disables one or more capabilities.
Returns the upload URL from the current FHOST token.
Publishes all events in the manual server-time buffer.
Gets server help for an optional subject.
Gets information from the local server or a target server.
Sends an INVITE command.
Gets the online status of one or more nicknames.
Requests the server ISUPPORT tokens.
Sends a JOIN command.
Sends a KICK command.
Sends a KILL command.
Validates and sends an IRC command with a label tag.
Gets server links with an optional remote server and mask.
Sends a LIST command for optional channels and a server.
Gets user statistics with an optional mask and target server.
Gets the read marker for a target.
Sets the read marker for a target.
Clears a metadata key on a target.
Gets metadata keys for a target.
Sets a metadata key on a target.
Subscribes to metadata keys.
Requests a metadata synchronization for a target.
Unsubscribes from metadata keys.
Sets IRC modes on a target.
Gets the IRC modes for a target.
Adds one or more targets to the monitor list.
Clears the monitor list.
Gets the monitor list.
Removes one or more targets from the monitor list.
Gets the current status of monitored targets.
Gets the message of the day from the local server or a target server.
Sends a multiline NOTICE batch.
Sends a multiline PRIVMSG batch.
Sends a NAMES command.
Sends a NICK command.
Sends a NOTICE command.
Sends a tagged NOTICE command.
Sends operator credentials with an OPER command.
Sends a PART command.
Sends a PASS command.
Sets the pre-registration away state without a reason.
Sends a PRIVMSG command.
Sends a tagged PRIVMSG command.
Sends a QUIT command and suppresses automatic reconnection.
Validates and sends an IRC command with parameters.
Validates and sends a tagged IRC command.
Adds a reaction to a message.
Starts a new connection attempt for a disconnected client.
Sends a REDACT command with an optional reason.
Sends an account REGISTER command.
Requests a server configuration reload.
Sends a RENAME command with an optional reason.
Sends a reply with the +reply client tag.
Sends a CAP REQ command for one or more capabilities.
Requests a server restart.
Compares two identifiers with the negotiated IRC casemapping.
Returns true if nick identifies the current client.
Gets services that match an optional mask and type.
Sends a SETNAME command.
Sends an SQUERY command to a service.
Disconnects a server with an SQUIT command.
Starts a client process and schedules a connection attempt.
Gets server statistics for an optional query and target server.
Sends a SUMMON command.
Sends a TAGMSG command.
Gets the time from the local server or a target server.
Gets or sets a channel topic with a TOPIC command.
Gets route information for an optional target.
Validates and sends an Ircxd.Message.
Sends an :active, :paused, or :done typing status.
Removes a reaction from a message.
Gets the IRC modes for a user.
Gets host information for one or more nicknames.
Gets server users from the local server or a target server.
Sends an account VERIFY command.
Gets version information from the local server or a target server.
Sends a WALLOPS message.
Gets users that match a WHO mask and optional flags.
Gets current information about a nickname.
Gets historical information about a nickname.
Functions
Builds an account extban mask from the current EXTBAN token.
Sends a CTCP ACTION message.
Gets administrator information from the local server or a target server.
Sets or clears the away state.
Enables or disables the user +B bot mode.
Sends a CAP LIST command.
Gets the IRC modes for a channel.
Gets chat history after a message selector.
Gets chat history around a message selector.
Gets chat history before a message selector.
Gets chat history between two message selectors.
Gets the latest chat history for a target.
Gets history targets between two timestamps.
Returns a child specification with the same options as start_link/1.
Sends an IRCv3 client batch.
Use :required_cap to require an active capability. :capability is an alias
for :required_cap.
Returns true if the server denies the client-only tag.
Requests a server connection with a CONNECT command.
Returns the cached, secret-free connection state.
Sends a NOTICE command with a channel-context tag.
Sends a PRIVMSG command with a channel-context tag.
Sends a CAP REQ command that disables one or more capabilities.
Returns the upload URL from the current FHOST token.
Publishes all events in the manual server-time buffer.
Gets server help for an optional subject.
Gets information from the local server or a target server.
Sends an INVITE command.
Gets the online status of one or more nicknames.
Requests the server ISUPPORT tokens.
Sends a JOIN command.
Sends a KICK command.
Sends a KILL command.
Validates and sends an IRC command with a label tag.
Gets server links with an optional remote server and mask.
Sends a LIST command for optional channels and a server.
Gets user statistics with an optional mask and target server.
Gets the read marker for a target.
Sets the read marker for a target.
Clears a metadata key on a target.
Gets metadata keys for a target.
Sets a metadata key on a target.
Subscribes to metadata keys.
Requests a metadata synchronization for a target.
Unsubscribes from metadata keys.
Sets IRC modes on a target.
Gets the IRC modes for a target.
Adds one or more targets to the monitor list.
Clears the monitor list.
Gets the monitor list.
Removes one or more targets from the monitor list.
Gets the current status of monitored targets.
Gets the message of the day from the local server or a target server.
Sends a multiline NOTICE batch.
Use :ref to set the batch reference. The client creates a reference if this
option is absent.
Sends a multiline PRIVMSG batch.
Use :ref to set the batch reference. The client creates a reference if this
option is absent.
Sends a NAMES command.
Sends a NICK command.
Sends a NOTICE command.
Sends a tagged NOTICE command.
Sends operator credentials with an OPER command.
Sends a PART command.
Sends a PASS command.
Sets the pre-registration away state without a reason.
Sends a PRIVMSG command.
Sends a tagged PRIVMSG command.
Sends a QUIT command and suppresses automatic reconnection.
Validates and sends an IRC command with parameters.
Validates and sends a tagged IRC command.
Adds a reaction to a message.
Starts a new connection attempt for a disconnected client.
Sends a REDACT command with an optional reason.
Sends an account REGISTER command.
Requests a server configuration reload.
Sends a RENAME command with an optional reason.
Sends a reply with the +reply client tag.
Sends a CAP REQ command for one or more capabilities.
Requests a server restart.
Compares two identifiers with the negotiated IRC casemapping.
Returns true if nick identifies the current client.
Gets services that match an optional mask and type.
Sends a SETNAME command.
Sends an SQUERY command to a service.
Disconnects a server with an SQUIT command.
Starts a client process and schedules a connection attempt.
This function accepts these options:
:host- Required server host.:nick- Required initial nickname.:port- Server port. The default is6697for TLS or6667for TCP.:tls- Enables implicit TLS. The default isfalse.:sni- Sets the TLS server name. The default is:host.:tls_options- Adds options for:ssl.connect/4.:username- Sets the registration username. The default is:nick.:realname- Sets the registration real name. The default is:nick.:nick_retry_fun- Sets the nickname-collision function.:name- Registers the client process with a name.:caps- Sets the IRCv3 capabilities to request.:notify- Sets the process that receives{:ircxd, event}messages.:adapter- Sets an{adapter_module, init_arg}pair.:events- Sets:legacy,:envelope, or:bothevent delivery.:reconnect- Setsfalse,true, or a list with:max_attemptsand:delay.:password- Sets the server password for registration.:sasl- Sets one SASL mechanism or an ordered mechanism list. A SCRAM mechanism can use:noncefor a fixed client nonce.:sasl_failure- Sets:continueor:abort. The default is:continue.:allow_insecure_auth- Permits credentials on TCP. The default isfalse.:webirc- Sets:password,:gateway,:hostname,:ip, and optional WebIRC:options.:msgid_dedupe- Setsfalseor:markfor message-ID duplicates.:server_time_order- Setsfalse,:manual, or a list with:flush_after.
The process connects asynchronously. A successful return does not mean that IRC registration is complete.
Gets server statistics for an optional query and target server.
Sends a SUMMON command.
Sends a TAGMSG command.
Gets the time from the local server or a target server.
Gets or sets a channel topic with a TOPIC command.
Gets route information for an optional target.
Validates and sends an Ircxd.Message.
Sends an :active, :paused, or :done typing status.
Removes a reaction from a message.
Gets the IRC modes for a user.
Gets host information for one or more nicknames.
Gets server users from the local server or a target server.
Sends an account VERIFY command.
Gets version information from the local server or a target server.
Sends a WALLOPS message.
Gets users that match a WHO mask and optional flags.
Gets current information about a nickname.
Gets historical information about a nickname.