dingtalk

package module
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

README

Ding talk Notification

How to use

To use the notification-dingtalk plugin with your application, install it using the following command:

./answer build --with github.com/apache/incubator-answer-plugins/notification-dingtalk

Feature

  • Send message to Ding talk

Config

Config Webhook URL and open the notification

  • Webhook URL: such as https://oapi.dingtalk.com/robot/send?access_token=xxxxxx

Preview

Ding talk Config

Document

Documentation

Index

Constants

This section is empty.

Variables

View Source
var Info embed.FS

Functions

This section is empty.

Types

type Notification

type Notification struct {
	Config          *NotificationConfig
	UserConfigCache *UserConfigCache
}

func (*Notification) ConfigFields

func (n *Notification) ConfigFields() []plugin.ConfigField

func (*Notification) ConfigReceiver

func (n *Notification) ConfigReceiver(config []byte) error

func (*Notification) GetNewQuestionSubscribers

func (n *Notification) GetNewQuestionSubscribers() (userIDs []string)

GetNewQuestionSubscribers returns the subscribers of the new question notification

func (*Notification) Info

func (n *Notification) Info() plugin.Info

func (*Notification) Notify

func (n *Notification) Notify(msg plugin.NotificationMessage)

Notify sends a notification to the user

func (*Notification) UserConfigFields

func (n *Notification) UserConfigFields() []plugin.ConfigField

func (*Notification) UserConfigReceiver

func (n *Notification) UserConfigReceiver(userID string, config []byte) error

type NotificationConfig

type NotificationConfig struct {
	Notification bool `json:"notification"`
}

type UserConfig

type UserConfig struct {
	WebhookURL                   string `json:"webhook_url"`
	InboxNotifications           bool   `json:"inbox_notifications"`
	AllNewQuestions              bool   `json:"all_new_questions"`
	NewQuestionsForFollowingTags bool   `json:"new_questions_for_following_tags"`
}

type UserConfigCache

type UserConfigCache struct {
	sync.Mutex
	// contains filtered or unexported fields
}

func NewUserConfigCache

func NewUserConfigCache() *UserConfigCache

func (*UserConfigCache) SetUserConfig

func (ucc *UserConfigCache) SetUserConfig(userID string, config *UserConfig)

type WebhookReq

type WebhookReq struct {
	MsgType  string `json:"msgtype"`
	Markdown struct {
		Title string `json:"title"`
		Text  string `json:"text"`
	} `json:"markdown"`
}

func NewWebhookReq

func NewWebhookReq(content string, title string) *WebhookReq

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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