Re: [Hamsam-devel] Proposed API level changes
Status: Beta
Brought to you by:
dsj_shock
|
From: Raghu K <kr...@us...> - 2003-10-14 12:18:34
|
I was on a vacation for a few days, so could not reply to you. Below are my answers. Mike Miller wrote: > 1) Sounds good to me. > 2) I still haven't implemented any of the chat or conference features > yet, so none of this will cause me to change any existing code. I like > the idea. Does this mean that the client will maintain the IMSession > reference and pass to the api whenever it is needed? What type of data > is in the IMSession? I assume that the Buddy is part of that since the > sendInstantMessage call needs a Buddy. You are correct. The client will maintain a reference to IMSession. This will be passed to the new method - hamsam.protocol.Protocol.sendInstantMessage(IMSession, Message). As of now, I do not see anything other than Buddy being part of IMSession. > > 3) Again, I haven't implemented the chat of conference features so I > have no problems with that. > > My family went out of town for the next week so I will be able to devote > more time during that week to development. I worked last night on > getting ICQ to able to receive messages, but it needs a bit more work > because I need to find better documentation of the returned data format > for a channel 2 message, which ICQ is send me. FYI... This is > determined by the capabilities we send to the sever at login. Well, I > looked at 4 or 5 different oscar implementation last night and none were > consistent - each one used or documented a different set of > capabilities. > > -----Original Message----- > > From: Raghu K [mailto:kr...@us...] > > Sent: Thursday, October 09, 2003 12:55 AM > > To: hamsam-devel > > Subject: [Hamsam-devel] Proposed API level changes > > Mike, > > Below is a proposal for a few API level additions/changes. > > 1) Add methods hamsam.protocol.Protocol.setConnectionDetails(Properties) > > and > > hamsam.protocol.Protocol.isConnectionDetailsRequired(). > > This is an optional method that should be invoked just before the > > connect method. For open protocols like Jabber we need to specify the > > server host and port to connect to, these methods help for that. We will > > document the data to be passed as properties in the tutorial. The > > convention is to use something like hamsam.protocol.jabber.host (this > > helps to avoid namespace collisions). For proprietary protocols also, we > > may give the users a chance to specify an alternate server/port (or any > > other data). However, for them this method call will be optional. > > Whether it is mandatory or optional is determined by > > isConnectionDetailsRequired(). > > 2) Like hamsam.api.Conference class, we will introduce the > > hamsam.api.IMSession class, that represents a chat session with a single > > buddy. > > This helps to model protocols that inherently support an IM session in a > > better fashion. However, this needs the method > > hamsam.protocol.Protocol.sendInstantMessage(Buddy, Message) to be > > changed to sendInstantMessage(IMSession, Message). And we will introduce > > two new methods in hamsam.protocol.Protocol class - > > startIMSession(IMSession) and quitIMSession(IMSession). > > 3) Add method hamsam.api.Conference.inviteBuddy(Buddy, String) to invite > > a buddy to a conference that is already going on. > > This needs addition of a new method to hamsam.protocol.Protocol class - > > inviteBuddyToConference(Conference, Buddy, String). > > Let me know what you think about these changes. > > --Raghu > > ------------------------------------------------------- > > This SF.net email is sponsored by: SF.net Giveback Program. > > SourceForge.net hosts over 70,000 Open Source Projects. See the people > > who have HELPED US provide better services: Click here: > > http://sourceforge.net/supporters.php > > _______________________________________________ > > Hamsam-devel mailing list > > Ham...@li... > > https://lists.sourceforge.net/lists/listinfo/hamsam-devel |