TypingIndicatorIncomingRepositoryImpl
internal class TypingIndicatorIncomingRepositoryImpl(userPropertyRepository: UserPropertyRepository, timeSource: TimeSource.WithComparableMarks = TimeSource.Monotonic) : TypingIndicatorIncomingRepository
Remembers, per conversation, when each user last sent a typing STARTED event.
Expiry is evaluated lazily instead of running a timer per typing user: observeUsersTyping waits for the next expiry inside the collector's coroutine. Nothing runs for conversations that are not being observed, and the timer is cancelled together with the collector.
Constructors
Link copied to clipboard
constructor(userPropertyRepository: UserPropertyRepository, timeSource: TimeSource.WithComparableMarks = TimeSource.Monotonic)
Functions
Link copied to clipboard
open suspend override fun addTypingUserInConversation(conversationId: ConversationId, userId: UserId)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open suspend override fun removeTypingUserInConversation(conversationId: ConversationId, userId: UserId)