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;
125 UPROPERTY(BlueprintReadOnly, Category = "Stream Chat|Channel Properties")
153 UPROPERTY(BlueprintReadWrite, Category = "Stream Chat|Channel Properties", AdvancedDisplay)
157 UPROPERTY(BlueprintReadWrite, Category = "Stream Chat|Channel Properties", AdvancedDisplay)
158 FAdditionalFields ExtraData;
172 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (ID)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
173 static FChannelProperties MakeChannelPropertiesId(
const FString&
Type,
const FString&
Id,
const FString&
Team,
const FAdditionalFields& ExtraData);
175 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (User IDs)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
178 const TArray<FString>& UserIds,
180 const FAdditionalFields& ExtraData);
182 UFUNCTION(BlueprintPure, Category =
"Stream Chat|Channel Properties", meta = (NativeMakeFunc, DisplayName =
"Make Channel Properties (Users)", AdvancedDisplay =
"Team,ExtraData", AutoCreateRefTerm = ExtraData))
185 const TArray<FUserRef>& Users,
187 const FAdditionalFields& ExtraData);
Blueprint functions for the Channel Properties struct.
Definition ChannelProperties.h:167
@ 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:84
uint32 Cooldown
Cooldown period after sending each message.
Definition ChannelResponseDto.h:41
FDateTime LastMessageAt
The date of the last message.
Definition ChannelResponseDto.h:80
bool bBlocked
Whether this channel is blocked, which happens when the current user has blocked the other member of ...
Definition ChannelResponseDto.h:57
FChannelConfigWithInfoDto Config
The channel configuration data.
Definition ChannelResponseDto.h:37
FDateTime UpdatedAt
The date of the last channel update.
Definition ChannelResponseDto.h:112
bool bMuted
Whether this channel is muted or not.
Definition ChannelResponseDto.h:96
bool bHidden
Whether this channel is hidden by current user or not.
Definition ChannelResponseDto.h:68
FDateTime MuteExpiresAt
Date of mute expiration.
Definition ChannelResponseDto.h:92
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:64
FString Team
The team the channel belongs to (multi-tenant only)
Definition ChannelResponseDto.h:104
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:100
FString Cid
The cid of this channel.
Definition ChannelResponseDto.h:33
TArray< FChannelMemberDto > Members
List of channel members (max 100)
Definition ChannelResponseDto.h:88
FDateTime DeletedAt
The date of channel deletion.
Definition ChannelResponseDto.h:53
FDateTime HideMessagesBefore
Date since when the message history is accessible.
Definition ChannelResponseDto.h:72
Contains information about a member of a chat channel.
Definition Member.h:19
A reference to a unique User.
Definition UserRef.h:23