User:Kaythxbye
Kopete/Jabber tutorial
This is a tutorial about how to use Kopete in combination with XMPP to chat with your colleagues or friends.
About Jabber/XMPP
XMPP or Jabber (these words actually mean the same) is the name of an open, decentral protocol which is used for instant messaging. It is designed as a server-client-infrastructure with many servers all over the internet. The servers are normally connected to many clients on one side and to the other XMPP-servers on the other side. So you can write messages from your client (connected with jabber.example.com
) to your friend, whose client is connected to a server called jabber.org
.
When you registrate an account at a server (let's use jabber.example.com
for example), you can choose a so-called JID (Jabber-Identifier). This JID works basically like an E-Mail-Address and is connetcted to the server's name with an "@". An exapmle for a valid JID could be [email protected]
. In order to talk to other people you have to add their JIDs to your contact list. They may be connected to the same server (e.g. [email protected]
as well as they can originate from another server (e.g. [email protected]
).
Jabber/XMPP is of course capable of a lot more services (e.g. end-to-end encryption of the messages, voice- and videochat, groupchat), which the tutorial will partly introduce later.
With this information we can begin with the main part tutorial: How to set up a working jabber-client and which nice features Kopete has got.
First steps
Get Kopete
Of course, you have to get Kopete first before you will be able to work with it. If you use a GNU/Linux-system there are very good chances you can find Kopete already installed (if you have already installed the KDE Software Collection) or in one of your distribution's repositories. Otherwise you can download the sorce-code HERE and compile it. If you want to get Kopete for Windows, Mac OS or another operating system, click HERE. Now install Kopete and start it for the first time.
Create your Jabber account
When you now start Kopete you will see an empty window. [snap001] In the bottom section it says Click here to add an account. Click there or open
to create a new account. We actually want to create a Jabber-account, so we select the menu-item Jabber and click Next. After selecting Register new account [snap002], a new window opens where we can write in a Jabber-server, where the account shall be created. You can either manually write it into the textbox Jabber server or select it from the provided list [snap003], which appears after clicking on the button Choose.... After selecting a server you are able to complete your desired Jabber-ID, i.e. your username. Add your prefered name in front of the "@" in the field Desired Jabber ID. After filling in your password and repeating it you should tick the checkbox Use protocol encryption (SSL) for having an encrypted client-server connection. [snap004] Some servers might not be capable of this option, but most of them are. Now click on Register to finish the registration.Congratulations, you have now registered a new account on a Jabber server! The next thin to do will be to [Fill in your account data in Kopete]
Fill in your account data in Kopete
You now own an account on a Jabber server and Kopete asks you for Step two: Account information. Kopete adds your Jabber ID and your password into the required fields automatically. If you want Kopete to remember your password in order to not type it in every time you connect with your server, check Remember password.
Optionally you can check Exclude from connect all. This advises Kopete not to go online when you go online with all of your Kopete accounts (thus Kopete is a multimessenger with support for many other protocols like ICQ or MSN). When you checked this, you will later have to go online explicitly for this one account.
Your Kopete should now look like this: [snap005]
Click on the Tab Connection to check additional options. Especially selecting Use protocol encryption and the unselection of Allow plain-text password authentification should be chosen for basic security reasons.
The default server information should be okay, if you are in a normal network without special firewall configuration.
The section Location Settings is another speciality of Jabber. You can set so-called "Resources" to identify where you chat from. For example if you log in to Jabber from your mobile phone and your notebook at the same time (yes, you can do that) the resource explains where you are. So you could call it "Notebook" or "Android". Remember that your resources can be seen from your chat partners, so you might consider privacy issues while choosing your resource name. In our example, the Resource will be set to Laptop. The priority is mainly useful when you handle multiple devices and tells your partner which resource to contact in this case. The highest priority number of your resources being online recieves the message. [snap006]
The next Tab, File Transfer, is normally not affected when setting up a Jabber account in a normal network.
Finally, there are some privacy configurations in the tab Privacy, they are mostly self-explaining. The option Use old inline PGP format for signed and encrypted messages is not recommended, because there exists a method to do this with the built-in OTR, which will be explained later in this tutorial.
At this point you can click Next again and your account is configured now. You can choose an optional color for your account and when you feel ready to connect the very first time to your Jabber server, the checkbox Connect now has to be ticked. [snap007] Now you can finish the configuration.
Otherwise you can manually connect to the server by clicking
in the Kopete main window or by right-clicking the Kopete symbol in your tray and selectin . If you chose the option Exclude from connect all earlier, you will have to log in by right-clicking on the Kopete tray icon and selecting . [snap008]Adding friends
After your first login, your Kopete window is quite empty. There might be a default contact added by your server which perhaps sends you a welcome message, but there are no real contacts in your roster (this is by the way the word for "contact list" in the Jabber world). The first step for adding friends in Jabber is, of course, asking them for their Jabber ID. When you got one, you can immediately add it to Kopete. You can either click
or . A new window appears asking for the Jabber ID we want to add to our roster. Just type it in and click OK. The Group option is used, when you specified groups of contacts (e.g. "family" and "work"). A connection to your [KAddressbook] can be established with Address book entry, so that you can exchange information like profile pictures between the two applications. [snap009]Now you've added your first friend to your roster. But before you can start writing messages to him or her, your contact has to authorize your request. Until this happens, the contact appears with a small exclamation mark in your roster. [snap010]
When your friend authorized your request or added you to his or her roster, its icon will appear colored when online. The exact meanings of the different icons (Online, Away etc.) can be seen at
where you can set them yourself, too. You recieve a notification when you are authorized.Normally, your friend will put you also to his or her contact list, so you have to authorize this request by yourself, too. Kopete notfies about that at the bottom with a green flag and the description of the request. Click on Authorize to accept. The notification area can be closed by clicking on the cross on the upper-right side of the area. [snap011]
After that procedure you should see a contact list like in the image [snap 012]. You successfully added your first contact to your roster.
Messaging and sending files
You can start chatting with a contact by double-clicking on the name. A new window will open and you can type in messages in the smaller field at the bottom, where the cursor already resides. When you want to send your text, hit Enter or press the Send button. You and your partner can communicate now via Jabber.
To send files via Jabber (Attention: This may not work in some cases due to incompatible configurations of some servers) click on Send File and select the file you want to send in the popup window. You will be notified when the transaction is over or failed for some reason.
At this point you have set up a working Jabber client and are in principle able to chat with your contacts. But for a better experience of Kopete, you are able to configure the application for your best needs. A set of [Useful configuration hints] is the content of the next site in this tutorial.
Useful configuration hints
These hints all refer to Kopete's main configuration window residing under
. Be sure to click on Apply or OK if you want your changes to be saved.All adjustments affecting your account setup and configuration of multiple accounts in Kopete (Jabber/XMPP as well as ICQ, MSN and many other protocols) can be found under the tab Accounts. If you want to set your personal information or are willing to use a contact photo, click on Modify Identity... and make your settings. A photo can be uploaded on clicking on the small icon on the left hand side at the bottom of the image area. [snap 014]
The next tab in the vertical list is Contact List. These settings are mainly self-explaining, but it seems useful to enable Use contact photos when available. The other three horizontal tabs (Colors & Fonts, Advanced and Layout) include quite special settings you will perhaps tune when you have used Kopete for a few weeks.
The Status configurations enable you to set your default status messages when you're set as Online, Away, Invisible etc.
Clicking on Behaviour opens a quite detailled set of configuration. The most interesting ones can be found in the tab General are Message Handling and Initial Status. The first one decides if incoming messages from your contacts open instantly a new window or if they are queued until you open Kopete yourself. The second one tells Kopete if it shall go online when you start the program. When you set this, you are always available for your contacts once you run Kopete. The tab Events lets you set in what cases Kopete notifies you via your computer's notification system (in most cases [KNotify]). When you want Kopete to set your status automatically to "Away", open the tab Away Settings and enable the first checkbox. You can set the time to pass after your last action (keyboard input or mouse movement) that Kopete will set you as away. The default value is 10 minutes. Options located in Chat are again self-explaining and already set to useful values.
The next item in the vertical row on the left is Chat Window. The first tab in there, Style, can be used to set another style than the default one. You can also install your own styles or download new ones from the internet by clicking on Get New.... When you type in an emoticon (like ";-)" or ":-D") Kopete will convert it into a graphical emoticon by default. To disable this feature or to use another set of emoticons go to Emoticons. The last tab, Colors & Fonts is again self-explaining and configures these preferences of your chat window.
Webcams are supportes from Kopete, but at the moment (November 2010) there are still some difficulties concerning video chat, so settings in Video are made at your own responsability, because it's quite possible it doesn't work in the right way.
A very powerful feature of Kopete is the capability of using plugins. There is a set of plugins pre-installed (new ones can be installed for example with your Linux distro's package manager) and they can be enabled and configured under Plugins. You can enable them by setting the tick into the respective checkbox. Most of them are again self-explaining, but the most useful ones will be explained here anyway. A very useful plugin is the History. With this option enabled, Kopete will log all your chats and write it onto your harddisk. You can read it in your chat window, when you select the View History icon or you open it with
.OTR
One of the most important plugins considering privacy issues is OTR. This piece of software encrypts your entire conversation from one end to the other and makes it impossible for third persons to read your conversation. After you enabled the plugin, you have to open its settings (click on the wrench icon) and Generate a key. [snap015] This may take a while and you have to wait until Kopete finished. After that close the OTR window with OK and Apply the changes. You eventually will have to restart Kopete after this. Then open a chat window of the contact you want to safely communicate with. Go to
or use the icon . Kopete will start the session if your contact is capable of OTR, otherwise you'll recieve an error message. [snap 016] To ensure your added contact is really the one he or she is claiming to be, it's necessary to authenticate him or her one time. You can do this by calling . Yo may choose between three options:- The first one is asking your chat partner a question whose answer can only be known by him or her and you.
- The next possibility is a secret passphrase your partner has to know (you may consider giving the secret to him or her via another communication channel, e.g. telephone).
- Thirdly, there's the option of manually checking the OTR fingerprint. This is the most secure option, but it's not very handy and if you can choose one of the others it may be more comfortable and faster. When checking the fingerprint, you have to send your partner your OTR fingerprint over a secure connection (e.g. telephone or encrypted E-Mail) so that the fingerprint can be checked.
Let's assume we choose option one and ask our partner a question. [snap017] When we continue, your partner will see the question and if the answer is correct, OTR is set up ready now. [snap018] Your partner may do the same thing in return, so when you see a window asking you for authentification just answer the question and you are an authentificated user in your friend's list, too. [snap019] Every time you communicate safely, you'll see the green armored keylock icon at the top of your chat window.