Skip to content

Commit

Permalink
v1.0.2
Browse files Browse the repository at this point in the history
  • Loading branch information
Paul Aschmann committed Aug 10, 2022
1 parent d496036 commit f719463
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 32 deletions.
54 changes: 28 additions & 26 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,38 +2,40 @@

Reach is a node.js module for sending notifications focused on simplicity and extensibility. What's unique about this project? In most cases apps traditionally support a limited set of notification methods, such as email, push notifications or sms, but in some cases, users would prefer being notified in some other way, such as Slack, Whatsapp, Telegram or Discord, or even all of them. The Reach SDK lets you or your app users select and configure their own notification methods, without needing to develop or implement each service.

The project was developed to support my various node.js projects, and avoid redeveloping the same functionality in each of them. I built the module to support <a href="https://www.github.com/paschmann/changd" target="_blank">Changd</a>, which is a website monitoring tool. Using the Reach SDK allows users to select a myriad of notification methods to be used, without the the underlying project having to implement, manage or maintain these options. I was inspired by Apprise (which is written in python) and used Uptime Kuma as a starting point.
The project was developed to support my various node.js projects, and avoid redeveloping the same functionality in each of them. I built the module to support <a href="https://www.github.com/paschmann/changd" target="_blank">Changd</a>, which is a website monitoring tool. Using the Reach SDK allows users to select a myriad of notification methods, without the the underlying project having to implement, manage or maintain these options. I was inspired by Apprise (which is written in python) and used Uptime Kuma as a starting point.

If you would like to test out the concept, check out the <A href='https://www.github.com/paschmann/reach-ui' target='_blank'>Reach UI</a>. It is a basic web app that lets you configure and send test notifications for each provider using your own parameters.


## Providers

Notification providers are services which the Reach SDK can send messages to. The Reach SDK has been designed to allow developers and contributors to create or add their own custom providers. If you would like to improve, or create a provider for a service not currently offered, check out the <a href="providers/_template.js" target="_blank">_template</a> in the provider's folder, and please submit a pull request.

Below is a list of notifications that the Reach SDK currently supports.

Alerta
AWS SES
Bark
Click Send SMS
Discord
Gitter
Google Chat
IFFFF
Line
Signal
Slack
SMTP
Mailgun
Matrix
Mattermost
Microsoft Teams
OneSignal
PagerDuty
Telegram
Webhook

Notification providers are services which the Reach SDK can send messages to. The Reach SDK has been designed to allow developers and contributors to create or add their own custom providers. If you would like to improve, or create a provider for a service not currently offered, check out the <a href="providers/_template.js" target="_blank">_template</a> in the resources folder, and please submit a pull request.

Below is a list of notification providers the Reach SDK currently supports.

<ul>
<li>Alerta</li>
<li>Amazon SES</li>
<li>Bark</li>
<li>Click Send SMS</li>
<li>Discord</li>
<li>Gitter</li>
<li>Google Chat</li>
<li>IFFFF</li>
<li>Line</li>
<li>Mailgun</li>
<li>Matrix</li>
<li>Mattermost</li>
<li>Microsoft Teams</li>
<li>OneSignal</li>
<li>PagerDuty</li>
<li>SendGrid</li>
<li>Signal</li>
<li>Slack</li>
<li>SMTP</li>
<li>Telegram</li>
<li>Webhook</li>
</ul>
<hr>


Expand Down
1 change: 1 addition & 0 deletions http.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ var http = new ReachHttp();


const https = require("https");
const Buffer = require("Buffer");

class ReachHttp {

Expand Down
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "reach-sdk",
"version": "1.0.1",
"version": "1.0.2",
"description": "A node.js library for sending notifications focused on simplicity and extensibility.",
"main": "reach.js",
"scripts": {
Expand Down
4 changes: 1 addition & 3 deletions providers/slack.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,7 @@ class Slack extends provider {
slackwebhookURL: "",
text: ""
},
optional: {

}
optional: {}
};

async send(notification) {
Expand Down
4 changes: 2 additions & 2 deletions test/test.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Reach } from "../reach";
const { Reach } = require("../reach");
Reach.init();

const smtp_notification = {
Expand Down Expand Up @@ -71,5 +71,5 @@ const telegram_notification = {
// Examples
//console.log(Reach.send(smtp_notification));
//console.log(Reach.send(ses_notification));
//console.log(Reach.listProviders());
console.log(Reach.listProviders());
//console.log(Reach.parameters('ses'));

0 comments on commit f719463

Please sign in to comment.