func NewAlertQueue() (*Queue, error) {
	return &Queue{queue: make(alertTable)}, nil
}
NewAlertQueue creates a new instance of the alert queue.
package alert
import (
	"errors"
	"sync"
)
const (
	QueueNew = iota
	QueueUpdateAdd
	QueueUpdateDelete
	QueueDelete
)
type (
	alertCallTable map[string]*Info
	alertTable map[Source]alertCallTable
	QueueType int
	QueueCallback func(t QueueType, src *Source, nfo *Info)
	Queue struct {
		sync.Mutex
		queue alertTable
	}
)
func (t QueueType) String() string {
	switch t {
	case QueueNew:
		return "new"
	case QueueUpdateAdd:
		return "updateadd"
	case QueueUpdateDelete:
		return "updatedelete"
	case QueueDelete:
		return "delete"
	default:
		return "unknown"
	}
}