mirror of
https://mau.dev/mautrix/go.git
synced 2026-03-14 14:25:53 +01:00
Merge pull request #49 from mautrix/sumner/bri-1078-set-retry_num-when-decryption-takes
checkpoints: expose ability to set retry_num
This commit is contained in:
commit
22ee22dccd
2 changed files with 7 additions and 6 deletions
|
|
@ -199,7 +199,7 @@ func (as *AppService) handleEvents(evts []*event.Event, defaultTypeClass event.T
|
|||
}
|
||||
|
||||
if _, ok := CheckpointTypes[evt.Type]; ok {
|
||||
go as.SendMessageSendCheckpoint(evt, StepBridge)
|
||||
go as.SendMessageSendCheckpoint(evt, StepBridge, 0)
|
||||
}
|
||||
|
||||
if evt.Type.IsState() {
|
||||
|
|
|
|||
|
|
@ -74,7 +74,7 @@ var CheckpointTypes = map[event.Type]interface{}{
|
|||
event.CallNegotiate: struct{}{},
|
||||
}
|
||||
|
||||
func NewMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep, status MessageSendCheckpointStatus) *MessageSendCheckpoint {
|
||||
func NewMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep, status MessageSendCheckpointStatus, retryNum int) *MessageSendCheckpoint {
|
||||
checkpoint := MessageSendCheckpoint{
|
||||
EventID: evt.ID,
|
||||
RoomID: evt.RoomID,
|
||||
|
|
@ -83,6 +83,7 @@ func NewMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep,
|
|||
Status: status,
|
||||
EventType: evt.Type,
|
||||
ReportedBy: ReportedByBridge,
|
||||
RetryNum: retryNum,
|
||||
}
|
||||
if evt.Type == event.EventMessage {
|
||||
checkpoint.MessageType = evt.Content.AsMessage().MsgType
|
||||
|
|
@ -90,17 +91,17 @@ func NewMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep,
|
|||
return &checkpoint
|
||||
}
|
||||
|
||||
func (as *AppService) SendMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep) {
|
||||
checkpoint := NewMessageSendCheckpoint(evt, step, StatusSuccesss)
|
||||
func (as *AppService) SendMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep, retryNum int) {
|
||||
checkpoint := NewMessageSendCheckpoint(evt, step, StatusSuccesss, retryNum)
|
||||
go checkpoint.Send(as)
|
||||
}
|
||||
|
||||
func (as *AppService) SendErrorMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep, err error, permanent bool) {
|
||||
func (as *AppService) SendErrorMessageSendCheckpoint(evt *event.Event, step MessageSendCheckpointStep, err error, permanent bool, retryNum int) {
|
||||
status := StatusWillRetry
|
||||
if permanent {
|
||||
status = StatusPermFailure
|
||||
}
|
||||
checkpoint := NewMessageSendCheckpoint(evt, step, status)
|
||||
checkpoint := NewMessageSendCheckpoint(evt, step, status, retryNum)
|
||||
checkpoint.Info = err.Error()
|
||||
go checkpoint.Send(as)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue