wip: send and mark as complete

This commit is contained in:
Marcus Efraimsson 2018-09-28 11:14:36 +02:00
parent 1a75aa54de
commit 88bbc452a7
No known key found for this signature in database
GPG Key ID: EBFE0FB04612DD4A
2 changed files with 21 additions and 9 deletions

View File

@ -100,8 +100,9 @@ type SetAlertNotificationStateToPendingCommand struct {
}
type SetAlertNotificationStateToCompleteCommand struct {
Id int64
SentAt int64
Id int64
Version int64
SentAt int64
}
type GetNotificationStateQuery struct {

View File

@ -3,6 +3,7 @@ package alerting
import (
"errors"
"fmt"
"time"
"github.com/grafana/grafana/pkg/bus"
"github.com/grafana/grafana/pkg/components/imguploader"
@ -53,17 +54,27 @@ func (n *notificationService) SendIfNeeded(context *EvalContext) error {
}
}
// get alert notification (version = 1)
// phantomjs 15 sek
// loopa notifier - ge mig ett lås! where version = 1
// send notification
// Släpp lås
//
return n.sendNotifications(context, notifierStates)
}
func (n *notificationService) sendAndMarkAsComplete(evalContext *EvalContext, notifierState *NotifierState) error {
err := notifierState.notifier.Notify(evalContext)
cmd := &m.SetAlertNotificationStateToCompleteCommand{
Id: notifierState.state.Id,
Version: notifierState.state.Version,
SentAt: time.Now().Unix(),
}
err = bus.DispatchCtx(evalContext.Ctx, cmd)
if err == m.ErrAlertNotificationStateVersionConflict {
return nil
}
if err != nil {
return err
}
return nil
}