github.com/status-im/status-go@v1.1.0/services/ext/signal.go (about) 1 package ext 2 3 import ( 4 "github.com/status-im/status-go/eth-node/types" 5 "github.com/status-im/status-go/protocol" 6 "github.com/status-im/status-go/protocol/communities" 7 "github.com/status-im/status-go/protocol/discord" 8 "github.com/status-im/status-go/protocol/wakusync" 9 "github.com/status-im/status-go/signal" 10 ) 11 12 // EnvelopeSignalHandler sends signals when envelope is sent or expired. 13 type EnvelopeSignalHandler struct{} 14 15 // EnvelopeSent triggered when envelope delivered at least to 1 peer. 16 func (h EnvelopeSignalHandler) EnvelopeSent(identifiers [][]byte) { 17 signal.SendEnvelopeSent(identifiers) 18 } 19 20 // EnvelopeExpired triggered when envelope is expired but wasn't delivered to any peer. 21 func (h EnvelopeSignalHandler) EnvelopeExpired(identifiers [][]byte, err error) { 22 signal.SendEnvelopeExpired(identifiers, err) 23 } 24 25 // MailServerRequestCompleted triggered when the mailserver sends a message to notify that the request has been completed 26 func (h EnvelopeSignalHandler) MailServerRequestCompleted(requestID types.Hash, lastEnvelopeHash types.Hash, cursor []byte, err error) { 27 signal.SendMailServerRequestCompleted(requestID, lastEnvelopeHash, cursor, err) 28 } 29 30 // MailServerRequestExpired triggered when the mailserver request expires 31 func (h EnvelopeSignalHandler) MailServerRequestExpired(hash types.Hash) { 32 signal.SendMailServerRequestExpired(hash) 33 } 34 35 // PublisherSignalHandler sends signals on protocol events 36 type PublisherSignalHandler struct{} 37 38 func (h PublisherSignalHandler) DecryptMessageFailed(pubKey string) { 39 signal.SendDecryptMessageFailed(pubKey) 40 } 41 42 func (h PublisherSignalHandler) BundleAdded(identity string, installationID string) { 43 signal.SendBundleAdded(identity, installationID) 44 } 45 46 func (h PublisherSignalHandler) NewMessages(response *protocol.MessengerResponse) { 47 signal.SendNewMessages(response) 48 } 49 50 func (h PublisherSignalHandler) Stats(stats types.StatsSummary) { 51 signal.SendStats(stats) 52 } 53 54 // MessengerSignalsHandler sends signals on messenger events 55 type MessengerSignalsHandler struct{} 56 57 // MessageDelivered passes information that message was delivered 58 func (m *MessengerSignalsHandler) MessageDelivered(chatID string, messageID string) { 59 signal.SendMessageDelivered(chatID, messageID) 60 } 61 62 // BackupPerformed passes information that a backup was performed 63 func (m *MessengerSignalsHandler) BackupPerformed(lastBackup uint64) { 64 signal.SendBackupPerformed(lastBackup) 65 } 66 67 // CommunityInfoFound passes info about community that was requested before 68 func (m *MessengerSignalsHandler) CommunityInfoFound(community *communities.Community) { 69 signal.SendCommunityInfoFound(community) 70 } 71 72 func (m *MessengerSignalsHandler) MessengerResponse(response *protocol.MessengerResponse) { 73 PublisherSignalHandler{}.NewMessages(response) 74 } 75 76 func (m *MessengerSignalsHandler) HistoryRequestStarted(numBatches int) { 77 signal.SendHistoricMessagesRequestStarted(numBatches) 78 } 79 80 func (m *MessengerSignalsHandler) HistoryRequestCompleted() { 81 signal.SendHistoricMessagesRequestCompleted() 82 } 83 84 func (m *MessengerSignalsHandler) HistoryArchivesProtocolEnabled() { 85 signal.SendHistoryArchivesProtocolEnabled() 86 } 87 88 func (m *MessengerSignalsHandler) HistoryArchivesProtocolDisabled() { 89 signal.SendHistoryArchivesProtocolDisabled() 90 } 91 92 func (m *MessengerSignalsHandler) CreatingHistoryArchives(communityID string) { 93 signal.SendCreatingHistoryArchives(communityID) 94 } 95 96 func (m *MessengerSignalsHandler) NoHistoryArchivesCreated(communityID string, from int, to int) { 97 signal.SendNoHistoryArchivesCreated(communityID, from, to) 98 } 99 100 func (m *MessengerSignalsHandler) HistoryArchivesCreated(communityID string, from int, to int) { 101 signal.SendHistoryArchivesCreated(communityID, from, to) 102 } 103 104 func (m *MessengerSignalsHandler) HistoryArchivesSeeding(communityID string) { 105 signal.SendHistoryArchivesSeeding(communityID) 106 } 107 108 func (m *MessengerSignalsHandler) HistoryArchivesUnseeded(communityID string) { 109 signal.SendHistoryArchivesUnseeded(communityID) 110 } 111 112 func (m *MessengerSignalsHandler) HistoryArchiveDownloaded(communityID string, from int, to int) { 113 signal.SendHistoryArchiveDownloaded(communityID, from, to) 114 } 115 116 func (m *MessengerSignalsHandler) DownloadingHistoryArchivesStarted(communityID string) { 117 signal.SendDownloadingHistoryArchivesStarted(communityID) 118 } 119 120 func (m *MessengerSignalsHandler) ImportingHistoryArchiveMessages(communityID string) { 121 signal.SendImportingHistoryArchiveMessages(communityID) 122 } 123 124 func (m *MessengerSignalsHandler) DownloadingHistoryArchivesFinished(communityID string) { 125 signal.SendDownloadingHistoryArchivesFinished(communityID) 126 } 127 128 func (m *MessengerSignalsHandler) StatusUpdatesTimedOut(statusUpdates *[]protocol.UserStatus) { 129 signal.SendStatusUpdatesTimedOut(statusUpdates) 130 } 131 132 func (m *MessengerSignalsHandler) DiscordCategoriesAndChannelsExtracted(categories []*discord.Category, channels []*discord.Channel, oldestMessageTimestamp int64, errors map[string]*discord.ImportError) { 133 signal.SendDiscordCategoriesAndChannelsExtracted(categories, channels, oldestMessageTimestamp, errors) 134 } 135 136 func (m *MessengerSignalsHandler) DiscordCommunityImportProgress(importProgress *discord.ImportProgress) { 137 signal.SendDiscordCommunityImportProgress(importProgress) 138 } 139 140 func (m *MessengerSignalsHandler) DiscordChannelImportProgress(importProgress *discord.ImportProgress) { 141 signal.SendDiscordChannelImportProgress(importProgress) 142 } 143 144 func (m *MessengerSignalsHandler) DiscordCommunityImportFinished(id string) { 145 signal.SendDiscordCommunityImportFinished(id) 146 } 147 148 func (m *MessengerSignalsHandler) DiscordChannelImportFinished(communityID string, channelID string) { 149 signal.SendDiscordChannelImportFinished(communityID, channelID) 150 } 151 152 func (m *MessengerSignalsHandler) DiscordCommunityImportCancelled(id string) { 153 signal.SendDiscordCommunityImportCancelled(id) 154 } 155 156 func (m *MessengerSignalsHandler) DiscordCommunityImportCleanedUp(id string) { 157 signal.SendDiscordCommunityImportCleanedUp(id) 158 } 159 160 func (m *MessengerSignalsHandler) DiscordChannelImportCancelled(id string) { 161 signal.SendDiscordChannelImportCancelled(id) 162 } 163 164 func (m *MessengerSignalsHandler) SendWakuFetchingBackupProgress(response *wakusync.WakuBackedUpDataResponse) { 165 signal.SendWakuFetchingBackupProgress(response) 166 } 167 168 func (m *MessengerSignalsHandler) SendWakuBackedUpProfile(response *wakusync.WakuBackedUpDataResponse) { 169 signal.SendWakuBackedUpProfile(response) 170 } 171 172 func (m *MessengerSignalsHandler) SendWakuBackedUpSettings(response *wakusync.WakuBackedUpDataResponse) { 173 signal.SendWakuBackedUpSettings(response) 174 } 175 176 func (m *MessengerSignalsHandler) SendWakuBackedUpKeypair(response *wakusync.WakuBackedUpDataResponse) { 177 signal.SendWakuBackedUpKeypair(response) 178 } 179 180 func (m *MessengerSignalsHandler) SendWakuBackedUpWatchOnlyAccount(response *wakusync.WakuBackedUpDataResponse) { 181 signal.SendWakuBackedUpWatchOnlyAccount(response) 182 } 183 184 func (m *MessengerSignalsHandler) SendCuratedCommunitiesUpdate(response *communities.KnownCommunitiesResponse) { 185 signal.SendCuratedCommunitiesUpdate(response) 186 }