Functor Irc.Client


module Client: 
functor (P : Client_params) -> sig .. end
A basic client with callbacks but no elaborate event handler.
Parameters:
P : Client_params


Communication with the server


val connect : unit -> unit
Connect to the server.
val disconnect : unit -> unit
Disconnect from the server.
val event_loop : unit -> unit
Start an event loop. This function does not return unless we are disconnected from the server. It reads messages from the server and calls the appropriate functions to handle them.

IRC commands



Administrativia


val join : string -> unit
Join a channel.
val part : string -> unit
Part from a channel.
val quit : string -> unit
Quit the server. disconnect should be called after that.
val change_user : string -> string -> string -> unit
change_user nick host user changes your nickname, hostname and username.
val change_nick : string -> unit
Change your nickname.
val kick : string -> string -> string -> unit
kick user chan reason kicks the user user from the channel chan giving him reason as explanation.
val invite : string -> string -> unit
invlite user chan
val op : string -> string -> unit
val set_away : string -> unit
Set yourself as away.
val set_back : unit -> unit
You're not away anymore.
val change_topic : string -> string -> unit
change_topic chan topic

Basic communication


val say : string -> string -> unit
Say something to someone / to a chan (private message).
val notice : string -> string -> unit
Say something to someone / to a chan in notice.
val ctcp_ping : string -> float -> unit
val get_topic : string -> unit
val change_mode : Irc.mode -> unit
val get_chan_list : unit -> unit
val get_version : unit -> unit
val get_time : unit -> unit
val get_info : unit -> unit
val get_who : string -> unit
val get_who_ircop : string -> unit
val get_whois : string -> unit
val get_whowas : string -> unit
val ping : string -> unit
val on_message : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_notice : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_mode : (Irc.sender -> Irc.mode -> unit) Pervasives.ref
val on_nick : (Irc.sender -> string -> unit) Pervasives.ref
val on_kick : (Irc.sender -> string -> string -> string option -> unit) Pervasives.ref
on_kick sender chan user reason
val on_reply : (Irc.sender -> Irc.reply -> string array -> unit) Pervasives.ref
val on_ctcp_version : (Irc.sender -> string -> unit) Pervasives.ref
val on_ctcp_time : (Irc.sender -> string -> unit) Pervasives.ref
val on_ctcp_ping : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_ctcp_action : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_ctcp : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_ctcp_ping_reply : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_ctcp_reply : (Irc.sender -> string -> string -> unit) Pervasives.ref
val on_ping : (Irc.sender -> string -> unit) Pervasives.ref
val on_join : (Irc.sender -> string -> unit) Pervasives.ref
val on_part : (Irc.sender -> string -> string option -> unit) Pervasives.ref
val on_quit : (Irc.sender -> string option -> unit) Pervasives.ref
val on_error : (Irc.sender -> string -> unit) Pervasives.ref

Debugging


val dump_everything : bool Pervasives.ref
If it's set to true, the module shows every message that is received from the server on stdout (default: false).