-
Notifications
You must be signed in to change notification settings - Fork 0
Feature: Email endpoint requests #19
Comments
As of this writing, the prototype code I'm working with will only send a message to a Teams channel if the webhook URL for that channel is provided. When email support is added, sending email will only be attempted if the applicable settings are provided. This means that if a user enables email notifications and then bangs on the API endpoints, presumably the intent is to get multiple notifications, so whether they're batched or separate wouldn't (presumably) matter a lot. If bounce is targeted by a remote system, presumably it would be at a frequency where multiple email notifications would not be a problem. The prototype code I'm working with has queuing setup with delivery delays, so that could act as a buffer to keep from dropping in piles of notifications all at once. All of this said, I'm changing the focus of this issue to just implementing email support in general. The first implementation will require CLI flags for all settings with a later refactoring working in configuration file support, (likely TOML or YAML). |
ADDED - Add support for Microsoft Teams notifications - configurable retry, retry delay settings - rate-limited submissions to help prevent unintentional abuse of remote API - currently hard-coded, but will likely expose this as a flag in a future release - Add monitoring/reporting of notification channels with pending items - Add monitoring/reporting of notification statistics - total - pending - success - failure - Capture `Ctrl+C` and attempt graceful shutdown - Plumbed `context` throughout majority of application for cancellation and timeout functionality - still learning proper use of this package, so likely many mistakes that will need to be fixed in a future release - Logging - add *many* more debug statements to help with troubleshooting CHANGED - Dependencies - Use `atc0005/go-teams-notify` package - fork of original package with current features and some additional changes not yet accepted upstream - Use `atc0005/send2teams` package - provides wrapper for upstream functionality with message retry, delayfunctionality - provides formatting helper functions - provides additional webhook URL validation - Drop indirect dependency - Update `golang/gddo` - Add commented entries to have Go use local copies of packages for fast prototyping work FIXED - GoDoc formatting - remove forced line-wrap which resulted in unintentional code block formatting of non-code content - Refactor logging, flag handling - not user visible, so not recording as a "change" - Manually flush `http.ResponseWriter` to (massively) speed up response time for client requests - Move template parsing to `main()` in an effort to speed up endpoint response time for client requests REFERENCES - refs #19 - partial work; stubbed out - refs #21 - refs #26 - refs #27 - refs #28
ADDED - Add support for Microsoft Teams notifications - configurable retry, retry delay settings - rate-limited submissions to help prevent unintentional abuse of remote API - currently hard-coded, but will likely expose this as a flag in a future release - Add monitoring/reporting of notification channels with pending items - Add monitoring/reporting of notification statistics - total - pending - success - failure - Capture `Ctrl+C` and attempt graceful shutdown - Plumbed `context` throughout majority of application for cancellation and timeout functionality - still learning proper use of this package, so likely many mistakes that will need to be fixed in a future release - Logging - add *many* more debug statements to help with troubleshooting CHANGED - Dependencies - Use `atc0005/go-teams-notify` package - fork of original package with current features and some additional changes not yet accepted upstream - Use `atc0005/send2teams` package - provides wrapper for upstream functionality with message retry, delayfunctionality - provides formatting helper functions - provides additional webhook URL validation - Drop indirect dependency - Update `golang/gddo` - Add commented entries to have Go use local copies of packages for fast prototyping work FIXED - GoDoc formatting - remove forced line-wrap which resulted in unintentional code block formatting of non-code content - Refactor logging, flag handling - not user visible, so not recording as a "change" - Manually flush `http.ResponseWriter` to (massively) speed up response time for client requests - Move template parsing to `main()` in an effort to speed up endpoint response time for client requests REFERENCES - refs #19 - partial work; stubbed out - refs #21 - refs #26 - refs #27 - refs #28
ADDED - Add support for Microsoft Teams notifications - configurable retry, retry delay settings - rate-limited submissions to help prevent unintentional abuse of remote API - currently hard-coded, but will likely expose this as a flag in a future release - Add monitoring/reporting of notification channels with pending items - Add monitoring/reporting of notification statistics - total - pending - success - failure - Capture `Ctrl+C` and attempt graceful shutdown - Plumbed `context` throughout majority of application for cancellation and timeout functionality - still learning proper use of this package, so likely many mistakes that will need to be fixed in a future release - Logging - add *many* more debug statements to help with troubleshooting - Documentation - GoDoc coverage for new features - README update to give example of Teams coverage CHANGED - Dependencies - Use `atc0005/go-teams-notify` package - fork of original package with current features and some additional changes not yet accepted upstream - Use `atc0005/send2teams` package - provides wrapper for upstream functionality with message retry, delayfunctionality - provides formatting helper functions - provides additional webhook URL validation - Drop indirect dependency - Update `golang/gddo` - Add commented entries to have Go use local copies of packages for fast prototyping work FIXED - GoDoc formatting - remove forced line-wrap which resulted in unintentional code block formatting of non-code content - Refactor logging, flag handling - not user visible, so not recording as a "change" - Manually flush `http.ResponseWriter` to (massively) speed up response time for client requests - Move template parsing to `main()` in an effort to speed up endpoint response time for client requests REFERENCES - refs #19 - partial work; stubbed out - refs #21 - refs #26 - refs #27 - refs #28 WIP: Update README example, add example teams submission screenshot
Idea: Email requests to a specified email address. This could be useful for recording submissions for a period of time.
This would (likely) be primarily used when this app runs as a daemon/service and tailing the output isn't easily done.
The text was updated successfully, but these errors were encountered: