Documentation ¶
Index ¶
- Constants
- type ActivityNotifier
- type AllCryptKeys
- type AsyncInboxResult
- type AttachmentFetcher
- type AttachmentURLSrv
- type AttachmentUploadResult
- type AttachmentUploader
- type AttachmentUploaderResultCb
- type AttachmentUploaderTaskStatus
- type BoxerEncryptionInfo
- type CoinFlipManager
- type ContextFactory
- type ConvLoader
- type ConvLoaderJob
- type ConvLoaderPriority
- type ConversationBackedStorage
- type ConversationCommand
- type ConversationCommandsSource
- type ConversationCommandsSpec
- type ConversationLocalizerTyp
- type ConversationSource
- type CryptKey
- type DummyAttachmentFetcher
- func (d DummyAttachmentFetcher) DeleteAssets(ctx context.Context, convID chat1.ConversationID, assets []chat1.Asset, ...) (err error)
- func (d DummyAttachmentFetcher) FetchAttachment(ctx context.Context, w io.Writer, convID chat1.ConversationID, ...) error
- func (d DummyAttachmentFetcher) IsAssetLocal(ctx context.Context, asset chat1.Asset) (bool, error)
- func (d DummyAttachmentFetcher) OnCacheCleared(mctx libkb.MetaContext)
- func (d DummyAttachmentFetcher) PutUploadedAsset(ctx context.Context, filename string, asset chat1.Asset) error
- func (d DummyAttachmentFetcher) StreamAttachment(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset, ...) (io.ReadSeeker, error)
- type DummyAttachmentHTTPSrv
- func (d DummyAttachmentHTTPSrv) GetAttachmentFetcher() AttachmentFetcher
- func (d DummyAttachmentHTTPSrv) GetGiphyGalleryURL(ctx context.Context, convID chat1.ConversationID, tlfName string, ...) string
- func (d DummyAttachmentHTTPSrv) GetGiphyURL(ctx context.Context, giphyURL string) string
- func (d DummyAttachmentHTTPSrv) GetPendingPreviewURL(ctx context.Context, outboxID chat1.OutboxID) string
- func (d DummyAttachmentHTTPSrv) GetURL(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, ...) string
- func (d DummyAttachmentHTTPSrv) GetUnfurlAssetURL(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset) string
- func (d DummyAttachmentHTTPSrv) OnCacheCleared(mctx libkb.MetaContext)
- type DummyCoinFlipManager
- func (d DummyCoinFlipManager) DescribeFlipText(ctx context.Context, text string) string
- func (d DummyCoinFlipManager) HasActiveGames(ctx context.Context) bool
- func (d DummyCoinFlipManager) IsFlipConversationCreated(ctx context.Context, outboxID chat1.OutboxID) (chat1.ConversationID, FlipSendStatus)
- func (d DummyCoinFlipManager) LoadFlip(ctx context.Context, uid gregor1.UID, hostConvID chat1.ConversationID, ...)
- func (d DummyCoinFlipManager) MaybeInjectFlipMessage(ctx context.Context, boxedMsg chat1.MessageBoxed, inboxVers chat1.InboxVers, ...) bool
- func (d DummyCoinFlipManager) Start(ctx context.Context, uid gregor1.UID)
- func (d DummyCoinFlipManager) StartFlip(ctx context.Context, uid gregor1.UID, hostConvID chat1.ConversationID, ...) error
- func (d DummyCoinFlipManager) Stop(ctx context.Context) chan struct{}
- type DummyEphemeralPurger
- type DummyIndexer
- func (d DummyIndexer) Add(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, ...) error
- func (d DummyIndexer) IndexInbox(ctx context.Context, uid gregor1.UID) (map[string]chat1.ProfileSearchConvStats, error)
- func (d DummyIndexer) Remove(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, ...) error
- func (d DummyIndexer) Search(ctx context.Context, uid gregor1.UID, query string, opts chat1.SearchOpts, ...) (*chat1.ChatSearchInboxResults, error)
- func (d DummyIndexer) Start(ctx context.Context, uid gregor1.UID)
- func (d DummyIndexer) Stop(ctx context.Context) chan struct{}
- type DummyNativeVideoHelper
- type DummyStellarLoader
- type DummyStellarSender
- func (d DummyStellarSender) DecorateWithPayments(ctx context.Context, body string, payments []chat1.TextPayment) string
- func (d DummyStellarSender) DescribePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, ...) (res chat1.UIChatPaymentSummary, toSend []ParsedStellarPayment, err error)
- func (d DummyStellarSender) ParsePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, body string) []ParsedStellarPayment
- func (d DummyStellarSender) SendPayments(ctx context.Context, convID chat1.ConversationID, ...) ([]chat1.TextPayment, error)
- type DummyUnfurler
- func (d DummyUnfurler) Complete(ctx context.Context, outboxID chat1.OutboxID)
- func (d DummyUnfurler) GetSettings(ctx context.Context, uid gregor1.UID) (res chat1.UnfurlSettings, err error)
- func (d DummyUnfurler) Prefetch(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, ...) int
- func (d DummyUnfurler) Retry(ctx context.Context, outboxID chat1.OutboxID)
- func (d DummyUnfurler) SetMode(ctx context.Context, uid gregor1.UID, mode chat1.UnfurlMode) error
- func (d DummyUnfurler) SetSettings(ctx context.Context, uid gregor1.UID, settings chat1.UnfurlSettings) error
- func (d DummyUnfurler) Status(ctx context.Context, outboxID chat1.OutboxID) (UnfurlerTaskStatus, *chat1.UnfurlResult, error)
- func (d DummyUnfurler) UnfurlAndSend(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, ...)
- func (d DummyUnfurler) WhitelistAdd(ctx context.Context, uid gregor1.UID, domain string) error
- func (d DummyUnfurler) WhitelistAddExemption(ctx context.Context, uid gregor1.UID, exemption WhitelistExemption)
- func (d DummyUnfurler) WhitelistRemove(ctx context.Context, uid gregor1.UID, domain string) error
- type EphemeralPurger
- type FetchRetrier
- type FlipSendStatus
- type IdentifyNotifier
- type Inbox
- type InboxSource
- type InboxSourceDataSourceTyp
- type Indexer
- type InternalError
- type KeyFinder
- type MembershipUpdateRes
- type MessageDeliverer
- type MobileAppState
- type NameInfo
- type NameInfoSource
- type NativeVideoHelper
- type Offlinable
- type OobmHandler
- type ParsedStellarPayment
- type ProgressReporter
- type PushHandler
- type RateLimitedResult
- type RegexpSearcher
- type RemoteConversation
- func (rc RemoteConversation) GetConvID() chat1.ConversationID
- func (rc RemoteConversation) GetMembersType() chat1.ConversationMembersType
- func (rc RemoteConversation) GetMtime() gregor1.Time
- func (rc RemoteConversation) GetName() string
- func (rc RemoteConversation) GetTeamType() chat1.TeamType
- func (rc RemoteConversation) GetTopicName() string
- func (rc RemoteConversation) GetVersion() chat1.ConversationVers
- type RemoteConversationMetadata
- type Resumable
- type RetryDescription
- type Sender
- type SenderPrepareOptions
- type SenderPrepareResult
- type ServerCacheVersions
- type StellarLoader
- type StellarSender
- type Suspendable
- type Syncer
- type TeamChannelSource
- type UPAKFinder
- type UnboxConversationInfo
- type UnboxingError
- type Unfurler
- type UnfurlerTaskStatus
- type WhitelistExemption
Constants ¶
View Source
const ( ActionNewConversation = "newConversation" ActionNewMessage = "newMessage" ActionReadMessage = "readMessage" ActionSetStatus = "setStatus" ActionSetAppNotificationSettings = "setAppNotificationSettings" ActionTeamType = "teamType" ActionExpunge = "expunge" PushActivity = "chat.activity" PushTyping = "chat.typing" PushMembershipUpdate = "chat.membershipUpdate" PushTLFFinalize = "chat.tlffinalize" PushTLFResolve = "chat.tlfresolve" PushTeamChannels = "chat.teamchannels" PushKBFSUpgrade = "chat.kbfsupgrade" PushConvRetention = "chat.convretention" PushTeamRetention = "chat.teamretention" PushConvSettings = "chat.convsettings" PushSubteamRename = "chat.subteamrename" PushConversationsUpdate = "chat.conversationsupdate" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ActivityNotifier ¶
type ActivityNotifier interface { Activity(ctx context.Context, uid gregor1.UID, topicType chat1.TopicType, activity *chat1.ChatActivity, source chat1.ChatActivitySource) TypingUpdate(ctx context.Context, updates []chat1.ConvTypingUpdate) JoinedConversation(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType, conv *chat1.InboxUIItem) LeftConversation(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType) ResetConversation(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType) KBFSToImpteamUpgrade(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType) SetConvRetention(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType, conv *chat1.InboxUIItem) SetTeamRetention(ctx context.Context, uid gregor1.UID, teamID keybase1.TeamID, topicType chat1.TopicType, convs []chat1.InboxUIItem) SetConvSettings(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType, conv *chat1.InboxUIItem) SubteamRename(ctx context.Context, uid gregor1.UID, convIDs []chat1.ConversationID, topicType chat1.TopicType, convs []chat1.InboxUIItem) InboxSyncStarted(ctx context.Context, uid gregor1.UID) InboxSynced(ctx context.Context, uid gregor1.UID, topicType chat1.TopicType, syncRes chat1.ChatSyncResult) InboxStale(ctx context.Context, uid gregor1.UID) ThreadsStale(ctx context.Context, uid gregor1.UID, updates []chat1.ConversationStaleUpdate) TLFFinalize(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType, finalizeInfo chat1.ConversationFinalizeInfo, conv *chat1.InboxUIItem) TLFResolve(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType, resolveInfo chat1.ConversationResolveInfo) AttachmentUploadStart(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, outboxID chat1.OutboxID) AttachmentUploadProgress(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, outboxID chat1.OutboxID, bytesComplete, bytesTotal int64) PromptUnfurl(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, msgID chat1.MessageID, domain string) }
type AllCryptKeys ¶ added in v1.0.42
type AllCryptKeys map[chat1.ConversationMembersType][]CryptKey
func NewAllCryptKeys ¶ added in v1.0.42
func NewAllCryptKeys() AllCryptKeys
type AsyncInboxResult ¶
type AsyncInboxResult struct { Conv chat1.Conversation ConvLocal chat1.ConversationLocal InboxRes *Inbox // set if we are returning the whole inbox }
type AttachmentFetcher ¶ added in v1.0.48
type AttachmentFetcher interface { DeleteAssets(ctx context.Context, convID chat1.ConversationID, assets []chat1.Asset, ri func() chat1.RemoteInterface, signer s3.Signer) error FetchAttachment(ctx context.Context, w io.Writer, convID chat1.ConversationID, asset chat1.Asset, ri func() chat1.RemoteInterface, signer s3.Signer, progress ProgressReporter) error StreamAttachment(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset, ri func() chat1.RemoteInterface, signer s3.Signer) (io.ReadSeeker, error) PutUploadedAsset(ctx context.Context, filename string, asset chat1.Asset) error IsAssetLocal(ctx context.Context, asset chat1.Asset) (bool, error) OnCacheCleared(mctx libkb.MetaContext) }
type AttachmentURLSrv ¶ added in v1.0.48
type AttachmentURLSrv interface { GetURL(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, preview bool) string GetPendingPreviewURL(ctx context.Context, outboxID chat1.OutboxID) string GetUnfurlAssetURL(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset) string GetGiphyURL(ctx context.Context, giphyURL string) string GetGiphyGalleryURL(ctx context.Context, convID chat1.ConversationID, tlfName string, results []chat1.GiphySearchResult) string GetAttachmentFetcher() AttachmentFetcher OnCacheCleared(mctx libkb.MetaContext) }
type AttachmentUploadResult ¶
type AttachmentUploader ¶
type AttachmentUploader interface { Register(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, outboxID chat1.OutboxID, title, filename string, metadata []byte, callerPreview *chat1.MakePreviewRes) (AttachmentUploaderResultCb, error) Status(ctx context.Context, outboxID chat1.OutboxID) (AttachmentUploaderTaskStatus, AttachmentUploadResult, error) Retry(ctx context.Context, outboxID chat1.OutboxID) (AttachmentUploaderResultCb, error) Cancel(ctx context.Context, outboxID chat1.OutboxID) error Complete(ctx context.Context, outboxID chat1.OutboxID) GetUploadTempFile(ctx context.Context, outboxID chat1.OutboxID, filename string) (string, error) }
type AttachmentUploaderResultCb ¶
type AttachmentUploaderResultCb interface {
Wait() chan AttachmentUploadResult
}
type AttachmentUploaderTaskStatus ¶
type AttachmentUploaderTaskStatus int
const ( AttachmentUploaderTaskStatusUploading AttachmentUploaderTaskStatus = iota AttachmentUploaderTaskStatusSuccess AttachmentUploaderTaskStatusFailed )
type BoxerEncryptionInfo ¶
type BoxerEncryptionInfo struct { Key CryptKey SigningKeyPair libkb.NaclSigningKeyPair EphemeralSeed *keybase1.TeamEk PairwiseMACRecipients []keybase1.KID Version chat1.MessageBoxedVersion }
type CoinFlipManager ¶
type CoinFlipManager interface { Resumable StartFlip(ctx context.Context, uid gregor1.UID, hostConvID chat1.ConversationID, tlfName, text string, outboxID *chat1.OutboxID) error MaybeInjectFlipMessage(ctx context.Context, boxedMsg chat1.MessageBoxed, inboxVers chat1.InboxVers, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType) bool LoadFlip(ctx context.Context, uid gregor1.UID, hostConvID chat1.ConversationID, hostMsgID chat1.MessageID, flipConvID chat1.ConversationID, gameID chat1.FlipGameID) DescribeFlipText(ctx context.Context, text string) string HasActiveGames(ctx context.Context) bool IsFlipConversationCreated(ctx context.Context, outboxID chat1.OutboxID) (chat1.ConversationID, FlipSendStatus) }
type ContextFactory ¶
type ContextFactory interface { NewKeyFinder() KeyFinder NewUPAKFinder() UPAKFinder }
type ConvLoader ¶ added in v1.0.27
type ConvLoader interface { Resumable Suspendable Queue(ctx context.Context, job ConvLoaderJob) error }
type ConvLoaderJob ¶ added in v1.0.48
type ConvLoaderJob struct { ConvID chat1.ConversationID Query *chat1.GetThreadQuery Pagination *chat1.Pagination Priority ConvLoaderPriority PostLoadHook func(context.Context, chat1.ThreadView, ConvLoaderJob) }
func NewConvLoaderJob ¶ added in v1.0.48
func NewConvLoaderJob(convID chat1.ConversationID, query *chat1.GetThreadQuery, pagination *chat1.Pagination, priority ConvLoaderPriority, postLoadHook func(context.Context, chat1.ThreadView, ConvLoaderJob)) ConvLoaderJob
func (ConvLoaderJob) HigherPriorityThan ¶ added in v1.0.48
func (j ConvLoaderJob) HigherPriorityThan(j2 ConvLoaderJob) bool
func (ConvLoaderJob) String ¶ added in v1.0.48
func (j ConvLoaderJob) String() string
type ConvLoaderPriority ¶ added in v1.0.48
type ConvLoaderPriority int
var ( ConvLoaderPriorityHighest ConvLoaderPriority = 10 ConvLoaderPriorityHigh ConvLoaderPriority = 7 ConvLoaderPriorityMedium ConvLoaderPriority = 5 ConvLoaderPriorityLow ConvLoaderPriority = 3 ConvLoaderPriorityLowest ConvLoaderPriority )
func (ConvLoaderPriority) HigherThan ¶ added in v1.0.48
func (c ConvLoaderPriority) HigherThan(c2 ConvLoaderPriority) bool
type ConversationCommand ¶
type ConversationCommand interface { Match(ctx context.Context, text string) bool Execute(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, tlfName, text string) error Preview(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, tflName, text string) Name() string Usage() string Description() string HasHelpText() bool Export() chat1.ConversationCommand }
type ConversationCommandsSource ¶
type ConversationCommandsSource interface { ListCommands(ctx context.Context, uid gregor1.UID, conv ConversationCommandsSpec) (chat1.ConversationCommandGroups, error) GetBuiltins(ctx context.Context) []chat1.BuiltinCommandGroup GetBuiltinCommandType(ctx context.Context, c ConversationCommandsSpec) chat1.ConversationBuiltinCommandTyp AttemptBuiltinCommand(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, tlfName string, body chat1.MessageBody) (bool, error) PreviewBuiltinCommand(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, tlfName, text string) }
type ConversationCommandsSpec ¶
type ConversationCommandsSpec interface { GetMembersType() chat1.ConversationMembersType GetTeamType() chat1.TeamType GetTopicName() string }
type ConversationLocalizerTyp ¶
type ConversationLocalizerTyp int
const ( ConversationLocalizerBlocking ConversationLocalizerTyp = iota ConversationLocalizerNonblocking )
type ConversationSource ¶
type ConversationSource interface { AcquireConversationLock(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID) error ReleaseConversationLock(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID) Push(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg chat1.MessageBoxed) (chat1.MessageUnboxed, bool, error) PushUnboxed(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg chat1.MessageUnboxed) (continuousUpdate bool, err error) Pull(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, reason chat1.GetThreadReason, query *chat1.GetThreadQuery, pagination *chat1.Pagination) (chat1.ThreadView, error) PullLocalOnly(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, query *chat1.GetThreadQuery, p *chat1.Pagination, maxPlaceholders int) (chat1.ThreadView, error) PullFull(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, reason chat1.GetThreadReason, query *chat1.GetThreadQuery, maxPages *int) (chat1.ThreadView, error) GetMessages(ctx context.Context, conv UnboxConversationInfo, uid gregor1.UID, msgIDs []chat1.MessageID, reason *chat1.GetThreadReason) ([]chat1.MessageUnboxed, error) GetMessagesWithRemotes(ctx context.Context, conv chat1.Conversation, uid gregor1.UID, msgs []chat1.MessageBoxed) ([]chat1.MessageUnboxed, error) GetUnreadline(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, readMsgID chat1.MessageID) (*chat1.MessageID, error) MarkAsRead(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msgID chat1.MessageID) error Clear(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID) error TransformSupersedes(ctx context.Context, unboxInfo UnboxConversationInfo, uid gregor1.UID, msgs []chat1.MessageUnboxed) ([]chat1.MessageUnboxed, error) Expunge(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, expunge chat1.Expunge) error ClearFromDelete(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, deleteID chat1.MessageID) bool EphemeralPurge(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, purgeInfo *chat1.EphemeralPurgeInfo) (*chat1.EphemeralPurgeInfo, []chat1.MessageUnboxed, error) SetRemoteInterface(func() chat1.RemoteInterface) DeleteAssets(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, assets []chat1.Asset) }
type DummyAttachmentFetcher ¶
type DummyAttachmentFetcher struct{}
func (DummyAttachmentFetcher) DeleteAssets ¶
func (d DummyAttachmentFetcher) DeleteAssets(ctx context.Context, convID chat1.ConversationID, assets []chat1.Asset, ri func() chat1.RemoteInterface, signer s3.Signer) (err error)
func (DummyAttachmentFetcher) FetchAttachment ¶
func (d DummyAttachmentFetcher) FetchAttachment(ctx context.Context, w io.Writer, convID chat1.ConversationID, asset chat1.Asset, r func() chat1.RemoteInterface, signer s3.Signer, progress ProgressReporter) error
func (DummyAttachmentFetcher) IsAssetLocal ¶
func (DummyAttachmentFetcher) OnCacheCleared ¶
func (d DummyAttachmentFetcher) OnCacheCleared(mctx libkb.MetaContext)
func (DummyAttachmentFetcher) PutUploadedAsset ¶
func (DummyAttachmentFetcher) StreamAttachment ¶
func (d DummyAttachmentFetcher) StreamAttachment(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset, ri func() chat1.RemoteInterface, signer s3.Signer) (io.ReadSeeker, error)
type DummyAttachmentHTTPSrv ¶
type DummyAttachmentHTTPSrv struct{}
func (DummyAttachmentHTTPSrv) GetAttachmentFetcher ¶
func (d DummyAttachmentHTTPSrv) GetAttachmentFetcher() AttachmentFetcher
func (DummyAttachmentHTTPSrv) GetGiphyGalleryURL ¶
func (d DummyAttachmentHTTPSrv) GetGiphyGalleryURL(ctx context.Context, convID chat1.ConversationID, tlfName string, results []chat1.GiphySearchResult) string
func (DummyAttachmentHTTPSrv) GetGiphyURL ¶
func (d DummyAttachmentHTTPSrv) GetGiphyURL(ctx context.Context, giphyURL string) string
func (DummyAttachmentHTTPSrv) GetPendingPreviewURL ¶
func (DummyAttachmentHTTPSrv) GetURL ¶
func (d DummyAttachmentHTTPSrv) GetURL(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, preview bool) string
func (DummyAttachmentHTTPSrv) GetUnfurlAssetURL ¶
func (d DummyAttachmentHTTPSrv) GetUnfurlAssetURL(ctx context.Context, convID chat1.ConversationID, asset chat1.Asset) string
func (DummyAttachmentHTTPSrv) OnCacheCleared ¶
func (d DummyAttachmentHTTPSrv) OnCacheCleared(mctx libkb.MetaContext)
type DummyCoinFlipManager ¶
type DummyCoinFlipManager struct{}
func (DummyCoinFlipManager) DescribeFlipText ¶
func (d DummyCoinFlipManager) DescribeFlipText(ctx context.Context, text string) string
func (DummyCoinFlipManager) HasActiveGames ¶
func (d DummyCoinFlipManager) HasActiveGames(ctx context.Context) bool
func (DummyCoinFlipManager) IsFlipConversationCreated ¶
func (d DummyCoinFlipManager) IsFlipConversationCreated(ctx context.Context, outboxID chat1.OutboxID) (chat1.ConversationID, FlipSendStatus)
func (DummyCoinFlipManager) LoadFlip ¶
func (d DummyCoinFlipManager) LoadFlip(ctx context.Context, uid gregor1.UID, hostConvID chat1.ConversationID, hostMsgID chat1.MessageID, flipConvID chat1.ConversationID, gameID chat1.FlipGameID)
func (DummyCoinFlipManager) MaybeInjectFlipMessage ¶
func (d DummyCoinFlipManager) MaybeInjectFlipMessage(ctx context.Context, boxedMsg chat1.MessageBoxed, inboxVers chat1.InboxVers, uid gregor1.UID, convID chat1.ConversationID, topicType chat1.TopicType) bool
func (DummyCoinFlipManager) Start ¶
func (d DummyCoinFlipManager) Start(ctx context.Context, uid gregor1.UID)
func (DummyCoinFlipManager) Stop ¶
func (d DummyCoinFlipManager) Stop(ctx context.Context) chan struct{}
type DummyEphemeralPurger ¶
type DummyEphemeralPurger struct{}
func (DummyEphemeralPurger) Queue ¶
func (d DummyEphemeralPurger) Queue(ctx context.Context, purgeInfo chat1.EphemeralPurgeInfo) error
func (DummyEphemeralPurger) Start ¶
func (d DummyEphemeralPurger) Start(ctx context.Context, uid gregor1.UID)
func (DummyEphemeralPurger) Stop ¶
func (d DummyEphemeralPurger) Stop(ctx context.Context) chan struct{}
type DummyIndexer ¶
type DummyIndexer struct{}
func (DummyIndexer) Add ¶
func (d DummyIndexer) Add(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg []chat1.MessageUnboxed) error
func (DummyIndexer) IndexInbox ¶
func (d DummyIndexer) IndexInbox(ctx context.Context, uid gregor1.UID) (map[string]chat1.ProfileSearchConvStats, error)
func (DummyIndexer) Remove ¶
func (d DummyIndexer) Remove(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg []chat1.MessageUnboxed) error
func (DummyIndexer) Search ¶
func (d DummyIndexer) Search(ctx context.Context, uid gregor1.UID, query string, opts chat1.SearchOpts, hitUICh chan chat1.ChatSearchInboxHit, indexUICh chan chat1.ChatSearchIndexStatus) (*chat1.ChatSearchInboxResults, error)
func (DummyIndexer) Stop ¶
func (d DummyIndexer) Stop(ctx context.Context) chan struct{}
type DummyNativeVideoHelper ¶
type DummyNativeVideoHelper struct{}
func (DummyNativeVideoHelper) ThumbnailAndDuration ¶
type DummyStellarLoader ¶
type DummyStellarLoader struct{}
func (DummyStellarLoader) LoadPayment ¶
func (d DummyStellarLoader) LoadPayment(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, senderUsername string, paymentID stellar1.PaymentID) *chat1.UIPaymentInfo
func (DummyStellarLoader) LoadRequest ¶
func (d DummyStellarLoader) LoadRequest(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, senderUsername string, requestID stellar1.KeybaseRequestID) *chat1.UIRequestInfo
type DummyStellarSender ¶
type DummyStellarSender struct{}
func (DummyStellarSender) DecorateWithPayments ¶
func (d DummyStellarSender) DecorateWithPayments(ctx context.Context, body string, payments []chat1.TextPayment) string
func (DummyStellarSender) DescribePayments ¶
func (d DummyStellarSender) DescribePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, payments []ParsedStellarPayment) (res chat1.UIChatPaymentSummary, toSend []ParsedStellarPayment, err error)
func (DummyStellarSender) ParsePayments ¶
func (d DummyStellarSender) ParsePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, body string) []ParsedStellarPayment
func (DummyStellarSender) SendPayments ¶
func (d DummyStellarSender) SendPayments(ctx context.Context, convID chat1.ConversationID, payments []ParsedStellarPayment) ([]chat1.TextPayment, error)
type DummyUnfurler ¶
type DummyUnfurler struct{}
func (DummyUnfurler) Complete ¶
func (d DummyUnfurler) Complete(ctx context.Context, outboxID chat1.OutboxID)
func (DummyUnfurler) GetSettings ¶
func (d DummyUnfurler) GetSettings(ctx context.Context, uid gregor1.UID) (res chat1.UnfurlSettings, err error)
func (DummyUnfurler) Prefetch ¶
func (d DummyUnfurler) Prefetch(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, msgText string) int
func (DummyUnfurler) Retry ¶
func (d DummyUnfurler) Retry(ctx context.Context, outboxID chat1.OutboxID)
func (DummyUnfurler) SetMode ¶
func (d DummyUnfurler) SetMode(ctx context.Context, uid gregor1.UID, mode chat1.UnfurlMode) error
func (DummyUnfurler) SetSettings ¶
func (d DummyUnfurler) SetSettings(ctx context.Context, uid gregor1.UID, settings chat1.UnfurlSettings) error
func (DummyUnfurler) Status ¶
func (d DummyUnfurler) Status(ctx context.Context, outboxID chat1.OutboxID) (UnfurlerTaskStatus, *chat1.UnfurlResult, error)
func (DummyUnfurler) UnfurlAndSend ¶
func (d DummyUnfurler) UnfurlAndSend(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, msg chat1.MessageUnboxed)
func (DummyUnfurler) WhitelistAdd ¶
func (DummyUnfurler) WhitelistAddExemption ¶
func (d DummyUnfurler) WhitelistAddExemption(ctx context.Context, uid gregor1.UID, exemption WhitelistExemption)
func (DummyUnfurler) WhitelistRemove ¶
type EphemeralPurger ¶
type FetchRetrier ¶ added in v1.0.22
type FetchRetrier interface { Offlinable Resumable Failure(ctx context.Context, uid gregor1.UID, desc RetryDescription) error Success(ctx context.Context, uid gregor1.UID, desc RetryDescription) error Force(ctx context.Context) Rekey(ctx context.Context, name string, membersType chat1.ConversationMembersType, public bool) }
type FlipSendStatus ¶
type FlipSendStatus int
const ( FlipSendStatusInProgress FlipSendStatus = iota FlipSendStatusSent FlipSendStatusError )
type IdentifyNotifier ¶ added in v1.0.42
type IdentifyNotifier interface { Reset() ResetOnGUIConnect() Send(ctx context.Context, update keybase1.CanonicalTLFNameAndIDWithBreaks) }
type Inbox ¶ added in v1.0.33
type Inbox struct { Version chat1.InboxVers ConvsUnverified []RemoteConversation Convs []chat1.ConversationLocal Pagination *chat1.Pagination }
type InboxSource ¶
type InboxSource interface { Offlinable Resumable Suspendable Clear(ctx context.Context, uid gregor1.UID) error Read(ctx context.Context, uid gregor1.UID, localizeTyp ConversationLocalizerTyp, dataSource InboxSourceDataSourceTyp, maxLocalize *int, query *chat1.GetInboxLocalQuery, p *chat1.Pagination) (Inbox, chan AsyncInboxResult, error) ReadUnverified(ctx context.Context, uid gregor1.UID, dataSource InboxSourceDataSourceTyp, query *chat1.GetInboxQuery, p *chat1.Pagination) (Inbox, error) Localize(ctx context.Context, uid gregor1.UID, convs []RemoteConversation, localizeTyp ConversationLocalizerTyp) ([]chat1.ConversationLocal, chan AsyncInboxResult, error) RemoteSetConversationStatus(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, status chat1.ConversationStatus) error NewConversation(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, conv chat1.Conversation) error IsMember(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID) (bool, error) NewMessage(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, msg chat1.MessageBoxed, maxMsgs []chat1.MessageSummary) (*chat1.ConversationLocal, error) ReadMessage(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, msgID chat1.MessageID) (*chat1.ConversationLocal, error) SetStatus(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, status chat1.ConversationStatus) (*chat1.ConversationLocal, error) SetAppNotificationSettings(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, settings chat1.ConversationNotificationInfo) (*chat1.ConversationLocal, error) TlfFinalize(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convIDs []chat1.ConversationID, finalizeInfo chat1.ConversationFinalizeInfo) ([]chat1.ConversationLocal, error) MembershipUpdate(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, joined []chat1.ConversationMember, removed []chat1.ConversationMember, resets []chat1.ConversationMember, previews []chat1.ConversationID) (MembershipUpdateRes, error) ConversationsUpdate(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convUpdates []chat1.ConversationUpdate) error TeamTypeChanged(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, teamType chat1.TeamType) (*chat1.ConversationLocal, error) UpgradeKBFSToImpteam(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID) (*chat1.ConversationLocal, error) Expunge(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, expunge chat1.Expunge, maxMsgs []chat1.MessageSummary) (*chat1.ConversationLocal, error) SetConvRetention(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, policy chat1.RetentionPolicy) (*chat1.ConversationLocal, error) SetTeamRetention(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, teamID keybase1.TeamID, policy chat1.RetentionPolicy) ([]chat1.ConversationLocal, error) SetConvSettings(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID, convSettings *chat1.ConversationSettings) (*chat1.ConversationLocal, error) SubteamRename(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convIDs []chat1.ConversationID) ([]chat1.ConversationLocal, error) UpdateInboxVersion(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers) error GetInboxQueryLocalToRemote(ctx context.Context, lquery *chat1.GetInboxLocalQuery) (*chat1.GetInboxQuery, NameInfo, error) SetRemoteInterface(func() chat1.RemoteInterface) }
type InboxSourceDataSourceTyp ¶
type InboxSourceDataSourceTyp int
const ( InboxSourceDataSourceAll InboxSourceDataSourceTyp = iota InboxSourceDataSourceRemoteOnly InboxSourceDataSourceLocalOnly )
type Indexer ¶
type Indexer interface { Resumable Search(ctx context.Context, uid gregor1.UID, query string, opts chat1.SearchOpts, hitUICh chan chat1.ChatSearchInboxHit, indexUICh chan chat1.ChatSearchIndexStatus) (*chat1.ChatSearchInboxResults, error) // Add/update the index with the given messages Add(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg []chat1.MessageUnboxed) error // Remove the given messages from the index Remove(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msg []chat1.MessageUnboxed) error // For devel/testing IndexInbox(ctx context.Context, uid gregor1.UID) (map[string]chat1.ProfileSearchConvStats, error) }
type InternalError ¶
type InternalError interface { // verbose error info for debugging but not user display InternalError() string }
type KeyFinder ¶
type KeyFinder interface { FindForEncryption(ctx context.Context, tlfName string, teamID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (CryptKey, NameInfo, error) FindForDecryption(ctx context.Context, tlfName string, teamID chat1.TLFID, membersType chat1.ConversationMembersType, public bool, keyGeneration int, kbfsEncrypted bool) (CryptKey, error) EphemeralKeyForEncryption(mctx libkb.MetaContext, tlfName string, teamID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (keybase1.TeamEk, error) EphemeralKeyForDecryption(mctx libkb.MetaContext, tlfName string, teamID chat1.TLFID, membersType chat1.ConversationMembersType, public bool, generation keybase1.EkGeneration, contentCtime *gregor1.Time) (keybase1.TeamEk, error) ShouldPairwiseMAC(ctx context.Context, tlfName string, teamID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (bool, []keybase1.KID, error) Reset() }
type MembershipUpdateRes ¶ added in v1.0.27
type MembershipUpdateRes struct { UserJoinedConvs []chat1.ConversationLocal UserRemovedConvs []chat1.ConversationMember UserResetConvs []chat1.ConversationMember OthersJoinedConvs []chat1.ConversationMember OthersRemovedConvs []chat1.ConversationMember OthersResetConvs []chat1.ConversationMember }
func (MembershipUpdateRes) AllOtherUsers ¶
func (m MembershipUpdateRes) AllOtherUsers() (res []gregor1.UID)
type MessageDeliverer ¶
type MessageDeliverer interface { Offlinable Resumable Queue(ctx context.Context, convID chat1.ConversationID, msg chat1.MessagePlaintext, outboxID *chat1.OutboxID, identifyBehavior keybase1.TLFIdentifyBehavior) (chat1.OutboxRecord, error) ForceDeliverLoop(ctx context.Context) ActiveDeliveries(ctx context.Context) ([]chat1.ConversationID, error) NextFailure() (chan []chat1.OutboxRecord, func()) }
type MobileAppState ¶
type MobileAppState interface { State() keybase1.MobileAppState NextUpdate() chan keybase1.MobileAppState }
type NameInfo ¶ added in v1.0.27
func NewNameInfo ¶ added in v1.0.41
func NewNameInfo() *NameInfo
type NameInfoSource ¶ added in v1.0.27
type NameInfoSource interface { LookupID(ctx context.Context, name string, public bool) (NameInfo, error) LookupName(ctx context.Context, tlfID chat1.TLFID, public bool) (NameInfo, error) AllCryptKeys(ctx context.Context, name string, public bool) (AllCryptKeys, error) EncryptionKey(ctx context.Context, tlfName string, tlfID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (CryptKey, NameInfo, error) DecryptionKey(ctx context.Context, tlfName string, tlfID chat1.TLFID, membersType chat1.ConversationMembersType, public bool, keyGeneration int, kbfsEncrypted bool) (CryptKey, error) EphemeralEncryptionKey(mctx libkb.MetaContext, tlfName string, tlfID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (keybase1.TeamEk, error) EphemeralDecryptionKey(mctx libkb.MetaContext, tlfName string, tlfID chat1.TLFID, membersType chat1.ConversationMembersType, public bool, generation keybase1.EkGeneration, contentCtime *gregor1.Time) (keybase1.TeamEk, error) ShouldPairwiseMAC(ctx context.Context, tlfName string, tlfID chat1.TLFID, membersType chat1.ConversationMembersType, public bool) (bool, []keybase1.KID, error) }
type NativeVideoHelper ¶
type Offlinable ¶
type OobmHandler ¶
type ParsedStellarPayment ¶
type ParsedStellarPayment struct { Username libkb.NormalizedUsername Full string Amount string Currency string }
func (ParsedStellarPayment) ToMini ¶
func (p ParsedStellarPayment) ToMini() libkb.MiniChatPayment
type ProgressReporter ¶ added in v1.0.48
type ProgressReporter func(bytesCompleted, bytesTotal int64)
type PushHandler ¶ added in v1.0.27
type PushHandler interface { TlfFinalize(context.Context, gregor.OutOfBandMessage) error TlfResolve(context.Context, gregor.OutOfBandMessage) error Activity(context.Context, gregor.OutOfBandMessage) error Typing(context.Context, gregor.OutOfBandMessage) error MembershipUpdate(context.Context, gregor.OutOfBandMessage) error UpgradeKBFSToImpteam(ctx context.Context, m gregor.OutOfBandMessage) error OobmHandler }
type RateLimitedResult ¶
type RegexpSearcher ¶
type RegexpSearcher interface { Search(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, re *regexp.Regexp, uiCh chan chat1.ChatSearchHit, opts chat1.SearchOpts) ([]chat1.ChatSearchHit, error) }
type RemoteConversation ¶ added in v1.0.33
type RemoteConversation struct { Conv chat1.Conversation `codec:"c"` LocalMetadata *RemoteConversationMetadata `codec:"l"` }
func (RemoteConversation) GetConvID ¶ added in v1.0.33
func (rc RemoteConversation) GetConvID() chat1.ConversationID
func (RemoteConversation) GetMembersType ¶
func (rc RemoteConversation) GetMembersType() chat1.ConversationMembersType
func (RemoteConversation) GetMtime ¶ added in v1.0.33
func (rc RemoteConversation) GetMtime() gregor1.Time
func (RemoteConversation) GetName ¶
func (rc RemoteConversation) GetName() string
func (RemoteConversation) GetTeamType ¶
func (rc RemoteConversation) GetTeamType() chat1.TeamType
func (RemoteConversation) GetTopicName ¶
func (rc RemoteConversation) GetTopicName() string
func (RemoteConversation) GetVersion ¶
func (rc RemoteConversation) GetVersion() chat1.ConversationVers
type RemoteConversationMetadata ¶ added in v1.0.33
type RetryDescription ¶ added in v1.0.27
type Sender ¶ added in v1.0.27
type Sender interface { Send(ctx context.Context, convID chat1.ConversationID, msg chat1.MessagePlaintext, clientPrev chat1.MessageID, outboxID *chat1.OutboxID, joinMentionsAs *chat1.ConversationMemberStatus) (chat1.OutboxID, *chat1.MessageBoxed, error) Prepare(ctx context.Context, msg chat1.MessagePlaintext, membersType chat1.ConversationMembersType, conv *chat1.Conversation, opts *SenderPrepareOptions) (SenderPrepareResult, error) }
type SenderPrepareOptions ¶
type SenderPrepareOptions struct {
SkipTopicNameState bool
}
type SenderPrepareResult ¶
type SenderPrepareResult struct { Boxed chat1.MessageBoxed EncryptionInfo BoxerEncryptionInfo PendingAssetDeletes []chat1.Asset AtMentions []gregor1.UID ChannelMention chat1.ChannelMention TopicNameState *chat1.TopicNameState }
type ServerCacheVersions ¶
type StellarLoader ¶
type StellarLoader interface { LoadPayment(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, senderUsername string, paymentID stellar1.PaymentID) *chat1.UIPaymentInfo LoadRequest(ctx context.Context, convID chat1.ConversationID, msgID chat1.MessageID, senderUsername string, requestID stellar1.KeybaseRequestID) *chat1.UIRequestInfo }
type StellarSender ¶
type StellarSender interface { ParsePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, body string) []ParsedStellarPayment DescribePayments(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, payments []ParsedStellarPayment) (chat1.UIChatPaymentSummary, []ParsedStellarPayment, error) DecorateWithPayments(ctx context.Context, body string, payments []chat1.TextPayment) string SendPayments(ctx context.Context, convID chat1.ConversationID, payments []ParsedStellarPayment) ([]chat1.TextPayment, error) }
type Suspendable ¶
type Syncer ¶
type Syncer interface { IsConnected(ctx context.Context) bool Connected(ctx context.Context, cli chat1.RemoteInterface, uid gregor1.UID, syncRes *chat1.SyncChatRes) error Disconnected(ctx context.Context) Sync(ctx context.Context, cli chat1.RemoteInterface, uid gregor1.UID, syncRes *chat1.SyncChatRes) error RegisterOfflinable(offlinable Offlinable) SendChatStaleNotifications(ctx context.Context, uid gregor1.UID, updates []chat1.ConversationStaleUpdate, immediate bool) SelectConversation(ctx context.Context, convID chat1.ConversationID) Shutdown() }
type TeamChannelSource ¶ added in v1.0.34
type TeamChannelSource interface { GetChannelsFull(context.Context, gregor1.UID, chat1.TLFID, chat1.TopicType) ([]chat1.ConversationLocal, error) GetChannelsTopicName(ctx context.Context, uid gregor1.UID, teamID chat1.TLFID, topicType chat1.TopicType) ([]chat1.ChannelNameMention, error) GetChannelTopicName(ctx context.Context, uid gregor1.UID, tlfID chat1.TLFID, topicType chat1.TopicType, convID chat1.ConversationID) (string, error) }
type UPAKFinder ¶ added in v1.0.42
type UPAKFinder interface { LookupUsernameAndDevice(ctx context.Context, uid keybase1.UID, deviceID keybase1.DeviceID) (username libkb.NormalizedUsername, deviceName string, deviceType string, err error) CheckKIDForUID(ctx context.Context, uid keybase1.UID, kid keybase1.KID) (found bool, revokedAt *keybase1.KeybaseTime, deleted bool, err error) }
type UnboxConversationInfo ¶ added in v1.0.34
type UnboxConversationInfo interface { GetConvID() chat1.ConversationID GetMembersType() chat1.ConversationMembersType GetFinalizeInfo() *chat1.ConversationFinalizeInfo GetExpunge() *chat1.Expunge GetMaxDeletedUpTo() chat1.MessageID IsPublic() bool }
type UnboxingError ¶
type UnboxingError interface { InternalError Error() string Inner() error IsPermanent() bool ExportType() chat1.MessageUnboxedErrorType VersionKind() chat1.VersionKind VersionNumber() int IsCritical() bool ToStatus() keybase1.Status }
type Unfurler ¶
type Unfurler interface { UnfurlAndSend(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, msg chat1.MessageUnboxed) Prefetch(ctx context.Context, uid gregor1.UID, convID chat1.ConversationID, msgText string) int Status(ctx context.Context, outboxID chat1.OutboxID) (UnfurlerTaskStatus, *chat1.UnfurlResult, error) Retry(ctx context.Context, outboxID chat1.OutboxID) Complete(ctx context.Context, outboxID chat1.OutboxID) GetSettings(ctx context.Context, uid gregor1.UID) (chat1.UnfurlSettings, error) SetSettings(ctx context.Context, uid gregor1.UID, settings chat1.UnfurlSettings) error WhitelistAdd(ctx context.Context, uid gregor1.UID, domain string) error WhitelistRemove(ctx context.Context, uid gregor1.UID, domain string) error WhitelistAddExemption(ctx context.Context, uid gregor1.UID, exemption WhitelistExemption) SetMode(ctx context.Context, uid gregor1.UID, mode chat1.UnfurlMode) error }
type UnfurlerTaskStatus ¶
type UnfurlerTaskStatus int
const ( UnfurlerTaskStatusUnfurling UnfurlerTaskStatus = iota UnfurlerTaskStatusSuccess UnfurlerTaskStatusFailed UnfurlerTaskStatusPermFailed )
type WhitelistExemption ¶
Click to show internal directories.
Click to hide internal directories.