Manual

jIRC applet Manual

For Version 2.7.0 and up

Quick Start
jIRC applet has a set of pre-defined properties for general usage.
These properties will work for most of the people.
To overwrite the default behaviour, one can pass the new parameters
value into applet through the HTML <param> tag.
For example:

<applet archive="jirc_nss.jar,resources.cab"
code="Chat.class" MAYSCRIPT>
.
..
....
<param name="Channel1" value="jpilot">
.
..
...
</applet>

The above example will  allow users to select a channel called "jpilot"
from the drop down list of the applet screen.
The following sections will explains in details of all the supported
parameters users can pass into applet.
 
 

Connection Related Parameters
These are the parameters that control the login information to IRC
servers.

Parameter Name (<param name="") Default Value (value="") Description
ServerName1, ServerName2 ..... N/A
(e.g irc.mit.edu)
IRC servers name. 
The total number of IRC servers you can supply is depend on the "TotalServersAllow"
parameter.
If TotalServersAllow=5, you can only have ServerName1, ServerName2,....,ServerName5
TotalServersAllow 20 see above
Chanel1, Channel2 N/A Similar to ServerName parameter, this case is for channel name.
TotalChannelsAllow 20 Total number of channels name webmaster can supply for users to select
from the drop down list. See also TotalServersAllow.
NickName Guest The nick name used to log into IRC server.
RealName Guest Your real name (optional)
NickNamePassword N/A Some IRC servers require a password for the nickname you want to use if it is already registered. Type in the nickname password here.
(WARNING: it is not safe to put password in html file
as people can always view your source. Consider DisplayConfigNickPass and
ask the user to type in the password ).
ServerPassword N/A Some IRC server requires a password; if that is the case put in the
password in here.
(WARNING: it is not safe to put password in html file
as people can always view your source. Consider DisplayConfigServerPass and
ask the user to type in the password ).
ChannelPassword N/A Some IRC channels require a key or password before it can allow user
to join; Setting the ChannelPassword parameter will help you to join such
channels.
(WARNING: it is not safe to put password in html file
as people can always view your source. Consider DisplayConfigChannelPass and
ask the user to type in the password ).
ServerPort 6667 Server port of the IRC server. You should not change this unless you
are really sure that the IRC server you are interested is running from
different port.
UserName "" This name will be sent to IRC server when the connection is first established.
This name will appear when you joining a channel. (e.g username@somewhere.com
join the Channel)
If you do not set any value for this parameter, jIRC will use your
nickname as the "username".
HostName localhost Set the hostname attribute during IRC during login process.
SocksAddress N/A DISALBED after version 2.8 See ProxyAddress

Your SOCKS4 server address in the format of "host:port"

ProxyAddress N/A There are currently two type of proxy supported, namely, the HTTP and SOCKS4

e.g value for http proxy http://myproxy.mycomany.com:8080
e.g value for socks proxy socks://mysocks.mycompany.com:8080
No user name password authentication is supported at this time, and anything other than "http://" or "socks://" will be ignored

NickAuthString "" A flexible way to do nickname authentication, this command will send before you
joining a channel( with your nickname password append to the end of the message).

e.g Your nickname identification is like
"/msg nickserv identify PASSWORT"
Then NickAuthString = "PRIVMSG nickserv :identify".

 

Color Related Parameters
Using the the following parameters, webmaster can basically change
the color combination of the applet component.
The color value can be any of the following:
white, black, blue, gray, gray, lightGray, yellow, green, orange, pink

OR a RGB value. ie. xxx,xxx,xxx where xxx is some numeric number.

Parameter Name (<param name="") Default Value (value="") Description
TextColor gray Default color of the message on the chat screen.
TextScreenColor lightGray Default color of the background of chat screen.
BackgroundColor lightGray The background color of the entire applet.
FGColor black The foreground color of the applet.
ListTextColor blue The user list foreground color.
ListScreenColor 234,233,209 The user list background color.
LogoBgColor white The background color of the logo component.
You should match it with your logo background color.
InputTextColor black The foreground color of the input text field.
InputScreenColor white The background color of the input text field.
ServerCmdColor 127,127,127 The IRC server related command message's color. Server related commands
like the login informaiton message, etc.
UserCmdColor blue IRC user related command message's color.
These include join or leaving a channel. Nick name change,etc.
ServerErrorColor red Server errror message color.
ActionColor red Action message color.
NickNameColor -1 The nickname color inside the <nickname> text. The valid value is from
0 to 15, same as the mIRC color code.
Set to "-1" if you don't plan to use this color.
TitleBackgroundColor white The background color of the title bar on top of the chat screen.
TitleForegroundColor black The foreground color of the title bar on top of the chat screen.
ConfigBorderColor white The color of the line surrunding config screen
LogoBorderColor white The color of the line surrunding logo screen

 

GUI and States Control
These parameters control what to display inside the applet and what
funtions are allow or disallow in the applet.

Parameter Name (<param name="") Default Value (value="") Description
DirectStart false When set it to true, applet will go to chat screen and connect to IRC
server directly and bypass the config screen. Mostly use with Javascript.
ConfigNickOnly false DISABLED after version 2.41
See DisplayConfig* paramters.
DisplayUserList true It controls the chat screen to include the User list or not.
By default, it is set to true.
DisplayConfigNick true It controls the config screen to include the Nick name field or not.
By default, it is set to true.
DisplayConfigNickPass true It controls the config screen to include the Nickname password field or not.
By default, it is set to false.
DisplayConfigChannel true It controls the config screen to include the Channel field or not.
By default, it is set to true.
DisplayConfigChannelPass false It controls the config screen to include the Channel password field or not.
By default, it is set to false.
DisplayConfigRealName true It controls the config screen to include the Real Name field or not.
By default, it is set to true.
DisplayConfigServer true It controls the config screen to include the Server field or not.
By default, it is set to true.
DisplayConfigServerPass false It controls the config screen to include the Server Password field or not.
By default, it is set to false.
DisplayConfigPort true It controls the config screen to include the Server Password field or not.
By default, it is set to true.
DisplayConfigMisc true It controls the config screen to include the URL and Identd checkbox or not.
By default, it is set to true.
DisplayConfigOK false Use this to control the OK button to show up or not.
DisplayConfigSocks false Controls the config screen to include SOCKS server field or not.
From version 2.8, it is to control the Proxy Address field.
DisplayColorControl true When set it to false, the color selection box will be hidden from the
chat screen.  By default, the color selection box will always appear
in chat screen.
DisplaySoundControl true When set it to false, the checkbox of playing audio file is hidden
from the chat screen.
DisplayAbout true Only for registered user. Setting this parameter to "false" will hide
the "About" button from the chat screen.
DisplayConnectButton true Use this only with DirectStart. By setting this to false, user has no connect
button to press. To start the chat, your html page MUST use DirectStart. There
is no way to disconnect from chat unless you leave the web page.
DisplayTitleBar true Controls the topic bar on top of the chat session to be displayed or not
DisplayTextInput true Controls input text field to be displayed or not. When set it to false, users will not be able to participate the talk at all.
RefreshColorCode true By default, after selecting a color code for a message, once the message is
sent, the color code will revert back to the default color. By setting this
parameter to "fase", will allow your users to continue using the color code he/she previously selected.
AllowURL true DISABLED after version 2.7
Replaced by AllowShowURL and AllowHyperLink.
AllowShowURL true Controls /showurl command's availability. When set to fase, /showurl command will be disabled.
AllowHyperLink true When set to false, clicking on the hyperlink inside the chat session will not popup a new browser windows.
AllowSound true When set it to false, applet will not play audio file when there is
a sound request.
isLimitedChannels false When set it to true, applet will remove the text field for user to
input the channel name; users have to pick the channel name from the drop
down list. This allow webmaster to have more control of channel listing
for the web site.
isLimitedServers false Similar to isLimitedChannel. When set it to false, user need to pick
the IRC server from the drop down list.
AllowIdentd true Allow jIRC applet to run a Identd process whenever connecting to a
IRC server. Without this process, some IRC server will deny access. 
AllowPrivateChatWindow true jIRC applet feature a private chat window when there is a private message
arrive. Set this parameter to false, will force all the messages appear
on the main chat area instead of popping up a seperate chat window.
AllowJoinSound true Allow playing a small sound file when user join the channel. The sound file
must be called "sound_join.au" but you can replace it with your own choice.
AllowLeaveSound true Allow playing a small sound file when user leave the channel. The sound file
must be called "sound_leave.au" but you can replace it with your own choice.
NickNChannelOnly false DISABLED after version 2.41.
See DisplayConfig* parameters.
IgnoreLevel 0 DISABLED after version 2.5.
See IgnoreMOTD, IgnoreServerMsg, IgnoreChannelChangeMsg, IgnoreModeMsg.
IgnoreMOTD false Ignore "Message Of The Day" MOTD from the server if set it to "true"
IgnoreChannelChangeMsg false Ignore all the join/part/leave message of the current channel if set
it to "true".
IgnoreServerMsg false Ignore all the misc. IRC messages from the server if set
it to "true". The idea is to hide the detail of IRC server information from
the newbie users.
IgnoreModeMsg false Ignore all the Channel or User Mode change messages if set
it to "true". The user list on the right will still reflect the changes(e.g @ or + sign change ).
IgnoreCode "" Ignore IRC message based on the response code or keyword, like 100 or JOIN.
You should have good IRC knowledege before using this, improper use of this
will result in unpredictable behaviour in your applet.
IgnoreUser ignore user : Setting the wording when ignoing a user( press the ignore button from private chat
window).
ActivateUser activate user: Setting the wording when activate a user from ignore mode.
AliasList N/A This parameter allows you to create you own alias command list.
The format is
"/alias1=/cmd1,/alias2=/cmd2"
The cmd1 and cmd 2 is the original regular IRC commands you will normally use.
Notice that there is no space around "=" and ",".
FilterKeys   This parameters is used conjunction with FilterVals.
It defined a set of "string or emotions" that will be matched into a image
icon and displayed on the screen. Each string is seprated by a white space.
The actual images will need to be matched from FilterVals parameter with exact order.
e.g
":) :( :P :D"

FilterVals   This parameters is used conjunction with FilterKeys.
It defined a set of "image file" that will be displayed on the screen when
applet encounter the string pre-defined in FilterKeys parameter.
e.g
"smile.gif frown.gif tongue.gif biggrin.gif"
With the example from the FilterKeys, it basically tells the applet to replace
":)" with a image called smile.gif etc ....
Feel free to use your own image icon to replac what we included in the download
package. But please be aware of the image size.
All the icon images in our package is best viewed under "Monospace" font with
a size of 12. If you use different size image, you many want to adjust
the font type and size accordingly such that they will still occupy one line.
Unless you have a very big image want to display which most likely will
occupy more than 1 line ....

Do not use big size images or setting too many icons string, as it may slow
down the applet initialization time.

NoConfig false When set it to true, once the user enter the chat, the config button
will be hidden. This parameter is helpful if you don't want your user to
change default setting you set up for them. Mostly this parameter is used
with Javascript.
BorderVsp 5 The vertical space gap between each components inside the applet.
BorderHsp 5 The horizontal space gap between each components inside the applet.
BorderSpacing 0 The space of the border surrounding the applet. By default, there is no
such border.
LogoWidth 52 The width of the logo picture. (IRClogo.gif)
LogoHeight 90 The height of the logo picture.(IRClogo.gif)
UserListWidth N/A Use this parameter to specify the width of the User list. With wider
User list, the chat screen will become narrower. Notice that the User list has
a minimum size so setting UserListWidth too small will have no effect on
the layout. It is suggested to set to 130 or above.
PWindowHeight 600 The height of the private chat window.
PWindowWidth 400 The width of the private chat window.
UseModeIcons false When set to true, applet will use image icons to represent each user mode status on user list screen.
It is not recommend to set UseModeIcons true when connecting to a channel that has very large number of users as it may slow down
some PC's performance.
UserPrefixCommand aohv The string represent the supported user mode type by the applet as seen in PREFIX connection line. The length of this paramater must match with UserPrefixSymbol.
UserPrefixSymbol !@%+ The string represent the supported user mode type by the applet as seen in PREFIX connection line. The length of this paramater must match with UserPrefixCommand.
UserListBufferPageSize 12 The area/size that hold the user listing. In general, the more users you have in your channel, the higher value you want to set in this parameter. The default value of 12 is good enough for many cases.
However, if you know your number of users in the channel is 100+ and you are experiencing strange user list refresh problems, set this parameter to a higher value.
AvatarList N/A A image can be displayed in replace of the nickname on the chat screen.
AvatarList parameter is used to indicate which user will use this avatar image.
Each nickname value inside AvatarList is seperated by ",".
Onec the nickname is indicated as avatar type image, applet will look at image
directory for appropriate image when rendering the nickname.
The avatar image filename is in the format of "user_lowercase_nickname.gif" and must be stored in applet_images/ subdirectory.
All avatar images must be in the same size and they are controlled by AvatarHeight and AvatarWidth parameters.
AvatarWidth 32 The width of the avatar image. All avatar images must be using the same
width, otherwise they will be scaled to the size indicated in the parameter..
AvatarHeight 32 The width of the avatar image. All avatar images must be using the same
height, otherwise they will be scaled to the size indicated in the parameter..
AllowAddressDisplay true AllowAddressDisplay is used to disable or enable the display of user IP address when first joining a channel.

 

Label wordings
These paramers are used for the label and button's text. Changing these
value will allow you to set different wordings and or different language.

Parameter Name (<param name="") Default Value (value="") Description
FieldNameNick Nick Name: N/A
FieldNameNickPassword NickName Password: N/A
FieldNameChannel Channel: N/A
FieldNameChannelPassword Channel Password: N/A
FieldNameReal Real Name: N/A
FieldNameServer Server Name: N/A
FieldNameServerPassword Server Password: N/A
FieldNamePort Server Port: N/A
FieldNameURL Display URL N/A
FieldNameIdentd Enable Identd N/A
FieldNameConnectNow Connect Now! N/A
FieldNameCancel Cancel N/A
FieldNameAbout About N/A
FieldNameConfig Config N/A
FieldNameConnect Connect N/A
FieldNameDisconnect Disconnect N/A
FieldNameTitlePeople people N/A
FieldNameTitleTopic TOPIC N/A
FieldNameAudio Play Audio N/A
FieldNamePrivateClose Close Close button on private chat window
FieldNamePrivateChatTitle Chat with: Title of private chat window
FieldNameConnecting Connecting to server, port Connecting message
FieldNameConnected Connected, please wait.... Message to display when first connected to the server
FieldNameConnectionClose Connection close. Message to display when connection to server is closed
FieldNameChannelJoined just entered the channel Message to display when someone just join the channel.
FieldNameChannelLeft just left the channel Message to display when someone just left the channel.
FieldNameOwnChannelLeft you just left the channel Message to display when you just left the channel.
FieldNameNickNotify has changed his/her nickname to Message to display when someone changed the nickname.
FieldNameProfileButton View Profile Profile button's label
FieldNameQuitMsg Leaving Message to send to server when leaving the channel or server.
FieldNameOK OK The text on the OK button.
FieldNameSocks N/A The lable for the SOCKS server address field.
From version 2.8, it is the lable for Proxy Address field.
FieldNamePrivateIgnore Ignore This User Setting the wordings on the ignore button of the private chat window.
FieldNameConsole MAIN The console name on user list that the default messages will go to.

 

Misc

Parameter Name (<param name="") Default Value (value="") Description
WelcomeMessage Welcome to JPilot jIRC ! This is the first line of message that will appear on the chat screen.
NOS true This parameter control the applet to request "Netscape Capabilities
Permission" or not. By default, if you are using Netscape browser, it is
set to true.
If you set it to false, Netscpae browser's user can only connect to
the IRC server that is hosted on the same machine of the host that the
applet is downloaded from and no Identd process can be started.
InitCommands N/A After a user successfully login into a IRC channel, jIRC will execute
the commands that is set in this parameter.
Each commands is seperated by ";"
e.g "Hello everybody!;/msg DrCool I am here.... ;/topic"
TextFontSize 12 The default font size we use for all the chat message.
TextFontName Helvetica The default font name we use for all the chat message.
There are other common ones:
Courier, Arial, Dialog .....
AcceptCommands true It is possible to make the applet not to accept any IRC commands. This
can be done by setting this parameter to false. Only /quit, /msg, /s 
commands are still allowed at anytime.
SoundMsg Play Sound The message will be displayed when someone play a sound file by issuing the /s command.
NickMaskStart < The left string surrounding the nickname.
NickMaskEnd > The right string surrounding the nickname.
AllowTimeStamp false When set to true, applet will prefix each messge with a current timestamp.
TimeStampFormat hh:mm a Define the timstamp format to be displayed. Must use with AllowTimeStamp(when set to true).
See Java docs API for more information
ScreenBufferPageSize 3 The number of pages the scroll bar can go back. Do not change this number to a high value when you also have high frequency animated gifs. Setting the value too high may slow down the applet performance in some PC.
URLWindowName N/A Any popup windows applet create will go to this specific named windows. New browser windows will be created if it does not exists before.
LogoGifName IRClogo.gif The gif file name of the logo appears on the config screen.
UserProfileURL N/A When defined, veiw profile button will be appeared on the private chat windows for users to see other member's profile.
Webmasters need to implement their own cgi type program, applet will append the nickname value user selected to the end of the defined url.

e.g http://www.somesite.com/profiel.cgi?nick

EncodeMethod   To better support international language especially the two bytes encoding
characters, jIRC now can be forced to use different encoding method to receive
messages from outside. For example, set it to "big5" will use Traditional Chinese encoding method.
Leave it blank will make jIRC applet use the default enconding method decided
by the browser set up. If you don't care about two bytes characters, please
do not set anything to it.
UseImageButton true Enable or disable image buttons
Available image buttons are stored inside resources.zip and resources.cab .
Images included: button_config.gif, button_ok.gif, button_connectnow.gif, button_connection_0.gif, button_connection_1.gif, button_cancel.gif, button_close.gif, button_bold_0.gif, button_bold_1.gif
UserMenuList N/A UserMenuList paramter is used for creating user popup menu.
Example : "Send File=/dccsend %$HN,Private Message=/msg %$HN,Ignore=/ignore %$HN,Whois=/whois %$HN,See User Profile=/showprofile %$HN"

Each menu is seperated by "," and each menu is further seperated by "=". Value on the left of the "=" sign is the message appears on the popup menu, value on the right of the "=" is the actual command.

CopyMethod JVM There are two ways to do that, depends on the parameter of "CopyMethod".

If CopyMethod parameter is set to "JVM", the text is directly save into user computer's system clipboard. And can be paste into any other application using application's paste command. This feature require user to accept our digitally signed certificate. For those people who use jirc_pure.jar version, this method will not work for them. See next line for solution.

If CopyMethod parameter is set to "JS", the text will be sent to a javascript function called "jirc_copytext" as one of the argument. The javascript function will then print out a simple window with the copied text user selected from chat screen, and user can further copy from that window just like any HTML content.

The javascript function can be found in our download zip file, it is stored in the file called "cp.js". Make sure this javascript function or your modified version being referenced in your HTML content if the copy mehtod rely on javascript.

AllowDCCTransfer false Experimental DCC file transfer is supported, controlled by AllowDCCTransfer paramter. Seperate popup windows will appear when the AllowDCCTransfer is set to true and DCC file trasfter request is send or recieve.
All received files extension will first added ".rmext" extension; user need to manually remove this extra extension. This is to prevent double clicking untrusted materials accidentally.
DCCStartPort 5000 This parameter allows webmaster to assign the starting port for sending DCC file, helping user more easily to configure the home firewall if there is any.
AllowMultiChannels false With AllowMultiChannels parameter set to true, a /join command will not force the users to leave their cuurent channel.
Rooms will appear on the same user list component on the right with a tree structure.
RoomMenuList N/A Similar to UserMenuList, RoomMenuList parameter is used to support the right
click action on a room.
Example: Switch to=/join %$HC,Leave=/part %$HC,Open list=/userlist_open %$HC,Close list=/userlist_close %$HC"

 

jIRC Commands

There following commands are supported by jIRC applet. All IRC commands
are start with "/".  Some of the commands below are for jIRC applet
only, some are common IRC commands that usrs may frequently use.

Command Description
/clear Clear the chat message screen.
/nick 'nick_name' Change your current nick name to a new 'nick_name'
/join '#new_channel_name' Leave your current channel and join a new channel.
Remember to supply "#" at the begining of your channel name.
/quit 'optional good bye message' Leave your current channel and disconnect from IRC network.
/msg 'nick' 'your message' Send a private message to a user with nick name 'nick'
/me Display the message in action format. 
/topic ; /topic '#channel' 'your topic' Display your current channel's topic or set your channel's topic
/ctcp 'nick_name' 'command' CTCP command includes "version", "clientinfo", "time", "echo"
/showurl 'http://someurl.com' Pop up a new browser window with the given URL content
/s 'sound_file' Play an audio file from the web server. The audio file name is "sound_flie.au"
in this case and must be located on the same directory of your applet file.
"%C4message %C9,3this is color"
"%BThis is bold, %Rthis is reverse, %Uthis is underline"
This is a special way to create multiple color within single message.
Use the "%C" to indicate a color code ( equevalent to Crl-K in mIRC).


%B equivalent to Bold (Crl-B) in mIRC
%R equivalent to Reverse (Crl-R) in mIRC
%U equivalent to Underline (Crl-U) in mIRC
%O equivalent to Normalized (Crl-O) in mIRC

%$N, %$C, %$HN These special variables will be replaced by your current nickname, current
channel you are in, and the hightlighted nickname. This can make JavaScript
LiveConnect more easily to implement.
Notice that there must be white space before and after these variables,
otherwise the applet won't recognize them.


LiveConnect API
What is LiveConnect ?
"LiveConnect" is the term used by Netspape to describe
the way JavaScript talk to Java Applet(IE also supports this).

The only available method open to JavaScript at this time is the
"processJInput(String)" method.

This is identical to typing something in the input text field.
You can use this method to send message or issue command (e.g "/commad param").

Please take a look of our one of our demo html source if you haven't done so
before.
For more in-depth explanation of JavaScript to Applet communication, please
visit this Netscape web site, the discussion over there generally also apply to IE.