Status of SIP Communicator 1.0 development.


#1

Please, when replying to this letter make sure your response goes _only_
to dev@sip-communicator.dev.java.net

-------------------- Periodic Status Letter 1 --------------------------

Hello all,

(Apologies to those getting the letter multiple times)

This is the first of (I hope) a series of status letters meant to give
everyone a clear grasp of what's going on inside the project. Each
letter would be summarizing things that have happened since the last
one, outlining immediate goals and giving other news if there are any. I
hope we'll be able to make this letter a lasting tradition especially if
there's interest in it.

As a first letter this one is going to be slightly longer. I'll try to keep the following letters short so that anyone could be easily informed of project progress.

In this week's status letter I'll be going over the following list of issues:

1. A look behind.
2. Where is the project currently standing and what has been achieved.
3. What's cooking right now.
4. Immediate goals.

1. A look behind.

It's been a while now that we're working on the 1.0 version of the SIP
Communicator. I've started planning an OSGI based SIP Communicator
somewhere in August 2004. Some attempts to simply port the previous
(pre1.0) version over an OSGI environment without much hassle were made
in the first half of 2005 ... without much success. What I consider the
beginning of the 1.0 version is the first commit in the CVS repository
of the sip-communicator-1-0-draft java.net project. This happened on
_November_2nd_2006_ (at 14:09 to be exact). Since that day work has
accumulated quite steadily:

http://dev.sip-communicator.org/loc.html

and today we are I believe not far from a first pre-release (beta).

2. Where is the project currently standing and what has been achieved.

Most important of all is the fact that we are now completely OSGI based. All SIP Communicator modules are packaged as OSGI bundles and all those that are supposed to export functionality do so as OSGI services. We are using the Oscar (Felix) OSGI implementation and we have to say that we are very happy with it (Kudos to Richard Hall and the new Felix Apache Team). Thanks to all this it should now be very easy to extend the SIP Communicator with your own plugins.

We also have a complete, very slick and nice GUI for instant messaging and presence. We're also done with basic ICQ support, message history, a meta contact list and other less significant but still essential modules.

In other words we've got an IM client with quite a complete (though basic) set of features.

3. What's cooking right now.

During the last couple of weeks Yana and Damian have almost completed the history. So all messages are now logged and you are not losing valuable info if you are chatting through the SIP Communicator.

Damian has also created native installers for both Windows and Linux using izPack. Their generator scripts are accessible through the build.xml. The installers will shortly be published online and made available through a nightly builds page.

Romain has completed his Mac OS X installation package and started a nightly build that is now available for download here:

http://download.java.net/communications/sip-communicator/nightly/macosx/

I'll be soon putting a link to this page on sip-communicator.org

Something that may be of interest to many of you is the fact that I've finally started work on implementing SIP support for SIP Communicator 1.0. I am using NIST's reference implementation of jain-sip-1.2 available here:

http://jain-sip.dev.java.net

Things are going pretty smoothly as I am using sip-communicator's old source tree as a very reliable guide. (We had expected that it won't be a 1 to 1 port but despite that the old source code is proving extremely valuable). I've sent and received my first SIP messages today and expect to have a _basic_ telephony feature set in not very long. End of September looks a like very very realistic deadline.

4. Immediate goals.

The very immediate goal is finalizing SIP, and the media service and its implementation so that we could have basic telephony support as soon as possible. During the following weeks I'll be giving you more detailed feedback on how exactly we're moving on.

Once we're done with this, we will be having numerous important issues to address in order to ensure reliability of the SIP Communicator:

a) Firewall support

I've previewed work on a TURN implementation based on stun4j (http://stun4j.dev.java.net). Based on this implementation I will start work on an implementation of ICE and try and extend it so that it would provide excellent firewall traversal (I am very confident we could achieve impressive results here).

b) The MEDIA package

We'd need to have a look on JMF. I'll be doing the first implementation of the media package on Sun's JMF RI because this seems like the shortest path. We MUST however consider alternatives due to JMF's status (i.e. the fact that it's been pretty much dead for the last three years).

Is there anyone that would be willing to give (J)FFMPEG a try?
FMJ (http://fmj.sourceforge.net/) is also looking like a very promising alternative (last time I checked they were announcing limited RTP support but I hope this would soon change).

c) sip-communicator.org

We'd need to have our site cleaned up as there are currently lots of redundant and outdated pages. Any assistance or feedback on this issue would be greatly appreciated.

I don't know the exact reason but sip-communicator.org seems to be completely ignored by Google (most possibly because it is ignored by users :slight_smile: ). Try a google search for

SIP Communicator

And you'll notice that the development site on java.net is returned as a first result and that sip-communicator.org's main page is nowhere to be seen. Any suggestions on how best to address that would be most welcome.

d) Looking for package maintainers.

Finally, as I've just mentioned we already have a Mac OS X, a Windows and a generic Linux installation packages. I don't need to say that it would be extremely nice to have specific Linux installation packages for all major Linux distributions as well as other operating systems such as BSD for example. Any volunteers to create and maintain such packages would be most welcome!

Okay. I think that's enough for this time.

Thanks for reading this far!

Cheers
Emil Ivov


#2

Emil Ivov wrote:

-------------------- Periodic Status Letter 1 --------------------------

<snip/>

Great news, Emil. Thanks for taking the time to explain. Every time I found a spare hour over the last couple of weeks, I've been reluctant to work on the project because the CVS activity has been so great.

In particular, I noticed the list of included jars has changed a lot and I need to update the netBeans IDE configuration to match the current state. Could you let me know when you feel this particular area has stabilised to a meaningful extent - I don't need perfection.

I've also held off on my work with the ICQ test environment error handling because I noticed a lot of activity in that area. I'll take another look if you all have moved over to the SIP area of the project.

As usual, I don't have a lot of free time, but I want to make it count.

Regards, Brian

···

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net


#3

Hey Brian,

Brian Burch wrote:

In particular, I noticed the list of included jars has changed a lot and I need to update the netBeans IDE configuration to match the current state. Could you let me know when you feel this particular area has stabilised to a meaningful extent - I don't need perfection.

I think it is relatively stable now. I guess there are a few pending updates for sip-sdp.jar but the name won't be changing so that shouldn't bother you. The jars for jdic are also going to be updated because Yana told me she would be working on a systray after her vacation but it won't be a big change.

I've also held off on my work with the ICQ test environment error handling because I noticed a lot of activity in that area. I'll take another look if you all have moved over to the SIP area of the project.

Yes I guess no one would be touching ICQ in the weeks to come so feel free to invade it. You would probably notice that I did add support for a single flag that would make the ICQ slick forget about tests requiring an Internet connection. I remember you had some thoughts against such an option but I really felt that the tests were taking too long for developers to run them upon each compilation, which is something that I hope everyone would do (and besides you didn't insist much :wink: ).

As usual, I don't have a lot of free time, but I want to make it count.

This has always been the case! Your contributions have always been meaningful and very responsible, which I believe is essential. Thank you for your efforts. And thanks everyone else for your great work.

We're almost there!

Emil

···

Regards, Brian

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@sip-communicator.dev.java.net
For additional commands, e-mail: dev-help@sip-communicator.dev.java.net