add disable_notification parameter (#99)

This commit is contained in:
vaaski 2021-04-03 00:38:16 +02:00 committed by GitHub
parent a91d132e3f
commit 6dbb4b1735
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 42 additions and 1 deletions

14
DOCS.md
View File

@ -233,10 +233,22 @@ Disables link previews for links in this message
settings:
token: xxxxxxxxxx
to: telegram_user_id
message: send message using custom socks5 URL
message: send message without a link preview
+ disable_web_page_preview: true
```
Disables notifications for this message
```diff
- name: send telegram notification
image: appleboy/drone-telegram
settings:
token: xxxxxxxxxx
to: telegram_user_id
message: send message message silently
+ disable_notification: true
```
## Parameter Reference
token

View File

@ -114,6 +114,11 @@ func main() {
Usage: "disables link previews for links in this message",
EnvVar: "PLUGIN_DISABLE_WEB_PAGE_PREVIEW,INPUT_DISABLE_WEB_PAGE_PREVIEW",
},
cli.BoolFlag{
Name: "disable.notification",
Usage: "sends the message silently. users will receive a notification with no sound.",
EnvVar: "PLUGIN_DISABLE_NOTIFICATION,INPUT_DISABLE_NOTIFICATION",
},
cli.StringFlag{
Name: "format",
Value: formatMarkdown,
@ -322,6 +327,7 @@ func run(c *cli.Context) error {
Socks5: c.String("socks5"),
DisableWebPagePreview: c.Bool("disable.webpage.preview"),
DisableNotification: c.Bool("disable.notification"),
},
}

View File

@ -88,6 +88,7 @@ type (
Socks5 string
DisableWebPagePreview bool
DisableNotification bool
}
// Plugin values.
@ -365,6 +366,7 @@ func (p Plugin) Exec() (err error) {
msg := tgbotapi.NewMessage(user, txt)
msg.ParseMode = p.Config.Format
msg.DisableWebPagePreview = p.Config.DisableWebPagePreview
msg.DisableNotification = p.Config.DisableNotification
if err := p.Send(bot, msg); err != nil {
return err
}

View File

@ -145,6 +145,27 @@ func TestDisableWebPagePreviewMessage(t *testing.T) {
assert.Nil(t, err)
}
func TestDisableNotificationMessage(t *testing.T) {
plugin := Plugin{
Config: Config{
Token: os.Getenv("TELEGRAM_TOKEN"),
To: []string{os.Getenv("TELEGRAM_TO")},
DisableNotification: true,
Debug: false,
},
}
plugin.Config.Message = "DisableNotification https://www.google.com.tw"
err := plugin.Exec()
assert.Nil(t, err)
// disable message
plugin.Config.DisableNotification = false
plugin.Config.Message = "EnableNotification https://www.google.com.tw"
err = plugin.Exec()
assert.Nil(t, err)
}
func TestBotError(t *testing.T) {
plugin := Plugin{
Repo: Repo{