2009Q1 Grant Proposal: OPener Chat

Synopsis

Opener Chat is a kind of multi-user and multi-protocol online communication
software which is like Pidgin (gaim). Opener Chat is completely written in
Perl which consists of the graphical interface part and net part. We use the
module of win32::GUI to carry its interface into effect, so this software
can only run on the win32 platform. This project has started a period of
time which website is http://sites.google.com/site/openerenglish/opener-chat
.

Benefits to the Perl Community

A purpose of this project is to prove that Perl is not only good at making
dynamic website, but also has a powerful strength at GUI programming. Perl
is not just limited in background. In the term of foreground, it is also
convenient for us to develop many powerful application softwares with the
maturity of many foreground modules. This project can make Perl more
popular. Do you remember the Frozen-bubble? Such program can bring surprise
to us.

Deliverables

- To add to several kinds of supports of IM protocols.

- To adjust interface to support the sign-in for several users of
different protocols.

- To add to setting interface. It is convenient for users to set account
information.

- To package into the installable program and debug the program.

Project Details

Firstly, we shall accomplish several kinds of supports for IM protocol.
With regard to every protocol, it includes a basic support for private chat
and group chat (if this protocol supports). These protocols temporarily are
XMPP, Yahoo Message, IRC and ICQ which are all use current modules of CPAN
to offer the supports of protocols. We may add more protocols later.

Secondly, we need to add to setting interface.
In this interface, we can set to use several account to sign in and set the
information of every account. We can also adjust the some inner control
setting of the program. For example, whether the computer needs to record
chat logs or not, when the computer starts up whether the programs run
automatically and so on.

Then, package into the installable programs.
In one way, we need to develop installation program for users to install and
use after they download it. In another way, we can check the availability
and stability of this program in the win32 platform.

Lastly, adjust the interface.
This adjustment will face to a wide range of issues. Because when we need to
integrate several kinds of protocols to display in one interface, we have to
consider some private functions of these protocols and think whether put
some private function into this interface. In a word, this step possibly is
finished at last at the lowest speed. It needs to adjust and update
continuously.

Project Schedule

We spend two or three days each week. It totally needs to spend two months
to finish the above aims.
The time of the first three goals possibly can be controlled, so these can
be finished about one month.
We cannot predict the last goal, because the interface may have a big
adjustment. We will try our best to finish it within the second month.
Certainly, the program probably will further develop. For example, the
interface part will use GTK2-Perl to finish. In this way, it can support the
running of several platforms, such as Linux and Mac OS X. Anyway, we will
work out the anticipation of the further development after the above goals
are all done.

Bio

It is a small software corporation from China. We devote ourselves to
developing various kinds of Perl applications. Since 2001, we begin to use
Perl to develop websites. We adopt Perl to program SMS gateway application
and online e-mail system in 2004. From 2008, we start to program many kinds
of desktop application. This is the list of the
projects<http://sites.google.com/site/openerenglish/softwarelist>which
we do in 2008.

With the help of Perl and the powerful CPAN, we so well in program graphical
interface application, various kinds of internet applications, the
management software of win32 platform and so on.

Our original intention to develop this project is that our corporation needs
network client software of online chat like this. When we finished this
software, we found that it is easy for us to make an extension based on the
previous work, so we have a plan to further improve this software, as well
as feedback the Perl community. Consequently, we have this proposal. We
believe that this is an achievable project.