ImprovedInstantMessage

From Second Life Wiki
Jump to navigation Jump to search

Message Layout

{
	ImprovedInstantMessage Low NotTrusted Zerocoded
	{
		AgentData 		Single
		{   AgentID     LLUUID  }
		{	SessionID	LLUUID	}
	}
	{
		MessageBlock		Single
		{	FromGroup		BOOL	}
		{	ToAgentID		LLUUID	}
		{	ParentEstateID	U32	}
		{   RegionID		LLUUID	}
		{	Position		LLVector3	}
		{	Offline			U8	}
		{	Dialog			U8	}	
		{	ID				LLUUID	}
		{	Timestamp		U32	}
		{	FromAgentName	Variable	1	}
		{	Message			Variable	2	}
		{	BinaryBucket	Variable	2	}
	}
}

Usage and Notes

the interpretation and/or existence of values in each parameter in the packet is controlled by the value in the Dialog parameter. The current range is 0-42 and the various permutations are listed in the table below (a work in progress). Some of the values are obtained from packets that only appear via the EventQueueGet_CAP, but documentation of that is another "work in progress," even less further along.


All possible interactions of Dialog byte and other packet variables
# Dialog Comment ToAgentID ParentEstateID RegionID Position ID Timestamp FromAgentName Message BinaryBucket
0 Indicates a regular IM from another agent as expected as expected as expected as expected SessionID for the IM as expected as expected as expected empty
1 Simple notification box with an OK button as expected as expected as expected as expected
2 Used to show a countdown notification with an OK button, deprecated now
3 You've been invited to join a group NULL-terminated string. "O" for officer, "M" for member, followed by cost to join
4 Inventory offer Transaction ID inventory's name a list of inventory type followed by uuid
5 Accepted inventory offer
6 Declined inventory offer
7 Group vote
8 A message to everyone in the agent's group, deprecated
9 An object is offering its inventory inventory type
10 Accept an inventory offer from an object
11 Decline an inventory offer from an object
12 Default --as value #0 but for offline tools
13 Start a session, or add users to a session
14 Start a session, but don't prune offline users
15 Start a session with your group
16 Start a session without a calling card (finder or objects)
17 Send a message to a session session name
18 Leave a session
19 Indicates that the IM is from an object slurl of object
20 Sent an IM to a busy user, this is the auto response
21 Shows the message in the console and chat history
22 Send a teleport lure
23 Response sent to the agent which inititiated a teleport invitation
24 Response sent to the agent which inititiated a teleport invitation
25 Godlike request teleport (only useful if you have Linden permissions)
26 A placeholder type for future expansion, currently not used
27 Notification of a new group election, this is deprecated
28 IM to tell the user to go to an URL url to go to
29 IM for help
30 IM sent automatically on call for help, sends a lure to each Helper reached
31 Like an IM but won't go to email
32 IM from a group officer to all group members Bool has_inventory, S8 inventory type, LLUUID groupID, String item_name
33 Group notice requested
34 Unknown
35 Accept a group invitation
36 Decline a group invitation
37 Unknown
38 An avatar is offering you friendship
39 An avatar has accepted your friendship offer
40 An avatar has declined your friendship offer
41 Indicates that a user has started typing
42 Indicates that a user has stopped typing