5#include "ChannelConfig.h"
6#include "CoreMinimal.h"
9#include "Request/Channel/ChannelRequestDto.h"
11#include "ChannelProperties.generated.h"
19USTRUCT(BlueprintType, meta = (HasNativeMake))
32 explicit
FChannelProperties(const FString&
Type, const FString&
Id = TEXT(""), const FString&
Team = TEXT(""), const FAdditionalFields& ExtraData = {});
49 void Merge(
const FChannelResponseDto& Dto,
const TArray<FChannelMemberDto>& InMembers, UUserManager*);
51 void AppendMembers(
const TArray<FChannelMemberDto>& InMembers, UUserManager*);
53 TOptional<FString> GetName()
const;
54 TOptional<FString> GetImageUrl()
const;
58 TArray<FUserRef> GetOtherMemberUsers()
const;
63 UPROPERTY(BlueprintReadWrite, Category =
"Stream Chat|Channel Properties")
68 UPROPERTY(BlueprintReadWrite, Category = "Stream Chat|Channel Properties")
72 UPROPERTY(BlueprintReadOnly, Category = "Stream Chat|Channel Properties")
76 UPROPERTY(BlueprintReadOnly, Category = "Stream Chat|Channel Properties")
84 UPROPERTY(BlueprintReadOnly, Category = "Stream Chat|Channel Properties")
88 UPROPERTY(BlueprintReadOnly, Category = "Stream Chat|Channel Properties")
112 bool bDisabled = false;
147 UPROPERTY(BlueprintReadWrite, Category = "Stream Chat|Channel Properties", AdvancedDisplay)
151 UPROPERTY(BlueprintReadWrite, Category = "Stream Chat|Channel Properties", AdvancedDisplay)
152 FAdditionalFields ExtraData;
166 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (ID)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
167 static FChannelProperties MakeChannelPropertiesId(
const FString&
Type,
const FString&
Id,
const FString&
Team,
const FAdditionalFields& ExtraData);
169 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (User IDs)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
172 const TArray<FString>& UserIds,
174 const FAdditionalFields& ExtraData);
176 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (Users)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
179 const TArray<FUserRef>& Users,
181 const FAdditionalFields& ExtraData);
Blueprint functions for the Channel Properties struct.
Definition: ChannelProperties.h:161
@ Type
Type of the message.
The configuration, permissions and features of a channel, as defined by the "channel type".
Definition: ChannelConfig.h:19
#/components/schemas/ChannelMember
Definition: ChannelMemberDto.h:16
Encapsulates the static properties of a channel.
Definition: ChannelProperties.h:21
#/components/schemas/ChannelRequest
Definition: ChannelRequestDto.h:16
#/components/schemas/ChannelResponse Represents channel in chat
Definition: ChannelResponseDto.h:20
bool bAutoTranslationEnabled
Whether auto translation is enabled or not.
Definition: ChannelResponseDto.h:25
FDateTime CreatedAt
The date of channel creation.
Definition: ChannelResponseDto.h:45
int32 MemberCount
The count of this channel members.
Definition: ChannelResponseDto.h:80
uint32 Cooldown
Cooldown period after sending each message.
Definition: ChannelResponseDto.h:41
FDateTime LastMessageAt
The date of the last message.
Definition: ChannelResponseDto.h:76
FChannelConfigWithInfoDto Config
The channel configuration data.
Definition: ChannelResponseDto.h:37
FDateTime UpdatedAt
The date of the last channel update.
Definition: ChannelResponseDto.h:108
bool bMuted
Whether this channel is muted or not.
Definition: ChannelResponseDto.h:92
bool bHidden
Whether this channel is hidden by current user or not.
Definition: ChannelResponseDto.h:64
FDateTime MuteExpiresAt
Date of mute expiration.
Definition: ChannelResponseDto.h:88
FString AutoTranslationLanguage
Language to translate to when auto translation is active.
Definition: ChannelResponseDto.h:29
bool bFrozen
Whether this channel is frozen or not.
Definition: ChannelResponseDto.h:60
FString Team
The team the channel belongs to (multi-tenant only)
Definition: ChannelResponseDto.h:100
FUserObjectDto CreatedBy
The user that created this channel.
Definition: ChannelResponseDto.h:49
TArray< FString > OwnCapabilities
List of channel capabilities of the authenticated user.
Definition: ChannelResponseDto.h:96
FString Cid
The cid of this channel.
Definition: ChannelResponseDto.h:33
TArray< FChannelMemberDto > Members
List of channel members (max 100)
Definition: ChannelResponseDto.h:84
FDateTime DeletedAt
The date of channel deletion.
Definition: ChannelResponseDto.h:53
FDateTime HideMessagesBefore
Date since when the message history is accessible.
Definition: ChannelResponseDto.h:68
Contains information about a member of a chat channel.
Definition: Member.h:19
A reference to a unique User.
Definition: UserRef.h:23