UDocumentation
UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
XmppMessagesStrophe.h
Go to the documentation of this file.
1
// Copyright Epic Games, Inc. All Rights Reserved.
2
3
#pragma once
4
5
#include "
CoreMinimal.h
"
6
#include "
XmppMessages.h
"
7
8
#include "
Containers/Ticker.h
"
9
#include "Containers/Queue.h"
10
11
#if WITH_XMPP_STROPHE
12
13
class
FXmppConnectionStrophe
;
14
class
FStropheStanza
;
15
16
class
FXmppMessagesStrophe
17
:
public
IXmppMessages
18
,
public
FTSTickerObjectBase
19
{
20
public
:
21
// FXmppMessagesStrophe
22
FXmppMessagesStrophe
(
FXmppConnectionStrophe
&
InConnectionManager
);
23
~FXmppMessagesStrophe
();
24
25
// XMPP Thread
26
bool
ReceiveStanza
(
const
FStropheStanza
&
IncomingStanza
);
27
bool
HandleMessageStanza
(
const
FStropheStanza
&
IncomingStanza
);
28
bool
HandleMessageErrorStanza
(
const
FStropheStanza
&
ErrorStanza
);
29
30
// Game Thread
31
void
OnDisconnect
();
32
void
OnReconnect
();
33
34
// IXmppMessages
35
virtual
bool
SendMessage
(
const
FXmppUserJid
&
RecipientId
,
const
FString& Type,
const
FString& Payload,
bool
bPayloadIsSerializedJson
=
false
)
override
;
36
virtual
bool
SendMessage
(
const
FXmppUserJid
&
RecipientId
,
const
FString& Type,
const
TSharedRef<class FJsonObject>
& Payload)
override
;
37
virtual
FOnXmppMessageReceived
&
OnReceiveMessage
()
override
{
return
OnMessageReceivedDelegate
; }
38
39
// FTSTickerObjectBase
40
virtual
bool
Tick
(
float
DeltaTime)
override
;
41
42
protected
:
43
void
OnMessageReceived(
TUniquePtr<FXmppMessage>
&& Message);
44
46
void
CleanupMessages
();
47
48
protected
:
50
FXmppConnectionStrophe
&
ConnectionManager
;
51
56
TQueue<TUniquePtr<FXmppMessage>
>
IncomingMessages
;
57
59
FOnXmppMessageReceived
OnMessageReceivedDelegate
;
60
};
61
62
#endif
CoreMinimal.h
StaticCastSharedRef
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition
SharedPointer.h:127
EUpdateClockSource::Tick
@ Tick
Ticker.h
XmppMessages.h
FTSTickerObjectBase
Definition
Ticker.h:137
FXmppUserJid
Definition
XmppConnection.h:99
IXmppMessages
Definition
XmppMessages.h:34
IXmppMessages::SendMessage
virtual bool SendMessage(const FXmppUserJid &RecipientId, const FString &Type, const FString &Payload, bool bPayloadIsSerializedJson=false)=0
IXmppMessages::OnReceiveMessage
virtual FOnXmppMessageReceived & OnReceiveMessage()=0
TQueue
Definition
Queue.h:48
TSharedRef
Definition
SharedPointer.h:153
TUniquePtr
Definition
UniquePtr.h:107
Engine
Source
Runtime
Online
XMPP
Private
XmppStrophe
XmppMessagesStrophe.h
Generated by
1.9.8