Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ChatLocalizer ¶
type ConversationSource ¶
type ConversationSource interface {
Offlinable
Push(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID,
msg chat1.MessageBoxed) (chat1.MessageUnboxed, bool, error)
Pull(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, query *chat1.GetThreadQuery,
pagination *chat1.Pagination) (chat1.ThreadView, []*chat1.RateLimit, error)
PullLocalOnly(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID,
query *chat1.GetThreadQuery, p *chat1.Pagination) (chat1.ThreadView, error)
GetMessages(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msgIDs []chat1.MessageID, finalizeInfo *chat1.ConversationFinalizeInfo) ([]chat1.MessageUnboxed, error)
GetMessagesWithRemotes(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID,
msgs []chat1.MessageBoxed, finalizeInfo *chat1.ConversationFinalizeInfo) ([]chat1.MessageUnboxed, error)
Clear(convID chat1.ConversationID, uid gregor1.UID) error
TransformSupersedes(ctx context.Context, convID chat1.ConversationID, uid gregor1.UID, msgs []chat1.MessageUnboxed, finalizeInfo *chat1.ConversationFinalizeInfo) ([]chat1.MessageUnboxed, error)
SetRemoteInterface(func() chat1.RemoteInterface)
SetTlfInterface(func() keybase1.TlfInterface)
}
type InboxSource ¶
type InboxSource interface {
Offlinable
Read(ctx context.Context, uid gregor1.UID, localizer ChatLocalizer, useLocalData bool,
query *chat1.GetInboxLocalQuery, p *chat1.Pagination) (chat1.Inbox, *chat1.RateLimit, error)
ReadUnverified(ctx context.Context, uid gregor1.UID, useLocalData bool,
query *chat1.GetInboxQuery, p *chat1.Pagination) (chat1.Inbox, *chat1.RateLimit, error)
NewConversation(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers,
conv chat1.Conversation) error
NewMessage(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers, convID chat1.ConversationID,
msg chat1.MessageBoxed) (*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)
TlfFinalize(ctx context.Context, uid gregor1.UID, vers chat1.InboxVers,
convIDs []chat1.ConversationID, finalizeInfo chat1.ConversationFinalizeInfo) ([]chat1.ConversationLocal, error)
SetRemoteInterface(func() chat1.RemoteInterface)
SetTlfInterface(func() keybase1.TlfInterface)
}
type MessageDeliverer ¶
type MessageDeliverer interface {
Offlinable
Queue(ctx context.Context, convID chat1.ConversationID, msg chat1.MessagePlaintext,
identifyBehavior keybase1.TLFIdentifyBehavior) (chat1.OutboxRecord, error)
Start(ctx context.Context, uid gregor1.UID)
Stop(ctx context.Context) chan struct{}
ForceDeliverLoop(ctx context.Context)
}
Click to show internal directories.
Click to hide internal directories.