CS4803/8803 MAS Fall 2006 Project 2 (teams of 2) ---------------------- This project involves using the sample code of SimpleChat available for download off the website. Initial Steps: - Download SDK 2.0 from the website - Import SimpleChat into a new project - Package it with the new IMS library You can now run an instance of each client on 2 machines. You will also need to use 2 users. The users.xml file, part of the configuration folder in the Network Emulator (NE), should have user1 and user2 defined. These users need to be specified in the respective .jad files for the clients before packaging. Once you start the application, you can add buddies to your default list and converse. The application provides basic chat functionality. Your Goal - Requirements: ------------------------- 1) Allow the user to deal with separate group lists. At present the user has access to a default list but the NE, which contains a GLM server, is capable of maintaining more lists for each user. For this you will need to dig a little into the source of both the GLM and the UI. When this is implemented, upon execution, the user should be presented with a list of group lists from which they can choose a particular list, see their buddies on that list and interact with them. They should be able to switch lists as well without breaking any of the current functionality. (50%) 2) Create and maintain a "Do not disturb" filter list for a particular session. This list would consist of users that you do not want to receive anything from. It needs to be maintained in memory and specified as an option in the Menu. The user should also be allowed to remove that flag of the specified buddies when he/she feels like. (50%) Extra Credit ------------ Figure out a way to implement a custom "Away Message" functionality that allows the user to specify a message for all buddies to see when he/she is Not Available. (50%) Things to watch out for: ------------------------ - If you want to use just 1 machine then make sure that the sipPort numbers in the .jad file for each client are different. A good idea is to copy both the .jad and .jar files from the deployed directory of the project and start one instance of the emulator with that configuration. The second one can then be packaged and started from your IDE. - If you get an OutOfMemory exception, it could be due to a small default heap size. Try "Start->J2ME Wireless Toolkit 2.2->KToobar->Edit->Preferences-> Storage". Set the Storage and Heap Size to large values.. 4096 should be more than enough right now. Note: You can run the clients using different phone emulators as well. The Nokia S60 SDK is available for download at: http://forum.nokia.com/info/sw.nokia.com/id/6e772b17-604b-4081-999c-31f1f0dc2dbb/S60_Platform_SDKs_for_Symbian_OS_for_Java.html Choose "3rd Edition (159 MB)" from the dropdown menu. This is the emulator/SDK for the N80 phone that will be used during the research competition so it would be a good idea to familiarize with it. Turn-Ins: --------- Please email your client side source code. In Eclipse it can be done by "Right Click on Project"->Export->File System. Also submit packaged .jar and .jad files. If you have modified the configuration files on the NE then include them as well. Please include a README with your names, GT numbers and anything we need to know during grading. Send everything to nirmalt@gatech.edu by: October 19 11:59pm. -------------------------------------------------------------