FAQ
From PsiWiki
[edit] Introduction
[edit] What is Psi?
Psi is a program used to connect to the Jabber Instant Messaging network. It is currently aimed at people who have an understanding of what Jabber is. It has been designed to run on any operating system that supports the Qt library by Trolltech.
[edit] What is the "Psi" name all about?
Psi (pronounced "sigh") is an abbreviation of the word "psynergy", which is like psychic energy. One of the abilities you gain when you master Psynergy is telepathy, which is the ability to read minds and transmit your thoughts to others. Along the same lines, Psi is about transmitting your thoughts through Jabber, without actually speaking.
Since 'psi' is also the twenty-third letter of the Greek alphabet, we decided to use the Greek symbol as our logo.
When writing the name, we prefer you to use 'Psi'. Please don't write it as 'PSI', as this makes it look like a three letter acronym.
[edit] What is Jabber?
Jabber is a real time, XML-based messaging protocol that is capable of providing similar functionality to existing instant messaging networks such as ICQ and MSN. Unlike most other IM networks, Jabber is open and distributed, meaning that anyone can have their own server connect to the network. Although there is an official program to connect to the Jabber network, you are encouraged to write your own program if the official one doesn't suit your needs.
Psi is a program to connect to the Jabber network, otherwise known as a Jabber client. More information about Jabber can be found at the Jabber Software Foundation, or at other promotional sites.
[edit] I heard Psi is "open source". What does that mean?
While most software licences are designed to take away your freedom to use the software how you want, Psi is different. Psi is released under the General Public Licence, which means that it's free in more ways than one. Some people refer to GPL licenced products as "Free Software".
Firstly, Psi is free as in "getting a free beer". You will never pay a cent for Psi if you download it from this site. Someday you may see a CDROM with Psi on it, and that's ok. The licence says that someone is allowed to sell a CD with Psi on it for a minimal charge.
Secondly, Psi is free as in freedom and liberty. The licence states that we must give the programmer's source code to whomever asks for it. We have the source code available for download if you ever want it. The licence also states that you are free to make changes to the source code to make Psi suit your needs better. However, if you release those changes to the public, you must also provide the source code under the same GPL licence.
[edit] About Psi development
[edit] Why don't you release Psi for my operating system?
We can only port Psi to operating systems that can use the Qt library by Trolltech. At the moment, this means Microsoft Windows, Apple MacOS X and Linux based systems. We have also had reports that Psi works on FreeBSD and Solaris, but we don't provide a download for those. NetBSD users can find Psi in pkgsrc. ([1] works on many other operating systems as well.)
There is no Qt library for Mac OS prior to X. For this reason, we can't port Psi to OS 9 or lower. Psi is a multi-user application for all supported operating systems. However, it also works on single-user systems like Windows 98.
[edit] I really need Psi to have a certain feature! Can you add it?
First and foremost, we only add features to Psi that adhere to the standards laid down by the Jabber Software Foundation. If you suggest an enhancement to Psi that goes against any of the Jabber protocol standards, we will not add it.
We welcome all other sensible suggestions and requests for improvements and enhancements. Be concise when requesting a feature. Give as much information as required to explain your proposal without writing a ten thousand word essay. The development team is too busy working on Psi to read your thesis.
Be polite when requesting features. The development team are not your personal slaves, and they are not getting paid to work on Psi. If you come across as rude, or keep harrassing the team to add your feature, we will ignore you and go back to coding.
If you have a feature you want added, use the Feature Request Forum. DO NOT CONTACT THE DEVELOPMENT TEAM USING EMAIL OR JABBER UNLESS WE ASK YOU TO. We created the forum for a reason, please use it. Remember, if you annoy the development team, you won't get your feature.
[edit] I would like an option for... Can you add it?
The more features are brought in, the more options are requested. This is causing a lot of trouble for the developers, as options are getting more and more difficult to manage. Developers add only critical options because of that.
A new options system is being considered to surpass the difficulties encountered managing the current options. A design document can be found here.
[edit] How can I be notified about new Psi releases?
If you aren't already a member of Freshmeat, go and register as a member. Then, subscribe to Psi. Freshmeat will send you an email whenever we announce any new releases.
TODO: needs update: rss feeds etc
[edit] I love Free Software. How can I help the Psi project?
We're glad you asked. If you know C++, join the psi-devel mailing list and offer your services as a programmer. Although it would be helpful, it's not necessary to have experience with the Qt libraries. If you already know C++, learning Qt is quite easy. There is a very large TODO list, and you might like to offer a patch that implements your favourite feature.
It's up to the core development team whether or not your patch, artwork or UI gets accepted into the project, but we will always take a look at it.
Last, but not least, you could donate a small (or large!) amount of money by using the Paypal button on the download page. Free Software programmers have to eat, too.
[edit] I thought Qt versions prior to Qt 4 aren't available for Windows / MacOS X under GPL - how can Psi then be available for Windows / MacOS X?
Because Psi was licensed for Qt/Enterprise for Windows and MacOS X. And licence for Qt3 did not prohibit applications based on Qt3/Enterprise to be licensed on GPL.
[edit] About website and forums
[edit] Who is this "Edgar" I keep reading about?
Edgar is our Jabber status bot. He keeps track of your Jabber status and reports it to the forums.
If you have a valid Jabber ID in your profile and post to any of the Psi Community Forums, you will receive an authorisation request from Edgar. If you give him authorisation, he will then display your current Jabber status beneath your posts. In addition, all Jabber messages you receive from our forum will appear to come from Edgar.
You are also able to use Edgar to display your Jabber status on your personal website. See the HowTo for more.
[edit] Can I use your old phpBB Jabber mod on my own phpBB forum?
Yes. The link to the file is below. First, read the disclaimer. Twice.
THIS PACKAGE COMES WITH NO WARRANTY. IT MOSTLY WORKED FOR US FOR A WHILE, BUT WE ABANDONED IT. IT HAS BUGS THAT YOU WILL HAVE TO FIX YOURSELF. WE DO NOT PROVIDE INSTRUCTIONS, AND WE DO NOT PROVIDE SUPPORT FOR THIS MOD. USE IT AT YOUR OWN RISK.
[Download the phpBB Jabber hack/mod here (510KB). Good luck.]
[edit] Why can't I edit or delete my posts on the Psi Community Forums?
While the forum software supports editing and deleting of posts, but it has been disabled for regular members. This is the decision of the development team. We want people to be accountable for what they post in a public forum, and not have the ability to change or hide something when they change their mind.
Remember - think before you post, and use the Preview button.
[edit] My post has disappeared without a trace! What happened to it?
If you submitted your post to the wrong forum, a moderator might have moved it. Look around and see if you can find it. If you can't find your post, it might have been deleted by a moderator. Unfortunately we have to enforce some rules because of a few individuals behaving badly. Here are some of the times that a moderator will delete your posts:
Buggy forums: Duplicate posts by the same member in the same topic will be deleted. We will also delete your post if it is destroying the html layout of the topic page.
Trolls: We will delete all posts that are clearly posted to make the reader vomit. This includes images of (or links to) obscenities or pornography. We will probably delete your member account as well.
Commercial Advertising: This is a Free Software project. We don't take kindly to people hawking their wares here. It is up to the moderators to decide if a post is an advertisment or not.
We will not edit or delete your posts simply because you made a spelling mistake, or because you have an updated URL. Please do not ask the moderators, because we will refuse.
[edit] Questions related to Psi and the Jabber protocol
[edit] What are Resources? What is a Jabber Priority?
Good question, there's a section on them here.
[edit] I have problems connecting to my Jabber server via SSL
If your Jabber server is using a self-signed certificate, you may get an error like this:
The [servername] certificate failed the authenticity test.
Reason: Certificate is self-signed.
Psi is warning you that the certificate is not trusted. You should be able to connect by pressing 'Continue', however this will not work when you are registering a new account.
This is not a problem with Psi. This is a problem with your server's certificate. If you don't want Psi to warn you about an untrusted certificate, then the server administrator needs to get the certificate signed by a Certificate Authority (like Verisign).
What if I am aware of the security issues and want to "trust" a self-signed certificate?
Well, for one thing, be sure you do trust the administrator. We've seen some server admins who are doing this as a hobby not a business and they don't wish to shell out cash for a properly signed certificate. (Hint, SSL certs are cheap now.)
If you still wish to use a self-signed certificate but don't want to get the warning on each login, the easiest way to do it is by checking 'Ignore SSL warnings' box in 'Account Properties' dialog for the account you wish to log into.
If this is not enough for you, and you wish to add such self-signed certificate to a list of certificates trusted by Psi, and you have some understanding of what xml and PEM file is, you should see /usr/share/psi/certs/README (or similar path) on linux and other unix-like systems, or certs\README (it is a text file, simply without a .txt suffix) in a folder where Psi is installed on windows.
TODO: Psi-Qt4 - rewrite after QCA2 SSL/TLS behaviour is cleared up (IceRAM)
[edit] What is this SSL/TLS thing I keep hearing about?
SSL and TLS are cryptographic protocols which provide secure communications on the Internet. More technical information on them can be found on the Wikipedia TLS page.
In short: TLS v1.0 is almost identical to SSL v3.0. It is usually safe to say one and imply both. Writing "SSL/TLS" is a good compromise. However, hopefully someday we'll all say TLS.
In the Jabber world, these two terms are used as following:
- SSL support: communication using SSL or TLS protocol, on port 5223, without handshaking - the stream is encrypted from the very beginning.
- TLS support: communication using SSL or TLS protocol, on port 5222, with handshaking (also known as StartTLS) - the encryption type is first negotiated in plain text and afterwards the stream is encrypted
Psi currently supports SSL (1) (on port 5223). This does not mean that TLS is not used over the connection (at 5223) as a protocol. Only the handshaking and port differs between the two methods. The protocol can be either SSL or TLS in both cases.
The support for TLS (2) is coded in the library (Iris) Psi uses for XMPP but Psi doesn't use it yet.
[edit] How can I copy my Jabber contacts from one server account to another?
Jabber, like AIM and MSN, stores the list of your contacts on the server. However, unlike AIM or MSN, there are literally dozens or perhaps hundreds of Jabber servers you can choose from. If you ever change servers for any reason, and you have more than a couple of contacts, it can be tedious to re-add your friends to your Jabber client.
This problem is not specific to Psi. Most any Jabber client will have the same issue, although it is possible that some clients include a server migration tool. But there is a standalone migration tool that does the job nicely, the Jabber Roster Utility.
[edit] How can I distinguish between a message sent to me, and a message sent to a group?
Jabber has an extension which allows sending messages to multiple recipients, with To, Cc and Bcc fields, just like for the e-mail addresses. This extension requires both client and server support. Unfortunately, even though it was advanced to Draft, we are not aware of any clients or servers implementing it. Psi doesn't implement it either, yet.
Even so, the sender can decide wether to make public the list of users a message was sent to or not (the To/Cc fields will be kept until the message reaches destination/users in the Bcc field will receive the message as if it was sent only to them).
Currently, there is no way of determining if a message was sent to a group or to a single user, unless the sender specifies this in the message. I believe this is the current behaviour of other proprietary networks also.
[edit] How can I make Psi work with Google Talk?
We have created a HowTo that will guide you through the entire process.
[edit] Questions related to Psi and the Jabber Gateways
[edit] Why do I get disconnected all the time?
In any major proprietary network (MSN, Yahoo, ICQ) you CAN NOT be logged into an account with two clients at the same time. Make sure you don't have the gateway trying to log in while another client is logged in also.
The other client can be:
- another gateway, trying to log at the same time (the gateways don't have to be registered on the same jabber account, they can be registered on different jabber accounts, but with the same settings)
- the proprietary network client (such as MSN Messenger, Yahoo Messenger etc.)
- another multi-protocol client (such as Gaim, Miranda, Trillian etc.)
Jabber (for pure Jabber contacts - contacts not over a gateway) has the possibility to use Resources - you can log into the same account from different places, with different priorities. More information here.
[edit] Why doesn't Psi have an auto-reconnect function for the gateways (transports)?
This is totally a server side issue. The server handles reconnections. Psi only listens what's delivered to it by the server.
Note that the above is only partially true, as setting status to ONLINE for a gateway triggers a reconnect on the server side. So it would be possible for Psi to attempt to reset the gateway status to ONLINE when a gateway disconnect event is received.
[edit] Can I use File Transfer to send/receive files to/from proprietary networks?
This feature must be supported by the gateway you are using. Currently, there is only one gateway software capable of File Transfer from the proprietary network to Jabber. This gateway software is PyMSNt v0.11. If you want file transfer, make sure your Jabber server is using v0.11 (or greater) of the PyMSNt gateway. Hopefully, in the future more gateways will add this functionality.
[edit] Why doesn't Psi update the contact list when I add contacts using other clients?
Most proprietary networks IM servers keep the contact list on the server. When a proprietary network client (be it the original client or some third party - such as Trillian, Miranda etc.) adds a contact, the contact is saved on the server.
When the gateway (transport) connects to the proprietary network, it SHOULD retrieve new contacts and push them to the your Jabber roster. Unfortunately, not all gateways do this. It's a gateway problem, it's not a Psi problem. No matter what Jabber client you would use, you'll get the same behaviour.
Psi can't update the contact list, since it doesn't manage the contact list. The contact list is managed by the server and by the gateway (transport).
You can solve this in two ways:
- manually add the contact again, using Psi; the transport should put the contact in your roster afterwards.
- Unregister and Register back with the Gateway (transport)
- change the gateway (transport) with a better one (if possible)
Note that Gadu-Gadu gateway supports interactive contact list retrieval by sending a chat or a message containing a gr (get roster) command. You will get a message containing Your contact list.
[edit] Why does the Gateway get offline when I set my status to invisible?
The story goes like this:
- you're online, the server sends your presence info (online) to all contacts in your roster (actually, to all contacts where subscription type is from or both)
- transports are just contacts in your roster, receiving presence information just like any other contact
- you switch to invisible
- the server sends presence offline to all the contacts, including the transports
Invisible status is not advertised (sent to contacts) - if it would be advertised, your status wouldn't be invisible anymore, since people would know your presence (it would be like saying "Hey, I'm invisible"). Instead of sending invisible to all contacts, the server sends offline.
Solutions to this problem:
- switch all your friends to Jabber :)
- some Gateways implement special commands that set your status on the proprietary network to invisible (these commands are usually issued in a chat with the gateway) - gateway (transport) implementing such command: Gadu-Gadu Transport.
- in the future, it might be possible to set special statuses for particular contacts - this means that you might be able to set invisible for all Jabber users and send some other presence to the gateway (transport), thus staying connected to the proprietary network. Combined with the functionality described above, it might be the perfect solution. This enhanced status settings could come with the new Status System.
[edit] How can I unregister/deregister from a gateway or transport service?
As most clients, in our case Psi, currently offer no interface option, you will probably have to manually unregister/deregister. You can find out here how to do that.
[edit] Why don't Unicode (international) characters work with the ICQ transport?
If you previously have problems sending non-Latin characters to your ICQ contacts using Psi, you may want to try using one of the transports listed on http://www.chatopus.com/dev.
If you are a JIT transport administrator, you may also want to download and install the patched JIT transport with unicode support - http://www.chatopus.com/dev.
Thanks to Tony Cheung
[edit] Questions related to Psi's behavior
[edit] How can I make the 'docklet' work under the GNOME desktop environment?
1) Make sure that you have added a notification area / tray to your taskbar. In GNOME 2.6, right-click on the task bar and do "Add to the panel > Tools > Notification Area" (in German: ,,Zum Panel hinzufügen > Werkzeuge > Benachrichtigungsfeld"). Without this, the Psi docklet will show as a small window on the desktop, but you can't drag it into the taskbar.
2) Enable the Psi docklet feature.
3) Close Psi and start it again. In my case, the docklet shows as a separate icon window as soon as you enable the docklet function, but when you close Psi and open it again, all works fine.
[edit] Where does Psi store its configuration?
Psi uses XML files called config.xml and (starting in version 0.11) options.xml. Its location depends upon your operating system.
See $PSIDATADIR and Configuration File for more information.
[edit] Can I change the order of accounts or groups in my roster?
Yes you can, see Changing roster item order.
[edit] How can I avoid having to enter my GnuPG password each time I log in ?
Psi has no option to save the passphrase of your GnuPG key. This is done deliberately, since saving the passphrase on your disk is very unsafe, but even worse gives a false feeling of security to people who are not 100% realizing what they do. To make an analogy: Saving your passphrase in Psi would be like adding a piece of paper in your wallet next to your credit card, and write your 15-number pin code (15, because it makes you feel safe) on this piece of paper in reverse, and writing under it 'The above number is my pin code in reverse'.
This being said, there are two ways to avoid typing your passphrase:
- the easiest way is to simply remove your passphrase from your key. This is comparable to the security you would get when you could save your passphrase in Psi.
You can do this by using the passwd command when editing your key (gpg --edit-key UID)
- the safest way is to make use of a GnuPG agent.
[edit] Why doesn't Auto-Away/XA/Offline work?
Psi has the possibility to change status automatically, when the computer is idle. This feature platform dependant and it might not work because of various platform-related reasons.
- Windows
- * the idle detection on Windows 9x,Me is embedded in the idleui.dll library, coming with Psi.exe in the same folder
- * some anti-virus software might detect by error the library as dangerous object, even removing it from the system - the library does not have any malicious behaviour embedded (we have been notified that this happens with some versions of McAffe Antivirus)
- MacOS
- * nobody reported missing functionality on this plaform
- Linux
- * you need the XScreenSaver extension
- * most distributions have this, but you might not have it or have it disabled
[edit] Why does account info window show up every time psi is launched?
It is because your vcard is empty.
- Enter something into the Nick field and click "Publish". [2]

