Pidgin (software)
Encyclopedia
Pidgin is an open-source multi-platform instant messaging
Instant messaging
Instant Messaging is a form of real-time direct text-based chatting communication in push mode between two or more people using personal computers or other devices, along with shared clients. The user's text is conveyed over a network, such as the Internet...

 client
Client (computing)
A client is an application or system that accesses a service made available by a server. The server is often on another computer system, in which case the client accesses the service by way of a network....

, based on a library named libpurple. Libpurple has support for many commonly used instant messaging protocols, allowing the user to log into various services from one application.

The number of Pidgin users was estimated to be over 3 million in 2007.

Features

Pidgin provides a graphical front-end for libpurple using GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

. Libpurple supports multiple instant-messaging protocols.

Pidgin supports multiple operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...

s, including Windows
Microsoft Windows
Microsoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...

 as well as many Unix-like
Unix-like
A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification....

 systems such as Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...

, BSD, Mac OS X
Mac OS X
Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

, and AmigaOS
AmigaOS
AmigaOS is the default native operating system of the Amiga personal computer. It was developed first by Commodore International, and initially introduced in 1985 with the Amiga 1000...

 (through the X11 engine). It has built-in support for NSS
Network Security Services
In computing, Network Security Services comprises a set of libraries designed to support cross-platform development of security-enabled client and server applications. NSS provides a complete open-source implementation of crypto libraries supporting SSL and S/MIME...

, offering client-to-server message encryption for protocols that support it. The program is extendable through plugins, including "Off-the-Record Messaging
Off-the-record messaging
Off-the-Record Messaging, commonly referred to as OTR, is a cryptographic protocol that provides strong encryption for instant messaging conversations. OTR uses a combination of the AES symmetric-key algorithm, the Diffie–Hellman key exchange, and the SHA-1 hash function...

" and Pidgin encryption, providing end-to-end message encryption.

Pidgin features some of the standard tools for an instant-messaging client, such as a contact list
Contact list
A contact list is a collection of screen names in an instant messaging or e-mail program or online game or mobile phone. It has various trademarked and proprietary names in different contexts....

, file transfer on supported protocols, and conversation and chat logging. Tabbed conversations is an optional feature on Pidgin. The IM window consists of the message window, formatting tools, and an edit box.

Users can add contacts (usually known as "Buddies") in the "Buddy List" window or in the IM window. As a client that supports IRC and other chat programs, Pidgin can also add different IRC channels and IM Chats. Contacts with multiple protocols can be grouped into one single contact instead of managing multiple protocols, and contacts can be given aliases or placed into groups.

To reach users as they log on or a status change occurs (such as moving from "Away" to "Available"), Pidgin supports on-action automated scripts called Buddy Pounces to automatically reach the user in customizable ways.

Pidgin supports some file transfers, with the ability to cancel transfers and observe multiple transfers in a separate window, while lacking some protocol-specific features like the folder sharing available from Yahoo. Older versions of Pidgin did not support direct, peer-to-peer file transfers over the MSN protocol and instead relayed file transfers over a slower connection via the MSN servers however direct connection support has been added since Pidgin 2.7.

As of version 2.6 (released on August 18, 2009) Pidgin has a voice/video framework which uses Farsight2
Farsight
Farstream is an audio/video conferencing framework based on GStreamer. The project provides audio/video conferencing for as many instant messengers as possible through a modular design...

 and is based on Mike Ruprecht's Google Summer of Code project from 2008. That release provides the ability to have voice/video conversations using the XMPP protocol (including Google Talk), though the implementation is not yet fully complete. The framework will also allow for voice/video conversations on other protocols, such as MSN and Yahoo, in the future.

Further features include support for themes, emoticon
Emoticon
An emoticon is a facial expression pictorially represented by punctuation and letters, usually to express a writer’s mood. Emoticons are often used to alert a responder to the tenor or temper of a statement, and can change and improve interpretation of plain text. The word is a portmanteau word...

s, spell checking
Spell checker
In computing, a spell checker is an application program that flags words in a document that may not be spelled correctly. Spell checkers may be stand-alone capable of operating on a block of text, or as part of a larger application, such as a word processor, email client, electronic dictionary,...

, and notification area integration.

Supported protocols

The following protocols are officially supported by libpurple 2.9.0, without any extensions or plugins:
  • AIM (AOL Instant Messenger)
    AOL Instant Messenger
    AOL Instant Messenger is an instant messaging and presence computer program which uses the proprietary OSCAR instant messaging protocol and the TOC protocol to allow registered users to communicate in real time. It was released by AOL in May 1997...

  • Bonjour
    Bonjour (software)
    In computing, Bonjour is Apple Inc.'s trade name for its implementation of Zeroconf, a group of technologies that includes service discovery, address assignment, and name resolution...

     (Apple's implementation of Zeroconf
    Zeroconf
    Zero configuration networking , is a set of techniques that automatically creates a usable Internet Protocol network without manual operator intervention or special configuration servers....

    )
  • Gadu-Gadu
    Gadu-Gadu
    Gadu-Gadu is a Polish instant messaging client using a proprietary protocol. Gadu-Gadu is the most popular IM service in Poland, with over 15 million registered accounts and approximately 6.5 million users online daily. Gadu-Gadu’s casual gaming portal had some 500,000 active users at the end of...

  • Internet Relay Chat
    Internet Relay Chat
    Internet Relay Chat is a protocol for real-time Internet text messaging or synchronous conferencing. It is mainly designed for group communication in discussion forums, called channels, but also allows one-to-one communication via private message as well as chat and data transfer, including file...

     (IRC)
  • Lotus Sametime
    Lotus Sametime
    IBM Sametime is a client–server application and middleware platform that provides real-time, unified communications and collaboration for enterprises. Those capabilities include presence information, enterprise instant messaging, web conferencing, community collaboration, and telephony capabilities...

  • MySpaceIM
    MySpaceIM
    MySpaceIM is the official instant messaging client for the social networking site MySpace.In 2009, a web-based client dubbed was released to all English-speaking countries, allowing users to interact with friends and non-friends alike to grow their network...

  • MXit
    MXit
    MXit is a free instant messaging application developed by MXit Lifestyle Ltd. in South Africa that runs on multiple mobile and computing platforms...

  • .NET Messenger Service
    .NET Messenger Service
    The .NET Messenger Service is an instant messaging and presence system developed by Microsoft in 1999 for use with its MSN Messenger software and used today by its current instant messaging clients, Windows Live Messenger and Microsoft Messenger for Mac...

     (commonly known as MSN Messenger or Windows Live Messenger
    Windows Live Messenger
    Windows Live Messenger is an instant messaging client created by Microsoft that is currently designed to work with Windows XP , Windows Vista, Windows 7, Windows Mobile, Windows CE, Xbox 360, Blackberry OS, iOS, Java ME, S60 on Symbian OS 9.x and Zune HD...

    ; no multimedia support)
  • Novell GroupWise
    Novell GroupWise
    GroupWise is a messaging and collaborative software platform from Novell that supports email, calendaring, personal information management, instant messaging, and document management. The platform consists of the client software, which is available for Windows, Mac OS X, and Linux, and the server...

  • OSCAR
    OSCAR protocol
    OSCAR or Open System for CommunicAtion in Realtime is AOL's flagship instant messaging and presence information protocol. Currently, OSCAR is in use for AOL's two main instant messaging systems: ICQ and AIM....

     (AIM
    AOL Instant Messenger
    AOL Instant Messenger is an instant messaging and presence computer program which uses the proprietary OSCAR instant messaging protocol and the TOC protocol to allow registered users to communicate in real time. It was released by AOL in May 1997...

    /ICQ
    ICQ
    ICQ is an instant messaging computer program, which was first developed and popularized by the Israeli company Mirabilis, then bought by America Online, and since April 2010 owned by Mail.ru Group. The name ICQ is a homophone for the phrase "I seek you"...

    /.Mac)
  • SIMPLE
    SIMPLE
    SIMPLE, the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions, is an instant messaging and presence protocol suite based on Session Initiation Protocol managed by the IETF...

  • SILC
    SILC (protocol)
    SILC is a protocol that provides secure synchronous conferencing services over the Internet.- Components :...

  • XMPP
    Extensible Messaging and Presence Protocol
    Extensible Messaging and Presence Protocol is an open-standard communications protocol for message-oriented middleware based on XML . The protocol was originally named Jabber, and was developed by the Jabber open-source community in 1999 for near-real-time, extensible instant messaging , presence...

     (Google Talk
    Google Talk
    Google Talk is a freeware voice over Internet protocol client application offered by Google Inc. The first beta version of the program was released on August 24, 2005...

    , LJ Talk
    LiveJournal
    LiveJournal is a virtual community where Internet users can keep a blog, journal or diary. LiveJournal is also the name of the free and open source server software that was designed to run the LiveJournal virtual community....

    , Gizmo5
    Gizmo5
    Gizmo5 was a Voice over Internet Protocol communications network and a proprietary freeware soft phone for that network. On November 12, 2009, Google announced that it had acquired Gizmo5...

    , Facebook Chat, ...)
  • Yahoo (only basic chat and file transfers)
  • Zephyr
    Zephyr (protocol)
    Created at MIT, as part of Project Athena, Zephyr was designed as an instant messaging protocol and application-suite with a heavy Unix background. Using the "do one thing, do it well" philosophy of Unix, it was made up of several separate programs working together to make a complete messaging...



Some XMPP servers provide transports, which allow users to access networks using non-XMPP protocols without having to install plugins or additional software. Pidgin's support for XMPP means that these transports can be used to communicate via otherwise unsupported protocols, including not only instant messaging protocols, but also protocols such as SMS or E-mail.

Additional protocols, supported by third-party plugins, include QQ, Skype
Skype
Skype is a software application that allows users to make voice and video calls and chat over the Internet. Calls to other users within the Skype service are free, while calls to both traditional landline telephones and mobile phones can be made for a fee using a debit-based user account system...

, and the Xfire
Xfire
Xfire is a proprietary freeware instant messaging service for gamers, that also serves as a game server browser and has various other features. It is currently available for Microsoft Windows. Xfire was originally developed by Ultimate Arena based in Menlo Park, California...

 gaming network (requires the Gfire plugin).

Plugins

Various other features are supported using third-party plugins. Such features include:
  • Encryption
    Encryption
    In cryptography, encryption is the process of transforming information using an algorithm to make it unreadable to anyone except those possessing special knowledge, usually referred to as a key. The result of the process is encrypted information...

     and privacy, through Off-the-Record Messaging
    Off-the-record messaging
    Off-the-Record Messaging, commonly referred to as OTR, is a cryptographic protocol that provides strong encryption for instant messaging conversations. OTR uses a combination of the AES symmetric-key algorithm, the Diffie–Hellman key exchange, and the SHA-1 hash function...

  • Notifications (such as showing "toaster" popups or Snarl
    Snarl (software)
    Snarl is a notification system for Windows inspired by Growl that allows applications to display alpha-blended messages on the screen.Unlike other forms of notification, Snarl does not hijack the current focused window, nor does it force the taskbar to be visible...

     notifications, or lighting LEDs on laptops)
  • Showing contacts what you are listening to in various media players
  • Adding mathematical formulas written in LaTeX
    LaTeX
    LaTeX is a document markup language and document preparation system for the TeX typesetting program. Within the typesetting system, its name is styled as . The term LaTeX refers only to the language in which documents are written, not to the editor used to write those documents. In order to...

     to conversations
  • Watching videos directly into your conversation when receiving a video sharing website link (YouTube
    YouTube
    YouTube is a video-sharing website, created by three former PayPal employees in February 2005, on which users can upload, view and share videos....

    , Vimeo
    Vimeo
    Vimeo is a video-sharing website on which users can upload, share, and view videos. It was founded by Zach Klein and Jake Lodwick in November 2004...

    )

History

The program was originally written by Mark Spencer, an Auburn University
Auburn University
Auburn University is a public university located in Auburn, Alabama, United States. With more than 25,000 students and 1,200 faculty members, it is one of the largest universities in the state. Auburn was chartered on February 7, 1856, as the East Alabama Male College, a private liberal arts...

 sophomore, as an emulation of AOL's IM program AOL Instant Messenger
AOL Instant Messenger
AOL Instant Messenger is an instant messaging and presence computer program which uses the proprietary OSCAR instant messaging protocol and the TOC protocol to allow registered users to communicate in real time. It was released by AOL in May 1997...

 on Linux using the GTK+
GTK+
GTK+ is a cross-platform widget toolkit for creating graphical user interfaces. It is licensed under the terms of the GNU LGPL, allowing both free and proprietary software to use it. It is one of the most popular toolkits for the X Window System, along with Qt.The name GTK+ originates from GTK;...

 toolkit. The earliest archived release was on December 31, 1998. It was named GAIM (GTK+ AOL Instant Messenger) accordingly. The emulation was not based on reverse engineering
Reverse engineering
Reverse engineering is the process of discovering the technological principles of a device, object, or system through analysis of its structure, function, and operation...

, but instead relied on information about the protocol that AOL had published on the web; development was also assisted by some of AOL's technical staff. Support for other IM protocols was added soon thereafter.

Naming dispute

In response to pressure from AOL
AOL
AOL Inc. is an American global Internet services and media company. AOL is headquartered at 770 Broadway in New York. Founded in 1983 as Control Video Corporation, it has franchised its services to companies in several nations around the world or set up international versions of its services...

, the program was renamed to the acronymous-but-lowercase gaim. As AOL Instant Messenger gained popularity, AOL trademarked its acronym, "AIM", leading to a lengthy legal struggle with the creators of GAIM, who kept the matter largely secret.

On April 6, 2007, the project development team announced the results of their settlement with AOL, which included a series of name changes: Gaim became Pidgin, libgaim became libpurple, and gaim-text became finch. The name Pidgin was chosen in reference to the term "pidgin
Pidgin
A pidgin , or pidgin language, is a simplified language that develops as a means of communication between two or more groups that do not have a language in common. It is most commonly employed in situations such as trade, or where both groups speak languages different from the language of the...

", which describes communication between people who do not share a common language. The name "purple" refers to "prpl", the internal libgaim name for an IM protocol plugin.

Due to the legal issues, version 2.0 of the software was frozen in beta stages. Following the settlement, it was announced that the first official release of Pidgin 2.0.0 was hoped to occur during the two weeks from April 8, 2007. However, Pidgin 2.0 was not released as scheduled; Pidgin developers announced on April 22, 2007 that the delay was due to the preferences directory ".gaim".

Pidgin 2.0.0 was released on May 3, 2007. Other visual changes were made to the interface on 2.0.0, including updated icons.

Criticisms

  • Password
    Password
    A password is a secret word or string of characters that is used for authentication, to prove identity or gain access to a resource . The password should be kept secret from those not allowed access....

    s are stored in a plaintext
    Plaintext
    In cryptography, plaintext is information a sender wishes to transmit to a receiver. Cleartext is often used as a synonym. Before the computer era, plaintext most commonly meant message text in the language of the communicating parties....

     file. This password file is readable by anyone who has physical access to the computer, access to the user or administrative accounts, or (potentially) to anyone who is able to exploit security vulnerabilities on that computer. The developers recognize this as a security concern, but believe that the requirements of Pidgin (and the nature of instant messaging) make it infeasible to encrypt the password file, though they have said that they welcome solutions to integrate Pidgin with application-level security solutions.
  • Pidgin does not currently support resuming paused or incomplete file transfers in any of the applicable chat protocols.
  • As of version 2.4 and later, the ability to manually resize the text input box of conversations has been altered—Pidgin now automatically resizes between a number of lines set in 'Preferences' and 50% of the window depending on how much is typed. Some users find this an annoyance rather than a feature and find this solution unacceptable. The inability to manually resize the input area eventually led to a fork, Carrier (originally named Funpidgin).
  • Pidgin does not allow disabling the group sorting on the contact list.

Other notable software based on libpurple

  • Adium
    Adium
    Adium is a free and open source instant messaging client for Mac OS X that supports multiple IM networks, including Windows Live Messenger, Yahoo! Messenger, Google Talk, AIM, ICQ, and XMPP. It supports many protocols through the libraries libezv , MGTwitterEngine , and libpurple...

     and Proteus are instant messaging clients for Mac OS X
    Mac OS X
    Mac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...

     that support multiple protocols through libpurple.
  • Meebo
    Meebo
    Meebo is a social platform connecting users with their friends across the web. It began in 2005 as a browser based instant messaging program which supported multiple IM services, including Yahoo! Messenger, Windows Live Messenger, AIM, ICQ, MySpaceIM, Facebook Chat, Google Talk, CafeMom and...

     is a multi-protocol web-based instant messaging client that uses libpurple.
  • Empathy
    Empathy (software)
    Empathy is an instant messaging client which supports text, voice, video, file transfers, and inter-application communication over various IM protocols....

     is a multi-protocol instant messaging client which uses libpurple—via the Telepathy framework—for some of its protocol support.
  • QuteCom is a open-source, natively cross-platform, multi-protocol IM and VoIP phone with encryption and video calls
  • BitlBee
    BitlBee
    BitlBee is a cross-platform IRC instant messaging gateway, licensed under the terms of the GNU General Public License.BitlBee communicates with the user via the IRC protocol, providing a gateway to popular chat networks such as AIM and ICQ via OSCAR, .NET Messenger Service, Yahoo! and XMPP and the...

     and Minbif are IRCd-like gateways to multiple IM networks, and can be compiled with libpurple to increase functionality.
  • Instantbird
    Instantbird
    Instantbird is a cross-platform instant messenging client based on Mozilla's XULRunner and the open source library libpurple used in Pidgin. Instantbird is free software available under the GNU General Public License...

     is a multi-protocol desktop messaging client based on Mozilla's
    Mozilla Foundation
    The Mozilla Foundation is a non-profit organization that exists to support and provide leadership for the open source Mozilla project. The organization sets the policies that govern development, operates key infrastructure and controls trademarks and other intellectual property...

     Gecko engine
    Gecko (layout engine)
    Gecko is a free and open source layout engine used in many applications developed by Mozilla Foundation and the Mozilla Corporation , as well as in many other open source software projects....

    .

See also

  • Multiprotocol instant messaging application
    Multiprotocol instant messaging application
    A multiprotocol instant messaging application is client software composed of an IM application which may connect to multiple IM networks. The networks supported include: AOL Instant Messenger, ICQ, XMPP , MSN Messenger, QQ, Yahoo! Messenger, as well as specialized networks such as Novell GroupWise...

  • Comparison of instant messaging protocols
  • Comparison of instant messaging clients
    Comparison of instant messaging clients
    The following tables compare general and technical information for a number of instant messaging clients. Please see the individual products' articles for further information. This article is not all-inclusive or necessarily up-to-date...

  • Comparison of IRC clients
    Comparison of IRC clients
    The following tables compare general and technical information between a number of IRC client programs. Please see the individual products articles for further information.- General :...

  • List of XMPP client software
  • Online chat
    Online chat
    Online chat may refer to any kind of communication over the Internet, that offers an instantaneous transmission of text-based messages from sender to receiver, hence the delay for visual access to the sent message shall not hamper the flow of communications in any of the directions...


External links

  • Pidgin website
  • Pidgin project on SourceForge
    SourceForge
    SourceForge Enterprise Edition is a collaborative revision control and software development management system. It provides a front-end to a range of software development lifecycle services and integrates with a number of free software / open source software applications .While originally itself...

  • [irc://irc.freenode.net/pidgin #pidgin] on freenode
    Freenode
    freenode, formerly known as Open Projects Network, is an IRC network used to discuss peer-directed projects. Their servers are all accessible from the domain name [irc://chat.freenode.net chat.freenode.net], which load balances connections by using the actual servers in rotation...

The source of this article is wikipedia, the free encyclopedia.  The text of this article is licensed under the GFDL.
 
x
OK