OpenSim
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Events Macros
Public Member Functions | List of all members
OpenSim.Region.Framework.Interfaces.IGroupsMessagingModule Interface Reference

Provide mechanisms for messaging groups. More...

Inheritance diagram for OpenSim.Region.Framework.Interfaces.IGroupsMessagingModule:
Inheritance graph
[legend]

Public Member Functions

bool StartGroupChatSession (UUID agentID, UUID groupID)
 Start a group chat session. More...
 
void SendMessageToGroup (GridInstantMessage im, UUID groupID)
 Send a message to each member of a group whose chat session is active. More...
 
void SendMessageToGroup (GridInstantMessage im, UUID groupID, UUID sendingAgentForGroupCalls, Func< GroupMembersData, bool > sendCondition)
 Send a message to all the members of a group that fulfill a condition. More...
 

Detailed Description

Provide mechanisms for messaging groups.

TODO: Provide a mechanism for receiving group messages as well as sending them

Definition at line 40 of file IGroupsMessagingModule.cs.

Member Function Documentation

void OpenSim.Region.Framework.Interfaces.IGroupsMessagingModule.SendMessageToGroup ( GridInstantMessage  im,
UUID  groupID 
)

Send a message to each member of a group whose chat session is active.

Parameters
imThe message itself. The fields that must be populated are

imSessionID - Populate this with the group ID (session ID and group ID are currently identical) fromAgentName - Populate this with whatever arbitrary name you want to show up in the chat dialog message - The message itself dialog - This must be (byte)InstantMessageDialog.SessionSend

Parameters
groupID

Implemented in OpenSim.Groups.GroupsMessagingModule, and OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups.GroupsMessagingModule.

void OpenSim.Region.Framework.Interfaces.IGroupsMessagingModule.SendMessageToGroup ( GridInstantMessage  im,
UUID  groupID,
UUID  sendingAgentForGroupCalls,
Func< GroupMembersData, bool >  sendCondition 
)

Send a message to all the members of a group that fulfill a condition.

Parameters
imThe message itself. The fields that must be populated are

imSessionID - Populate this with the group ID (session ID and group ID are currently identical) fromAgentName - Populate this with whatever arbitrary name you want to show up in the chat dialog message - The message itself dialog - This must be (byte)InstantMessageDialog.SessionSend

Parameters
groupID
sendingAgentForGroupCallsThe requesting agent to use when querying the groups service. Sometimes this is different from im.fromAgentID, with group notices, for example.
sendConditionThe condition that must be met by a member for the message to be sent. If null then the message is sent if the chat session is active.

Implemented in OpenSim.Groups.GroupsMessagingModule, and OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups.GroupsMessagingModule.

bool OpenSim.Region.Framework.Interfaces.IGroupsMessagingModule.StartGroupChatSession ( UUID  agentID,
UUID  groupID 
)

Start a group chat session.

You must call this before calling SendMessageToGroup(). If a chat session for this group is already taking place then the agent will added to that session.

Parameters
agentIDA UUID that represents the agent being added. If you are agentless (e.g. you are a region module), then you can use any random ID.
groupIDThe ID for the group to join. Currently, the session ID used is identical to the group ID.
Returns
True if the chat session was started successfully, false otherwise.

Implemented in OpenSim.Groups.GroupsMessagingModule, and OpenSim.Region.OptionalModules.Avatar.XmlRpcGroups.GroupsMessagingModule.


The documentation for this interface was generated from the following file: