Notification library for gophers and their furry friends.

Overview

Shoutrrr

Notification library for gophers and their furry friends. Heavily inspired by caronc/apprise.

github actions workflow status codecov Codacy Badge report card go.dev reference github code size in bytes license godoc All Contributors



Quick Start

As a package

Using shoutrrr is easy! There is currently two ways of using it as a package.

Using the direct send command

  url := "slack://token-a/token-b/token-c"
  err := shoutrrr.Send(url, "Hello world (or slack channel) !")

Using a sender

  url := "slack://token-a/token-b/token-c"
  sender, err := shoutrrr.CreateSender(url)
  sender.Send("Hello world (or slack channel) !", map[string]string { /* ... */ })

Using a sender with multiple URLs

  urls := []string {
    "slack://token-a/token-b/token-c"
    "discord://[email protected]"
  }
  sender, err := shoutrrr.CreateSender(urls...)
  sender.Send("Hello world (or slack channel) !", map[string]string { /* ... */ })

Through the CLI

Start by running the build.sh script. You may then run send notifications using the shoutrrr executable:

$ shoutrrr send [OPTIONS] <URL> <Message [...]>

Documentation

For additional details, visit the full documentation.

Contributors โœจ

Thanks goes to these wonderful people (emoji key):


Amir Schnell

๐Ÿ’ป

nils mรฅsรฉn

๐Ÿ’ป ๐Ÿ“– ๐Ÿšง

Luka Peschke

๐Ÿ’ป ๐Ÿ“–

MrLuje

๐Ÿ’ป ๐Ÿ“–

Simon Aronsson

๐Ÿ’ป ๐Ÿ“– ๐Ÿšง

Arne Jรธrgensen

๐Ÿ“– ๐Ÿ’ป

Alexei Tighineanu

๐Ÿ’ป

Alexandru Bonini

๐Ÿ’ป

Senan Kelly

๐Ÿ’ป

This project follows the all-contributors specification. Contributions of any kind welcome!

Comments
  • Add notification types

    Add notification types

    It should be possible to post notifications to any of the following services: Priority in descending order.

    Services

    • [x] Discord
    • [x] Gotify
    • [x] Hangouts
    • [x] IFTTT
    • [x] Local logs
    • [x] MatterMost
    • [x] Pushbullet
    • [x] Pushover
    • [x] Slack
    • [x] Email
    • [x] Microsoft Teams
    • [x] Telegram
    • [x] Zulip Chat
    • [x] Join
    • [ย ] Twitter
    • [ ] Gitter
    • [ย ] Facebook
    • [ ] XMPP (#6)
    • [ ] Rocket.Chat
    • [ ] Generic Webhook (other) - how?

    Candidates for review

    Wont fix

    • ~HipChat~

    Updates

    24 June, 2019

    IFTTT webhook service done.

    9 June, 2019

    Hipchat is discontinued and will be replaced by slack according to this page, so hipchat will not be implemented. Unsure whether Google Hangouts will continue to be a maintained product. Until someone wants it we'll just leave it out.

    opened by simskij 20
  • Discord embeds in message

    Discord embeds in message

    Is it possible to send embedded messages to a discord webhook?

    The template

    {{`{`}}"embeds":[{{range .}} {{`{`}}"title":"{{ .Level }}", "description":"{{ .Message }}" {{`}`}}{{print}}{{end}}]{{`}`}}
    

    generates messages in the JSON format

    {"embeds":[ {"title":"info", "description":"Starting Watchtower and scheduling first run: 2020-06-30 22:03:31 +0000 UTC m=+300.065202141" }]}
    

    But they are just shown as the text value, not actually used by discord

    Type: Enhancement good first issue Service: Discord 
    opened by PssbleTrngle 16
  • Move CLI command to /shoutrrr

    Move CLI command to /shoutrrr

    This will make the CLI command installable by running:

    go install github.com/containrrr/shoutrrr/[email protected]
    

    When installing using go install previously the command got installed with the binary name cli.

    opened by arnested 11
  • Change URL format for mattermost

    Change URL format for mattermost

    Currently, the mattermost URL is segmented as:

    mattermost://host/token/user/channel
    

    to fit with the rest of the services, this would likely be preferrable:

    mattermost://username:[email protected]/channel
    

    Thoughts?

    Type: Enhancement good first issue 
    opened by simskij 11
  • Cleanup and improve GitHub Actions

    Cleanup and improve GitHub Actions

    Use build matrix of go versions

    GitHub Actions only tested the build using go 1.13 (which has been unsupported by the Go team for more than two years).

    Introduce a build matrix testing all versions from the lowest supported by shoutrrr to the newest released by the Go team (shamelessly using my own Go Version Action).

    Bump required go to 1.13 in go.mod

    The matrix test showed the code didn't compile in go1.12 anymore.

    Build release using latest Go version

    The release action built the version for release with go 1.13. From now, we'll use the latest go release.

    Bump codecov action version

    The old version used node 12 which is deprecated by GitHub Actions

    Use goreleaser action

    Instead of installing goreleaser by ourselves, we'll let the goreleaser action install it.

    Add @dependabot configuration

    Let @dependabot create pull requests for new dependencies in go.mod, Dockerfile, and GitHub Actions. This should make it easier to stay up-to-date.

    Add GitHub Action permissions

    GitHub has introduced permissions for GitHub Actions to increase the safety of the actions.

    opened by arnested 9
  • feat(mattermost): add support for icons

    feat(mattermost): add support for icons

    • What your PR contributes Icon support on MatterMost:
    ./shoutrrr send -u 'mattermost://[email protected]:443/xxxxxxxxxxx?icon_emoji=https%3A%2F%2Fraw.githubusercontent.com%2Fcontainrrr%2Fshoutrrr%2Fmain%2Fdocs%2Fshoutrrr-logotype.png' -m 'Icon Test'
    ./shoutrrr send -u 'mattermost://[email protected]:443/xxxxxxxxxxx?icon_emoji=smiley' -m 'Icon Test'
    

    image

    • Which issues it solves Moving my Argus project to use Shoutrrr. Really want to keep icon support!

    • Tests that verify the code your contributing I tried adding tests (and most of this code is copied from the Slack service), but couldn't get them to pass. Every other service that has query params seems to include the title param, but that's no supported on MatterMost, so I'm not sure what to do w.r.t this error. Help fixing this would be appreciated!

    โ€ข Failure [0.000 seconds]
    services
    /path/to/shoutrrr/pkg/services/services_test.go:48
      when passed the a title param
      /path/to/shoutrrr/pkg/services/services_test.go:57
        should not throw an error for mattermost [It]
        /path/to/shoutrrr/pkg/services/services_test.go:71
    
        Unexpected error:
            <*errors.errorString | 0xc00030e1b0>: {
                s: "title is not a valid config key [icon icon_emoji icon_url]",
            }
            title is not a valid config key [icon icon_emoji icon_url]
        occurred
    
        /path/to/shoutrrr/pkg/services/services_test.go:99
    
    • Updates to the documentation Done? Let me know if you'd like any more, or changes to them. (Hoping the 'The services does not support any query/param props' would go away with this current commit?)
    opened by JosephKav 9
  • Slack: add properties for overriding channel and emoji

    Slack: add properties for overriding channel and emoji

    After looking into the new kured 1.7.0 release, I came across a couple of properties that I miss after the transition to shoutrrr. This PR introduces two new properties in the Slack service:

    • channel: allows for overriding which channel to be notified (default is using the channel specifying in the Slack webhook configuration)
    • emoji: use a custom icon for the messages posted by shoutrrr

    Related to #88, https://github.com/weaveworks/kured/pull/368

    opened by evenh 9
  • Microsoft Teams connector webhook URL format changed

    Microsoft Teams connector webhook URL format changed

    image

    This causes teams:// URLs to fail as well as directly pasting the webhook URL for the Watchtower Teams integration, since it tries to parse the URL and use shoutrrr anyway.

    opened by kevinlul 9
  • Add generic webhook service

    Add generic webhook service

    Most webhooks need a specific payload to be sent to them. That is one of the main purposes of the templates that services can use.

    If you are consuming shoutrrr "directly" without exposing it's URLs to the end user to configure, it's pretty trivial to support, so initially this is the only supported method (if consumers want to support them, they would need to load the templates manually).

    Type: Enhancement 
    opened by piksel 9
  • Feature request: Matrix notifications

    Feature request: Matrix notifications

    It would be nice if a Matrix channel could be used as notification target.

    I don't actually know what would be required to achieve this, as I'm neither familiar with Matrix internals nor with Go. But as a user of Watchtower, I'd appreciate support for it ๐Ÿ™‚

    Type: Enhancement 
    opened by dbrgn 8
  • Add support for MQTT (Home Assistant)

    Add support for MQTT (Home Assistant)

    As requested in https://github.com/containrrr/watchtower/issues/618#issuecomment-703123815, we should consider adding support for sending notifications to home assistant. I'm not sure exactly how, or if, this will work, so some investigation will be needed unless someone has a clear idea.

    Type: Enhancement Status: Help wanted 
    opened by simskij 8
  • Prowl support

    Prowl support

    Posting this here to see if support for Prowl could be added. I'll be the first to admit I don't know go well enough to attempt myself at this point but I did see goprowl so was hoping that would help in getting it implimented.

    Thanks in advance if it's able to be added.

    opened by OMEGARAZER 1
  • smpt notification not working with startTLS enabled

    smpt notification not working with startTLS enabled

    Hi,

    I'm struggling to use the smtp notify system.

    I'm using a simple URL:

    smtp://[email protected]:[email protected]:587/?fromAddress=[email protected]&toAddresses=[email protected]

    The smtp server is a Plesk system behind Cloudflare DNS (not proxied).

    I tried changing the ssl cert of the mail server, both with letsencrypt and cloudflare certs, but I get "the cert is not valid for smtp.domain.com" or "the cert is signed by invalid authority".

    Disabling startTLS does not work: it does not authenticate a non-encrypted request.

    Using other clients to the same smtp works, enabling "accept all certs", is there a way to properly make this work?

    Thank you very much.

    opened by urbaman 1
  • Using self-signed certs with rocketchat

    Using self-signed certs with rocketchat

    I am trying to send a notification on a self-hosted Rocketchat server with a self-signed certificate. I get this error:

    msg="Failed to send shoutrrr notification"
    error="Error while posting to URL: Post \"https://xxx.xxx.xxx.xxx/hooks/hooks/62e2425ae7724e0009bd522f\": 
           x509: cannot validate certificate for xxx.xxx.xxx.xxx because it doesn't contain any IP SANs
           HOST: xxx.xxx.xxx.xxx
           PORT: " 
    index=0 
    notify=no 
    service=rocketchat
    

    Is there a solution? Thx

    opened by Paulpatou 1
Releases(v0.6.1)
  • v0.6.0(May 30, 2022)

    Changelog

    • 39c19cb docs: fix overview and add bark (#255)
    • 66c185c docs(generic): add basic usage info (#254)
    • a9246af fix(telegram): update docs and generator for private channels (#250)
    • 98cdc23 fix(smtp): use usestarttls (match the docs) (#252)
    • 468d552 feat(discord): send multiple messages when exceeding limits (#215)
    • c91dc3c fix(gotify): handle token ending in / (#235)
    • ef1a21e fix: text partitioning logic (#245)
    • bafa90a feat(cli): support reading message from stdin (#243)
    • 6a27056 fix(discord): message size fixes (#242)
    • 2c9378b fix(slack): limit attachments to 100 (#241)
    • 6dbcb12 feat(mattermost): add support for icons (#237)
    • 5bca245 chore(discord): switch from deprecated discordapp.com domain (#236)
    • 3261fbf feat(bark): add bark service (#234)
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.6.0_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.64 MB)
    shoutrrr_linux_amd64.tar.gz(3.79 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.49 MB)
    shoutrrr_linux_armhf.tar.gz(3.56 MB)
    shoutrrr_windows_386.zip(3.60 MB)
    shoutrrr_windows_amd64.zip(3.76 MB)
  • v0.5.3(Apr 10, 2022)

    Changelog

    • 75c8223 ci: update to newer goreleaser
    • 89c6f45 ci: fix docker bin path for release
    • 4216cf5 ci: fix binary path for docs updating
    • d0df652 docs(telegram): update overview URL example
    • 6e979f6 fix: update/remove unused dependencies (#232)
    • a68a9b1 docs: update telegram, matrix and cli output (#227)
    • 9a8378c ci: fix path to docs command (#226)
    • afa4eda Move CLI command to /shoutrrr (#220)
    • e46ecc1 docs(teams): update url extraction docs (#211)
    • b4a77a3 Create pull_request_template.md (#210)
    • e5e0cbe fix(pushover): allow negative priority values (#205)
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.5.3_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(4.25 MB)
    shoutrrr_linux_amd64.tar.gz(4.42 MB)
    shoutrrr_linux_arm64v8.tar.gz(4.09 MB)
    shoutrrr_linux_armhf.tar.gz(4.16 MB)
    shoutrrr_windows_386.zip(4.21 MB)
    shoutrrr_windows_amd64.zip(4.39 MB)
  • v0.5.2(Oct 9, 2021)

    Changelog

    2951098 fix(matrix): allow title to be passed as prop (#203) b1a59a7 fix(smtp): remove extra semi in mime header (#201)

    Docker images

    • docker pull containrrr/shoutrrr:i386-0.5.2
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:amd64-0.5.2
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.5.2
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:armhf-0.5.2
    • docker pull containrrr/shoutrrr:armhf-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.5.2_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(4.23 MB)
    shoutrrr_linux_amd64.tar.gz(4.40 MB)
    shoutrrr_linux_arm64v8.tar.gz(4.07 MB)
    shoutrrr_linux_armhf.tar.gz(4.14 MB)
    shoutrrr_windows_386.zip(4.19 MB)
    shoutrrr_windows_amd64.zip(4.36 MB)
  • v0.5.1(Aug 31, 2021)

    Minor bugfix release

    Changelog

    Fixes

    441d5cf fix(matrix): handle nil logger in client (#199)

    Docker images

    • docker pull containrrr/shoutrrr:amd64-0.5.1
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.5.1
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:armhf-0.5.1
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:i386-0.5.1
    • docker pull containrrr/shoutrrr:i386-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.5.1_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(4.23 MB)
    shoutrrr_linux_amd64.tar.gz(4.40 MB)
    shoutrrr_linux_arm64v8.tar.gz(4.07 MB)
    shoutrrr_linux_armhf.tar.gz(4.14 MB)
    shoutrrr_windows_386.zip(4.19 MB)
    shoutrrr_windows_amd64.zip(4.36 MB)
  • v0.5.0(Aug 16, 2021)

    Changelog

    Fixes

    ba24455 fix(docs): replace props desc when empty (#197) 265789c fix(router): check for nil logger (#189) f16b81d fix(teams): use correct path in webhook URL (#188) 5d12d75 fix(logger): avoid mutating passed params (#184) dbe0e3b cleanup(pushbullet): TLC (#180) 17f842b fix: discord avatar override (#172) 6cdfda1 fix(services): rename hangouts to google chat (#170) 80c2c21 fix(discord): rename channel into webhook ID (#159)

    Features

    898d908 feat(telegram): add title support (#196) 57b43a3 feat(slack): add bot API support (#179) 8018a47 feat(slack): add thread/reply support (#182) a86ddc7 docs: add multi-version support (#178) 1e34cb3 feat(generator): telegram generator/bot (#168) d8371b8 Use absolute path for entrypoint in Dockerfile (#169) dfa552a feat(cli): add docs command (#145) 7a60bc1 feature: add matrix service (#113) f72cbdc feat(service): add generic webhook service (#144)

    Tests

    b8681dc test: additional format tests/cleanup (#193) 281dbde add general basic tests for services (#192) db00936 test: add basic renderer tests (#191) 603fafc test(telegram): add generator test (#190)

    Non-code (repo/ci/docs/test)

    0234ba4 update meta version 96315db ci: use docs tag from CLI constant eb79f79 Merge branch 'main' into release/v0.5.0 22dabf4 Mention the GitHub Action in the docs (#174) 5c378b4 ci(main): add manual dispatch 42478d2 docs: fix references to master branch e156cfd docs: add basic service docs (#167) 2e5982c docs: move non-released services to own section 64eda4a ci(docs): fix git cli syntax 892671a ci(docs): set repo token creds 1fd438b ci: add git settings for mkdocs 87e10e1 ci: fix mkdocs material clone 6e48a32 fix docs for latest/v0.4.x b9650a1 docs: add mike support b2cc2df fix: api changes for services in next

    Docker images

    • docker pull containrrr/shoutrrr:armhf-0.5.0
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:i386-0.5.0
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.5.0
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:amd64-0.5.0
    • docker pull containrrr/shoutrrr:amd64-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.5.0_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(4.23 MB)
    shoutrrr_linux_amd64.tar.gz(4.40 MB)
    shoutrrr_linux_arm64v8.tar.gz(4.07 MB)
    shoutrrr_linux_armhf.tar.gz(4.14 MB)
    shoutrrr_windows_386.zip(4.19 MB)
    shoutrrr_windows_amd64.zip(4.36 MB)
  • v0.4.4(Apr 20, 2021)

    Changelog

    23170b8 chore: merge pr #160: assert service compliance b5f98f7 fix(opsgenie): allow title to be used as a Message 0d1793d fix(ifttt): allow title to be used as a value 7e5429b fix(telegram): don't error when title prop is set b8c4d0c tests: add service compliance test suite

    Docker images

    • docker pull containrrr/shoutrrr:i386-0.4.4
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:armhf-0.4.4
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:amd64-0.4.4
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.4.4
    • docker pull containrrr/shoutrrr:arm64v8-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.4.4_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.95 MB)
    shoutrrr_linux_amd64.tar.gz(4.11 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.78 MB)
    shoutrrr_linux_armhf.tar.gz(3.86 MB)
    shoutrrr_windows_386.zip(3.91 MB)
    shoutrrr_windows_amd64.zip(4.08 MB)
  • v0.4.3(Apr 19, 2021)

    Changelog

    2bfefae fix(api): logging via interface and set/update using api (#161) 31ce8d4 docs: add missing pages, reorder and tidy up 56c3a70 chore(ci): move deploy docs to separate workflow d8a148e docs: fix broken markdown on index page

    Docker images

    • docker pull containrrr/shoutrrr:armhf-0.4.3
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.4.3
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:i386-0.4.3
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:amd64-0.4.3
    • docker pull containrrr/shoutrrr:amd64-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.4.3_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.95 MB)
    shoutrrr_linux_amd64.tar.gz(4.11 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.78 MB)
    shoutrrr_linux_armhf.tar.gz(3.86 MB)
    shoutrrr_windows_386.zip(3.91 MB)
    shoutrrr_windows_amd64.zip(4.08 MB)
  • v0.4.2(Apr 2, 2021)

    Changelog

    ff49375 fix(discord): don't create meta embed when empty (#151) c0e621b fix(gotify): include redirects when tls is disabled (#154) e97193e docs(config): use explicit edit URL pointing to default branch (#158) 2797559 docs(theme): darken colors for increased contrast ee74465 docs: add related projects (#155) c827809 docs: update badges and reduce logo size 01cd8c1 docs(discord): add props usage (#153) ab9f634 docs: add claycooper as a contributor (#148) 1c17e5c docs: fix link to overview (#147) 469140f fix(format): skip unexported fields 7e8263a feat(format): format engine overhaul (#139) 76ea376 docs: add JonasPf as a contributor (#141) 8aa6f46 feat: add support for opsgenie (#140) (#73) fd3e82d feat: add support for config struct and map fields (#137) ce75958 fix: add/update stray linting comments e97873f fix(zulip): fix generate compat 41c5999 fix(hangouts): fix generate compat

    Docker images

    • docker pull containrrr/shoutrrr:arm64v8-0.4.2
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:i386-0.4.2
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:armhf-0.4.2
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:amd64-0.4.2
    • docker pull containrrr/shoutrrr:amd64-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.4.2_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.95 MB)
    shoutrrr_linux_amd64.tar.gz(4.11 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.78 MB)
    shoutrrr_linux_armhf.tar.gz(3.86 MB)
    shoutrrr_windows_386.zip(3.91 MB)
    shoutrrr_windows_amd64.zip(4.08 MB)
  • v0.4.1(Jan 31, 2021)

    Changelog

    e19ba77 fix(discord): fix payload root fields (#133) 168ecbf fix(format): array, hex and URL escaping (#132) 741c7eb fix(teams): remove unsafe config constructor (#131) 0d0c32c fix(teams): remove unsafe config constructor (#130)

    Docker images

    • docker pull containrrr/shoutrrr:i386-0.4.1
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:armhf-0.4.1
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.4.1
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:amd64-0.4.1
    • docker pull containrrr/shoutrrr:amd64-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.4.1_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.93 MB)
    shoutrrr_linux_amd64.tar.gz(4.09 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.76 MB)
    shoutrrr_linux_armhf.tar.gz(3.84 MB)
    shoutrrr_windows_386.zip(3.88 MB)
    shoutrrr_windows_amd64.zip(4.05 MB)
  • v0.4.0(Jan 31, 2021)

    Changelog

    8d40146 feat(discord): format update, preparations for rich message support (#108) 61e5b37 fix(teams): use better URL format and nicer output (#117) 7e4a3bf fix(slack): use attachments and add title and color fields (#119) c889ea9 feat(gotify): add support for gotify URL path (#127) 9ef6db2 feature: ground work for rich message support (#121) 568c1bc fix(send): use StringArray flag for url to not split on commas (#129) 84ec2ed feat(router): add support for custom service URLs (#125) 6e64c70 fix: make xmpp compatible with latest version (#122) 7558049 fix: resolve outstanding golint errors (#124) c7b9fb9 fix(smtp): add date header and make enums public (#118) 94fef61 fix(pushover): send all devices in single request (#115) 4034690 docs: fix generate docs and expand on getting started (#102) 91cd790 fix(gotify): use pkr for fields to make them settable from url (#116) 163ff52 fix(slack): dont panic on send http errors (#114) 1290cec fix codacy badge e07409f Create post-release.yml

    Docker images

    • docker pull containrrr/shoutrrr:armhf-0.4.0
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.4.0
    • docker pull containrrr/shoutrrr:arm64v8-latest
    • docker pull containrrr/shoutrrr:i386-0.4.0
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:amd64-0.4.0
    • docker pull containrrr/shoutrrr:amd64-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.4.0_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.93 MB)
    shoutrrr_linux_amd64.tar.gz(4.09 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.76 MB)
    shoutrrr_linux_armhf.tar.gz(3.84 MB)
    shoutrrr_windows_386.zip(3.88 MB)
    shoutrrr_windows_amd64.zip(4.05 MB)
  • v0.3.0(Jan 9, 2021)

    Changelog

    5afd1ad fix(discord): handle errors better (#109) a02aad6 feat: add standard title field (#107) 5f3dbb7 fix(router): correctly handle time outs in send (#101) d251a80 feat(telegram): add more config options and tests (#99) 96a20ac fix(xmpp): move xmpp service to the correct path 626511b fix(propkeyresolver): use reflect.Indirect on Config for PropKeyResolver.set (#106) e73f8fd docs: add sentriz as a contributor [skip ci] (#105) bb88658 fix(smtp): config clone toAddresses (#104) 25ace25 fix(verify): display fields in sorted order (#100) 895f8ae feat(services): add tag-based query/params helper (#92) 2d29e9b docs: use custom theme colors (#96) 7053b72 feat(smtp): add support for implicit TLS (#69) 23d20bb docs: add proxy documentation (#60) 01fa73c fix(mattermost): check for error before checking http.response (#95) 7857385 Added few testcases for rawURL passed as path/#####channel and path/#channel (used to segfault) (#83) 8ab1296 do not rewrite channel name without hashes (#85) c600010 docs: add ellisab as a contributor (#82) 9a71da6 fix for https://github.com/containrrr/shoutrrr/issues/70 (#74) fcd1e1a added custom port option for rocketchat (#80) 43ef295 docs: add atighineanu as a contributor (#81) d84e49d Fix for issue https://github.com/containrrr/shoutrrr/issues/71 (#75) ad97e5d feat(smtp): add support for oauth2 and gmail generators (#44) ab7f18c Correct the ID part of webhook (#67) e68669d feat: add Rocket.chat support (#64) 9c522a1 feat(generator): implement generator API and basic generator (#63) 1da5323 Allow sending of json messages to discord (#52)

    Docker images

    • docker pull containrrr/shoutrrr:amd64-0.3.0
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:armhf-0.3.0
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:i386-0.3.0
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.3.0
    • docker pull containrrr/shoutrrr:arm64v8-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.3.0_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.73 MB)
    shoutrrr_linux_amd64.tar.gz(3.89 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.58 MB)
    shoutrrr_linux_armhf.tar.gz(3.65 MB)
    shoutrrr_windows_386.zip(3.69 MB)
    shoutrrr_windows_amd64.zip(3.86 MB)
  • v0.2(Aug 13, 2020)

    Changelog

    de2eb6f fix(docker): use alpine CA certs to avoid dirty git state dd48b95 fix(docker): add CA cert bundle to docker image (#55) 699e232 ci: fix goreleaser config for new cli b6b64a4 docs(logo): update paths to logotype 99bbfb2 docs(logo): add new vectorized logotype 1e062d6 fix: allow legacy CLI invocation and fix generate a9206f0 add teams docs bafc331 fix(smtp): check for StartTLS support before requesting it (#53) 6520e5d Merge pull request #32 from containrrr/fix/replace-cli 2d2e453 Merge branch 'master' into fix/replace-cli b916577 docs(config): update site_url to new apex domain a700642 fix typo 5f248ee add multiple url example 87f18cb isolate the cli into it's own folder 5d32bcb Update README.md d7ec00f run ci on pull requests 4502b42 fix linting issues d98d12c fix env var resolution for verify and generate 233ac59 add root cmd 5b5801e reduce duplication 0dc9fc8 fix errors 670b93f fix viper resolution and send args 494c2b6 switch cli to use cobra and viper

    Docker images

    • docker pull containrrr/shoutrrr:armhf-0.2
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:amd64-0.2
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:i386-0.2
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.2
    • docker pull containrrr/shoutrrr:arm64v8-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.2_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(3.73 MB)
    shoutrrr_linux_amd64.tar.gz(3.88 MB)
    shoutrrr_linux_arm64v8.tar.gz(3.57 MB)
    shoutrrr_linux_armhf.tar.gz(3.64 MB)
    shoutrrr_windows_386.zip(3.68 MB)
    shoutrrr_windows_amd64.zip(3.85 MB)
  • v0.1(Jun 12, 2020)

    Changelog

    b25afa1 execute from main file location 3f24ec3 deploy image on each commit 77aef7d switch to login action f0ebb85 use correct secret name 7180276 fetch secrets correctly c84c2f0 switch to password stdin 84b5c84 publish to dockerhub 6e8a2e4 Merge pull request #48 from containrrr/fix/telegram-err-handling 08fc303 fix(telegram): fix error handling for telegram API ce26412 Merge pull request #38 from amirschnell/#35_Change_URL_format_for_mattermost 40cb0db Merge pull request #43 from containrrr/feature/join 4831d06 feat(join): add basic join service support 9fc616b Merge pull request #42 from arnested/dont-crash-on-no-senders 78bb968 docs(pushover): fix missing link 680e56b docs: Update nav menu with new services 8664b5a Return error when sending with no senders created 9416354 Merge pull request #41 from containrrr/docs/pushover 7f4086b Merge pull request #40 from containrrr/feat/pushover-params ce2af53 Merge pull request #39 from arnested/zulip 7c2be31 feat(services): add zulip chat service b16e772 tests(pushover): add tests for new params d6a21b7 feat(pushover): add title and priority parameters 63cbdb7 docs(pushover): add basic documentation ce757a3 updated documentation df56dde fixed tests 42e141f changed URL format for mattermost 865e6df docs: fix logotype url 6cab7a8 docs: add favicon and transparent logotype 31a07ca docs: fix path to logotype in mkdocs fe310f5 docs: add some branding to mkdocs 1754d3e docs: update pushover URL format (again) 25de91e docs: update pushover URL format f8dbb8b fix spelling some more 2ece0ce fix spelling 4590b24 fix issues reported by goreportcard ec52a4a fix formatting 8119c36 Update main.yml f248803 Update main.yml 0474d84 add codecov publish to ci 96cd97b add badges required by awesome-go 00da839 docs(mkdocs): add codehilite markdown extension (#33) 77a2189 Merge pull request #29 from amirschnell/master 535bfbc corrected typos 27fc005 added mattermost documentation a9e7a3d Merge pull request #28 from arnested/fix-create-sernder-doc 5bfcf4b docs: fix CreateSender() return values 157bd99 Merge pull request #27 from arnested/hangouts-doc-navigation 44cdce9 docs: add hangouts chat to navigation 0365b48 Merge pull request #26 from containrrr/all-contributors/add-arnested 39bac22 docs: update .all-contributorsrc [skip ci] 3d1e82d docs: update README.md [skip ci] 6fe53df Merge pull request #13 from arnested/hangouts-chat e46eebb feat(services): add hangouts chat service e75ebc2 Merge pull request #25 from containrrr/all-contributors/add-arnested 1ea7697 docs: update .all-contributorsrc [skip ci] 8dcced9 docs: update README.md [skip ci] 7a8e928 Merge pull request #23 from mbrandau/patch-1 d4dc583 Merge pull request #24 from containrrr/all-contributors/add-simskij ba47ff4 docs: update .all-contributorsrc [skip ci] 4c46a0f docs: update README.md [skip ci] cc4b88e Update README.md 0e48277 Update README.md 3baf53e Update README.md 12a13ea Update README.md 9ebf5a6 Fix links 036b6a8 Merge pull request #22 from containrrr/all-contributors/add-MrLuje 3c3eb48 docs: update .all-contributorsrc [skip ci] 830c1a2 docs: update README.md [skip ci] 89afce4 Merge pull request #21 from containrrr/all-contributors/add-lukapeschke 6b5deb5 docs: update .all-contributorsrc [skip ci] 953a7c5 docs: update README.md [skip ci] 1b2a33f Merge pull request #20 from containrrr/all-contributors/add-piksel 0777658 docs: update .all-contributorsrc [skip ci] 53f9615 docs: update README.md [skip ci] 4c046f9 Merge pull request #19 from containrrr/all-contributors/add-amirschnell 00cecf3 docs: create .all-contributorsrc [skip ci] 55a5d8f docs: update README.md [skip ci] 8fa286e WIP: documentation (#18) 9ae32fb move import f17c3e2 feat(services) add mattermost service b13d208 Shorten readme and point at the docs 7789fc4 Update README.md 0674cc4 Update README.md 703d9fa setup python 3 aef7225 remove godacov again 92ecab4 deploy docs using mkocs e8d7b2c fix logo link 6e7a091 fix referencing issue with the discord config 1981b9e Merge pull request #10 from MrLuje/pushbullet 46fa6e4 style: typo & review 8b09a1a Update main.yml de50380 Update main.yml f845994 upgrade xerrors pkg bf93cb5 Update and rename go.yml to main.yml 24c4da9 Create go.yml 05cef79 fix: lint error 620b93f docs: update readme d3c7552 feat(services): add pushbullet service 7189006 fix: update golang.org/x/xerrors 057ce0d fix(util): improve test coverage 96ba065 chore(smtp): reduce cyclomatic complexity for failures 07076d9 chore(format): move kind comparisons to util e958148 trigger codacy ab94128 Create funding.yml 7b77ebc fix codacy warnings 33cceae improve test coverage for ifttt b3f9cf6 improve test coverage of pushover 652b4eb Merge pull request #7 from lukapeschke/master a428459 Add support for Gotify notifications 63b3b6f docs: fix README links f4bcadb docs: fix logotype URL 3a91ba4 test(xmpp): add basic XMPP tests 8a9a423 feat(xmpp): add basic XMPP service 36bdb2f fix: add shebang to build script 68032b4 fix(lint): additional lint fixes 22f9272 Update CONTRIBUTING.md 7459875 Create CONTRIBUTING.md b973f07 Update README.md 6bc586c Fix Codacy badge in README.md b332680 Add Codacy badge 6083d9f cleanup: use Params type and simplify router API 9b7a09b Add logo ๐Ÿ™ 756c89c style: fix fmt/lint/vet ffd0499 refactor: restructure and tidy up 62b0ea1 tests(smtp): add more test coverage and test utils 78ccf86 add gitter webhook 4cf5a14 refactor: Fix lint/vet/code style and comments 8dfa648 test: add additional test coverage 1da0f68 fix(services): additional updates to broken parts of API 73ba086 cleanup: reorder and remove unused code 6709488 feat(ifttt): add IFTTT webhook service 87324a2 fix(services): remade API since the prior one was really broken 5d5a0f5 feat(smtp): implement templating and multipart messages 92a6d86 fix(templating): simplify template API and make it optional 5abddb0 docs: add missing documentation 5973b54 feat(queue): add queued sender implementation 96ec758 docs: update comments for changed and added properties 921fc3b refactor(services): split queryless and enumless config composites 460ef57 fix(tests): using new API changes 7c96801 refactor(services): move to new split api b4b6535 refactor(services): move logging, add composites 818e0d7 Update README.md 0d096d8 ci: change test runner to 'go test' f0d5a67 docs: add missing go docs 2e825c7 refactor(plugin): rename to service and cleanup interface bce84c9 Merge branch 'master' of https://github.com/containrrr/shoutrrr into plugin-smtp b3f0570 feat(plugin): add plugin interfaces 7bf7a37 Update README.md b90601d feat: add pushbullet embryo 3ba2c4a feat(smtp): extend SMTP plugin support 946b6cd feat(smtp): add simple smtp implementation dfdf576 feat(smtp): add basic smtp plugin 8fe2994 fix codacy warnings 860b6e8 fix codacy issues 06d00b0 fix sprintf error 92c490a add teams routing 6377fa4 Update README.md ab8d4f7 add logic for msteams 6b8dd69 remove idea folder ee1db31 refactor: cleanup discord as well b396389 refactor: clean up 2a0933c fix codacy issues 5314ee9 skip integration tests if env vars are missing 92f6f9f make bogus token more obvious to prevent spam from GG a3e33e9 remove weird errors import 395846d fix readme 92709f2 Add discord, telegram, slack and pushover bba3638 additional removal of logrus deps 653d3e8 remove logrus from tests 4660804 add rudimentary support for telegram 1dd6d2a mid refactoring 657f2f4 add tagline to readme 5780eee fix blank line issue 0fdcfaf center badges c7e904e add badges 7d9d954 Update README.md b1d3940 add codacy integration 8847254 Update README.md a403da3 add router and router tests fee429d Initial commit

    Docker images

    • docker pull containrrr/shoutrrr:armhf-0.1
    • docker pull containrrr/shoutrrr:armhf-latest
    • docker pull containrrr/shoutrrr:amd64-0.1
    • docker pull containrrr/shoutrrr:amd64-latest
    • docker pull containrrr/shoutrrr:i386-0.1
    • docker pull containrrr/shoutrrr:i386-latest
    • docker pull containrrr/shoutrrr:arm64v8-0.1
    • docker pull containrrr/shoutrrr:arm64v8-latest
    Source code(tar.gz)
    Source code(zip)
    shoutrrr_0.1_checksums.txt(560 bytes)
    shoutrrr_linux_386.tar.gz(2.92 MB)
    shoutrrr_linux_amd64.tar.gz(3.04 MB)
    shoutrrr_linux_arm64v8.tar.gz(2.79 MB)
    shoutrrr_linux_armhf.tar.gz(2.85 MB)
    shoutrrr_windows_386.zip(2.86 MB)
    shoutrrr_windows_amd64.zip(2.99 MB)
Owner
containrrr
Tools, containers and other docker-related community content.
containrrr
Apple Push Notification (APN) Provider library for Go 1.6 and HTTP/2.

Apple Push Notification (APN) Provider library for Go 1.6 and HTTP/2. Send remote notifications to iOS, macOS, tvOS and watchOS. Buford can also sign push packages for Safari notifications and Wallet passes.

null 0 Dec 6, 2021
File system event notification library on steroids.

notify Filesystem event notification library on steroids. (under active development) Documentation godoc.org/github.com/rjeczalik/notify Installation

Rafal Jeczalik 790 Jan 7, 2023
Monitor star changes of GitHub repo, and send the notification to slack or lark.

stargazers Features monitor the star events of the GitHub repo send the notifications to Slack or Lark How to use For Lark, create a bot called like s

Kevin Wan 15 Dec 4, 2022
[TOOL, CLI] - Filter and examine Go type structures, interfaces and their transitive dependencies and relationships. Export structural types as TypeScript value object or bare type representations.

typex Examine Go types and their transitive dependencies. Export results as TypeScript value objects (or types) declaration. Installation go get -u gi

Daniel T. Gorski 172 Dec 6, 2022
Gorsair hacks its way into remote docker containers that expose their APIs

Gorsair Gorsair is a penetration testing tool for discovering and remotely accessing Docker APIs from vulnerable Docker containers. Once it has access

Brendan Le Glaunec 790 Dec 31, 2022
This project is an implementation of Fermat's factorization method in which multiples of prime numbers are factored into their constituent primes

This project is an implementation of Fermat's factorization method in which multiples of prime numbers are factored into their constituent primes. It is a vanity attempt to break RSA Encryption which relies on prime multiples for encryption.

Lih Ingabo 1 Jun 3, 2022
Start of a project that would let people stay informed about safe running spaces in their area.

SafeRun Start of a project that would let people stay informed about safe running spaces in their area. Too many people I'm friends with feel unsafe w

Ryan Dunning 0 Feb 11, 2022
Library to work with MimeHeaders and another mime types. Library support wildcards and parameters.

Mime header Motivation This library created to help people to parse media type data, like headers, and store and match it. The main features of the li

Anton Ohorodnyk 25 Nov 9, 2022
A simple Cron library for go that can execute closures or functions at varying intervals, from once a second to once a year on a specific date and time. Primarily for web applications and long running daemons.

Cron.go This is a simple library to handle scheduled tasks. Tasks can be run in a minimum delay of once a second--for which Cron isn't actually design

Robert K 215 Dec 17, 2022
Go bindings for unarr (decompression library for RAR, TAR, ZIP and 7z archives)

go-unarr Golang bindings for the unarr library from sumatrapdf. unarr is a decompression library and CLI for RAR, TAR, ZIP and 7z archives. GoDoc See

Milan Nikolic 220 Dec 29, 2022
An simple, easily extensible and concurrent health-check library for Go services

Healthcheck A simple and extensible RESTful Healthcheck API implementation for Go services. Health provides an http.Handlefunc for use as a healthchec

Ether Labs 246 Dec 30, 2022
Functional programming library for Go including a lazy list implementation and some of the most usual functions.

functional A functional programming library including a lazy list implementation and some of the most usual functions. import FP "github.com/tcard/fun

Toni Cรกrdenas 31 May 21, 2022
Flow-based and dataflow programming library for Go (golang)

GoFlow - Dataflow and Flow-based programming library for Go (golang) Status of this branch (WIP) Warning: you are currently on v1 branch of GoFlow. v1

Vladimir Sibirov 1.5k Dec 30, 2022
go.pipeline is a utility library that imitates unix pipeline. It simplifies chaining unix commands (and other stuff) in Go.

go.pipeline go.pipeline is a utility library that imitates unix pipeline. It simplifies chaining unix commands (and other stuff) in Go. Installation g

Song Gao 14 May 8, 2022
A Go library for reading sensor data from the Adafruit SCD-40 and SCD-41

A Go module for reading CO2, temperature, and humidity data from the Sesirion SCD4x family of sensors. Example sensors are the Adafruit SCD-40 and Adafruit SCD-41. The former was used during the development of this module.

Vernon Miller 3 Dec 23, 2022
Evolutionary optimization library for Go (genetic algorithm, partical swarm optimization, differential evolution)

eaopt is an evolutionary optimization library Table of Contents Changelog Example Background Features Usage General advice Genetic algorithms Overview

Max Halford 823 Dec 30, 2022
cross-platform, normalized battery information library

battery Cross-platform, normalized battery information library. Gives access to a system independent, typed battery state, capacity, charge and voltag

null 213 Dec 22, 2022
GoLang Library for Browser Capabilities Project

Browser Capabilities GoLang Project PHP has get_browser() function which tells what the user's browser is capable of. You can check original documenta

Maksim N. 43 Sep 27, 2022
Type-safe Prometheus metrics builder library for golang

gotoprom A Prometheus metrics builder gotoprom offers an easy to use declarative API with type-safe labels for building and using Prometheus metrics.

Cabify 98 Dec 5, 2022