Wednesday, January 28, 2009

Formatting and toolbars added to emesene 2


During this weekend I rewrote the Menu implementation from scratch, that means that all the menus, popups and toolbars are new, I also implemented the conversation toolbar and select font, select color and clear buttons functionality, to make them useful I also implemented format message sending and display on the input and the output.

Thursday, January 22, 2009

some eyecandy

well, this is just the foundation for something that I have in mind

here is just what I hacked today, now I have to implement the conversation theme loader, manager and that stuff, and all that maintaining compatibility with the ones that don't have python-webkit.


I know, the theme is ugly, is what I did in 10 minutes to make the screenshot :D

Update, I made this theme and now the emoticons are shown ;)


Tuesday, January 20, 2009

A request implemented

an user asked to allow custom group sorting, another asked to sort the users by log size, so i implemented a new feature on the contact list that allows to provide "weights" to the users and groups to override the default order, if an user has more "weight" than another group, then it will be above the other, the same works for contacts, so you can change the weights by hand or use a plugin to calculate the weights for you.

a screenshot showing the feature is here:

as you can see, the group Otros is over the top and then comes emesene, the common order should be Amigos, (other groups..), Otros, (other groups..), emesene. also Roger is on the top of the group, and then comes dx, is easy to see there since they should be ordered first by status and then by display name.

This feature can be used to "sink" users you don't want to see assigning negative values ;)

take into account that I only implemented the feature on the contact list and the store/load from the config, no gui available (yet) to modify the weights.
I will implement it in some days I guess, right now I'm advancing on a personal project (I hope you hear about it in the next months ;)

Friday, January 16, 2009

Responses to requests and questions

Windows version

A lot of people asked for a new windows version, so I published a new one, check the post below :D

Clear button on the seach bar

The text is removed when you hide the search bar, it may be added later, but I need to add a dependency (libsexy)

Try icon

of course I will add it :D

Contact list sorting

emesene 2 sorts the contact getting the display name in this order:
  1. alias if exists
  2. nick if exists
  3. finally mail
so the contacts are ordered by those fields in that order, that means that if the contact has an alias, that will be used to sort, if not the nick will be used and if not (should not happen) the mail will be used.

Offline grouping

on emesene 2 the show by status option has no groups, it's a list of contacts sorted by status (and inside each status by the rules explained above). In this way the offline people are at the bottom, you can hide them unchecking "show offline", and there you go, "collapsed" offline group :D.

Open downloaded files with double click

seems reasonable :D

Qt front end

I don't know Qt, I would like to learn it, and trying to make a Qt front end seems like a nice excuse to me ;), but for now I will focus on the base and the gtk front end.

"Donate now" on Help

Nice idea, I got a donation only once, $10 from C10uD (thanks!, I will get that money and buy a beer sometime :D)

Get themes/plugins from a repository

I will add that.

Modify global configuration and inherit for new accounts

already done on emesene 2 :)

Save conversation on invisible mode

I will remember that :D

Hide blocked contacts (that is what I understood)

nice feature!

Resize large emoticons

I will try to remember it when p2p is implemented

Lower cpu usage with to many custom emoticons

animating a gif uses a lot of CPU I will see what can I do.

ugly maximized login window

on version 1 or 2?

what could be done to make it less ugly?

import/export logs

yep

search logs by client

ok..

Custom group sort

will see if I can implement it.

Better support for self on contact list

yep

Drag and drop for display picture

I need to implement p2p before but yes ;)


Disclaimer: Some of those requests are for features that are not implemented yet and will take a long time to be implemented, so please you will have to make me remember if I don't implement them

Emesene for windows release!

Thanks to j0hn who made a new release of emesene for windows, both portable and installer are provided, you can find both on emesene's sourceforge page

take it while it's hot!

Tuesday, January 13, 2009

small yet useful features requests

in a comment juancarlospaco requested a small but useful feature, that is to not display emoticons on the conversations, but just the shortcuts, I added it as a feature with 4 lines of code, so I thought that there may be some small but useful features that you would want to see on emesene 2.

no huge features allowed, post comments, I will see which of those I can add easily, the hard ones will be in my todo list, the ones that I can't implement will be explained here.

comment!

MSN protocol resources

if you want to learn how the msn protocol works, here I give you some links to read :)

The tools I use to debug and find new features are wireshark and ospy, both great tools, ospy is easier to use, but you need windows and WLM

Orfeo C recommended SocketSniff, I did't tested it, but it may be useful for someone

Not so frequently asked questions

disclaimer: the text was written really fast, expect some weird sentences :P

emesene cam/p2p/voice/custom emoticons/display pictures/handwrite/etc support


emesene 2 will support them some day, but they will not be implemented on the next alpha/beta release.
why? because I prefer to have a stable and maintainable base from which I can add that support later and keep the application stable and clean.
That was one of the failures of emesene 1, I wanted to add all the possible features and I never refactored or designed the application in a way that will make it maintainable, now there are bugs that are really hard to find/fix because of that, and you see that right now, no one wants to fix/maintain emesene 1, and that is not good. I want a documented and well structured base so I can get help from more coders that can understand and modify emesene 2 without having to read a mess of code.
So, I will make a release that will let you chat, do contact list operations, log and some preferences, and when that is polished I will start to work on more advanced features, some of them may come fast since we implemented them on emesene 1, some of them may take some time since MSN protocol changes all the time and voice/video are really platform dependent.

the will be available, but not in the next weeks.

report bugs

nobody is maintaining emesene 1 except some cleanup made by dx, if you want to report bugs go to emesene.org/trac but don't expect a fast response.

emesene 1.0.1 on windows (empty contact list)

there is an internal build of the latest trunk for windows it has some bugs that must be fixed, j0hn is working on that, I will see if we can make a release of it the next week (I didn't knew that people used emesene on windows.. :)

mac version

there are some instructions here http://emesene.org/trac/wiki/MacOSX my idea with emesene 2 is to make a cocoa version, but I have used a mac only 10 minutes on my whole life so if i dont get access to one of them maybe someone else will have to do it.
The code on emesene 2 is structured to make easy to implement other protocol support and other toolkits so if someone is interested..

emesene and python 3.0

python 3.0 is a transition release, not every library that we use is supported on it right now, we will code it using python 2.6 with the -3 switch and when all the libraries are available and python 3 is supported on the main distributions we will make the switch.

emesene 2 multiprotocol??

no, emesene 2 will not be multiprotocol, emesene 2 will be a MSN client, but since MSN is closed I feel like I'm helping to keep people using MS products, and since I use a Gtalk a lot lately I decided to test if e3 was designed as I thought to support jabber, I made the basic gtalk support on one night so it didn't consumed too much resources :D.
If you use the revision prior to Gtalk support you will see that nothing changed, that's because emesene 2 is still an MSN client, but now we add Gtalk support, that means that emesene 2 is not intended as a jabber client, you have gajim, pidgin and others for that, but only. Emesene 2 will not support other protocols, just those two and I won't sacrifice any MSN feature for Gtalk.

  • If a feature is on MSN and not in jabber it will be implemented on MSN and deactivated on Gtalk mode.
  • Advanced features of jabber will not be implemented if there is no MSN counterpart. (use gajim for that, it's a great client)
  • No more protocols supported
  • No multiaccount support, you either use one MSN account or one Gtalk account
  • MSN by default, Gtalk support changed on settings
and if you see, it's not hard to have more features than gtalk ;)

language support on windows

no main developer has windows installed on his machine so it's hard to test and add windows features, and language support doesn't work out of the box for us, if someone wants to be the windows maintainer, they are welcome :).

if you have more questions..

Tuesday, January 06, 2009

do you see something strange?


well, that's my gtalk account... ;)

Sunday, January 04, 2009

One question.

What would you like to read on the next post of this blog?

if you have some doubt or something you would like to know about the project or about something related, please comment and ask for it, I will try to post about the ones that find useful for the readers.

I expect the comments.

Saturday, January 03, 2009

How to test development versions of emesene?

If you want to test development versions of emesene, then this is your post! :P

A development version is one that is not yet released, and can be on different stages, for instance:

  • Alpha versions: not all the features available, unstable
  • Beta versions: almost all the features there, needs testing.
  • Release candidate: will become final version if no big bugs are found during testing.
on emesene we have a stable version (1.0.x), an unstable version (1.1.x) and an alpha version (code name mesinyer, a.k.a emesene 2).

All those versions are stored on our version control system that can be found on sourceforge (http://emesene.svn.sourceforge.net/viewvc/emesene/).

to test one of this versions you need to have a subversion client installed.

on linux you can install it from your repositories, something like

sudo aptitude install subversion
su -
yum install subversion

and so on..

on windows you can download a really nice client called tortoise svn

the first thing you need to do is to download the version you want to test, the 3 versions above are located at:

  • emesene 1.0.x: http://emesene.svn.sourceforge.net/viewvc/emesene/tags/emesene-1.0/
  • emesene 1.1.x: http://emesene.svn.sourceforge.net/viewvc/emesene/trunk/emesene/
  • emesene 2: http://emesene.svn.sourceforge.net/viewvc/emesene/trunk/mesinyer
these URLs are used to view the repositories.

on linux you run the "checkout" command that downloads the sourcecode for the first time:

svn co http://emesene.svn.sourceforge.net/svnroot/emesene/tags/emesene-1.0/ emesene-1-x

svn co https://emesene.svn.sourceforge.net/svnroot/emesene/trunk/emesene emesene

svn co https://emesene.svn.sourceforge.net/svnroot/emesene/trunk/mesinyer emesene2

depending on which version you want to download.

now that you have the code, cd to the folder and run emesene
  • python Controller.py # to run emesene 1
  • python emesene.py # to run emesene 2
once in a while you may want to update the folder, that means, to download all the changes that where made to the repository. To make that, cd into the folder and then do:

svn up

that will update all the files.

Thursday, January 01, 2009

emesene 2 alpha 1 screencast

Wednesday, December 31, 2008

Some stats about emesene

these are statistics about the trunk repository of emesene.

emesene stats

About emesene 2

This post will explain a little about what emesene 2 is all about, what e3 is and what is the relation with amsn 2.

The status of emesene 2 (at December 31 2008):

Login window with auto completion and remember settings.

The main window with a simpler and nicer layout.

main window with search enabled (pressing ctrl+F or pressing the search button)


The conversation window with conversation theme and emoticon support.

it's in early alpha development, so no bug reports yet, no crying and only use it if you are an extreme sport fan :P

There are still a lot of things to do, I expect to release a usable alpha or beta on the first days of February.

Why I'm developing emesene 2?

I had a lot of ideas about how the next version should be, and amsn2 had an architecture already defined, a MSN library already defined and other things that didn't led me try new ideas, so I started emesene 2 to test this ideas. (read more on the "what about amsn2?" part).

For instance, now the gui is really separated from the protocol library, and the protocol api is well defined so I can work on jabber support on the future.

All the protocol stuff runs on different threads, so the main thread only works on GUI stuff, so no more GUI freezing :)

The code is well structured, documented and validated using pylint and following the PEP-8 guidelines, also I will post some documentation for starters on this page to help people know where to start.

what about e3?

since I coded emesenelib I wanted to rewrite it from scratch, I thought the design of e3 a long time ago, and the idea was to make it multithreaded and with a clean API. I think I'm getting there right now and I'm happy with it.

what about amsn2?

Since the beginning our commitment was to provide a GTK gui, so all the gui code on emesene 2 is separated from the logic. That means that they can take the code of the GUI and with minimal cleanup have a complete GTK frontend for amsn2.

I also coded other modules with reusability in mind, like the theme, configuration and xml parsers, so if they find it useful, they can take it and use it (it's GPL code :D).

that's all for now, I will keep posting when new things come. The next post will be about the structure of the code.

Monday, December 29, 2008

Status report

about emesene 1.x:

the development of this version was pretty low the last months mainly because it's hard to maintain (the code is a mess in some places) and there are no developers willing to help to close bugs (if you want, please help us!).

the last days dx was trying to close some anoying bugs, he is still on it and I think it will make emesene 1.x better to use.

I had little to no time in the last months, so the time I had, was to code for emesene 2 (read below), this month I will have time to advance on emesene 2, so expect some updates about it in the next weeks.

about the new version:

I will make individual posts about the new version (code name mesinyer), but let's say that it's a full rewrite applying all the things that I learned over the development of emesene 1 and trying to do a stable, mantainable and extendable code base. The code is pretty alpha but usable, I expect to do some alpha releases on the next month.

We are back

I made the last post on this site a year and a half ago, and I'm still getting comments and mails that come from this site. That means that people still get to this site instead of the official site.

I started a blog on the other site that never took off, it seems that people didn't knew about it or something.

and since the forum and the blog were hacked some days ago because of a bug on the forum, I decided to start using this site again to keep posting about the project status, python coding, emesene coding, e3 coding and some random stuff.

as always I expect your comments.

Friday, July 20, 2007

new site

the new site is here

emesene site
emesene forum

Friday, February 23, 2007

main site moved

from now on go to www.emesene-im.com.ar to talk and read about emesene, all the news
and everything else will be given in the anounces forum.

if you dont want to create a user for just one post you can use the public user
(user:public password:public)

if the site fails to load retry, the hosting works weird sometimes

Saturday, February 10, 2007

still alive.

this week i started to study so the project got a small gap, but today i had some time and i fixed and closed all the bugs in the tracker (11) , so please check out the latest version and keep testing.

of course i know that there are some more bugs but its easier to fix bugs that are described and have a traceback so please use the tracker.

Thursday, January 25, 2007

avatar support (beta)


today i coded the support for sending your avatar and amazingly it worked
( tested on aMSN, gaim and kopete ), the code still needs some modifications but
its a good start.

about receiving others avatars it works now only with kopete and kmess, i need
to check that

this feature isnt fully integrated so you will have to wait some time..

for now here is a screenshot.


Sunday, January 21, 2007

Report



currently im working in the avatar stuff, right now im able to receive the avatar from
kopete, kmess and trillian, i have some troubles with gaim, aMSN and WLM that i cant figure it out, but i guess i will find the problem sooner or later :D.

i have fixed some bugs:
  • tango theme can be loaded again
  • the font properties apply to all conversations
  • the image on the tooltip is back on linux

i also changed the logo from the login window, it will be (i guess) the default logo from emesene (thanks to Vinicius Depizzol )

xmms and rhythmbox plugins thanks to roger duran.

also should be pointed that we are refactoring some parts of the code that needed it, so you wont see any change but we will.. :D

as allways i want to remember that you can contribute with emesene in lot of ways
* translating (into new languages or updating the ones we have)
* coding
* fixing bus
* testing
* doing artwork (we need to replace the smilies and new themes will be great)
* spreading the word about emesene
* packaging
* doing plugins
* etc.

please if you can do something you are welcome

Friday, January 19, 2007

Spell check support

thanks to roger duran we have a new plugin that support spell check.
atalavera modified the main menu layout.
im working on the display picture (nothing to show yet).

so keep testing and commenting...

Friday, January 12, 2007

emesene release 120107



a lot of modifications since the last one:

* huge refactoring of code
* bug fixes
* a better conversation window
* Now is possible to setup the tab position on tabbed chat conversations
* close the switchboard on socket error
* notification on message waiting and typing
* new header on conversation
* new list of users in group conversation
* pt_br translation uploaded
* when status change on the menu changes in the combo
* now emesene remember your last status..
* when there are 2 users in a group chat and 1 leaves the title in the tab changes to the nick of the only user left.
* now when someone start a new conversation the new tab will be the current tab
* soapManager now try 3 times to make a soap request and not forever.
* if the user click with mouse's right button on tab label will see a popup menu with all tabs label and users status
* putted a ComboBoxEntry in place of Entry in login fields window, so the user can list down all the users logins without type any text. The completion is working too.
* removed a event that didnt let you copy text from the conversation window
* added a 'Clear conversation' button to the conversation toolbar
* Added the user Online/Offline relation to group name in contacts list
* show time stamp now is a global attribute and not local to a conversation
* Added send and clear buttons to inputwidget in conversation window
* the text in a tab is saved when the tab is changed. (each tab has is own text)
* Added color scheme funcionality to preferences window. Now we get the colors to build the interface from the config file
* Added the initial setup file :). This setup crates a shortcut item on Desktop os posix systems according to desktop-free-standards

As always if you have a problem remember to delete the .config/emesene1.0 directory and please report bugs and feature request, now almost all the features are there and if the remaining bugs are fixed i can start working on file transfers, display pictures and custom emoticons so.. lets hunt some bugs..!

Wednesday, January 10, 2007

back to beta

since we have a new developer on emesene (Yguaratã C. Cavalcanti) we started to add new features and refactor a lot of code so emesene will have some unstabilities and huge bugs this days while we move and modify a lot of code and add some stuff.

please keep older versions if you want _some_ stability :D

Saturday, January 06, 2007

emesene RC4


emesene on looking glass


some of the modifications

* replaced Entourage with ContactData, simpler and mantainable code, now support multiple groups per contact, easier to support other protocols since we ahave a defined API for contact management
* more descriptive exceptions
* fixed move user to group and added copy user to group and delete user from group.
* descriptive output for exceptions in login
* typing shows in every tab
* configuration dialog for the sound plugin
* only one autereply sent per conversation
* debug escaped
* handle exceptions in soapManager
* add pending fixed
* spanish translation updated
* some code modified to separate emesene from Msnp13
* a lot of modifications that dont remember because of the svn problem

remember to erase the .config/emesene1.0 directory
EDIT 07 january : i have uploaded a new version to sourceforge in the same RC,
i have added notifications of new mesages in tabs, fixed the bugs when blocking and unblocking,
i have added a new languaje (taiwanese), fixed the problem that didnt show blocked contacts.
new option that allow to select where the tabs should appear, and some more stuff.

Thursday, January 04, 2007

new stuff


  • now you can see a user that is in multiple groups
  • users can be copied or moved to another group
  • users can be removed from the current group
If somebody can make a cool "loading" gif will be apreciated

Wednesday, January 03, 2007

information

i made important modifications to Msnp13 library to allow users in multiple groups
make the code simpler and make it easy to mantain, also i have in mind jabber support in a future (after file transfers, custom emoticons and display pictures :) )
so the svn code is a little unstable please keep older versions if you want something
more or less stable and wait until tomorrow to make a svn up, if you are a
extreme user update and help me fix the posible new bugs :P.

Sunday, December 31, 2006

svn fixed

i had a mess in my local svn and now its fixed, check it to be up to date.

Saturday, December 30, 2006

emesene RC3

new release candidate of emesene, i release this here because the svn seems to be broken and i need your feedback!

now after the first login the login process is done faster! see it to believe :P
some modifications here and there
bug fixes (very few)
plugins now are stored on the user home, plugin configuration, new plugins, new
translations etc...

check it.

Thursday, December 28, 2006

new plugins

new plugins are coming

  • PersonalMessage plugin remember the personal messages and restore it every login
  • Dbus plugin (thanks to Roger Duran) allow to interact via dbus with emesene
  • LibNotify plugin show notifications via libnotify

LibNotify in action.

you can create plugins easily also you can modify the existing ones.

right now the svn service of sourceforge is failing, i will upload this later...

I had troubles with svn server in sourceforge so i uploaded a tar.gz so you can download it,
REMEMBER TO ERASE YOUR CONFIG DIRECTORY

almost ready for the final release

since no bugs has been reported in a while and i havent found bugs or features to add to this release (excluding custom emoticons/file trasnfers/display pictures/cam/sound that will be in future releases) , i call translators and packagers to do what they know before the final release :).

if you have a bug/feature please report it!.

Tuesday, December 26, 2006

emesene 1.0 RC1




first release candidate of emesene 1.0 a lot of changes
some fixes to do but minimal

please report bugs!

artist needed to replace the emoticons
translator needed also!

  • new themes
  • move to group work
  • set alias added
  • new translations
  • bug fixes
  • block/unblock/add/remove modified
  • some GUI tweaks
  • etc..
REMEBER TO ERASE THE ~/.config/emesene1.0 DIRECTORY

Sunday, December 24, 2006

new modifications




Saturday, December 23, 2006

new theme! (and fixes)





new default theme thanks to Roberto Salas, some fixes, try doing a svn up and removing your .config/emesene1.0 directory.

if you want to help making themes you are welcome!

Thursday, December 21, 2006

emesene beta2




emesene beta 2, a lot of fixes and two translations included, other languages will
be supported when you want :D, just help us to translate emesene.

please download and send bug reports.

Sunday, December 17, 2006

emesene 1.0 beta!



first beta of emesene, i need all of you to test this release and submit bugs to make
the final release...

in the doc directory are instructions to translate, if you speak something diferent than english and know english give it a try!

enjoy (and submit bugs!)

Friday, December 08, 2006

emesene alpha 2



thanks to Linan Wang and Alberto Talavera for his support:
*
Linan Wang developed the offline message module and sent to me
*
Alberto Talavera did a great job polishing the emesene GUI

in this alpha some bugs have been corrected and some things added:
* now you can see offline messages
* a new plugin let you set the personal message with the song you are listening in amarok
* blocked message if a contact is blocked
* userMenu show only block or unblock according to the contact state
* a lot of modification in PSocket to allow emesene work under HttpMethod
* code clean up
* now the soap request are made in a thread so they dont block the GUI
* now emesene work on windows
* etc..

Saturday, December 02, 2006

emesene alpha



emesene 1.0 is almost feature complete so if you want to be alpha tester just run
the following command:

svn co https://svn.sourceforge.net/svnroot/emesene/trunk/emesene emesene1
cd emesene1
python Controller.py

turn on the debug on the preferences menu and start to use it, if you find a bug send me a mail with the exception in the console and the description of the bug to my mail (what were you doing, how to make it happen etc).

if you had used emesene 1.0 before erase the ~/.config/emesene1.0 directory

Update 03/12/06 8:11 : before submit a bug do "svn up" on your emesene directory, some fixes and new features added.

Sunday, November 26, 2006

Plugins!

PluginManager and PluginManagerDialog created, emesene can be
extended with plugins!
a plugin as example has been written if you want to check how to do
your own plugin.



Friday, November 24, 2006

New Theme (and more)

i have changed the default theme, here are some screenshots.





other stuff:
  • now you can send messages to a contact in a conversation before he join the conversation, when he join the messages are sent.
  • add/remove/rename group implemented
  • block/unblock user implemented
  • the soap requests are made in a thread so they dont freeze the GUI
  • a stub of a plugin system started.

Thursday, November 16, 2006

Encodings fixed!

i win!

i hope not offending somebody with what i have wroted :D

new features

Here is a screenshot of new features, mainly conversation log.

the conversations are allmost finished, you can chat, do multiconversations, invite people to chat, log conversations, format messages, see time stamp on messages,
send nudges, smilies etc.

The only feature missing is tabbed chat.

Monday, November 13, 2006

call for official logo/theme

i want a official logo/theme for emesene, since i dont think that i have good taste
i want you to design one, the winner will be anounced here with the logo and of course
the logo will be used fot the default theme of emesene and will be in the credits.

the conditions are:
* SVG format (if you can)
* GPL like license
* the logo must be a logo not a word.

thats all, you have to send me the logos to my mail