# The &kmyapplication; Handbook

Gary
R.
Cramblitt
garycramblitt@comcast.net
2003, 2004
Gary R. Cramblitt
&FDLNotice;
2004-11-14
0.15

&kmyapplication; is a user-friendly &irc; client for the K Desktop Environment.

KDE
kdeextragear-2
Konversation
irc
internet relay chat
chat
communications

## Introduction

&kmyapplication; is an &irc; client for KDE 3.2 or later. It offers the following features:

- User-friendly tabbed interface.

- Customizable Quick Buttons for often-used commands

- Automatic reconnect and rejoin.

- DCC send and receive.

- &Nickname; watch list.

- Visual and auditory notifications for a wide variety of events, such as messages containing your &nickname;, or &nickname;s on your watch list going online or offline.

- Customizable highlighting of messages by &nickname;.

- &Nickname; completion.

- Capture and save all &URL;s appearing in messages.

- On-screen display of messages, even when minimized.

- &Nickname; ignore list.

- Flooding protection.

- Automatic logging and log management.

- Marking of lines in logs.

- Scripting.

- Integration with KAddressBook.

The &kmyapplication; website is www.konversation.org. Questions and answers for &kmyapplication; can be discussed on the Konversation-Users mailing list. Please subscribe to learn about new features, bug reports and the like. To stay informed of new releases, you can join our Konversation-Announce mailing list. This is a low volume mailing list only used to announce new releases or patches.

Developers for &kmyapplication; can often be contacted via &irc; at irc.kde.org channel #konversation.

## Using &kmyapplication;

### If you haven't used &irc; before...

Simply put, &irc; is a chat protocol, defined by official Internet standards, and capable of stealing many hours of your life. To use &irc;, you must connect to a server, and then join a channel (equivalent to a chat room) or just engage in private conversations.

To connect to a server and channel, open &kmyapplication;. The Server List screen appears.

Server List Server List

The list of configured &irc; Networks are listed here. An &irc; network is a collection of cooperating servers. You need only connect to one of the servers in the network to be connected to the entire &irc; network. Once connected, &kmyapplication; will automatically join the Channels shown. When &kmyapplication; is started for the first time, the `Freenode` network and `#kde` channel are already entered for you. Click on a network to select it.

Click here to define a new Network, including the server to connect to, and the Channels to automatically join once connected. See Defining new networks, servers, and auto join channels for more information.

Click here to connect to the selected &irc; network and channel.

When you click the Connect button the first time you open &kmyapplication;, you may see the following message, telling you that your default identity is not set up correctly.

Check Identities Check Identities

The first time you open &kmyapplication; it obtains information about the current user from the operating system and fills in defaults for the Identity. If the operating system user information is not complete, for example, no Full Name is defined, you may see the message above. To correct this problem, click OK and see Setting your identity for more information.

The Main screen will be displayed showing the messages sent by the server to the client. (If &kmyapplication; will not connect to the server, see Questions and Answers.) When the server messages have finished scrolling past, &kmyapplication; will join the channel or channels chosen.

Channel. Channel

This is called the Input Line. To send a message to everyone in the channel, type the message here and press &Enter;. Your message, as well as everyone else's messages appear in the channel scroll above. Each message is preceded by the time and user's &nickname;.

You may join additional servers and channels. Each server, channel, channel list, and other screen gets a separate tab here. To display a list of available channels, see Listing available channels. To join a channel, type: ``/join` #channelname` in the Input Line. (The `#` is required.) You may also type ``/j`` as a shorthand to ``/join``. To leave a channel, just type ``/part``. To switch the display to a different server or channel, click the corresponding tab.

This is called the Nick Panel. It lists the &nickname;s of all the users who have joined the channel, including yourself.

That's the basics, for more detailed information, read on...

### Setting your identity

Before you start using &kmyapplication; regularly, you should set how you will be identified on the network.

Click File Identities on the main menu. The Identities screen will appear. You can also display the Identities screen by clicking the Edit button on the Add Network screen.

Identities (General tab) Identities (General tab)

Click here to select an Identity to edit.

Use these buttons to add, duplicate, rename, or remove an Identity.

Enter your real name here. &irc; is not intended to keep you hidden from your friends or enemies. Keep this in mind if you are tempted to behave maliciously. A fake "real name" can be a good way to mask your gender from all the nerds out there, but the PC you use can always be traced so you will never be truly anonymous.

Use these buttons to Add, Edit, or Delete a &nickname;.

This is your list of &nickname;s. A &nickname; is the name that other users will know you by. You may use any name you desire. The first character must be a letter. Other characters may be letters, numbers, or the special characters `-[]\`_^{}|`.

Since &nickname;s must be unique across an entire &irc; network, your desired name may be rejected by the server because someone else is already using that &nickname;. Enter alternate &nickname;s for yourself. If your first choice is rejected by the server, &kmyapplication; will try the alternate &nickname;s.

According to RFC 2812, the maximum &nickname; length is 9, but this is actually determined by the server. To determine the maximum for a server, connect to the server. In the Server Messages tab, look for a `[Support]` message. For example

`[18:51] *Eisfuchs* [21:45] [Support] Eisfuchs MODES=4 MAXCHANNELS=20 NICKLEN=16 USERLEN=10 HOSTLEN=63 TOPICLEN=450 KICKLEN=450 CHANNELLEN=30 KEYLEN=23 CHANTYPES=# PREFIX=@+ CASEMAPPING=ascii CAPAB IRCD=dancer`

The `NICKLEN` parameter specifies the maximum &nickname; length.

Use these buttons to change the order of the &nickname;s. The top &nickname; is tried first, then the next &nickname;, and so on.

If you have registered your &nickname; with the &irc; network, enter the service and password to authenticate your &nickname;. When &kmyapplication; connects, it will automatically send ``/msg` service `IDENTIFY` password` to the server. If you don't know what this is, leave these boxes blank.

Click the Away tab.

Identities (Away tab) Identities (Away tab)

Enter a &nickname; that indicates you are away. Whenever you perform an ``/away` msg` command in any channel joined with this Identity, &kmyapplication; will automatically change your &nickname; to the Away nickname. Other users will be able to tell you are away from your computer. Whenever you perform an ``/away`` command in any channel in which you are away, &kmyapplication; will automatically change your &nickname; back to the original. If you do not wish to automatically change your &nickname; when going away, leave blank.

If you check this box, whenever you perform an ``/away`` command, a horizontal line will appear in the channel, marking the point where you went away. Other &irc; users do not see this horizontal line.

If you check this box, &kmyapplication; will automatically send the Away message: to all channels joined with this Identity:. `%s` is replaced with `msg`. Whenever you perform an ``/away`` command, the Return message will be displayed in all channels joined with this Identity.

Away messages are often considered annoying by other users. Use this option carefully, with consideration for your fellow &irc; users.

Click the Advanced tab.

Identities (Advanced tab) Identities (Advanced tab)

This setting affects how characters you type are encoded for sending to the server. It also affects how messages are displayed. When you first open &kmyapplication;, it automatically retrieves this setting from the operating system. If you seem to be having trouble seeing other user's messages correctly, try changing this setting.

When you connect, many servers query your computer for an IDENT response. If you computer is not running an IDENT server, this response is sent by &kmyapplication;. No spaces are allowed. Your first name is suggested.

Whenever you leave a channel, this message is sent to the channel.

Whenever you are kicked from a channel (usually by an &irc; operator), this message is sent to the channel.

Click to apply your changes. In order for all the changes to take effect, you must disconnect from the server and re-connect. The easiest way to do that is to quit &kmyapplication; and restart.

### Defining new networks, servers and auto join channels

The Server List screen appears when you open the &kmyapplication; program. It also appears when you choose File Server List on the main menu. The Server List screen lists your existing defined &irc; Networks, listed by group. An &irc; network is a collection of cooperating servers. When you connect to any server in a network, you have access to all the channels of the network. Examples of &irc; networks are `Freenode` and `Undernet`.

Server List Server List

Your existing defined Networks are listed here along with the Identity used to connect to the network, and the Channels automatically joined when connected. If you have specified a group for your networks, networks are listed indented under the group. Click on a network to select it.

Use these buttons to Add a new network, Edit a highlighted network, or Delete a highlighted network.

Click this button to connect to the highlighted Network and close the Server List screen. You may highlight more than one network if you wish, which will connect to all the highlighted networks.

Clicking this button does not discard the changes you have made. It merely means you do not wish to connect to any networks at this time.

When you click the Add button, the Add Network screen appears.

Add Network Add Network

Enter the name of the Network here. You may create as many entries in the Server List screen with the same Network as you like.

Optional. If you enter something here, all the Networks with the same Group will be listed together in the Server List screen.

Choose an existing Identity or click the Edit button to add a new Identity or edit an existing one. The Identity will identify you and determine your &nickname; when you connect to the network.

Optional. This command will be sent to the server after connecting. Example: `/msg NickServ IDENTIFY konvirocks`. This example is for the freenode network, which requires users to register their &nickname; with a password and login when connecting. `konvirocks` is the password for the &nickname; given in Identity. You may enter more than one command by separating them with semicolons.

Check here if you want &kmyapplication; to automatically connect to this network whenever you open &kmyapplication;.

This is a list of &irc; Servers in the network. When connecting to the network, &kmyapplication; will attempt to connect to the top server first. If this fails, it will attempt the second server. If this fails, it will attempt the third, and so on. At least one server must be specified. Click a server to highlight it.

Use these buttons to Add a server, Edit a highlighted server, or Delete a highlighted server. You can also adjust the order of the server list and therefore the order of connection attempts.

Optional. This is a list of the channels that will be automatically joined once &kmyapplication; has connected to a server. You may leave this blank if you wish to not automatically join any channels.

Use these buttons to Add a channel, Edit a highlighted channel, or Delete a highlighted channel. You may also change the order the channels are joined.

Avoid mixing servers on different &irc; networks under the same Network. Avoid entering the same server under two different Networks. Otherwise, &kmyapplication; integration with your address book and monitoring of online &nickname;s will not function correctly.

When you click the Add button in the Servers frame, the Add Server screen appears.

Add Server Add Server

The name or IP number of the server. irchelp.org maintains a list of servers.

Enter the port number required to connect to the server. For most servers, this should be `6667`.

If the server requires a password in order to connect, enter it here, otherwise leave blank.

Check if you want to use Secure Socket Layer (SSL) protocol to communicate with the server. This protects the privacy of your communications between your computer and the &irc; server. The server must support SSL protocol for this to work. In most cases, if the server does not support SSL, the connection will fail.

When you click the Add button in the Auto Join Channels frame, the Add Channel screen appears.

Add Channel Add Channel

Enter a channel name. Do not forget leading `#`. If the channel requires a password in order to join, enter it, otherwise leave blank.

### Listing available channels

To display a list of available channels, choose Windows Channel List on the main menu. After a warning screen, a new tab is created called the Channel List.

The Channel List tab. The Channel List tab.

Enter a filter string here.

You can limit the channel list to those channels with a minimum or maximum number of users here. Choosing 0 disables the respective criteria.

Click here to retrieve the list of channels from the server and apply the filter.

The filtered list of channels is displayed here. Notice that if you don't use regular expressions, &kmyapplication; lists any channel whose name contains the filter string you entered. The channel name does not have to start with the string you entered.

Select a channel you want to join by clicking on it. Right click on the channel to get a list of all web addresses mentioned in the channel's topic.

Click here to join the channel. A new tab is created for the channel.

You should avoid clicking the Refresh List button. Most servers have thousands of channels, and performing this puts a high load on the server. Besides, it can require several minutes to complete, depending upon your network bandwidth. If your client is too slow, the server may even disconnect you.

Sometimes there are "secret" channels on servers. Such channels are not listed in the Channel List. You can still join these channels if you know their name. In any Input Line, type: ``/join` #channelname`. (The `#` is required.) A new tab is created for the channel. If you join a channel and the Nick Panel lists only your &nickname;, it means that the channel did not exist before. The server created the channel and you are the operator. In this case, you probably want to close the channel by typing: ``/part``.

### A tour of the main screen

Let's learn more about the Main screen. The screen is shown below with a channel tab selected.

The Main screen. The Main screen

This is called the Input Line. It appears only when the current tab is a channel. To send a message to everyone in the channel, type the message here and press &Enter;. Your message, as well as everyone else's messages appear in the channel scroll above. Each message is preceded by the time and user's &nickname;.

You can also paste text from the clipboard. If the pasted text has more than one line (newlines), a dialog box appears. Edit the text as desired and click OK.

If the pasted text is longer than 256 characters, or it contains more than one line, a warning message appears advising you that large postings can cause connection resets and flooding. You can still proceed with the input, but doing so is a bad idea, as flooding will annoy other users in the channel, or you may be disconnected from the server. It is better to send the message in shorter chunks.

A convention used in many channels is to precede messages directed at one user with their &nickname;. &kmyapplication; provides a convenient &nickname; completion feature. Start typing the user's &nickname;, then press Tab. &kmyapplication; will complete the rest of the user's &nickname; followed by a colon.

You can also enter an &irc; command here by first typing ``/`` followed by a valid &irc; command. See Frequently-used &irc; commands. On some servers, you can type ``/help`` for a list of available commands, or type ``/help` command` for help on a specific command.

You may join additional servers and channels. Each server and each channel gets a separate tab here. To display a list of available channels, see Listing available channels. To join a channel, type: ``/join` #channelname` in the Input Line. (The `#` is required.) To leave a channel, just type ``/part``. Tabs also appear here if you open a Channel List, participate in a private conversation (query), open the URL Catcher, or open one or more Konsoles. To switch the display to a different screen, click the corresponding tab, or use the mouse wheel to cycle through the tabs.

These &led;s will blink when there is something you haven't seen in that tab. The &led; will blink slower when the only unseen messages are `join`, `part`, `quit`, or &nickname; changes. They blink faster if there are unseen regular messages. The colors are as follows:

- Channel

- Server Messages, Channel List, or URL catcher

- Konsole or DCC Status.

- Private Message (Query).

Click here to close the current tab. Closing a Channel tab will leave the channel. Closing a Server Messages tab will leave all channels you've joined, close all open queries at that server and disconnect from the server.

Click this button to change your own &nickname;. It appears only when the current tab is a channel.

If you are a channel operator, or the channel mode "Topic protection (+t)" is not set, you can change the topic of the channel here.

These buttons display the current state of channel modes. A button is down if that mode is on. If you have the correct privileges, you can also change channel modes by clicking on these buttons.

This is called the Nick Panel. It is displayed whenever the current tab is a channel. It lists the &nickname;s of all the users who have joined the channel, including yourself. The colors of the &led;s next to each &nickname; are as follows:

- normal user

- voiced user. User may talk in a moderated channel.

- channel halfop

- channel operator

- channel owner

- channel admin

In addition, if a user is away, a small red cross will be drawn atop of the icon.

Click with the &RMB; on any &nickname; to display a context menu of operations you can perform with that &nickname;. For example, you can send a file to the &nickname;. This is also the place where you can associate a &nickname; to a contact in your address book.

These are called the Quick Buttons. By default, they are not shown. To display them, see Configuring Quick Buttons. You can customize their definitions to whatever commands you wish.

Note: Channel names sometimes begin with `&`, `&plus;`, or `!`. The first character of a channel name determines the type of channel (RFC 2811) as follows:

- `#` - Regular channels.

- `!` - Regular channels.

- `&` - Local. Channels that can only be joined from the server hosting the channel. All other channels can be joined from any server in the network.

- `&plus;` - Channels that do not support channel modes. This means that all the modes are unset, with the exception of the 't' channel flag which is set.

Channel names are up to 50 characters long and may contain any characters except for space, comma, and Ctrl-G.

### Quick Connect

Sometimes you want to connect to a server without going through the trouble of creating a new server in the Server List.

Choose File Quick Connect on the main menu. The Quick Connect screen will appear.

The Quick Connect screen. The Quick Connect screen

Enter the server address in the Server host box, your desired &nickname; in the Nick box, and click the Connect button. When &kmyapplication; has connected to the server, enter command ``/join` #channelname` to join a channel.

### Frequently-used &irc; commands

The following is a short list of frequently-used &irc; commands. See RFC 2812 for a complete list of all commands, or visit irchelp.org. For a list of commands treated specially by &kmyapplication;, see Konversation commands

``/help``

  Lists commands available on the current server. Not supported by all servers.

``/help` cmd`

  Provides help for `cmd`. Not supported by all servers.

``/join #channel``

  Joins `#channel`. If the channel does not already exist, it is created and you are the channel operator.

``/part``

  Leaves the current channel and closes the channel tab.

``/part` #channel`

  Leaves `#channel` and closes the corresponding channel tab. Synonym for ``/leave``

``/me` msg`

  Sends `msg` to the channel preceded by your &nickname;. For example, if your &nickname; were `Tux`, typing `/me brews a cup a tea.` displays the message Tux brews a cup of tea. Unless they've filtered against these types of messages, all users see it. This kind of message is typically used to convey non-verbal information, such as your current emotional state, or what you are physically doing. If you are leaving your workstation for a short time, use the /away command instead.

``/away` msg`

  If anyone tries to send you a private message or invite you to a channel, they will be told that you are away from your workstation with `msg`.

``/away``

  Cancels an ``/away` msg` command.

``/query` nick`

  Creates a new tab with the user's `nick` for private conversation, commonly known on IRC as a Query. Everything written here is only visible to you and your query partner.

``/msg` nick msg`

  Sends `msg` to the user with &nickname; `nick`. Only `nick` sees the message. Use ``/query`` for longer conversations.

``/invite` nick`

  Invites the user with &nickname; `nick` to join a channel. This command is especially useful if the channel is invite-only.

### Private conversations (queries)

A private conversation is one that only you and one other person can see. Private conversations are called "queries" in &kmyapplication;. To initiate a private conversation, type ``/query` nick` in any input line, where nick is the &nickname; of the person you want to talk with. You can also click with the &RMB; on the person's &nickname; in the Nick Panel and choose Open Query A new tab will be created. Announce yourself by sending a message.

Queries are just like channels, except that only you and the other person can participate in the channel.

To leave the query, just close the tab. Note however, that if the other person sends you another message in the query, the tab will open again.

To leave all queries, choose Window Close All Open Queries on the main menu, or press press F11.

When someone else initiates a query with you, &kmyapplication; creates a new tab with their &nickname;. If you don't wish to talk with the person, close the tab.

### Setting notifications

Notifications are actions that &kmyapplication; will perform whenever an event occurs. Suppose you have &kmyapplication; running, but minimized or hidden behind other application windows on your desktop. If someone wants to communicate with you, or your buddy joins a channel, you'd like to be alerted. Notifications will accomplish this.

To configure notifications, choose Settings Configure Notifications on the main menu. The Notification Settings screen will appear.

Immediately click the More Options button.

The Notification Settings screen. The Notification Settings screen

Click here to select an event.

Check the types of notifications you'd like to happen when the event occurs. (Mark taskbar entry causes the entry in the taskbar to flash when the event occurs.)

Repeat by selecting another event and checking the notifications desired. When you've configured all the desired notifications, click the Apply button.

Once you've set up your notifications, you can enable or disable all notification actions here. For example, you can choose to play a sound whenever your &nickname; is mentioned in a message. When you are at your workstation, you can disable the sounds, but while you are away from your workstation but nearby, you can enable the sounds in order to get your attention.

### Monitoring who is online

&kmyapplication; will keep you informed when your buddies are connected to the &irc; network or not.

You can associate online &nickname;s with contact entries in your address book. When you do this, the &nickname; and &irc; network where the &nickname; is online are entered into the contact in the address book. The &irc; network is recorded because &nickname;s are unique across a single &irc; network. The &nickname; in two different &irc; networks is not necessarily the same person, but the same &nickname; on two different servers within the same &irc; network generally is the same person.

This is why it is important to use the same Network for all servers in the same &irc; network, when defining networks, servers, and auto join channels.

You can also define &nickname;s you want watched that are not in your address book. In this case also, each &nickname; has an associated &irc; network. See below.

To activate the &nickname; watching feature, choose Windows Watched Nicks Online on the main menu. The Watched Nicks Online screen will appear.

Watched Nicks Online. Watched Nicks Online

The &nickname;s in your watch list and also the &nickname;s associated with entries in your address book are listed here. They are listed under their associated &irc; network. If no &nickname;s are listed, either you haven't specified any &nickname;s to watch, or you need to activate the &nickname; watching feature (see below). Expand each online &nickname; to see a list of channels the &nickname; has joined. The icons next to each channel are the same as the icons that appear in the Nick Panel in the channel screens.

The information known about the &nickname; is displayed here. When the Watched Nicks Online screen is first displayed, this information is sparse. Every 8 seconds, one ``WHOIS`` command is automatically sent to the server to request information for &nickname;s that do not have any information. This continues until all &nickname;s have information.

Nicknames that are not connected to any of the &irc; networks you are connected to are listed in the Offline part of the listing.

Nicknames that are associated with a contact entry in your address book have this icon () next to their information.

Use these buttons to associate a &nickname; with a contact in your address book, remove an association, or open the address book to edit the contact information. See the KAddressBook Handbook for additional instructions on using the KDE address book.

To add additional &nickname;s to watch, click the Edit Watch List button. The Watched Nicknames screen appears.

Watched Nicknames Watched Nicknames

Check this box to activate the nickname watcher feature.

If you want the Watched Nicks Online screen to automatically display when you open &kmyapplication;, check this box.

The &nickname;s of the users you want to monitor are listed here. Each &nickname; has an associated &irc; network.

Click these buttons to add or remove &nickname;s from the list.

The Watched Nicks Online feature works by periodically polling the server. This box sets how often that occurs. Avoid numbers less than 20 seconds because it places excessive load on the server.

In the Watched Nicks Online screen above, you may double click on any &nickname; and this command will be sent to the server. ``%u`` will be replaced with the &nickname;. The ``%n`` is required at the end of the command.

Click the OK button when you have finished adding or removing &nickname;s.

Note: Whenever you display the Watched Nicks Online screen, it may take a while before any &nickname;s are displayed until &kmyapplication; has polled the server. Normally, you leave the Watched Nicks Online screen running.

&kmyapplication; also displays a message in all the channels whenever a user in your Watched Nicknames list connects or disconnects from the server. The message looks like this:

`[17:52] [Notify] psn is online (irc.kde.org).`

### Configuring On Screen Display (&osd;)

On Screen Display (&osd;) is a unique feature of &kmyapplication;. With &osd; turned on, channel messages will appear on your desktop screen, even if &kmyapplication; is minimized. Here's an example of &osd; in action. The message in the upper lefthand part of the screen is from &kmyapplication;, which is running minimized in the system tray.

Example of On Screen Display Example of On Screen Display

To activate &osd;, choose Settings Configure &kmyapplication; on the main menu. The Edit Preferences screen will appear.

The On Screen Display screen. The On Screen Display screen

Click here to expand the Notification item.

Click here to select the On Screen Display screen.

Check this box to activate &osd;.

Click this button to choose a font for &osd;. (Note: Not all fonts work. Luxi Sans 22 and Impact 22 are known to work.)

Check the boxes here to select the types of messages you'd like to appear on screen, then click the Apply button.

### Sending colorful messages

You can add color to the messages you send in any channel. In the Input Line of any channel, start typing your message. Click the Insert IRC Color Button Insert IRC Color button or choose Insert IRC Color on the main menu. The IRC Color Chooser screen will appear.

The IRC Color Chooser screen. The IRC Color Chooser screen

Choose a color and click OK. Continue typing your message in the Input Line. To change the color again, click the Insert IRC Color button. Choose a different color and click OK.

### Configuring Quick Buttons

You can enable a feature to display Quick Buttons on the Main screen, eight Quick Buttons appear. The buttons may be customized to your liking for performing often-used &irc; commands. To customize the Quick Buttons, choose Settings Configure Konversation on the main menu. The Edit Preferences screen will appear. Click Behavior to expand it, then click Quick Buttons to display the Quick Buttons screen.

The Quick Buttons screen The Quick Buttons screen

There are 8 Quick Buttons. Click on an entry to change it. The Button name column is the name that will appear on the button in the Main screen. Keep the names short. The Button Action column is the action that will be performed when you click the Quick Button. Tips for creating actions are given on the screen.

Click OK to complete the changes.

Example:

Button Name: `Msg`

  Button Action: `Msg %u` (there is a space after `%u`)

To use this button in the Main screen, click on a &nickname; in the Nick Panel, then click the button. `/MSG` will appear in the Input Line followed by the chosen &nickname;. Type a message you want to send to that person and press &Enter;. The message will be sent to the user. Only that user will see the message.

Note: You cannot add or delete Quick Buttons.

### Sending and receiving files

You may send files via &irc; to other users online, or they may send you files.

WARNING: Never open a file someone sends you unless they are a trusted source. It could be a virus.

To send a file to someone in a channel, click with the &RMB; on the &nickname; of the person in the Nick Panel of the Main screen. Choose Send File A dialog appears for you to choose a file to send. Next, a new DCC Status tab appears.

DCC Status tab DCC Status tab

The &nickname; of the recipient and file name appear here.

The Status column indicates the status of the file send or receive as follows:

Offering

  You are trying to send a file to the recipient. &kmyapplication; is waiting for the recipient to accept the file.

Connecting

  &kmyapplication; is trying to establish a connection with the other end.

Sending

  &kmyapplication; is sending the file to the other end.

Receiving

  &kmyapplication; is receiving the file from the other end.

Done

  The file has been successfully transfered.

Stalled

  The transfer was started but is not currently progressing.

Aborted

  Either you clicked the Abort button, or the other person aborted the transfer.

Failed

  An error occurred and the transfer was not successful..

Queued

  The transfer has been accepted and will begin when the software on the receiving end acknowledges.

Lookup

  &kmyapplication; is trying to get the IP number of the sender.

Resuming

  When a transfer begins but the file already exists on the user's system, the user will be prompted File already exists. Resume transfer? This status indicates the user resumed the transfer.

When someone wants to send you a file, the DCC Status tab will be created (if not already created). Click the DCC Status tab to display it. Click the file to select it, then click this button to accept the file and the transfer will begin. Note: You may configure &kmyapplication; to automatically accept sends from other people by choosing Settings Configure Konversation DCC Settings on the main menu.

If you have trouble sending or receiving files, your firewall or router may be blocking DCC ports. See Questions and Answers.

### Integrating with KAddressBook

You can associate any &nickname; with a contact in KAddressBook. Once you've done this, &kmyapplication; will display the contact real name in parenthesis after the &nickname; in the Nick Panel.

To associate a &nickname; with a contact in KAddressBook, click with the &RMB; on the &nickname; of the person in the Nick Panel of the Main screen. Choose Whois to display information to help you determine the user's real name. Next, click with the &RMB; on the &nickname; of the person again and choose Addressbook associations . A submenu appears. If the &nickname; is not already associated with a contact, choose Create new contact . The Edit Contact screen appears.

The Edit Contact screen. The Edit Contact screen.

The &nickname; is automatically filled in here. If you know the person's real name, replace the &nickname; with the real name.

Notice that the &nickname; does not appear here. Instead, ..

Click here. The IM Addresses tab appears.

The IM Addresses tab. The IM Addresses tab.

Notice that &kmyapplication; fills in the &nickname; for you with protocol IRC.

See the KAddressBook Handbook for additional instructions on using the KDE address book.

Fill in any additional information about the &nickname; you know and click OK. The real name of the person will appear inside parenthesis next to the &nickname; in the Nick Panel of &kmyapplication;. The real name also appears when the mouse hovers over the &nickname;.

Once a &nickname; has been associated with a contact in KAddressBook, you can click with the &RMB; on the &nickname; of the person in the Nick Panel and edit the associated contact, associate the &nickname; with a different contact, or delete the association.

If you have associated a &nickname; with a contact, and the user changes their &nickname; while you are running &kmyapplication;, it will automatically associate the new &nickname; with the contact, keeping the original association as well.

If you associate an IRC &nickname; with a contact in Kopete, the association will also appear in &kmyapplication;, and vice versa.

Note: It is possible to highlight more than one &nickname; in the Nick Panel, click with the mouse &RMB;, and perform multiple associations.

### Capturing &URL;s from messages

In any channel, users sometimes post the &URL;s of interesting websites or other resources on the web. You can double-click any such &URL; and &kmyapplication; will launch the application associated with the &URL;. The application launched depends upon the &MIME; type of the &URL;. For example, a &URL; beginning with http: will activate your default KDE web browser and display the web page. (You can also specify the web browser to use.) If the &URL; scrolls off the screen, you might have trouble finding it again. &kmyapplication; can keep a convenient list of all &URL;s for you. To activate this feature, choose Windows URL Catcher on the main menu. A new tab called URL Catcher is created.

The URL Catcher tab. The URL Catcher tab.

This is the list of &URL;s seen since you started &kmyapplication;. The Nick column is the &nickname; of the person who posted the &URL;. If the &nickname; is blank, the URL appeared in a Server Messages tab. (&URL;s appearing in join and leave messages are not listed.) Click on a &URL; to select it.

Click here to activate the application associated with the selected &URL;. The application launched depends upon the &MIME; type of the &URL;. For example, a &URL; beginning with http: will activate your default web browser and display the web page. For web pages, you can also specify the web browser to use.

Click here to copy the selected &URL; to the &kde; clipboard..

Click here to delete the selected &URL; from the list.

Click here to save the list of &URL;s to a file.

Click here to clear the list.

### Setting your preferred web browser

When you click on a highlighted &URL; anywhere in &kmyapplication;, it will launch the default KDE application associated with the &MIME; type of the &URL;. For example, when clicking on a &URL; beginning with http, &konqueror; is launched to display the web page. You can specify an application different from the KDE default. For example, you can use Mozilla instead.

To choose a different web browser, choose Settings Configure &kmyapplication; on the main menu. The Edit Preferences screen will appear.

The Web Browser screen The Web Browser screen

Click here to display the Web Browser screen.

Click here to specify that you want to use a custom web browser.

Enter the command to launch your desired web browser. When you click on a &URL; `%u` will be replaced with the &URL;.

Tip: (&UNIX; systems only) The default command is `mozilla '%u'`, which will start a new instance of Mozilla each time you click on a &URL;. If you prefer that Mozilla display the web page in a new tab of an already-running instance, create a file containing the following:

    #!/bin/sh
    mozilla -remote "openURL($@, new-tab)" || exec mozilla "$@";

Name the file `moz`, place it in the PATH, and make it executable (`chmod a+x moz`). Then enter `moz '%u'` for the web browser command in the screen above.

Note: The Web Browser setting does not apply to mailto: &URL;s. mailto: &URL;s always launch the default KDE mailer.

Click Apply to save your changes. You must reconnect to each server and channel for the changes to take effect. The easiest way to do this is to quit and restart &kmyapplication;.

### Marking Channel and Query Logs

You can insert a marker into channel and query screens to help you quickly locate information. To do this, choose Insert Remember Line on the main menu, or press &Ctrl;R. A line will appear at the bottom of the text on the screen. The line will scroll with the rest of the text in the screen.

To make the Remember Line be inserted in all channels and queries at once, choose Settings Configure Konversation from the main menu, expand Behavior, click on Chat Window, and check the Show remember line in all channels/queries box.

To make &kmyapplication; automatically insert a Remember Line whenever you do an ``/away` msg` command, see Setting your identity.

### Logging

If logging is enabled, &kmyapplication; keeps a log of each Server, Channel, and Private conversation (query) session. Each session is stored in a log file on disk. When you open the same session again, &kmyapplication; appends to the log. The log grows to a limit you can set (see below). When the limit is reached, the oldest messages are discarded.

Whenever you open a session again, approximately the last 1024 characters of the previous session are read from the tail of the log and shown on the screen.

As your session continues, messages scroll off the top of the display. You can scroll backwards to view these messages. Eventually, in order to conserve memory, the oldest messages are discarded from the scroll. This is called the Scrollback limit. Messages that disappear from the display because of the Scrollback limit are still available in the log file, if logging is enabled.

To view the logfile for a session, click the tab for the session to make it the current session and choose Window Open Logfile from the main menu. A new tab appears displaying the log file.

Logfile Logfile

The messages in the log file are displayed here. The oldest messages are at the top and the most recent are at the bottom.

Click this button to save the log file to another file.

Click to refresh the log file display. While you are viewing a log file, newer messages in the corresponding session are not automatically added to the log file display. Use this button to view the most recent messages.

Click to erase the log file display and the log file on disk.

Use this box to set the maximum size of the log file. This setting does not take effect until you restart &kmyapplication;. Each log file may have a separate setting.

The Scrollback limit can be changed by choosing Settings Configure &kmyapplication; on the main menu, then expand Behavior and click on Chat Window. The Scrollback limit box appears on this screen. If you set it to Unlimited, messages are not discarded from the scroll.

You can enable or disable logging and set other logging options, by choosing Settings Configure &kmyapplication; on the main menu, then expand Behavior and click on Logging.

### &kmyapplication; commands

The following commands are interpreted by &kmyapplication; and may differ from standard &irc; commands. Items inside square brackets are optional. Items separated by bar (|) are alternate forms of the command. Commands not listed here are sent to the server as entered.

``/me` msg`

  Sends `msg` to the channel preceded by your &nickname;. For example, if your &nickname; were `Tux`, typing `/me brews a cup a tea.` displays the message Tux brews a cup of tea. Unless they've filtered against these types of messages, all users see it. This kind of message is typically used to convey non-verbal information, such as your current emotional state, or what you are physically doing. If you are leaving your workstation for a short time, use the /away command instead.

``/ame` msg`

  Like the ``/me`` command above except that the message is sent to all the channels and queries you have open on all the servers you have connected in &kmyapplication;.

``/join` channel [pwd]`

  Joins `channel`. If the server permits it, and if the channel does not already exist, it is created and you are the channel operator. If the channel requires a password in order to join, specify as `pwd`. Most channel names begin with `#`

``/j` channel [pwd]`

  Same as ``/join`` above.

``/part` [channel] [reason]`

  Leaves `channel` with `reason` and closes the corresponding channel tab. Within a &kmyapplication; channel or query tab, you can just enter ``/part`` which closes that channel or query with your default reason as given in the Settings.

``/leave` [channel] [reason]`

  Same as ``/part`` above.

``/quit``

  When entered in any channel, query, or DCC tab, disconnects from the corresponding server and closes all channel, query, or DCC tabs open on that server.

``/notice` nick|channel msg`

  Sends `msg` to the user with &nickname; `nick` or to everyone in `channel`. The following is an example of what appears to you in the channel tab

  `[17:14] [Notice] Sending notice "I think I understand" to #konversation`

  And this is what the recipients see

  `[17:15] [Notice] -Eisfuchs- I think I understand`

``/query` nick`

  Creates a new tab with the user's `nick` for private conversation, commonly known on IRC as a Query. Everything written here is only visible to you and your query partner. You may enter more than one &nickname; separated by spaces and a query tab will be opened for each &nickname;. Each such query tab will be private between you and the query partner.

``/msg` nick|channel` `message`

  Sends a private message to the user with &nickname; `nick` or to all users in `channel`. Unlike ``/query``, does not open a new tab. If `message` begins with ``/me`` , the message is formatted in the same manner as a ``/me`` command.

  Examples

  `/msg Eisfuchs I need some help with the msg command`

  `/msg #konversation New version of Konvi is online!`

  `/msg Eisfuchs /me is compiling the Handbook right now.`

``/smsg` nick|channel` `message`

  Same as ``/msg`` except the message is not displayed on your screen. This is useful for preventing passwords and other sensitive information from remaining exposed on your screen or being logged.

``/amsg` nick|channel` `message`

  Like the ``/msg`` command above except that the message is sent to all the channels and queries you have open on all the servers you have connected in &kmyapplication;.

``/op` nick`

  When entered into a channel tab, attempts to give `nick` operator privilege for the channel. May not work if you lack sufficient privilege in the channel (you must be a channel operator yourself). You may enter more than one &nickname; separated by spaces.

``/deop` nick`

  When entered into a channel tab, takes away channel operator privilege from `nick`. You may enter more than one &nickname; separated by spaces.

``/oper` [nick]`

  Grants the user with &nickname; `nick` IRC-Op (Administrator) privilege. This only works if the &nickname; is listed in the server's O: line. IRC-Ops have the privilege to ``/kill`` &nickname;s, ``/connect`` servers to the &irc; network, and more. If `nick` is not entered, attempts to grant yourself IRC-Op privilege. You will be prompted for your IRC-Op user name and password in either case.

``/voice` nick`

  In certain channels (with +m flag), users cannot send messages unless they have voice privilege. This command attempts to give `nick` voice privilege. You must have channel operator privilege to execute this command. This command is mostly used when you are an operator for a moderated channel.

``/unvoice` nick`

  Takes away voice privilege from `nick` in the channel.

``/topic` [channel] [message]`

  Attempts to set the topic of `channel` to `message`. When entered in a channel tab, `channel` may be omitted and defaults to the channel active in the tab. If `message` is omitted, displays the current topic of the channel. Changing a channel topic may fail if you lack sufficient privilege.

``/away` reason`

  If anyone tries to send you a private message or invite you to a channel, they will be told that you are away from your workstation for `reason`. To change your state back to normal, enter ``/away`` without a reason.

``/aaway` reason`

  Like the ``/away`` command above except that the command is sent to all the servers you have connected in &kmyapplication;.

``/invite` nick [channel]`

  Invites the user with &nickname; `nick` to join `channel`. This command is especially useful if the channel is invite-only. When entered in a channel tab, `channel` may be omitted.

``/exec` script [parameters]`

  Executes the &kmyapplication;-compatible shell script named `script`, passing it `parameters`. See Scripting for more information on using and writing scripts.

  Examples:

  `/exec kdeversion`

  Sends your system's KDE and Qt version numbers to the channel.

  `/exec cmd uname -a`

  Sends your Linux version string to the channel.

``/notify` [nick]`

  Adds or removes `nick` from your Watched Nicks Online list. If the &nickname; is already in the list, it is removed. If it is not in the list, it is added. If `nick` is omitted, displays the current list of watched &nickname;s.

``/prefs` [`list`|group] [`list`|option] [value]`

  Displays or sets &kmyapplication; settings without using the Settings screen. If a parameter contains spaces, surround it with quotes.

  Examples:

  `/prefs list`

  lists the available option groups.

  `/prefs "General Options" list`

  lists the options available in group `General Options` along with their current values

  `/prefs "General Options" ShowTrayIcon`

  Displays the current value of the setting for displaying the &kmyapplication; icon in the system tray.

  `/prefs "General Options" ShowTrayIcon false`

  Turns off the &kmyapplication; icon in the system tray.

``/kick` nick reason`

  When entered in a channel tab, attempts to kick the user with &nickname; `nick` from the channel with `reason`. If `reason` is not entered, defaults to the reason in the Settings. This command may only be used in a channel tab.

``/ban` [`-host`|`-domain`| `-userhost`|`-userdomain`] [channel] user|mask`

  Attempts to ban the `user` or `mask` from `channel`. When entered in a channel tab, `channel` may be omitted. For more information on hosts, domains, and masks, see the documents at irchelp.org. Too get the current ban list for a channel, enter ``/mode` channel `b``.

``/unban` [channel] pattern`

  Reverts a previous banning from a channel. When entered in a channel tab, `channel` may be omitted.

``/ignore` [`-all`] nick`

  Adds `nick` to your Ignore list. You may specify more than one &nickname; separated by spaces. Channel messages from users on your Ignore list are not displayed. In addition, if you enter ``-all``, all message types (queries, notices, CTCP, DCC, and Exceptions) from the user are ignored as well as channel messages.

``/quote` cmd`

  Sends `cmd` to the server.

``/say` msg`

  When entered in a channel tab, sends `msg` to the channel. This is the same as entering `msg` in the channel Input Line. Useful for sending &irc; commands when you don't want to execute the command. Two command characters (//) in a row does the same thing as ``/say``. Also used by scripts to send messages.

``/raw` [`open`|`close`]`

  Places the server log in raw mode (`open`) or stops raw mode (`close`). If neither `open` or `close` is entered, defaults to `open`. In raw mode, the log displays every message received from the server in native &irc; format.

``/konsole``

  Opens a new tab running a KDE Konsole.

``/server` [url] [pwd]`

  Connects to the server at address `url`. If `url` is omitted, connects to the server associated with the tab where you enter the command. This is useful for re-connecting to a server when disconnected. If the server requires a password in order to connect to it, enter it for `pwd`. If the server requires a port number other than the default (6667), enter the `url` like this: irc.kde.org:6665.

``/dcc` `SEND` nick [filename]`

  Sends `filename` to the user with &nickname; `nick`. If `filename` is omitted, a dialog appears for you to select a file.

``/dcc``

  Opens a DCC Status tab.

``/ctcp` nick|channel `ping``

  Sends a PING message to `nick` or `channel`. This is useful for determining if someone you are talking with has a high network lag, or (when sent to a channel) if your system has a high lag.

``/ctcp` nick|channel msg`

  Sends a message to `nick` or all users in `channel`. This is similar to the ``/msg`` command above, except that the message is sent using the CTCP protocol. The response on the other end depends on the &irc; client program the user is running. For example, when conversing with another &kmyapplication; user, `/ctcp Eisfuchs TIME` will return the system time on Eisfuch's computer. `/ctcp Eisfuchs VERSION` will return the &kmyapplication; version number from Eisfuch's computer.

### Scripting

&kmyapplication; comes with some handy scripts you can run from the program. To run a script, in a channel, query, DCC, or server tab, type a command of the form

``/exec` script [parameters]`

which executes the script named `script` passing it (optional) `parameters`.

For example, type the following command in a channel tab

`/exec kdeversion`

to send your KDE and Qt version numbers to the channel.

`/exec cmd uname -a`

executes the `cmd` script, passing it `uname -a`. This sends your Linux version string to the channel.

To get a list of all available scripts, type the following command in a Konsole screen.

`ls $KDEDIR/share/apps/konversation/scripts`

You can write your own scripts. Scripts are shell scripts and can be written in any shell language, such as bash, perl, or python. When &kmyapplication; runs a script, the first three parameters sent to the script are:

- The port number for the &irc; server of the tab where the ``/exec`` command was entered.

- The address of the server.

- The channel name.

Here is a sample shell script (cmd).

    #!/bin/sh

    # Executes a command and prints the output into Konversation.

    PORT=$1;
    SERVER=$2;
    TARGET=$3;
    shift;shift;shift;

    $@ | while read line; do dcop $PORT Konversation say $SERVER "$TARGET" "$@: $line"; done

Notice that the script uses DCOP to communicate with &kmyapplication;. The `say` command causes the output to be sent to the channel as a normal message. To display something in the tab without sending it to other users, use `info` instead. Look at the existing script files for more examples of writing scripts.

To be able to run a script you have written, you must install it by copying it to $KDEDIR/share/apps/konversation/scripts or to $HOME/.kde/share/apps/konversation/scripts. You must also give the file execute privilege, for example `chmod a+x myscript`.

## Command Reference

### The main &kmyapplication; window

#### The File Menu

File Server List

  Displays the list of servers and channels.

File Quick Connect

  Displays the Quick Connect screen for connecting to a server.

File Identities

  Displays the Identities screen for setting your identification information.

&Ctrl;Q File Quit

  Quits &kmyapplication;

#### The Edit Menu

&Ctrl;F Edit Find

  Searches for text strings in the current screen.

F3 Edit Find Next

  Searches again for text strings in the current screen using the previous search string.

&Ctrl;L Edit Clear Window

  Clears the current screen.

#### The Insert Menu

&Ctrl;K Insert IRC Color

  See Sending colorful messages.

&Ctrl;R Insert Remember Line

  See Marking Channel and Query Logs.

Insert Character

  Used to enter special characters, such as foreign characters.

#### The Settings Menu

&Ctrl;M Settings Hide Menubar

  Hides the main menu. Hit &Ctrl;M to display it again.

Settings Hide Toolbar

  Hides the toolbar.

Settings Hide Statusbar

  Hides the status bar at the bottom of the main screen.

Settings Configure Shortcuts

  Allows you to change keyboard shortcuts for &kmyapplication;.

Settings Configure Toolbars

  Allows you to add or remove buttons from the &kmyapplication; toolbar.

Settings Configure Notifications

  Displays the Notifications Settings screen.

Settings Configure &kmyapplication;

  Displays the Edit Preferences screen.

#### The Window Menu

&Ctrl;. Window Previous Tab

  Displays the screen corresponding to the previous tab.

&Ctrl;, Window Next Tab

  Displays the screen corresponding to the next tab.

&Ctrl;W Window Close Tab

  Closes the current screen. If closing a channel, leaves the channel. If closing a Server Messages tab, closes all open channels on that server and disconnects from the server.

F11 Window Close All Open Queries

  Closes all Private conversations (queries).

Window Watched Nicks Online

  Displays the Watched Nicks Online screen. See Monitoring who is online.

Window Channel List

  Displays a list of channels available on the server.

Window URL Catcher

  Displays the URL Catcher screen.

Window New Konsole

  Displays a terminal screen. You may open as many Konsole tabs as you like.

Window Open Logfile

  Displays a screen with the log of messages from the current tab. Only works for Channel, Server Messages, and Query tabs. Logging must be enabled in Settings Configure Konversation Behavior Logging on the main menu.

#### The Help Menu

&help.menu.documentation;

## Questions and Answers

&reporting.bugs; &updating.documentation;

When I start &kmyapplication;, I'd like to connect to a server without joining any channels. How do I do that?

In the Edit Server screen, leave the Channels frame empty.

&kmyapplication; won't connect to any servers. What is wrong.?

There are several things that could be wrong.

1. Make sure that you have entered the correct Server name and the correct Port in the Add Server screen.

2. Check the output in the Server Messages screen for any error messages. Did the server reject the connection because of a bad password? Did the server reject the connection because it requires IDENTD and your computer did not respond to the IDENT request? Did you check the SSL protocol box but the server does not support SSL?

3. If you are behind a firewall, make sure the correct ports are enabled. &kmyapplication; needs the following ports enabled:

   - Outgoing TCP 6667 (or the port of the server you connect to)

   - Incoming TCP 113 (if the server requires IDENTD)

   For more information on IRC connection problems, see irchelp.org.

When I go to Window Channel List , I can't select it. Why is that?

The Windows Channel List menu entry will be greyed-out if a non-channel tab, e.g. Watched Nicks Online, is currently being viewed. To make it selectable again go back to a channel tab or the server tab.

## Credits and License

&kmyapplication;

Program copyright 2002,2003 by the Konversation team.

www.konversation.org

Contributors:

- Dario Abatianni eisfuchs@tigress.com

- Matthias Gierlings gismore@users.sourceforge.net

- Alex Zepeda garbanzo@hooked.net

- Stanislav Karchebny berkus@users.sourceforge.net

- Mickael Marchand marchand@kde.org

- Peter Simonsson psn@linux.se

- Christian Muehlhaeuser chris@chris.de

- John Tapsel john@geola.geo.uk

- Ismail Donmez ismail.donmez@boun.edu.tr

- Shintaro Matsuoka shin@shoegazed.org

Thanks to:

- Frauke Oster frauke@frsv.de

  System tray patch.

- Lucijan Busch lucijan@kde.org

  Bug fixes.

- Sascha Cunz mail@sacu.de

  Extended user modes patch.

- Steve Wollkind steve@njord.org

  Close visible tab without shortcut patch.

- Thomas Nagy thomas.nagy@eleve.emn.fr

  Cycle tabs with mouse scroll wheel.

- Gary Cramblitt garycramblitt@comcast.net

  DCC panel fixes, custom web browser extension.

- Tobias Olry tobias.olry@web.de

  Channel ownership mode patch.

- Ruud Nabben r.nabben@gawab.com

  Option to enable IRC color filtering.

- Michael Goettsche mail@tuxipuxi.de

  Quick connect, ported new OSD, other features and bug fixes.

- Luciash d' being luci@sh.ground.cz

  Application icons.

Documentation Copyright © 2003, 2004 Gary R. Cramblitt garycramblitt@comcast.net

&underFDL;

&underGPL;

## Installation

### How to obtain &kmyapplication;

&install.intro.documentation;

The latest versions of &kmyapplication;, including source code and build instructions can also be obtained from the &kmyapplication; home page.

### Requirements

In order to successfully use &kmyapplication;, you need &kde; 3.2 or later and a network connection. On earlier &kde; versions some features may be missing. If you will be running &kmyapplication; from behind a firewall, see Questions and Answers. If you wish to use SSL protocol, you may need OpenSSL.

&documentation.index;