IceChat Identifiers

IceChat allows you to use certain words, called identifiers and they always start with a $.
These will hold values for all sorts of things, which can be used in Scripting, in the Popup Menus, or even just typing commands.
If you wish to send a command a parse an identifier, you need to use // to start the command, not a single /. For instance, type ''/say $date'' ''$date'' in the channel, but, typing ''//say $date'' will print the actual Date in the channel.

Here is a list of identifiers that can be used anywhere in IceChat. (Popup Menus, Scripting, regular commands). To use identifiers inside VB Scripting, the ''GetIdentifier'' command needs to be used, if used outside of commands. Look this command up in the Scripting Section.

$icechat – This will return the Current IceChat Version and Build # with the Download URL

$version – This will return the Current IceChat Version and Build # but does not show the Download URL.

$icechatver – This will return the Current IceChat Version only

$icechathandle – Returns the Main IceChat windows handle

$icechatexedir – Returns the folder in which IceChat 7was installed ''C:\\Program Files\\IceChat7\\'' by default. It always has a \\ at the end of the path

$icechatdir – Returns the folder where IceChat keeps all its INI Files (IceChat Settings)

$scriptdir – Returns the Scripts folder

$wavsdir – Returns the Wavs folder

$senddir – Returns the DCC Sending folder

$getdir – Returns the DCC Receiving/Get folder

$logdir – Returns the Logs folder

$me – Returns your current nickname

$servernick – Your nickname according to the INI Settings for the Server

$altnick – Your alternative nickname in Server Settings

$ip – Returns your IP Address.

$longip – converts your IP Address into a Long Value.

$fullhost – Returns NickName!Ident@Hostname

$host – Returns your hostname

$ident – Returns your ident name

$fullname – Returns the FullName value of the Current Server

$quitmessage – Gets the Quit Message value of the Current Server

$awayreason – If you are away, it returns your away reason

$awaytime – How long you are away, in seconds

$awaynick – Your away nickname

$away – Returns whether your away or not ($true or $false)

$servermode/$usermode – returns your server mode(s) for the current server

$totalservers – total number of servers , connected or not, in the console

$servernumber/$cid – returns the Connection Number (As shown in the tab order in the console)

$server – The server name

$port – The server port

$network – The network name

$currentserver – The Current/Active Server Name

$currentservernumber/$csn/$activecid – returns the active server connection number

$currentnetwork – The Current/Active Network Name

$currentchannel,$channel,$chan – Returns what channel your currently in

$channels – returns all the channels you are on, for the current server, seperated by spaces

$totalchannels – returns the total number of channels you are on for all servers

$currentwindow/$active – This returns a value for what the current window is. If the window is the console, it returns "Console". If the window is a channel, it returns the channel name. If the window is a Query or DCC Chat/File, it returns the other users nickname. It is a channel list window, is returns "List", ad if it is the debug window, it returns "Debug"

$currentwindowtype/$activetype – This returns a value depending on what kind of window, the current window is.

Debug Window
DCC Chat
DCC File
Channel List

$time – Returns the Time

$weekday – returns the current weekday

$day – returns the current day of the montn

$month – returns the current month, full name

$monthnum – returns the current month number

$year – returns the current year

$date – Returns the date

$now, $fulldate – Returns full time and date

$ticks – The total number of seconds your PC has been running

$uptime – How long your PC has been online in long form

$randphrase – picks a random line from the randphrase.txt file in the Scripts folder.

$randquit – picks a random phrase from the Quit Messages – Great for specifying for a Quit Message. use randquit.txt in IceChat folder for extra quit messages to read from

$os – Your current Operating System

$osbuild – Your current Operating System Build Number

$osspnum – Your Operating System Service Pack Number

$ossp – Your Operating System Service Pack Name

$servermode – Returns your current servermode

$timers – Returns the total number of timers running

$cr – sends a carriage return

$lf – sends a line feed

$crlf – sends a carriage return and line feed (a new line)

$space – sends a space

$theme – returns the current Color Theme

$isforeground – returns $true or $false if IceChat is the current program

$soundfore – returns $true or $false if setting for Play sounds in Foreground option

$soundwait – Returns value for how many seconds to wait between sound events

$tray – returns $true or $false if IceChat is on the system tray

Below are special identifiers that can have parameters and properties used with them.

$rnd() – gets a random number – $rnd(9) for 0-9, or $rnd(10,20) for 10-20 , using a range

$nick(#,N) – this identifier has a lot of options. $nick(#icechat,0) returns the total number of users in #icechat. $nick(#icechat,1) returns the 1st nickname in #icechat.The N value can aslo be an actual nickname. The $nick identifier can also have properties. $nick(#channel,Nickname).host would return that Nickname''s host in the #channel. All the properties are .mode, .host, .mask, .nick,.ident. The following properties will either return True or False. $nick(#channel,1).op , .voice, .halfop, .admin,.owner. If you wish to see if you are opped in a certain channel, $nick(#channel,$me).op

$chan(#) – You can get channel information with this identifier. with $chan(0) you can return the total number of channels you are on, on that server. $chan(2) would return the 2nd channel name on that server. $chan on its own would return the current channel. You can also use properties. $chan(1).mode would return the channel modes for the 1st channel. $chan(#channel).topic would return the topic for #channel. All the properties for $chan are .mode, .topic, .key, .limit and .hwnd (Windows handle to Channel Form)

$mask(FullMask,N) – this can return different hostmask configurations, with sending it the full hostmask, and then which mask you wish to use.You need to pass a full host mask to this identifier, a nickname alone would not work. You could use $fullhost for your own hostmask, or $nick(#channel,Nick).mask for someone elses. The different masks are as follows, using the value of N.

Where N = 0 then $mask(FullMask,0) – *!user@host – Max value of N is 10


$timer(#) – this identifier returns information on timers currently running. The # can be the timer ID or just the Nth timer created. $timer() on its own returns the timerID, or if using properties, can return other items. .id, .repetitions, .interval and .command are the properties. So if you wish to get the Timer Interval for the 3rd timer created, its $timer(3).interval.

$$? – This identifier will popup a Question for you to answer, and will return the value for which you entered. $$?="Question to Ask" – The will Ask for Input for this item, with the questing being "Question to Ask" – The Question needs to be in quotes.


$1, ($1-) – Another special identifier, allows you to pick out certain words, using the positions they are in a value. $1 gets the 1st word, $3, gets the 3rd word, placing a dash (-) after the value, gets all the words after the specified word, including itself – $4- gets the 4th word and all the rest.

$color(event) – this will return the color code and the color number for certain events. The events are as follows:

message, action, own, notice, part, join, quit, kick, mode, topic, info, motd, servermessage, errormessage, pingpong, whois, echo, servermode, error, connected, disconnected, nick, invite, buddy, servernotice, ctcpreply, ctcpsend

$randphrase(file) – this picks a random phrase from a file located in the Scripts Folder

$read(file,[linenumber]) – this will read the entire contents of a file into a variable, or if the option linenumber option is used, it will just return that single line

$lines(file) – returns the total number of lines in a file. File is in the Sctipts Folder

$exists(file/dir) – returns $true or $false if the file or folder specified, exists

$duration(ticks) – returns the duration in days/hours/minutes/seconds format

$rand(v1,v2) – returns a random number or letter in the range of v1 and v2


There may be a special instance where you want to use and identifier in a command, having it parsed, but also having an option not to parse it. Adding $- in front of any identifier, will not parse it. For instance, //say The identifier for $-$date is $date will return, The identifier for $date is January 1,2007.

Copyright © IceChat Networks 1998-2018 All Rights Reserved.