UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IMessageContext Class Referenceabstract

#include <IMessageContext.h>

+ Inheritance diagram for IMessageContext:

Public Member Functions

virtual const TMap< FName, FString > & GetAnnotations () const =0
 
virtual TSharedPtr< IMessageAttachment, ESPMode::ThreadSafeGetAttachment () const =0
 
virtual const FDateTimeGetExpiration () const =0
 
virtual const voidGetMessage () const =0
 
virtual const TWeakObjectPtr< UScriptStruct > & GetMessageTypeInfo () const =0
 
virtual TSharedPtr< IMessageContext, ESPMode::ThreadSafeGetOriginalContext () const =0
 
virtual const TArray< FMessageAddress > & GetRecipients () const =0
 
virtual EMessageScope GetScope () const =0
 
virtual EMessageFlags GetFlags () const =0
 
virtual const FMessageAddressGetSender () const =0
 
virtual const FMessageAddressGetForwarder () const =0
 
virtual ENamedThreads::Type GetSenderThread () const =0
 
virtual const FDateTimeGetTimeForwarded () const =0
 
virtual const FDateTimeGetTimeSent () const =0
 
FName GetMessageType () const
 
FTopLevelAssetPath GetMessageTypePathName () const
 
bool IsForwarded () const
 
bool IsValid () const
 
virtual ~IMessageContext ()
 

Detailed Description

Interface for message contexts.

Messages are delivered inside message contexts, which store the message itself plus additional data associated with the message. Recipients of a message are usually interested in data that describes the message, such as its origin or when it expires. They may also be interested in optional out-of-band binary data that is attached to the message.

The sender's address (IMessageContext.GetSender) is often needed to send a reply message to a message sender, i.e. in response to a published message. The message attachment (IMessageContext.GetAttachment) is an optional bundle of binary bulk data that is transferred independently from the message itself and allows for transferring larger amounts of data that would otherwise clog up the messaging system.

In case a message was forwarded by another endpoint, the context of the original sender can be accessed using the IMessageContext.GetOriginalContext method.

See also
IMessageAttachment

Constructor & Destructor Documentation

◆ ~IMessageContext()

virtual IMessageContext::~IMessageContext ( )
inlinevirtual

Virtual destructor.

Member Function Documentation

◆ GetAnnotations()

virtual const TMap< FName, FString > & IMessageContext::GetAnnotations ( ) const
pure virtual

Gets the optional message annotations.

Returns
Message header collection.

Implemented in FMessageContext.

◆ GetAttachment()

virtual TSharedPtr< IMessageAttachment, ESPMode::ThreadSafe > IMessageContext::GetAttachment ( ) const
pure virtual

Gets the message attachment, if present.

Returns
A pointer to the message attachment, or nullptr if no attachment is present.

Implemented in FMessageContext.

◆ GetExpiration()

virtual const FDateTime & IMessageContext::GetExpiration ( ) const
pure virtual

Gets the date and time at which the message expires.

Returns
Expiration time.

Implemented in FMessageContext.

◆ GetFlags()

virtual EMessageFlags IMessageContext::GetFlags ( ) const
pure virtual

Gets the scope to which the message was sent.

Returns
The message scope.

Implemented in FMessageContext.

◆ GetForwarder()

virtual const FMessageAddress & IMessageContext::GetForwarder ( ) const
pure virtual

Gets the forwarder's address.

Note
Identical to GetSender if the message wasn't forwarded.
Returns
Forwarder address.
See also
GetSender, GetRecipients, GetSenderThread

Implemented in FMessageContext.

◆ GetMessage()

virtual const void * IMessageContext::GetMessage ( ) const
pure virtual

Gets the message data.

Returns
A pointer to the message data.
See also
GetAttachment, GetMessageType, GetMessageTypeInfo

Implemented in FMessageContext.

◆ GetMessageType()

FName IMessageContext::GetMessageType ( ) const
inline

Gets the name of the message type.

Returns
Message type name.
See also
GetMessage, GetMessageTypeInfo

◆ GetMessageTypeInfo()

virtual const TWeakObjectPtr< UScriptStruct > & IMessageContext::GetMessageTypeInfo ( ) const
pure virtual

Gets the message's type information.

Returns
Message type information.
See also
GetMessage, GetMessageType

Implemented in FMessageContext.

◆ GetMessageTypePathName()

FTopLevelAssetPath IMessageContext::GetMessageTypePathName ( ) const
inline

Gets the path name of the message type.

Returns
Message type path name.
See also
GetMessage, GetMessageTypeInfo

◆ GetOriginalContext()

virtual TSharedPtr< IMessageContext, ESPMode::ThreadSafe > IMessageContext::GetOriginalContext ( ) const
pure virtual

Returns the original message context in case the message was forwarded.

Returns
The original message context, or nullptr if the message wasn't forwarded.

Implemented in FMessageContext.

◆ GetRecipients()

virtual const TArray< FMessageAddress > & IMessageContext::GetRecipients ( ) const
pure virtual

Gets the list of message recipients.

Returns
Message recipients.
See also
GetSender

Implemented in FMessageContext.

◆ GetScope()

virtual EMessageScope IMessageContext::GetScope ( ) const
pure virtual

Gets the scope to which the message was sent.

Returns
The message scope.

Implemented in FMessageContext.

◆ GetSender()

virtual const FMessageAddress & IMessageContext::GetSender ( ) const
pure virtual

Gets the sender's address.

Returns
Sender address.
See also
GetRecipients, GetSenderThread

Implemented in FMessageContext.

◆ GetSenderThread()

virtual ENamedThreads::Type IMessageContext::GetSenderThread ( ) const
pure virtual

Gets the name of the thread from which the message was sent.

Returns
Sender threat name.
See also
GetSender

Implemented in FMessageContext.

◆ GetTimeForwarded()

virtual const FDateTime & IMessageContext::GetTimeForwarded ( ) const
pure virtual

Gets the time at which the message was forwarded.

Returns
Time forwarded.
See also
GetTimeSent, IsForwarded

Implemented in FMessageContext.

◆ GetTimeSent()

virtual const FDateTime & IMessageContext::GetTimeSent ( ) const
pure virtual

Gets the time at which the message was sent.

Returns
Time sent.
See also
GetTimeForwarded

Implemented in FMessageContext.

◆ IsForwarded()

bool IMessageContext::IsForwarded ( ) const
inline

Checks whether this is a forwarded message.

Returns
true if the message was forwarded, false otherwise.
See also
GetOriginalContext, GetTimeForwarded, IsValid

◆ IsValid()

bool IMessageContext::IsValid ( ) const
inline

Checks whether this context is valid.

Returns
true if the context is valid, false otherwise.
See also
IsForwarded

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