push

package
v1.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 16, 2024 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

View Source
const (
	RawMessageTypeInitial  = "watchvuln-initial"
	RawMessageTypeText     = "watchvuln-text"
	RawMessageTypeVulnInfo = "watchvuln-vulninfo"
)

Variables

This section is empty.

Functions

func GenSign added in v1.7.0

func GenSign(secret string, timestamp int64) string

func RenderInitialMsg added in v0.2.0

func RenderInitialMsg(v *InitialMessage) string

func RenderVulnInfo added in v0.2.0

func RenderVulnInfo(v *grab.VulnInfo) string

Types

type Bark added in v1.0.0

type Bark struct {
	// contains filtered or unexported fields
}

func (*Bark) PushMarkdown added in v1.0.0

func (m *Bark) PushMarkdown(title, content string) error

func (*Bark) PushText added in v1.0.0

func (m *Bark) PushText(s string) error

type BarkData added in v1.0.0

type BarkData struct {
	Title     string `json:"title"`
	Body      string `json:"body"`
	DeviceKey string `json:"device_key"`
	Badge     int    `json:"badge"`
	Group     string `json:"group"`
	Sound     string `json:"sound"`
	Icon      string `json:"icon"`
	Url       string `json:"url"`
}

type DingDing added in v0.2.0

type DingDing struct {
	// contains filtered or unexported fields
}

func (*DingDing) PushMarkdown added in v0.2.0

func (d *DingDing) PushMarkdown(title, content string) error

func (*DingDing) PushText added in v0.2.0

func (d *DingDing) PushText(s string) error

type InitialMessage added in v1.0.0

type InitialMessage struct {
	Version        string           `json:"version"`
	VulnCount      int              `json:"vuln_count"`
	Interval       string           `json:"interval"`
	Provider       []*grab.Provider `json:"provider"`
	FailedProvider []*grab.Provider `json:"failed_provider"`
}

type LanXin added in v1.7.0

type LanXin struct {
	// contains filtered or unexported fields
}

func (*LanXin) PushMarkdown added in v1.7.0

func (m *LanXin) PushMarkdown(title, content string) error

func (*LanXin) PushText added in v1.7.0

func (m *LanXin) PushText(s string) error

func (*LanXin) Send added in v1.7.0

func (m *LanXin) Send(content string) (response *LanXinResponse, error error)

type LanXinMessage added in v1.7.0

type LanXinMessage struct {
	Sign      string      `json:"sign"`
	Timestamp string      `json:"timestamp"`
	MsgType   string      `json:"msgType"`
	MsgData   MessageData `json:"msgData"`
}

type LanXinResponse added in v1.7.0

type LanXinResponse struct {
	ErrCode int    `json:"errCode"`
	ErrMsg  string `json:"errMsg"`
	Data    struct {
		MsgID string `json:"msgId"`
	} `json:"data"`
}

type Lark added in v0.3.0

type Lark struct {
	// contains filtered or unexported fields
}

func (*Lark) PushMarkdown added in v0.3.0

func (d *Lark) PushMarkdown(title, content string) error

func (*Lark) PushText added in v0.3.0

func (d *Lark) PushText(s string) error

type MessageData added in v1.7.0

type MessageData struct {
	Text struct {
		Content string `json:"content"`
	} `json:"text"`
}

type PushPlus added in v1.7.0

type PushPlus struct {
	// contains filtered or unexported fields
}

func (*PushPlus) PushMarkdown added in v1.7.0

func (d *PushPlus) PushMarkdown(title, content string) error

func (*PushPlus) PushText added in v1.7.0

func (d *PushPlus) PushText(s string) error

func (*PushPlus) Send added in v1.7.0

func (r *PushPlus) Send(message PushPlusMessage) (response *PushPlusResponse, error error)

type PushPlusMessage added in v1.7.0

type PushPlusMessage struct {
	Token    string `json:"token"`
	Title    string `json:"title" describe:"消息标题"`
	Content  string `json:"content" describe:"具体消息内容,根据不同template支持不同格式"`
	Template string `json:"template" describe:"发送消息模板"`
}

type PushPlusResponse added in v1.7.0

type PushPlusResponse struct {
	Code int    `json:"code"`
	Msg  string `json:"msg"`
	Data string `json:"data"`
}

type RawMessage added in v1.0.0

type RawMessage struct {
	Content any    `json:"content"`
	Type    string `json:"type"`
}

func NewRawInitialMessage added in v1.0.0

func NewRawInitialMessage(m *InitialMessage) *RawMessage

func NewRawTextMessage added in v1.0.0

func NewRawTextMessage(m string) *RawMessage

func NewRawVulnInfoMessage added in v1.0.0

func NewRawVulnInfoMessage(m *grab.VulnInfo) *RawMessage

type RawPusher added in v1.0.0

type RawPusher interface {
	PushRaw(r *RawMessage) error
}

RawPusher is a type that can push raw messages.

func MultiRawPusher added in v1.0.0

func MultiRawPusher(pushers ...RawPusher) RawPusher

MultiRawPusher returns a RawPusher that pushes to all the given pushers.

func NewWebhook added in v0.3.0

func NewWebhook(url string) RawPusher

type ServerChan added in v0.4.0

type ServerChan struct {
	// contains filtered or unexported fields
}

func (*ServerChan) PushMarkdown added in v0.4.0

func (d *ServerChan) PushMarkdown(title, content string) error

func (*ServerChan) PushText added in v0.4.0

func (d *ServerChan) PushText(s string) error

type Telegram added in v1.6.0

type Telegram struct {
	APIToken string
	// contains filtered or unexported fields
}

func NewTelegram added in v1.6.0

func NewTelegram(token string, chatIDs string) (*Telegram, error)

NewTelegram creates a new Telegram pusher, it requires a token and a list of chatIDs separated by comma. eg "123456,4312341,123123"

func (*Telegram) PushMarkdown added in v1.6.0

func (t *Telegram) PushMarkdown(title, content string) error

func (*Telegram) PushText added in v1.6.0

func (t *Telegram) PushText(content string) error

type TextMessage added in v1.0.0

type TextMessage struct {
	Message string `json:"message"`
}

type TextPusher added in v1.0.0

type TextPusher interface {
	PushText(s string) error
	PushMarkdown(title, content string) error
}

TextPusher is a type that can push text and markdown messages.

func MultiTextPusher added in v1.0.0

func MultiTextPusher(pushers ...TextPusher) TextPusher

MultiTextPusher returns a TextPusher that pushes to all the given pushers.

func NewBark added in v1.0.0

func NewBark(url string, deviceKey string) TextPusher

func NewDingDing added in v0.2.0

func NewDingDing(accessToken, secret string) TextPusher

func NewLanxin added in v1.7.0

func NewLanxin(domain string, token string, secret string) TextPusher

func NewLark added in v0.3.0

func NewLark(botKey, sign string) TextPusher

func NewPushPlus added in v1.7.0

func NewPushPlus(token string) TextPusher

func NewServerChan added in v0.4.0

func NewServerChan(botKey string) TextPusher

func NewWechatWork added in v0.2.0

func NewWechatWork(botKey string) TextPusher

type Webhook added in v0.3.0

type Webhook struct {
	// contains filtered or unexported fields
}

func (*Webhook) PushRaw added in v1.0.0

func (m *Webhook) PushRaw(r *RawMessage) error

type WechatWork added in v0.2.0

type WechatWork struct {
	// contains filtered or unexported fields
}

func (*WechatWork) PushMarkdown added in v0.2.0

func (d *WechatWork) PushMarkdown(title, content string) error

func (*WechatWork) PushText added in v0.2.0

func (d *WechatWork) PushText(s string) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL