mirror of
https://github.com/42wim/matterbridge.git
synced 2024-11-26 20:52:02 -08:00
183 lines
5.6 KiB
Go
183 lines
5.6 KiB
Go
|
// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
|
||
|
// See LICENSE.txt for license information.
|
||
|
|
||
|
package model
|
||
|
|
||
|
import (
|
||
|
"math/big"
|
||
|
)
|
||
|
|
||
|
const (
|
||
|
SystemTelemetryId = "DiagnosticId"
|
||
|
SystemRanUnitTests = "RanUnitTests"
|
||
|
SystemLastSecurityTime = "LastSecurityTime"
|
||
|
SystemActiveLicenseId = "ActiveLicenseId"
|
||
|
SystemLicenseRenewalToken = "LicenseRenewalToken"
|
||
|
SystemLastComplianceTime = "LastComplianceTime"
|
||
|
SystemAsymmetricSigningKeyKey = "AsymmetricSigningKey"
|
||
|
SystemPostActionCookieSecretKey = "PostActionCookieSecret"
|
||
|
SystemInstallationDateKey = "InstallationDate"
|
||
|
SystemFirstServerRunTimestampKey = "FirstServerRunTimestamp"
|
||
|
SystemClusterEncryptionKey = "ClusterEncryptionKey"
|
||
|
SystemUpgradedFromTeId = "UpgradedFromTE"
|
||
|
SystemWarnMetricNumberOfTeams5 = "warn_metric_number_of_teams_5"
|
||
|
SystemWarnMetricNumberOfChannels50 = "warn_metric_number_of_channels_50"
|
||
|
SystemWarnMetricMfa = "warn_metric_mfa"
|
||
|
SystemWarnMetricEmailDomain = "warn_metric_email_domain"
|
||
|
SystemWarnMetricNumberOfActiveUsers100 = "warn_metric_number_of_active_users_100"
|
||
|
SystemWarnMetricNumberOfActiveUsers200 = "warn_metric_number_of_active_users_200"
|
||
|
SystemWarnMetricNumberOfActiveUsers300 = "warn_metric_number_of_active_users_300"
|
||
|
SystemWarnMetricNumberOfActiveUsers500 = "warn_metric_number_of_active_users_500"
|
||
|
SystemWarnMetricNumberOfPosts2m = "warn_metric_number_of_posts_2M"
|
||
|
SystemWarnMetricLastRunTimestampKey = "LastWarnMetricRunTimestamp"
|
||
|
SystemMetricSupportEmailNotConfigured = "warn_metric_support_email_not_configured"
|
||
|
SystemFirstAdminVisitMarketplace = "FirstAdminVisitMarketplace"
|
||
|
AwsMeteringReportInterval = 1
|
||
|
AwsMeteringDimensionUsageHrs = "UsageHrs"
|
||
|
UserLimitOverageCycleEndDate = "UserLimitOverageCycleEndDate"
|
||
|
OverUserLimitForgivenCount = "OverUserLimitForgivenCount"
|
||
|
OverUserLimitLastEmailSent = "OverUserLimitLastEmailSent"
|
||
|
)
|
||
|
|
||
|
const (
|
||
|
WarnMetricStatusLimitReached = "true"
|
||
|
WarnMetricStatusRunonce = "runonce"
|
||
|
WarnMetricStatusAck = "ack"
|
||
|
WarnMetricStatusStorePrefix = "warn_metric_"
|
||
|
WarnMetricJobInterval = 24 * 7
|
||
|
WarnMetricNumberOfActiveUsers25 = 25
|
||
|
WarnMetricJobWaitTime = 1000 * 3600 * 24 * 7 // 7 days
|
||
|
)
|
||
|
|
||
|
type System struct {
|
||
|
Name string `json:"name"`
|
||
|
Value string `json:"value"`
|
||
|
}
|
||
|
|
||
|
type SystemPostActionCookieSecret struct {
|
||
|
Secret []byte `json:"key,omitempty"`
|
||
|
}
|
||
|
|
||
|
type SystemAsymmetricSigningKey struct {
|
||
|
ECDSAKey *SystemECDSAKey `json:"ecdsa_key,omitempty"`
|
||
|
}
|
||
|
|
||
|
type SystemECDSAKey struct {
|
||
|
Curve string `json:"curve"`
|
||
|
X *big.Int `json:"x"`
|
||
|
Y *big.Int `json:"y"`
|
||
|
D *big.Int `json:"d,omitempty"`
|
||
|
}
|
||
|
|
||
|
// ServerBusyState provides serialization for app.Busy.
|
||
|
type ServerBusyState struct {
|
||
|
Busy bool `json:"busy"`
|
||
|
Expires int64 `json:"expires"`
|
||
|
ExpiresTS string `json:"expires_ts,omitempty"`
|
||
|
}
|
||
|
|
||
|
type SupportPacket struct {
|
||
|
ServerOS string `yaml:"server_os"`
|
||
|
ServerArchitecture string `yaml:"server_architecture"`
|
||
|
DatabaseType string `yaml:"database_type"`
|
||
|
DatabaseVersion string `yaml:"database_version"`
|
||
|
LdapVendorName string `yaml:"ldap_vendor_name,omitempty"`
|
||
|
LdapVendorVersion string `yaml:"ldap_vendor_version,omitempty"`
|
||
|
ElasticServerVersion string `yaml:"elastic_server_version,omitempty"`
|
||
|
ElasticServerPlugins []string `yaml:"elastic_server_plugins,omitempty"`
|
||
|
}
|
||
|
|
||
|
type FileData struct {
|
||
|
Filename string
|
||
|
Body []byte
|
||
|
}
|
||
|
|
||
|
var WarnMetricsTable = map[string]WarnMetric{
|
||
|
SystemWarnMetricMfa: {
|
||
|
Id: SystemWarnMetricMfa,
|
||
|
Limit: -1,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricEmailDomain: {
|
||
|
Id: SystemWarnMetricEmailDomain,
|
||
|
Limit: -1,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfTeams5: {
|
||
|
Id: SystemWarnMetricNumberOfTeams5,
|
||
|
Limit: 5,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfChannels50: {
|
||
|
Id: SystemWarnMetricNumberOfChannels50,
|
||
|
Limit: 50,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfActiveUsers100: {
|
||
|
Id: SystemWarnMetricNumberOfActiveUsers100,
|
||
|
Limit: 100,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfActiveUsers200: {
|
||
|
Id: SystemWarnMetricNumberOfActiveUsers200,
|
||
|
Limit: 200,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfActiveUsers300: {
|
||
|
Id: SystemWarnMetricNumberOfActiveUsers300,
|
||
|
Limit: 300,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfActiveUsers500: {
|
||
|
Id: SystemWarnMetricNumberOfActiveUsers500,
|
||
|
Limit: 500,
|
||
|
IsBotOnly: false,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemWarnMetricNumberOfPosts2m: {
|
||
|
Id: SystemWarnMetricNumberOfPosts2m,
|
||
|
Limit: 2000000,
|
||
|
IsBotOnly: false,
|
||
|
IsRunOnce: true,
|
||
|
},
|
||
|
SystemMetricSupportEmailNotConfigured: {
|
||
|
Id: SystemMetricSupportEmailNotConfigured,
|
||
|
Limit: -1,
|
||
|
IsBotOnly: true,
|
||
|
IsRunOnce: false,
|
||
|
SkipAction: true,
|
||
|
},
|
||
|
}
|
||
|
|
||
|
type WarnMetric struct {
|
||
|
Id string
|
||
|
Limit int64
|
||
|
IsBotOnly bool
|
||
|
IsRunOnce bool
|
||
|
SkipAction bool
|
||
|
}
|
||
|
|
||
|
type WarnMetricDisplayTexts struct {
|
||
|
BotTitle string
|
||
|
BotMessageBody string
|
||
|
BotSuccessMessage string
|
||
|
EmailBody string
|
||
|
}
|
||
|
type WarnMetricStatus struct {
|
||
|
Id string `json:"id"`
|
||
|
Limit int64 `json:"limit"`
|
||
|
Acked bool `json:"acked"`
|
||
|
StoreStatus string `json:"store_status,omitempty"`
|
||
|
}
|
||
|
|
||
|
type SendWarnMetricAck struct {
|
||
|
ForceAck bool `json:"forceAck"`
|
||
|
}
|