22 class ChannelRepository;
25 class SettingRepository;
26 class PagedRequestFetcher;
31 class BitsConfigRepository;
47 void SetVodId(
const std::string& vodId);
57 virtual void Update()
override;
virtual void CompleteShutdown() override
void AddListener(const std::shared_ptr< IChatReplayListener > &listener)
Definition: chatreplay.h:49
std::shared_ptr< PagedRequestFetcher > mChatReplayMessagesFetcher
Definition: chatreplay.h:91
uint32_t UserId
Definition: coretypes.h:22
ChatReplayState
Definition: chattypes.h:547
std::vector< ReplayMessage > messages
Definition: chatreplay.h:77
bool mBitsConfigFetchInFlight
Definition: chatreplay.h:113
std::string GetVodId() const
Definition: chatreplay.h:53
virtual TTV_ErrorCode Pause() override
std::shared_ptr< BitsConfigRepository > mBitsConfigRepository
Definition: chatreplay.h:90
void SetDisposer(DisposerFunc &&func)
Definition: chatreplay.h:44
uint64_t mPlayheadTimeMilliseconds
Definition: chatreplay.h:103
RetryTimer mFetchBitsConfigRetryTimer
Definition: chatreplay.h:95
void SetReplayState(ChatReplayState state)
std::vector< ReplayMessageBatch > mFetchedLists
Definition: chatreplay.h:88
bool mHasFetchedBitsConfig
Definition: chatreplay.h:115
DisposerFunc mDisposerFunc
Definition: chatreplay.h:98
UserId mUserId
Definition: chatreplay.h:108
uint32_t Timestamp
Definition: coretypes.h:27
std::shared_ptr< BitsConfiguration > mBitsConfiguration
Definition: chatreplay.h:92
std::shared_ptr< User > mUser
Definition: chatreplay.h:86
void SetBitsConfigRepository(const std::shared_ptr< BitsConfigRepository > &repository)
Definition: chatreplay.h:51
void SetVodId(const std::string &vodId)
Timestamp mVodRecordedAtSeconds
Definition: chatreplay.h:105
ChannelId mChannelId
Definition: chatreplay.h:109
EventSource< IChatReplayListener > mListeners
Definition: chatreplay.h:87
virtual TTV_ErrorCode Initialize() override
virtual std::string GetLoggerName() const override
JSON (JavaScript Object Notation).
Definition: adsapi.h:16
TTV_ErrorCode FetchChatReplayMessagesAtMillisecond(uint64_t timestamp)
WaitForExpiry mFetchMessagesRetryTimer
Definition: chatreplay.h:96
uint64_t mLastLoadedTimeMilliseconds
Definition: chatreplay.h:104
uint32_t mSeekCount
Definition: chatreplay.h:107
bool mHasNoMessages
Definition: chatreplay.h:116
Definition: eventsource.h:18
uint64_t mLastUpdateTimeMilliseconds
Definition: chatreplay.h:102
void SetTokenizationOptions(const TokenizationOptions &tokenizationOptions)
Definition: chatreplay.h:48
virtual TTV_ErrorCode Dispose() override
virtual TTV_ErrorCode Shutdown() override
std::string mVodId
Definition: chatreplay.h:85
Definition: component.h:50
std::function< void()> DisposerFunc
Definition: chatreplay.h:39
uint32_t TTV_ErrorCode
Definition: errortypes.h:30
TTV_ErrorCode FetchBitsConfig()
RetryTimer mFetchVodRetryTimer
Definition: chatreplay.h:94
ChatReplayState mReplayState
Definition: chatreplay.h:110
Definition: ichatreplay.h:31
virtual TTV_ErrorCode NudgePlayhead(uint64_t timestampMilliseconds) override
virtual TTV_ErrorCode GetCurrentTime(Timestamp ×tamp) const override
virtual TTV_ErrorCode GetReplayState(ChatReplayState &result) const override
void SetChannelRepository(const std::shared_ptr< ChannelRepository > &repository)
Definition: chatreplay.h:50
bool mHasFetchedVod
Definition: chatreplay.h:114
ChatReplay(const std::shared_ptr< User > &user)
virtual TTV_ErrorCode Play() override
uint64_t baseTimestamp
Definition: chatreplay.h:76
uint32_t ChannelId
Definition: coretypes.h:23
TokenizationOptions mTokenizationOptions
Definition: chatreplay.h:100
Definition: chattypes.h:41
Definition: chatreplay.h:74
Definition: chatreplay.h:36
virtual TTV_ErrorCode Seek(Timestamp timestamp) override
virtual TTV_ErrorCode DeleteMessage(const std::string &messageId) override
virtual void Update() override
bool mVodFetchInFlight
Definition: chatreplay.h:112
virtual TTV_ErrorCode GetChannelId(UserId &result) const override
std::shared_ptr< ChannelRepository > mChannelRepository
Definition: chatreplay.h:89