galley-0.83.0: Conversations
Safe HaskellSafe-Inferred
LanguageGHC2021

Galley.Options

Synopsis

Documentation

data Settings Source #

Constructors

Settings 

Fields

  • _httpPoolSize :: !Int

    Number of connections for the HTTP client pool

  • _maxTeamSize :: !Word32

    Max number of members in a team. NOTE: This must be in sync with Brig

  • _maxFanoutSize :: !(Maybe (Range 1 HardTruncationLimit Int32))

    Max number of team members users to fanout events to. For teams larger than this value, team events and user updates will no longer be sent to team users. This defaults to setMaxTeamSize and cannot be > HardTruncationLimit. Useful to tune mainly for testing purposes.

  • _exposeInvitationURLsTeamAllowlist :: !(Maybe [TeamId])

    List of teams for which the invitation URL can be added to the list of all invitations retrievable by team admins. See also: ExposeInvitationURLsToTeamAdminConfig.

  • _maxConvSize :: !Word16

    Max number of members in a conversation. NOTE: This must be in sync with Brig

  • _intraListing :: !Bool

    Whether to call Brig for device listing

  • _conversationCodeURI :: !(Maybe HttpsUrl)

    URI prefix for conversations with access mode code

  • _multiIngress :: Maybe (Map Text HttpsUrl)

    Map from Z-Host header to URI prefix for conversations with access mode code

    If setMultiIngress is set then the URI prefix for guest links is looked up in this config setting using the Z-Host header value as a key. If the lookup fails then no guest link can be created via the API.

    This option is only useful in the context of multi-ingress setups where one backend / deployment is is reachable under several domains.

    multiIngress and conversationCodeURI are mutually exclusive. One of both options need to be configured.

  • _concurrentDeletionEvents :: !(Maybe Int)

    Throttling: limits to concurrent deletion events

  • _deleteConvThrottleMillis :: !(Maybe Int)

    Throttling: delay between sending events upon team deletion

  • _federationDomain :: !Domain

    FederationDomain is required, even when not wanting to federate with other backends (in that case the allowedDomains can be set to empty in Federator) Federation domain is used to qualify local IDs and handles, e.g. 0c4d8944-70fa-480e-a8b7-9d929862d18cwire.com and somehandlewire.com. It should also match the SRV DNS records under which other wire-server installations can find this backend: _wire-server-federator._tcp.federationDomain Once set, DO NOT change it: if you do, existing users may have a broken experience and/or stop working Remember to keep it the same in all services. Example: allowedDomains: - wire.com - example.com

  • _mlsPrivateKeyPaths :: !(Maybe MLSPrivateKeyPaths)
     
  • _featureFlags :: !FeatureFlags

    FUTUREWORK: setFeatureFlags should be renamed to setFeatureConfigs in all types.

  • _disabledAPIVersions :: !(Set VersionExp)
     
  • _guestLinkTTLSeconds :: !(Maybe GuestLinkTTLSeconds)

    The lifetime of a conversation guest link in seconds with the maximum of 1 year (31536000 seconds). If not set use the default defGuestLinkTTLSeconds

  • _passwordHashingOptions :: !PasswordHashingOptions
     

Instances

Instances details
FromJSON Settings Source # 
Instance details

Defined in Galley.Options

Generic Settings Source # 
Instance details

Defined in Galley.Options

Associated Types

type Rep Settings :: Type -> Type #

Methods

from :: Settings -> Rep Settings x #

to :: Rep Settings x -> Settings #

Show Settings Source # 
Instance details

Defined in Galley.Options

type Rep Settings Source # 
Instance details

Defined in Galley.Options

type Rep Settings = D1 ('MetaData "Settings" "Galley.Options" "galley-0.83.0-HaHs2GpSD4uFZdzKAUrjHd" 'False) (C1 ('MetaCons "Settings" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "_httpPoolSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Int) :*: S1 ('MetaSel ('Just "_maxTeamSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "_maxFanoutSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (Range 1 HardTruncationLimit Int32))) :*: S1 ('MetaSel ('Just "_exposeInvitationURLsTeamAllowlist") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe [TeamId])))) :*: ((S1 ('MetaSel ('Just "_maxConvSize") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Word16) :*: S1 ('MetaSel ('Just "_intraListing") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)) :*: (S1 ('MetaSel ('Just "_conversationCodeURI") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe HttpsUrl)) :*: S1 ('MetaSel ('Just "_multiIngress") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe (Map Text HttpsUrl)))))) :*: (((S1 ('MetaSel ('Just "_concurrentDeletionEvents") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe Int)) :*: S1 ('MetaSel ('Just "_deleteConvThrottleMillis") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe Int))) :*: (S1 ('MetaSel ('Just "_federationDomain") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Domain) :*: S1 ('MetaSel ('Just "_mlsPrivateKeyPaths") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe MLSPrivateKeyPaths)))) :*: ((S1 ('MetaSel ('Just "_featureFlags") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FeatureFlags) :*: S1 ('MetaSel ('Just "_disabledAPIVersions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Set VersionExp))) :*: (S1 ('MetaSel ('Just "_guestLinkTTLSeconds") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe GuestLinkTTLSeconds)) :*: S1 ('MetaSel ('Just "_passwordHashingOptions") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PasswordHashingOptions))))))

data JournalOpts Source #

Constructors

JournalOpts !Text !AWSEndpoint 

Instances

Instances details
FromJSON JournalOpts Source # 
Instance details

Defined in Galley.Options

Generic JournalOpts Source # 
Instance details

Defined in Galley.Options

Associated Types

type Rep JournalOpts :: Type -> Type #

Show JournalOpts Source # 
Instance details

Defined in Galley.Options

type Rep JournalOpts Source # 
Instance details

Defined in Galley.Options

type Rep JournalOpts = D1 ('MetaData "JournalOpts" "Galley.Options" "galley-0.83.0-HaHs2GpSD4uFZdzKAUrjHd" 'False) (C1 ('MetaCons "JournalOpts" 'PrefixI 'True) (S1 ('MetaSel ('Just "_queueName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Text) :*: S1 ('MetaSel ('Just "_endpoint") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 AWSEndpoint)))

data Opts Source #

Constructors

Opts 

Fields

Instances

Instances details
FromJSON Opts Source # 
Instance details

Defined in Galley.Options

defGuestLinkTTLSeconds :: GuestLinkTTLSeconds Source #

Default guest link TTL in days. 365 days if not set.

newtype GuestLinkTTLSeconds Source #

Instances

Instances details
FromJSON GuestLinkTTLSeconds Source # 
Instance details

Defined in Galley.Options

Generic GuestLinkTTLSeconds Source # 
Instance details

Defined in Galley.Options

Associated Types

type Rep GuestLinkTTLSeconds :: Type -> Type #

Show GuestLinkTTLSeconds Source # 
Instance details

Defined in Galley.Options

type Rep GuestLinkTTLSeconds Source # 
Instance details

Defined in Galley.Options

type Rep GuestLinkTTLSeconds = D1 ('MetaData "GuestLinkTTLSeconds" "Galley.Options" "galley-0.83.0-HaHs2GpSD4uFZdzKAUrjHd" 'True) (C1 ('MetaCons "GuestLinkTTLSeconds" 'PrefixI 'True) (S1 ('MetaSel ('Just "unGuestLinkTTLSeconds") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))