The Internal Address List

 

mIRC maintains an internal address list of all users who are currently on the same channels as you.

 

This address list is used by the /guser, /ruser, /ban, /ignore, /finger, and /dns commands to quickly find a user's address without resorting to a /userhost server lookup.

 

A user's address is added to the list either when they join the channel, send a message to a channel, or make a mode change.

 

A user's address is removed from the list when they are no longer on any of the channels which you are currently on.

 

The reason why only addresses for users on the same channels as you are stored is because this guarantees the integrity of the list. ie. that a specific nickname is associated with a specific address.

 

IAL Commands

 

/ial [on | off]

Turns IAL on or off. Note that this setting is not persistent across sessions and resets to on every time mIRC is run.

 

/ialclear [nick]

Clears the IAL, or if a nickname is specified, clears that nickname's IAL entry.

 

/ialmark <nick> [text]

Marks the IAL entry for a nickname with the specified text.

 

IAL Identifiers

 

$ial(nick/mask,N)

Returns the Nth address matching nick or mask in the Internal Address List.

 

Properties: nick, user, host, addr, mark

 

$ial(*!*@*.com,0)        returns the total number of addresses in the IAL matching *!*@*.com

$ial(*!*@*.com,3)        returns the 3rd address in the IAL matching *!*@*.com

$ial(*!*@*.com,4).nick        returns the nick of the 4th matching address ending in .com

$ial(*!*@*.com,4).user        returns the userid of the 4th matching address ending in .com

 

To scan each address in the IAL you can use $ial(*,N).

 

The N parameter is optional, defaults to 1 if not specified.

 

$ialchan(nick/mask,#,N)

Returns the Nth address on the specified channel matching nick or mask in the Internal Address List.

 

This works the same way as the $ial() identifier.