I also forgot to mention: the InstantMessage function in the
Avatar.cs file
curently generates a new UUID every time you send an IM. THis causes
new IM
windows to open in the recipient's client every time you IM the same
person.
The fix is to generate and use the same UUID in your calling
function. Since
I'm tracking separate conversations in separate iterations of my
ChatWindow
form, I create a UUID when I load the form (or get the UUID from the
incoming IM if the other person IM's me).
the fix in Avatar.cs is to change lines 269 and 279-280:
public void InstantMessage(LLUUID target, string message, LLUUID id)
Packet packet = PacketBuilder.InstantMessage(Client.Protocol, target,
Client.Network.AgentID, 0,
RegionID, Position, 0, 0, id, Now, Name, message, "");
it's probably also a good idea to check id for null and generate a
new UUID.
My thought on that was to make id an optional parameter and return
the id
back from the function. this way, you could call the function with no
ID the
first time, then use that ID in future calls.
I updated svn just now with some fixes. There are two InstantMessage
functions in Avatar that take a different amount of parameters, and
BinaryBucket support has been added (for conference IMs). The
PacketBuilder function has been renamed from InstantMessage to
ImprovedInstantMessage to match the packet name, and the parameter
string binaryBucket is now byte[] binaryBucket, and the Avatar
InstantMessage function (the main one) takes an array of LLUUIDs to
build the bucket if you want to start a conference.
John
_______________________________________________
libsecondlife-dev mailing list
libsecondlife-dev@gna.org
https://mail.gna.org/listinfo/libsecondlife-dev