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
|