Mardy

Eligante

Latest news

<?php $taxo_id = 6; ?>

Here is a list of the latest news written in English; to see a more complete selection, please see nid\”>$n->title“;

}

$output .= “”;

print $output;

?>

Introduction

Eligante (or e-ligante) is a message collector and browser, released under the GPL licence and written in Python.

The main activities of eligante are:

  1. Getting access to a message source (e-mails, IM, IRC chat logs, web boards, etc.), retrieving the messages and storing them in a SQL server.
  2. If messages over different sources share the same sender, it’s possible to create a unique identity for this user.
  3. Browsing the messages present in the SQL database.

The first goal is achived by a series of modules, or engines (motores in interlingua) which fetch the messages from a specific source (ICQ logs, mailboxes, websites…) and store them in the database (currently MySQL).

The second point allows creating a virtual identity which ties together all the various identities a friend of yours might have in the various sources; for instance, if you had conversations with Marco both by e-mail and by an IRC chat, you can create an identity from him to be the merge of the two.

The third point will allow you to browse into the message database through a web interface; you’ll be able to see all messages you had with Marco in an unified view, without having to navigate through the various modules. The interface provides some search functions, and also allows you to execute steps 1 and 2. Hence, all eligante can be controlled from your web browser.

Features

  • Several modules for fetching messages:
    • E-mails in mbox, MH, maildir and MMDF formats
    •    <li>IRC chat conversations (as logged by <strong>irssi</strong>)</li>
      
         <li><strong>gAIM</strong> conversation (therefore <strong>ICQ</strong>, <strong>MSN Messenger</strong>, <strong>Yahoo! Messenger</strong>, <strong>Jabber</strong>,...)</li>
      
         <li>The meeting website <strong>hi5.com</strong></li>
      
         <li>Several bulgarian websites: <strong>elmaz.com</strong>, <strong>flirt4e.com</strong>, <strong>sreshta.bg </strong> and others</li>
      
         <li>Other modules can be easily built (next ones will probably be <strong>orkut</strong>, <strong>skype</strong> and any others I'll hear of)</li>
      

  • Unified interface for browsing all messages
  • Advanced search functions: in people names, in the subjects and in messages body. It is possible, for instance, to find all the messages in which you mentioned "Linux".
  • Unicode support
  • Internationalization support: all the text in the web interface can be translated into other languages
  • Easy configuration and setup: the main settings (for connecting to the DB) are stored in a plain text file, while module configuration can be done via the web interface
  • Integration with The address book, an electronic address book developed in PHP.

History

Eligante is a project started in the spring of 2005, to solve a real

problem: I had frequent conversations with many people over different channels

(especially websites) and in such a situation the risk of forgetting to answer

to some message is very big. Besides, I didn’t remember what I talked about

with one or another people; for this reason, I needed a quick way for checking

my previous correspondence with someone, independently of the medium where the

actual conversation occurred.

Initially, eligante was just a mess of python scripts; but then I realized

it could be useful for other people too, so I decided to reorganize it in

something easy to develop and mantain. I added internationalization and a

simple web interface; while it’s already in a fine usable state, there’s still

much work to do, and I hope to find someone interested in it.

What’s this interlingua?

To tell it shortly, Interlingua is the language I like most; it’s a natural language, no less than all national languages, it’s simple, easy and sounds beautiful. It is the common denominator of the languages of the western world (English, French, Spanish, Portuguese, Italian), and millions of people can understand it at first sight.

You might wonder why I decided to use it in eligante (for the

comments and the names of variables and functions); well, while I don’t have

nothing against the English language (apart from its pronunciation), I did want

to test how a community, born and grown with English as the only working

language, would react to a different point of view. I’m referring to the Open

Source community, which came to use English not by an unanimous decision, but

just by convenience; and nowadays people not speaking English have two

choices: either learn it, or stay away from the Open Source community.

Interlingua is just another language; it could be Spanish, Chinese or

Bulgarian. Though, I like Interlingua most because of it’s simplicity, and

because many people can understand it. In fact, the reason why I’m writing this

text in English and not in Interlingua is not because less people would

understand Interlingua (which is not true), but because most people

wouldn’t even try to read it. I want to demonstrate that the statement

“I don’t know this language, hence I don’t understand it” is plain wrong: from the premise that you don’t know a language, you can only derive that you’ll won’t be able to express yourself correctly in such a language. But you might be able to read it, just make the effort!

Think about this: you know Python and PHP, but you don’t know Java and C. Would you conclude that you cannot read a program written in Java or C? Of course you can! Your reading will just be slower, but you’ll make it. And the same can happen with natural languages — as long as they are close enough to the ones you know, of course.

There are other reasons why I’ve chosen to use an extraneous language in my

project. I’m not going to write about globalization, because that

would take us too far, but I’m sure you got the idea. But there’s some collision between the concepts of Open Source and the (implicitly forced) adopting of a single language which I feel almost as a contradiction.

As a nice conclusion of the subject, I’ll leave you a question: why know 10

programming languages, but just one human language?

Screenshots

How could I not show some screenshots! The graphics of eligante is extremely essential, just what render it usable. This is a point for which I definitely need help.

<td class="imagine"><a href="/archivos/eligante/personas.png"><img width="200" border="1" src="/archivos/eligante/personas.png"></a><p>The list of identities eligante has bound</p></td>    

<td class="imagine"><a href="/archivos/eligante/cerca.png"><img width="200" border="1" src="/archivos/eligante/cerca.png"></a><p>The search function</p></td>

<td class="imagine"><a href="/archivos/eligante/liga.png"><img width="200" border="1" src="/archivos/eligante/liga.png"></a><p>Creation of a new identity: from each module, one can choose zero, one or more identities. They'll be all tied together</p></td>

<td class="imagine"><a href="/archivos/eligante/prende.png"><img width="200" border="1" src="/archivos/eligante/prende.png"></a><p>The fetching of new messages</p></td>

<td class="imagine"><a href="/archivos/eligante/address.png"><img width="200" border="1" src="/archivos/eligante/address.png"></a><p>eligante integrated into The Address Book</p></td>

Prerequisites for installing

eligante has been developed and tested just on Linux, but it should work in any machine which runs this software:

  • Python 2.3 o later

  • Mysql (better if version 4.0 o later)

  • (optional) The Apache web server wich CGI support can be used, but it’s not required as eligante now comes with its own webserver

  • (optional) The Address Book

Download and try Eligante

I’ve tried my best to simplify the process of installing eligante and having it running, and I think I’ve reached a satisfying level. But should you encounter any problems, please post to the eligante-user mailing list.

Your feedback is needed for the improvement of eligante!

To download eligante, click here:

Choose the latest version from the sourceforge.net website


If you like emotions, you can try out the <a

href=“http://cvs.sourceforge.net/cvstarballs/eligante-cvsroot.tar.bz2”>CVS

version. But please note that this version is always under development,

so it’s extremely probable that something won’t work as expected.

Installation

Uncompress the tar archive and follow the instructions in the INSTALL.txt file:

tar -xvzf eligante-<version>.tar.gz

cd eligante-<version>

more INSTALL.txt

Get involved!

Eligante is registered as a project in <a

href=“http://sourceforge.net/projects/eligante”>sourceforge.net. If you are interested in contributing code for eligante, or you just want to follow the development, or ask for help, there are two <a

href=“http://sourceforge.net/mail/?group_id=152477”>mailing-lists

waiting for you.

Logo SourceForge.net