1
0
mirror of https://github.com/nikoksr/notify.git synced 2024-11-30 08:46:43 +02:00
A dead simple Go library for sending notifications to various messaging services.
Go to file
2021-02-12 19:19:44 +01:00
.github Merge branch 'main' into dependabot/github_actions/actions/cache-v2.1.4 2021-02-08 23:05:16 +01:00
assets docs(readme): refactor readme 2021-01-26 10:45:14 +01:00
service chore(style): make fmt 2021-02-12 19:19:44 +01:00
.codacy.yml build(lint): make codacy ignore markdown files 2021-01-31 02:08:05 +01:00
.editorconfig feat: init project 2021-01-25 00:14:21 +01:00
.gitignore feat: init project 2021-01-25 00:14:21 +01:00
.golangci.yml feat: init project 2021-01-25 00:14:21 +01:00
.kodiak.toml build(kodiak): remove deprecated config option 2021-01-31 15:03:56 +01:00
CODE_OF_CONDUCT.md docs: add readme, coc, and contrib guidelines 2021-01-25 05:05:59 +01:00
CONTRIBUTING.md docs(contrib): update contribution guidelines 2021-01-31 15:02:45 +01:00
go.mod Merge branch 'main' into feature/mailgun 2021-02-12 18:51:43 +01:00
go.sum Merge branch 'main' into feature/mailgun 2021-02-12 18:51:43 +01:00
LICENSE feat: init project 2021-01-25 00:14:21 +01:00
Makefile build(make): Add make file and go-generate directives 2021-01-31 14:56:06 +01:00
notifier.go refactor(notifier): remove AddReceivers function from notify.Notifier interface 2021-02-10 14:55:42 +01:00
notify.go chore(comment): add punctuation to function comment 2021-02-10 14:49:25 +01:00
README.md Merge branch 'main' into feature/mailgun 2021-02-12 18:51:43 +01:00
send.go chore(comment): put actual type names into comments 2021-02-10 14:51:32 +01:00
use.go refactor(use): simplify useService function 2021-02-10 14:52:09 +01:00

notify logo

GitHub tag (latest SemVer) Go Report Card Codacy Badge Maintainability FOSSA Status go.dev reference

A dead simple Go library for sending notifications to various messaging services.

About

Notify arose from my own need for one of my api server running in production to be able to notify me when, for example, an error occurred. The library is kept as simple as possible to allow a quick integration and easy usage.

Disclaimer

Any misuse of this library is your own liability and responsibility and cannot be attributed to the authors of this library. See license for more.

Spamming through the use of this library may get you permanently banned on most supported platforms.

Install

go get -u github.com/nikoksr/notify

Example usage

// The notifier we're gonna send our messages to
notifier := notify.New()

// Create a telegram service. Ignoring error for demo simplicity
telegramService, _ := telegram.New("your_telegram_api_token")

// Passing a telegram chat id as receiver for our messages.
// Basically where should our message be sent to?
telegramService.AddReceivers("-1234567890")

// Tell our notifier to use the telegram service. You can repeat the above process
// for as many services as you like and just tell the notifier to use them.
// Its kinda like using middlewares for api servers.
notifier.UseServices(telegramService)

// Send a test message
_ = notifier.Send(
	"Message Subject/Title",
	"The actual message. Hello, you awesome gophers! :)",
)

Supported services

  • Discord
  • Email
  • Mailgun
  • Microsoft Teams
  • Plivo
  • Pushbullet
  • SendGrid
  • Slack
  • Telegram
  • Twitter

Roadmap

  • Add tests (see #1)
  • Add more notification services

Credits

Author

Niko Köser

Contributing

Contributions, issues and feature requests are welcome!
Feel free to check issues page. You can also take a look at the contributing guide.

Show your support

Give a ️ if this project helped you!

License

FOSSA Status